Files
awoooi/apps/api/tests/test_ai_agent_deployment_layout_api.py
Your Name e427af3cb2
All checks were successful
CD Pipeline / tests (push) Successful in 1m24s
Code Review / ai-code-review (push) Successful in 15s
CD Pipeline / build-and-deploy (push) Successful in 6m5s
CD Pipeline / post-deploy-checks (push) Successful in 1m37s
feat(governance): 接入三 Agent 佈建布局
2026-06-11 11:27:50 +08:00

32 lines
1.5 KiB
Python

from __future__ import annotations
from fastapi import FastAPI
from fastapi.testclient import TestClient
from src.api.v1.agents import router
def test_ai_agent_deployment_layout_endpoint_returns_committed_snapshot():
app = FastAPI()
app.include_router(router, prefix="/api/v1")
client = TestClient(app)
response = client.get("/api/v1/agents/agent-deployment-layout")
assert response.status_code == 200
data = response.json()
assert data["schema_version"] == "ai_agent_deployment_layout_v1"
assert data["program_status"]["overall_completion_percent"] == 45
assert data["program_status"]["current_task_id"] == "P1-402"
assert data["program_status"]["next_task_id"] == "P1-403"
assert data["program_status"]["read_only_mode"] is True
assert data["rollups"]["total_targets"] == 42
assert data["rollups"]["by_domain"]["hosts"] == 6
assert data["rollups"]["by_domain"]["websites"] == 5
assert data["rollups"]["by_primary_agent"]["nemotron"] == 2
assert data["approval_boundaries"]["telegram_direct_send_allowed"] is False
assert data["approval_boundaries"]["autonomous_host_mutation_allowed"] is False
assert data["collaboration_contract"]["frontend_redaction"]["operator_conversation_display_allowed"] is False
assert any(target["target_id"] == "telegram_gateway" for target in data["deployment_targets"])
assert any(target["target_id"] == "nemotron_replay_pipeline" for target in data["deployment_targets"])