test_wp09_control_approval_contract.py 1.0 KB

123456789101112131415161718192021
  1. from pathlib import Path
  2. ROOT = Path(__file__).resolve().parents[2]
  3. MIGRATION = ROOT / "migrations/versions/20260813_499_runtime_control_approval.py"
  4. DEPLOYMENT = ROOT / "deployment/migrations/versions/20260813_499_runtime_control_approval.py"
  5. def test_wp09_control_approval_is_closed_one_shot_and_deployed():
  6. source = MIGRATION.read_text(encoding="utf-8")
  7. assert 'revision = "20260813_499"' in source
  8. assert 'down_revision = "20260813_498"' in source
  9. for required in (
  10. "agent_runtime_control", "agent_runtime_control_events", "FOR UPDATE",
  11. "recover", "canary_promote", "canary_rollback", "approval_task_uid",
  12. "request_digest", "metrics_digest", "threshold_policy", "dataset_digest",
  13. "payload_digest", "issued_at",
  14. "approval context denied", "approval already consumed", "control replay conflict",
  15. "SET search_path=pg_catalog,public", "REVOKE ALL ON FUNCTION public.agent_runtime_transition",
  16. ):
  17. assert required in source
  18. assert MIGRATION.read_bytes() == DEPLOYMENT.read_bytes()