feat(governance): 新增 runtime readback 批准包
All checks were successful
Code Review / ai-code-review (push) Successful in 13s
CD Pipeline / tests (push) Successful in 1m29s
CD Pipeline / build-and-deploy (push) Successful in 4m36s
CD Pipeline / post-deploy-checks (push) Successful in 1m37s

This commit is contained in:
Your Name
2026-06-13 14:51:16 +08:00
parent e0cc7dde0f
commit 84fea85bf7
14 changed files with 2504 additions and 5 deletions

View File

@@ -0,0 +1,509 @@
{
"schema_version": "ai_agent_runtime_readback_approval_package_v1",
"generated_at": "2026-06-13T15:12:00+08:00",
"program_status": {
"overall_completion_percent": 100,
"current_priority": "P2",
"current_task_id": "P2-109",
"next_task_id": "P2-110",
"read_only_mode": true,
"runtime_authority": "runtime_readback_approval_package_only_no_live_write",
"status_note": "P2-109 承接 P2-107 readback / promotion readiness 與 P2-108 report status board固定 runtime readback 批准包、canonical readback plan、rollback drill 與 Telegram 失敗收據閘門;本快照只讀,不啟動 live writer。"
},
"source_refs": [
"docs/evaluations/ai_agent_owner_approved_result_capture_readback_2026-06-13.json",
"docs/schemas/ai_agent_owner_approved_result_capture_readback_v1.schema.json",
"docs/evaluations/ai_agent_post_write_verifier_package_2026-06-12.json",
"docs/evaluations/ai_agent_runtime_verifier_evidence_review_2026-06-12.json",
"docs/superpowers/specs/2026-04-15-MASTER-ai-autonomous-flywheel-v2.md"
],
"prior_readback_readiness": {
"source_schema_version": "ai_agent_owner_approved_result_capture_readback_v1",
"readback_at": "2026-06-13T14:18:00+08:00",
"readback_digest_count": 5,
"promotion_review_count": 5,
"failure_lane_count": 4,
"reviewer_queue_preview_count": 4,
"operator_action_count": 5,
"approval_required_digest_count": 2,
"blocked_total_count": 7,
"approved_without_execution_meta_24h": 63,
"execution_failed_with_matched_24h": 1,
"owner_approval_received_count": 0,
"readback_digest_generated_count": 0,
"promotion_approved_count": 0,
"reviewer_queue_write_count": 0,
"result_capture_write_count": 0,
"score_write_count": 0,
"learning_write_count": 0,
"playbook_trust_write_count": 0,
"gateway_queue_write_count": 0,
"telegram_send_count": 0,
"production_write_count": 0,
"readiness_note": "P2-107 已固定 fixture readback 與 promotion reviewP2-108 只產生下一關 owner review 批准包,不讀 canonical runtime target。"
},
"approval_package_truth": {
"p2_107_readback_loaded": true,
"approval_package_ready": true,
"canonical_readback_plan_ready": true,
"rollback_drill_ready": true,
"telegram_failure_receipt_gate_ready": true,
"owner_review_required_before_runtime": true,
"canonical_runtime_readback_enabled": false,
"runtime_result_capture_write_enabled": false,
"runtime_score_write_enabled": false,
"runtime_learning_write_enabled": false,
"playbook_trust_write_enabled": false,
"reviewer_queue_write_enabled": false,
"gateway_queue_write_enabled": false,
"telegram_failure_receipt_send_enabled": false,
"bot_api_call_enabled": false,
"rollback_work_item_write_enabled": false,
"production_write_enabled": false,
"secret_read_enabled": false,
"destructive_operation_enabled": false,
"owner_approval_received_count": 0,
"runtime_readback_execution_count": 0,
"result_capture_write_count_24h": 0,
"score_write_count_24h": 0,
"learning_write_count_24h": 0,
"playbook_trust_write_count_24h": 0,
"reviewer_queue_write_count_24h": 0,
"gateway_queue_write_count_24h": 0,
"telegram_failure_receipt_send_count_24h": 0,
"bot_api_call_count_24h": 0,
"rollback_work_item_write_count_24h": 0,
"production_write_count_24h": 0,
"secret_read_count_24h": 0,
"destructive_operation_count_24h": 0,
"truth_note": "此階段只允許 owner review 批准包與 no-write plan 可視化canonical runtime readback、result/score/learning/trust write、queue write、Telegram 失敗收據與 rollback work item 全部仍為 0。"
},
"approval_packet_templates": [
{
"packet_id": "approved_result_capture_runtime_readback",
"display_name": "已批准處置結果 readback 批准包",
"owner_agent": "openclaw",
"status": "approval_required",
"risk_tier": "high",
"required_approval_fields": [
"incident_id",
"approval_id",
"result_capture_template_id",
"expected_status_chain",
"owner_decision",
"rollback_owner"
],
"blocked_runtime_actions": [
"canonical_runtime_readback",
"result_capture_write",
"score_write",
"reviewer_queue_write"
],
"operator_guidance": "確認結果捕捉欄位、狀態鏈與 rollback owner 後,才能進入下一關 runtime readback 實作審查。",
"approval_required": true,
"runtime_write_allowed": false,
"evidence_hash": "sha256:1111111111111111111111111111111111111111111111111111111111111111"
},
{
"packet_id": "execution_failed_negative_learning_review",
"display_name": "執行失敗負向學習審查包",
"owner_agent": "hermes",
"status": "approval_required",
"risk_tier": "critical",
"required_approval_fields": [
"incident_id",
"failure_lane_id",
"matched_playbook_id",
"negative_learning_reason",
"human_review_owner",
"rollback_decision"
],
"blocked_runtime_actions": [
"learning_write",
"playbook_trust_write",
"gateway_queue_write",
"telegram_failure_receipt_send"
],
"operator_guidance": "失敗案例只能先形成可審查負向學習摘要,未經 owner 接受不得寫入 KM 或降低 PlayBook trust。",
"approval_required": true,
"runtime_write_allowed": false,
"evidence_hash": "sha256:2222222222222222222222222222222222222222222222222222222222222222"
},
{
"packet_id": "pending_human_gate_expiry_review",
"display_name": "人工閘門逾時審查包",
"owner_agent": "openclaw",
"status": "approval_required",
"risk_tier": "medium",
"required_approval_fields": [
"gate_id",
"pending_duration",
"owner_role",
"next_action",
"blocked_reason"
],
"blocked_runtime_actions": [
"reviewer_queue_write",
"gateway_queue_write",
"telegram_failure_receipt_send"
],
"operator_guidance": "逾時閘門要先產出明確人工下一步與卡點,不得自動轉成執行或通知轟炸。",
"approval_required": true,
"runtime_write_allowed": false,
"evidence_hash": "sha256:3333333333333333333333333333333333333333333333333333333333333333"
},
{
"packet_id": "manual_or_noop_result_acceptance",
"display_name": "人工或無操作結果接受包",
"owner_agent": "nemotron",
"status": "ready_for_owner_review",
"risk_tier": "medium",
"required_approval_fields": [
"incident_id",
"manual_reason",
"no_action_reason",
"evidence_refs",
"accepted_by"
],
"blocked_runtime_actions": [
"result_capture_write",
"score_write",
"learning_write"
],
"operator_guidance": "無操作結果必須說清楚為何沒有修復、要誰接手與下一次判定條件,避免 approved 後流程空轉。",
"approval_required": true,
"runtime_write_allowed": false,
"evidence_hash": "sha256:4444444444444444444444444444444444444444444444444444444444444444"
},
{
"packet_id": "post_write_verifier_receipt_package",
"display_name": "寫入後 verifier 收據批准包",
"owner_agent": "hermes",
"status": "blocked_by_policy",
"risk_tier": "critical",
"required_approval_fields": [
"verifier_id",
"readback_plan_id",
"rollback_lane_id",
"telegram_failure_gate_id",
"owner_acceptance_record"
],
"blocked_runtime_actions": [
"canonical_runtime_readback",
"rollback_work_item_write",
"telegram_failure_receipt_send",
"production_write"
],
"operator_guidance": "post-write verifier 仍停在批准包層;沒有 acceptance record 以前不得建立 runtime 收據或 rollback work item。",
"approval_required": true,
"runtime_write_allowed": false,
"evidence_hash": "sha256:5555555555555555555555555555555555555555555555555555555555555555"
}
],
"canonical_readback_plans": [
{
"plan_id": "result_capture_row_readback",
"display_name": "result capture row readback plan",
"owner_agent": "openclaw",
"status": "planned_no_runtime_read",
"query_scope": "incident_result_capture_rows",
"required_fields": [
"incident_id",
"approval_id",
"status_chain",
"repair_outcome",
"verifier_status"
],
"redaction_checks": [
"public_evidence_refs_only",
"secret_free_payload",
"operator_safe_summary"
],
"live_query_enabled": false,
"runtime_write_allowed": false,
"evidence_hash": "sha256:6666666666666666666666666666666666666666666666666666666666666666"
},
{
"plan_id": "score_fixture_parity_readback",
"display_name": "score fixture parity readback plan",
"owner_agent": "nemotron",
"status": "planned_no_runtime_read",
"query_scope": "critic_reviewer_score_fixtures",
"required_fields": [
"score_fixture_id",
"expected_score",
"actual_score",
"reviewer_delta",
"promotion_decision"
],
"redaction_checks": [
"no_private_inference_trace",
"no_secret_value",
"no_provider_payload"
],
"live_query_enabled": false,
"runtime_write_allowed": false,
"evidence_hash": "sha256:7777777777777777777777777777777777777777777777777777777777777777"
},
{
"plan_id": "playbook_trust_noop_readback",
"display_name": "PlayBook trust no-op readback plan",
"owner_agent": "hermes",
"status": "blocked_by_policy",
"query_scope": "playbook_trust_snapshot",
"required_fields": [
"playbook_id",
"trust_before",
"trust_after",
"reason",
"owner_review_id"
],
"redaction_checks": [
"no_unreviewed_learning_write",
"no_bulk_trust_mutation",
"no_secret_source"
],
"live_query_enabled": false,
"runtime_write_allowed": false,
"evidence_hash": "sha256:8888888888888888888888888888888888888888888888888888888888888888"
},
{
"plan_id": "verifier_receipt_readback",
"display_name": "verifier receipt readback plan",
"owner_agent": "openclaw",
"status": "planned_no_runtime_read",
"query_scope": "post_write_verifier_receipts",
"required_fields": [
"verifier_id",
"receipt_id",
"failure_receipt_gate",
"rollback_lane",
"owner_decision"
],
"redaction_checks": [
"failure_only_summary",
"sre_war_room_route_only",
"no_bot_api_payload"
],
"live_query_enabled": false,
"runtime_write_allowed": false,
"evidence_hash": "sha256:9999999999999999999999999999999999999999999999999999999999999999"
}
],
"rollback_drill_lanes": [
{
"lane_id": "result_capture_insert_rollback_drill",
"display_name": "result capture insert rollback drill",
"owner_agent": "openclaw",
"status": "planned_no_write",
"rollback_owner": "sre_owner",
"required_steps": [
"identify_result_capture_row",
"compare_verifier_receipt",
"mark_reversal_plan",
"collect_owner_acceptance"
],
"failure_if_missing": "沒有 rollback owner 與 verifier receipt 時,不得推進任何 result capture 寫入。",
"rollback_write_enabled": false,
"creates_runtime_write": false
},
{
"lane_id": "score_write_rollback_drill",
"display_name": "score write rollback drill",
"owner_agent": "nemotron",
"status": "planned_no_write",
"rollback_owner": "ai_quality_owner",
"required_steps": [
"snapshot_score_before",
"verify_score_delta",
"prepare_reversal_score",
"owner_acceptance_required"
],
"failure_if_missing": "評分回滾沒有 dry-run parity 前,只能停留在 fixture 層。",
"rollback_write_enabled": false,
"creates_runtime_write": false
},
{
"lane_id": "learning_write_rollback_drill",
"display_name": "learning write rollback drill",
"owner_agent": "hermes",
"status": "blocked_by_policy",
"rollback_owner": "knowledge_owner",
"required_steps": [
"extract_learning_candidate",
"review_source_incident",
"prepare_reversal_note",
"owner_review_required"
],
"failure_if_missing": "學習寫入涉及 KM 固化,沒有 owner review 前不可建立 rollback work item。",
"rollback_write_enabled": false,
"creates_runtime_write": false
},
{
"lane_id": "telegram_receipt_rollback_drill",
"display_name": "Telegram failure receipt rollback drill",
"owner_agent": "openclaw",
"status": "blocked_by_policy",
"rollback_owner": "sre_notification_owner",
"required_steps": [
"dedupe_receipt_candidate",
"verify_route_lock",
"prepare_suppression_key",
"owner_acceptance_required"
],
"failure_if_missing": "失敗收據未通過 dedupe 與路由鎖定時,不得發送或回寫 queue。",
"rollback_write_enabled": false,
"creates_runtime_write": false
}
],
"telegram_failure_receipt_gates": [
{
"gate_id": "receipt_payload_redaction",
"display_name": "Telegram failure receipt redaction gate",
"owner_agent": "openclaw",
"status": "ready_for_owner_review",
"required_evidence": [
"incident_id",
"failure_lane_id",
"next_action",
"blocked_reason",
"public_evidence_refs"
],
"failure_if_missing": "缺少 redaction digest 時不得建立失敗收據。",
"queue_write_enabled": false,
"telegram_send_enabled": false,
"bot_api_call_enabled": false,
"evidence_hash": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
},
{
"gate_id": "sre_war_room_route_lock",
"display_name": "AwoooI SRE 戰情室路由鎖定",
"owner_agent": "openclaw",
"status": "ready_for_owner_review",
"required_evidence": [
"route_id",
"channel_policy",
"legacy_route_suppression",
"dedupe_key"
],
"failure_if_missing": "沒有路由鎖定與 legacy route suppression不得送出 failure receipt。",
"queue_write_enabled": false,
"telegram_send_enabled": false,
"bot_api_call_enabled": false,
"evidence_hash": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
{
"gate_id": "delivery_correlation",
"display_name": "失敗收據 delivery correlation gate",
"owner_agent": "hermes",
"status": "blocked_by_policy",
"required_evidence": [
"message_correlation_id",
"incident_timeline_id",
"owner_review_id",
"readback_plan_id"
],
"failure_if_missing": "delivery correlation 未設計完成時,不得宣稱告警鏈路打通。",
"queue_write_enabled": false,
"telegram_send_enabled": false,
"bot_api_call_enabled": false,
"evidence_hash": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
},
{
"gate_id": "duplicate_suppression",
"display_name": "失敗收據重複抑制 gate",
"owner_agent": "openclaw",
"status": "ready_for_owner_review",
"required_evidence": [
"fingerprint",
"recurrence_window",
"suppression_reason",
"last_receipt_state"
],
"failure_if_missing": "缺少 dedupe / recurrence window 時只能進 reviewer queue preview不得發 Telegram。",
"queue_write_enabled": false,
"telegram_send_enabled": false,
"bot_api_call_enabled": false,
"evidence_hash": "sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd"
}
],
"operator_actions": [
{
"action_id": "op_review_runtime_readback_package",
"action_type": "review_approval_package",
"display_name": "審查 runtime readback 批准包",
"owner_agent": "openclaw",
"operator_instruction": "先確認五個批准包是否都有 owner、欄位、rollback owner 與 blocked actions再判定是否可進 P2-109。",
"runtime_write_allowed": false
},
{
"action_id": "op_validate_canonical_readback_plan",
"action_type": "validate_canonical_plan",
"display_name": "檢查 canonical readback plan",
"owner_agent": "nemotron",
"operator_instruction": "比對 readback 欄位、redaction check 與 evidence hash未通過時只退回設計不讀 live target。",
"runtime_write_allowed": false
},
{
"action_id": "op_review_rollback_drill",
"action_type": "review_rollback_drill",
"display_name": "審查 rollback drill",
"owner_agent": "hermes",
"operator_instruction": "確認每條 rollback lane 都有 owner、步驟與失敗條件沒有 acceptance record 不建立 work item。",
"runtime_write_allowed": false
},
{
"action_id": "op_review_failure_receipt_gate",
"action_type": "review_failure_receipt_gate",
"display_name": "審查 Telegram 失敗收據閘門",
"owner_agent": "openclaw",
"operator_instruction": "確認只允許 AwoooI SRE 戰情室、具備 dedupe 與 correlation本階段不得發送。",
"runtime_write_allowed": false
},
{
"action_id": "op_reject_or_promote_p2_109",
"action_type": "reject_or_promote",
"display_name": "退回或推進 P2-109",
"owner_agent": "openclaw",
"operator_instruction": "若批准包、readback plan、rollback drill、failure receipt gate 都完整,才可建立下一關 no-write implementation review。",
"runtime_write_allowed": false
}
],
"display_redaction_contract": {
"redaction_required": true,
"frontend_display_policy": "只顯示 owner-safe summary、redacted evidence hash、count 與 blocked action不顯示內部協作原文、機密值、原始 Telegram payload 或 provider 私有推理。",
"raw_prompt_display_allowed": false,
"private_reasoning_display_allowed": false,
"secret_value_display_allowed": false,
"raw_telegram_payload_display_allowed": false,
"work_window_transcript_display_allowed": false
},
"rollups": {
"approval_packet_count": 5,
"canonical_readback_plan_count": 4,
"rollback_drill_lane_count": 4,
"telegram_failure_receipt_gate_count": 4,
"operator_action_count": 5,
"approval_required_packet_count": 3,
"blocked_packet_count": 1,
"blocked_readback_plan_count": 1,
"blocked_rollback_lane_count": 2,
"blocked_telegram_gate_count": 1,
"approved_without_execution_meta_24h": 63,
"execution_failed_with_matched_24h": 1,
"owner_approval_received_count": 0,
"runtime_readback_execution_count": 0,
"result_capture_write_count": 0,
"score_write_count": 0,
"learning_write_count": 0,
"playbook_trust_write_count": 0,
"reviewer_queue_write_count": 0,
"gateway_queue_write_count": 0,
"telegram_failure_receipt_send_count": 0,
"bot_api_call_count": 0,
"rollback_work_item_write_count": 0,
"production_write_count": 0,
"secret_read_count": 0,
"destructive_operation_count": 0
}
}