diff --git a/apps/api/tests/test_governance_agent.py b/apps/api/tests/test_governance_agent.py index 15a05a93..e84c0fdb 100644 --- a/apps/api/tests/test_governance_agent.py +++ b/apps/api/tests/test_governance_agent.py @@ -619,9 +619,11 @@ class TestRunSelfCheckGlobalFailureAlert: governance_failure_calls = [c for c in calls if c[0][0] == "governance_self_failure"] assert len(governance_failure_calls) >= 1 + # 2026-05-03 Claude Opus 4.7 + 統帥 ogt:對齊 governance_agent.py:604-624 的嵌套 payload structure + # (critic M6 修:{status, impact, remediation, actionable}),原本直接讀 payload["total_checks"] 會 KeyError payload = governance_failure_calls[0][0][1] - assert payload["total_checks"] == 5 - assert len(payload["failed_checks"]) == 5 + assert payload["impact"]["total_checks"] == 5 + assert len(payload["impact"]["failed_checks"]) == 5 @pytest.mark.asyncio async def test_two_checks_fail_does_not_trigger_governance_self_failure(self): diff --git a/apps/api/tests/test_wave8_remaining_blockers.py b/apps/api/tests/test_wave8_remaining_blockers.py index 86e6ea5b..32c38691 100644 --- a/apps/api/tests/test_wave8_remaining_blockers.py +++ b/apps/api/tests/test_wave8_remaining_blockers.py @@ -240,9 +240,10 @@ class TestB8GovernanceFailureAlert: agent._alert.assert_awaited_once() call_args = agent._alert.await_args assert call_args[0][0] == "governance_self_failure" + # 2026-05-03 Claude Opus 4.7 + 統帥 ogt:對齊 governance_agent.py:604-624 嵌套 payload structure payload = call_args[0][1] - assert payload["total_checks"] == 5 - assert len(payload["failed_checks"]) >= 3 + assert payload["impact"]["total_checks"] == 5 + assert len(payload["impact"]["failed_checks"]) >= 3 @pytest.mark.asyncio async def test_two_failures_no_alert(self): @@ -282,5 +283,6 @@ class TestB8GovernanceFailureAlert: await agent.run_self_check() agent._alert.assert_awaited_once() + # 2026-05-03 Claude Opus 4.7 + 統帥 ogt:對齊 governance_agent.py:604-624 嵌套 payload structure payload = agent._alert.await_args[0][1] - assert len(payload["failed_checks"]) == 5 + assert len(payload["impact"]["failed_checks"]) == 5