Files
awoooi/docs/evaluations/ai_agent_report_runtime_readiness_2026-06-12.json
Your Name e0a86b6254
Some checks failed
Code Review / ai-code-review (push) Successful in 13s
CD Pipeline / tests (push) Failing after 1m8s
CD Pipeline / build-and-deploy (push) Has been skipped
CD Pipeline / post-deploy-checks (push) Has been skipped
Ansible / Reboot Recovery Contract / validate (push) Has been cancelled
feat(agents): route high risk through controlled automation
2026-06-26 19:19:40 +08:00

451 lines
16 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"schema_version": "ai_agent_report_runtime_readiness_v1",
"generated_at": "2026-06-12T04:35:00+08:00",
"program_status": {
"overall_completion_percent": 86,
"current_priority": "P2",
"current_task_id": "P2-403L",
"next_task_id": "P2-403M",
"read_only_mode": true,
"runtime_authority": "report_runtime_readiness_only_no_live_delivery_or_optimization",
"status_note": "P2-403L 已建立日週月報派送、Telegram Gateway queue、讀報回執、AI 讀報後分析、low / medium / high 受控自動處理與 post-action verifier 的啟動前閘門critical / secret / destructive / paid / force-push 仍 break-glass。"
},
"source_refs": [
"docs/evaluations/ai_agent_report_automation_review_2026-06-12.json",
"docs/evaluations/ai_agent_report_truth_actionability_review_2026-06-12.json",
"docs/evaluations/ai_agent_telegram_receipt_approval_package_2026-06-11.json",
"docs/evaluations/ai_agent_runtime_write_gate_review_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"
],
"activation_truth": {
"report_scheduler_contract_ready": true,
"telegram_gateway_queue_contract_ready": true,
"telegram_delivery_receipt_contract_ready": true,
"ai_readback_analysis_contract_ready": true,
"medium_low_auto_guard_contract_ready": true,
"high_risk_controlled_apply_contract_ready": true,
"critical_break_glass_gate_contract_ready": true,
"live_report_delivery_enabled": false,
"live_report_delivery_count_24h": 0,
"telegram_gateway_queue_write_enabled": false,
"telegram_gateway_queue_write_count_24h": 0,
"report_read_receipt_write_enabled": false,
"report_read_receipt_count_24h": 0,
"ai_analysis_runtime_enabled": false,
"ai_analysis_runtime_count_24h": 0,
"medium_low_auto_worker_enabled": true,
"medium_low_auto_execution_count_24h": 0,
"production_optimization_enabled": false,
"production_optimization_count_24h": 0,
"high_risk_auto_execution_enabled": true,
"high_risk_auto_execution_count_24h": 0,
"truth_note": "報表制度、風險政策與可視化已完成low / medium / high 的 worker 改走 allowlist、check-mode、rollback、verifier、KM / PlayBook trust 與 Telegram evidence。live 發送、queue write 與 production write 仍以 runtime readback 計數為準。"
},
"runtime_lanes": [
{
"lane_id": "report_scheduler",
"display_name": "日週月報排程器",
"owner_agent": "hermes",
"risk_tier": "low",
"target_runtime": "report_run snapshot generator",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"idempotent report_run_id",
"dry-run output hash",
"no external delivery in first run",
"daily / weekly / monthly cadence collision check"
],
"blocked_actions": [
"CronJob apply",
"Telegram send",
"AwoooP work item write"
]
},
{
"lane_id": "telegram_gateway_queue",
"display_name": "Telegram Gateway queue 草案",
"owner_agent": "hermes",
"risk_tier": "medium",
"target_runtime": "Telegram Gateway queue draft",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"SRE_GROUP_CHAT_ID injection verified",
"Gateway path only",
"failure-only immediate policy",
"daily digest noise budget"
],
"blocked_actions": [
"direct Telegram Bot API",
"bot logOut",
"secret payload read"
]
},
{
"lane_id": "telegram_delivery_receipt",
"display_name": "報表送達與讀報回執",
"owner_agent": "hermes",
"risk_tier": "medium",
"target_runtime": "delivery receipt read model",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"message_id redaction",
"ack timeout rule",
"retry ceiling",
"governance receipt readback"
],
"blocked_actions": [
"DB migration",
"live callback write",
"Telegram retry loop"
]
},
{
"lane_id": "ai_post_report_analysis",
"display_name": "AI 讀報後分析",
"owner_agent": "openclaw",
"risk_tier": "medium",
"target_runtime": "post-report analysis worker",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"sanitized report packet",
"OpenClaw risk arbitration",
"Hermes evidence dossier",
"NemoTron replay lane for non-live evaluation"
],
"blocked_actions": [
"production optimization",
"provider switch",
"private reasoning display"
]
},
{
"lane_id": "medium_low_auto_guard",
"display_name": "中低風險自動處理 guard",
"owner_agent": "openclaw",
"risk_tier": "high",
"target_runtime": "guarded medium / low auto worker",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"allow-list 產生於 from risk policy",
"dry-run first",
"post-action verifier",
"rollback / no-op evidence",
"failure-only Telegram report"
],
"blocked_actions": [
"production write",
"service restart",
"workflow change",
"package upgrade"
]
},
{
"lane_id": "high_risk_controlled_apply",
"display_name": "高風險受控自動執行",
"owner_agent": "openclaw",
"risk_tier": "high",
"target_runtime": "controlled apply packet",
"contract_status": "ready_for_owner_review",
"current_live_count_24h": 0,
"enablement_required": [
"allowlist route",
"check-mode / dry-run pass",
"maintenance window when needed",
"rollback owner",
"post-deploy verification plan"
],
"blocked_actions": [
"critical break-glass bypass",
"secret payload read",
"force push"
]
},
{
"lane_id": "post_action_verifier",
"display_name": "處理後 verifier 與回滾 lane",
"owner_agent": "nemotron",
"risk_tier": "high",
"target_runtime": "post-action verifier readback",
"contract_status": "blocked_by_runtime_gate",
"current_live_count_24h": 0,
"enablement_required": [
"canonical readback target",
"NemoTron replay regression",
"rollback work item template",
"verifier failure Telegram draft"
],
"blocked_actions": [
"live verifier execution",
"rollback work item write",
"cluster readback"
]
}
],
"automation_policies": [
{
"risk_id": "low",
"display_name": "低風險",
"approval_required": false,
"auto_allowed_after_guard": true,
"current_execution_enabled": true,
"required_guards": [
"idempotency key",
"no production write",
"dry-run hash",
"daily digest report"
],
"reporting_rule": "成功可進日報摘要;失敗或異常才即時告警。"
},
{
"risk_id": "medium",
"display_name": "中風險",
"approval_required": false,
"auto_allowed_after_guard": true,
"current_execution_enabled": true,
"required_guards": [
"OpenClaw risk arbitration",
"post-action verifier",
"rollback / no-op evidence",
"failure-only Telegram"
],
"reporting_rule": "成功進日報 / 週報verifier 失敗、重試耗盡或資料不一致才升級。"
},
{
"risk_id": "high",
"display_name": "高風險",
"approval_required": false,
"auto_allowed_after_guard": true,
"current_execution_enabled": true,
"required_guards": [
"allowlist route",
"check-mode / dry-run pass",
"回滾計畫",
"正式驗證"
],
"reporting_rule": "AI Agent 直接進 controlled apply失敗、verifier 不一致或 rollback 觸發才告警。"
},
{
"risk_id": "critical",
"display_name": "關鍵阻擋",
"approval_required": true,
"auto_allowed_after_guard": false,
"current_execution_enabled": false,
"required_guards": [
"break-glass 明確批准",
"secret redaction",
"audit trail",
"break-glass 值班窗口"
],
"reporting_rule": "預設禁止自動執行,僅能產生批准包。"
}
],
"report_delivery_cadence_gates": [
{
"cadence_id": "daily",
"display_name": "AI Agent 日報",
"scheduler_source": "daily_report_scheduler_contract",
"telegram_digest_policy": "action-required + failure-only immediate",
"recipient_room": "AwoooI SRE 戰情室",
"dry_run_required": true,
"current_delivery_enabled": false,
"live_delivery_count_24h": 0
},
{
"cadence_id": "weekly",
"display_name": "AI Agent 週報",
"scheduler_source": "weekly_report_scheduler_contract",
"telegram_digest_policy": "weekly owner packet",
"recipient_room": "AwoooI SRE 戰情室",
"dry_run_required": true,
"current_delivery_enabled": false,
"live_delivery_count_24h": 0
},
{
"cadence_id": "monthly",
"display_name": "AI Agent 月報",
"scheduler_source": "monthly_report_scheduler_contract",
"telegram_digest_policy": "monthly strategy packet",
"recipient_room": "AwoooI SRE 戰情室",
"dry_run_required": true,
"current_delivery_enabled": false,
"live_delivery_count_24h": 0
}
],
"telegram_route_readiness": {
"canonical_room": "AwoooI SRE 戰情室",
"secret_ref": "SRE_GROUP_CHAT_ID",
"gateway_required": true,
"direct_bot_api_allowed": false,
"bot_log_out_allowed": false,
"legacy_routes_must_converge": true,
"telegram_gateway_queue_write_enabled": false,
"e2e_delivery_verified": false,
"delivery_receipt_write_enabled": false,
"blocked_route_count": 3
},
"agent_post_report_actions": [
{
"agent_id": "openclaw",
"display_name": "OpenClaw",
"after_report_responsibility": "讀取報表後進行風險仲裁、判斷哪些 low / medium / high 方案可在 guard 通過後自動處理,哪些 critical 必須 break-glass。",
"allowed_without_approval": [
"產出風險評分",
"整理高風險 controlled apply 包",
"拒收不符合 guard 的自動化提案"
],
"blocked_until_approval": [
"production write",
"provider route change",
"critical / destructive execution"
],
"live_action_count_24h": 0
},
{
"agent_id": "hermes",
"display_name": "Hermes",
"after_report_responsibility": "整理日週月報、生成 Telegram 摘要草案、彙整工作量與處置回執。",
"allowed_without_approval": [
"產出報表草案",
"更新只讀治理 snapshot",
"彙整告警摘要"
],
"blocked_until_approval": [
"Telegram queue write",
"KM canonical write",
"workflow change"
],
"live_action_count_24h": 0
},
{
"agent_id": "nemotron",
"display_name": "NemoTron",
"after_report_responsibility": "對報表建議做離線 replay、回歸測試與失敗模式標籤作為是否升級到 runtime 的證據。",
"allowed_without_approval": [
"sanitized replay 評估",
"fixture regression 標籤",
"候選模型比較摘要"
],
"blocked_until_approval": [
"live verifier execution",
"production route",
"paid API call"
],
"live_action_count_24h": 0
}
],
"operator_decisions": [
{
"decision_id": "report_scheduler_dry_run",
"display_name": "允許日週月報排程 dry-run",
"risk_tier": "low",
"owner_agent": "hermes",
"approval_required": false,
"status": "ready_for_review",
"why_it_matters": "先讓系統產生可重放的 report_run snapshot統帥才能每天看見 Agent 工作量與風險變化。",
"next_safe_step": "建立 no-delivery dry-run runbook 與 hash readback。"
},
{
"decision_id": "telegram_gateway_queue_dry_run",
"display_name": "Telegram Gateway queue dry-run",
"risk_tier": "medium",
"owner_agent": "hermes",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "Telegram 是告警必到通道,但任何 queue write 都可能造成訊息洗版或錯群。",
"next_safe_step": "只寫 dry-run queue preview不送 Bot API並驗證 SRE_GROUP_CHAT_ID 注入。"
},
{
"decision_id": "delivery_receipt_read_model",
"display_name": "讀報回執 read model",
"risk_tier": "medium",
"owner_agent": "hermes",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "統帥要知道 AI Agent 是否真的發出、送達、讀過報告;但回執寫入需避免暴露 chat / message raw payload。",
"next_safe_step": "先建立 redacted receipt schema 與 API readback不接 live callback。"
},
{
"decision_id": "ai_post_report_analysis_worker",
"display_name": "AI 讀報後分析 worker dry-run",
"risk_tier": "medium",
"owner_agent": "openclaw",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "AI Agent 必須在看完報告後提出方案,而不是只顯示圖表;但第一階段只能用 sanitized packet。",
"next_safe_step": "以 committed report snapshot 做 offline worker dry-run不寫 production。"
},
{
"decision_id": "medium_low_auto_worker_no_write",
"display_name": "low / medium / high 受控自動處理 worker",
"risk_tier": "high",
"owner_agent": "openclaw",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "low / medium / high 直接由 AI Agent 自動處理,但必須受 allowlist、idempotency、check-mode、verifier 與 rollback 約束。",
"next_safe_step": "由 controlled worker 執行 allow-listed route並回寫 verifier / KM / PlayBook trust。"
},
{
"decision_id": "sre_room_route_convergence",
"display_name": "SRE 戰情室路由收斂",
"risk_tier": "high",
"owner_agent": "openclaw",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "所有正式告警與報表應進 AwoooI SRE 戰情室,旁路 chat / direct send 會讓送達證據失真。",
"next_safe_step": "走 Gateway / Alertmanager source-of-truth、dry-run diff、route smoke 與 failure-only Telegram。"
},
{
"decision_id": "post_action_verifier_live_readback",
"display_name": "post-action verifier live readback",
"risk_tier": "high",
"owner_agent": "nemotron",
"approval_required": false,
"status": "controlled_apply_ready",
"why_it_matters": "沒有 verifier 就不能讓自動處理真正修改正式環境;但 live readback 會觸碰 canonical runtime target。",
"next_safe_step": "先完成 fixture replay 與 read-only canonical target 清單。"
}
],
"display_redaction_contract": {
"redaction_required": true,
"raw_report_payload_display_allowed": false,
"private_reasoning_display_allowed": false,
"secret_value_display_allowed": false,
"work_window_transcript_display_allowed": false,
"allowed_display_fields": [
"已提交 snapshot 摘要",
"runtime lane 狀態",
"風險分級與批准需求",
"Telegram 路由邊界",
"live count 彙總"
],
"blocked_display_fields": [
"內部對話逐字稿",
"prompt 或思考鏈",
"secret / token / authorization header",
"raw Telegram payload",
"未遮蔽 message_id / chat_id"
]
},
"rollups": {
"runtime_lane_count": 7,
"report_cadence_gate_count": 3,
"operator_decision_count": 7,
"automation_policy_count": 4,
"ready_contract_count": 6,
"blocked_contract_count": 1,
"approval_required_decision_ids": [],
"current_enabled_count": 3,
"live_report_delivery_count": 0,
"live_ai_analysis_count": 0,
"live_medium_low_auto_execution_count": 0,
"telegram_gateway_queue_write_count": 0,
"high_risk_auto_execution_count": 0
}
}