Add reviewer, artifact store, and paginated queries
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
from datetime import UTC, datetime
|
||||
|
||||
import httpx
|
||||
|
||||
from ai_orchestrator.application.services.execution import (
|
||||
@@ -32,6 +34,7 @@ from ai_orchestrator.infrastructure.mcp_client import McpHttpClient, McpToolGate
|
||||
from ai_orchestrator.infrastructure.model_router import StaticMockModelProvider
|
||||
from ai_orchestrator.infrastructure.policy import StaticProjectPolicyEvaluator
|
||||
from ai_orchestrator.infrastructure.storage.memory import (
|
||||
InMemoryArtifactStore,
|
||||
InMemoryConfirmationRepository,
|
||||
InMemoryEventStore,
|
||||
InMemoryGraphRepository,
|
||||
@@ -223,6 +226,7 @@ def test_smoke_policy_confirm_and_full_auto() -> None:
|
||||
|
||||
def test_smoke_mcp_and_worker_results_are_stored_and_finalizer_runs() -> None:
|
||||
invocation_store = InMemoryInvocationStore()
|
||||
artifact_store = InMemoryArtifactStore()
|
||||
|
||||
def handler(request: httpx.Request) -> httpx.Response:
|
||||
return httpx.Response(
|
||||
@@ -244,6 +248,7 @@ def test_smoke_mcp_and_worker_results_are_stored_and_finalizer_runs() -> None:
|
||||
project_configs={"default": _project_config()},
|
||||
client=McpHttpClient(transport=httpx.MockTransport(handler)),
|
||||
invocation_store=invocation_store,
|
||||
artifact_store=artifact_store,
|
||||
)
|
||||
worker_repository = InMemoryWorkerRepository()
|
||||
event_store = InMemoryEventStore()
|
||||
@@ -252,6 +257,7 @@ def test_smoke_mcp_and_worker_results_are_stored_and_finalizer_runs() -> None:
|
||||
worker_repository=worker_repository,
|
||||
event_store=event_store,
|
||||
invocation_store=invocation_store,
|
||||
artifact_store=artifact_store,
|
||||
connection_manager=InMemoryWorkerConnectionManager(),
|
||||
)
|
||||
worker = worker_service.register(
|
||||
@@ -279,8 +285,8 @@ def test_smoke_mcp_and_worker_results_are_stored_and_finalizer_runs() -> None:
|
||||
task_id="task_1",
|
||||
tool="file.read",
|
||||
status="success",
|
||||
started_at=__import__("datetime").datetime.now(__import__("datetime").UTC),
|
||||
finished_at=__import__("datetime").datetime.now(__import__("datetime").UTC),
|
||||
started_at=datetime.now(UTC),
|
||||
finished_at=datetime.now(UTC),
|
||||
duration_ms=1,
|
||||
result={"content": "ok"},
|
||||
),
|
||||
@@ -318,4 +324,5 @@ def test_smoke_mcp_and_worker_results_are_stored_and_finalizer_runs() -> None:
|
||||
assert queued.status == "queued"
|
||||
assert tool_result.status == "success"
|
||||
assert len(invocation_store.list_tool_invocations("task_1")) >= 2
|
||||
assert artifact_store.list_by_task("task_1") == []
|
||||
assert graph.nodes[-1].output_data["status"] == "completed"
|
||||
|
||||
Reference in New Issue
Block a user