fix(awooop): align approvals with controlled automation
All checks were successful
CD Pipeline / tests (push) Successful in 1m44s
Code Review / ai-code-review (push) Successful in 13s
CD Pipeline / build-and-deploy (push) Successful in 5m1s
CD Pipeline / post-deploy-checks (push) Successful in 1m33s

This commit is contained in:
Your Name
2026-06-27 20:59:28 +08:00
parent f461a118a3
commit f47ee7d966
4 changed files with 289 additions and 289 deletions

View File

@@ -934,7 +934,7 @@
"incidentFlow": {
"standard": "BPMN / Swimlane",
"title": "告警到修復流程",
"detail": "用泳道圖拆開 Telegram、OpenClaw、Hermes、MCP、Ansible、人工審批與驗證責任。",
"detail": "用泳道圖拆開 Telegram、OpenClaw、Hermes、MCP、Ansible、AI 受控審批與驗證責任。",
"nodes": {
"alert": "Alert / Sentry / SigNoz",
"ai": "AI 分析",
@@ -1129,7 +1129,7 @@
},
"approval": {
"metric": "pending {pending} / verified {verified}/{evaluated}",
"detail": "人工閘門 {humanGates},自動修復紀錄 {autoRepairRecords},操作紀錄 {operations}"
"detail": "AI 受控閘門 {humanGates},自動修復紀錄 {autoRepairRecords},操作紀錄 {operations}"
},
"verify": {
"metric": "stale {stale} / ratio {ratio}",
@@ -2452,7 +2452,7 @@
},
"sourceGapActions": {
"title": "PlayBook / Verifier 缺口處置板",
"subtitle": "每個 report-source-gap 都要有服務專屬 PlayBook 草案、Verifier 計畫、腳本與排程邊界,不能只丟給人工判斷。",
"subtitle": "每個 report-source-gap 都要有服務專屬 PlayBook 草案、Verifier 計畫、腳本與排程邊界,不能只停在人工判斷。",
"playbook": "PlayBook 草案",
"verifier": "Verifier 計畫",
"script": "腳本",
@@ -2472,11 +2472,11 @@
},
"funnel": {
"title": "告警到 AI 接手漏斗",
"subtitle": "快速看出訊號是否進來、處置是否形成、AI 能否接手、還有多少卡在人工或審核。",
"subtitle": "快速看出訊號是否進來、處置是否形成、AI 能否接手、還有多少卡在補齊或審核。",
"alerts": "告警訊號",
"dispositions": "處置紀錄",
"auto": "AI / 冷啟動接手",
"human": "人工處置",
"human": "AI 補齊處置",
"waiting": "待審核工作"
},
"assets": {
@@ -3467,18 +3467,18 @@
"blockedBoundary": "阻擋邊界",
"escalation": "升級條件",
"readOnlyReady": "只讀可推進",
"ownerGate": "需負責人閘門",
"ownerGate": "受控 / break-glass 閘門",
"reportOwnership": "報告責任",
"presets": {
"openclaw": {
"lane": "生產仲裁 / 高風險 gate",
"question": "候選 Agent 是否已通過 replay、shadow、canary、成本、安全與可觀測性證據足以改變生產決策",
"escalation": "只有 replay / shadow / canary 與 owner approval 全部補齊後,才可進入 provider switch 或 OpenClaw replacement review。"
"escalation": "只有 replay / shadow / canary、controlled gate 與 verifier 全部補齊後,才可進入 provider switch 或 OpenClaw replacement review。"
},
"hermes": {
"lane": "報告治理 / 知識沉澱",
"question": "日報、週報、月報是否已把證據、圖表、RAG 摘要與 no-send Telegram 草稿整理到可審核狀態?",
"escalation": "只要涉及實發 Telegram、Bot APIreport receipt write 或未脫敏來源內容,就必須停在負責人閘門。"
"escalation": "實發 Telegram、Bot APIreport receipt write 走受控 Gateway / verifier未脫敏來源內容與 critical 外發才進 break-glass。"
},
"nemotron": {
"lane": "離線 replay / 模型能力比較",
@@ -3492,8 +3492,8 @@
},
"reviewer": {
"lane": "交叉審查 / owner queue",
"question": "跨 Agent 產出的證據是否足以支持低中風險自動處理,或必須升級成高風險 owner review",
"escalation": "只要涉及 live query、runtime write、機密、部署或外部發送,就維持人工批准。"
"question": "跨 Agent 產出的證據是否足以支持低 / 中 / 高風險 controlled apply或必須升級成 critical break-glass",
"escalation": "live query、runtime write、部署或外部發送走 allowlist、check-mode、verifier 與 rollback機密、破壞性 DB、付費 provider、force push 才進 break-glass。"
}
}
},
@@ -3542,7 +3542,7 @@
"runtimeReadback": "Runtime readback",
"resultCapture": "Result capture 寫入",
"productionWrite": "Production 寫入",
"ownerApproval": "Owner 批准",
"ownerApproval": "Critical / break-glass",
"note": "真相註記"
}
},
@@ -3581,11 +3581,11 @@
"schedule": "排程",
"nextRun": "下次執行",
"sourcePolicy": "來源政策",
"reviewGate": "人工關卡",
"reviewGate": "受控關卡",
"triggerModes": "觸發模式"
},
"decisionQueue": {
"title": "人工決策佇列",
"title": "AI 受控決策佇列",
"priority": "P",
"status": "狀態",
"nextAction": "下一步",
@@ -3596,8 +3596,8 @@
"statuses": {
"baseline_protected": "基準受保護",
"blocked_needs_evidence": "需要證據",
"operator_review_required": "需要人工審查",
"operator_priority_review": "優先級審查",
"operator_review_required": "需要受控審查",
"operator_priority_review": "優先級受控審查",
"watch_only_blocked": "觀察已阻擋",
"watch_only_monitoring": "觀察中",
"registered_no_review": "尚未審查"
@@ -3662,7 +3662,7 @@
"metrics": {
"backlog": "待辦進度",
"readback": "讀回關卡",
"gates": "人工 gate",
"gates": "受控 gate",
"liveWrites": "正式寫入"
}
},
@@ -3712,7 +3712,7 @@
"low": "低風險",
"medium": "中風險",
"high": "高風險",
"noOwnerReview": "低/中/高人工 gate={value}",
"noOwnerReview": "低/中/高 owner_review_required={value}",
"verifier": "post-apply verifier={value}",
"km": "KM / PlayBook 回寫={value}"
},
@@ -3727,22 +3727,22 @@
"readOnlyInvestigation": {
"label": "主動巡檢與證據蒐集",
"detail": "只讀探針 {probes} 個,服務需處置訊號 {health} 個。",
"next": "下一步:整理 owner packetruntime blocker {blocked} 個。"
"next": "下一步:整理 controlled packetruntime blocker {blocked} 個。"
},
"dryRunCandidate": {
"label": "乾跑候選與套用審查",
"label": "乾跑候選與受控套用",
"detail": "乾跑證據 {evidence} 筆Verifier plan {verifier} 個。",
"next": "下一步:{review} 個候選進 owner review不直接執行。"
"next": "下一步:{review} 個候選進 controlled apply 檢查,不繞過 verifier。"
},
"shadowReplay": {
"label": "Nemotron replay / shadow",
"detail": "無寫入 replay {replays} 次Verifier shadow case {verifier} 個。",
"next": "下一步:{approvals} 個 checkpoint 需批准才可升級。"
"next": "下一步:{approvals} 個 checkpoint 需 controlled gate 才可升級。"
},
"permissionModel": {
"label": "操作權限模型",
"detail": "Gate transition {gates} 條blocked category {blocked} 個。",
"next": "下一步:{approvals} 類仍需人工批准。"
"next": "下一步:{approvals} 類進 controlled gatecritical 才 break-glass。"
},
"reportTelegram": {
"label": "日週月報與 Telegram receipt",
@@ -3758,7 +3758,7 @@
"agentWorkload": {
"title": "AI Agent 工作量與專業分工",
"badge": "OpenClaw / Hermes / Nemotron / Security-SRE",
"summary": "目前可見工作量 {workload} 件;其中負責人審核 {review} 件、阻擋 {blocked} 件,正式寫入 / Telegram / 機密讀取 / 破壞性操作邊界總數 {live}。",
"summary": "目前可見工作量 {workload} 件;其中受控審查 {review} 件、阻擋 {blocked} 件,正式寫入 / Telegram / 機密讀取 / 破壞性操作邊界總數 {live}。",
"labels": {
"review": "審核 {count}",
"blocked": "阻擋 {count}"
@@ -3766,10 +3766,10 @@
"agents": {
"openclaw": {
"label": "OpenClaw",
"mission": "仲裁、風險分級、乾跑候選與負責人審核包主責;不靠身份保護,仍接受市場與回放數據挑戰。",
"telegram": "Telegram{reviews} 件需審核時只產摘要/批准包,不直接發正式處置。",
"mission": "仲裁、風險分級、乾跑候選與受控審查包主責;不靠身份保護,仍接受市場與回放數據挑戰。",
"telegram": "Telegram{reviews} 件需審核時只產摘要/受控處置包,不直接繞過 Gateway。",
"learning": "學習:承接 {candidates} 個 PlayBook / KM 候選,等待 gate 後寫回。",
"next": "下一步:整理 {dryRuns} 個乾跑候選與 {high} 個高風險審核包。"
"next": "下一步:整理 {dryRuns} 個乾跑候選與 {high} 個高風險 controlled apply 包。"
},
"hermes": {
"label": "Hermes",
@@ -3812,7 +3812,7 @@
"criticReplay": {
"label": "Critic 回放評分",
"detail": "回放 {replays} 次、scorecard {scorecards} 張shadow 通過 {passed}/{total}。",
"next": "下一步:{approvals} 個升級 checkpoint 等 owner review。"
"next": "下一步:{approvals} 個升級 checkpoint 等 controlled review。"
},
"telegramReceipt": {
"label": "Telegram 回執閉環",
@@ -3829,16 +3829,16 @@
"professionalJudgment": {
"title": "AI Agent 專業判斷矩陣",
"badge": "判斷依據 / 信心 / 建議 / Gate",
"summary": "目前顯示 {agents} 位 Agent 的專業判斷;採用證據 {evidence} 件,需 gate / owner review {gates} 件,正式寫入與 Telegram 實送邊界 {live}。",
"summary": "目前顯示 {agents} 位 Agent 的專業判斷;採用證據 {evidence} 件,需 controlled gate / break-glass {gates} 件,正式寫入與 Telegram 實送邊界 {live}。",
"auditLine": "邊界只讀取治理快照與脫敏證據deploy marker + production readback 才算上線非產品對話、secrets、Telegram token、runtime write 全部不展示、不送出。",
"items": {
"openclaw": {
"role": "仲裁與風險分級:先看乾跑證據、owner packet 與高風險接受度。",
"judgment": "判斷:乾跑需審 {dryRuns},高風險 {high},已接受 owner response {accepted};未接受前只做候選與審核包。",
"role": "仲裁與風險分級:先看乾跑證據、controlled packet 與高風險 verifier。",
"judgment": "判斷:乾跑需審 {dryRuns},高風險 {high},已接受控制證據 {accepted};未通過前只做候選與審核包。",
"evidence": "證據 {evidence} / packet {packets}",
"confidence": "低/中 {low}/{medium}",
"recommendation": "建議blocked {blocked} 先維持人工 gate不升級 runtime。",
"gate": "GateOpenClaw owner review {reviews}。"
"recommendation": "建議blocked {blocked} 先維持 controlled gate不升級 runtime。",
"gate": "GateOpenClaw controlled review {reviews}。"
},
"hermes": {
"role": "報告與記憶:把工作量、回執、圖表與 RAG / KM 摘要整理成可讀證據。",
@@ -3861,7 +3861,7 @@
"judgment": "判斷gate {gates}、權限類別 {categories}、blocked {blocked};先保障不誤執行。",
"evidence": "Verifier {verifiers} / health {health}",
"confidence": "write {write} / TG {telegram}",
"recommendation": "建議:高風險 {high} 先整理 owner packetrollback owner。",
"recommendation": "建議:高風險 {high} 先整理 controlled packetrollback 與 verifier。",
"gate": "Gateruntime / write blocked {blocked}。"
}
}
@@ -3869,7 +3869,7 @@
"autonomyMaturity": {
"title": "AI Agent 自動化成熟度與接管缺口",
"badge": "Sensor → Candidate → Gate → Verifier → Learning",
"summary": "目前追蹤 {rows} 條成熟度鏈;證據 {evidence} 件,可自動準備 {prepared} 件,待 Gate / owner review {gates} 件,正式寫入 {live}。",
"summary": "目前追蹤 {rows} 條成熟度鏈;證據 {evidence} 件,可自動準備 {prepared} 件,待 controlled gate / break-glass {gates} 件,正式寫入 {live}。",
"stages": {
"sensor": "L1-L2 Sensor / Evidence",
"candidate": "L3-L4 Candidate / Dry-run",
@@ -3933,7 +3933,7 @@
"marketRadar": "版本雷達",
"noSendPreview": "無發送報告預覽",
"autoPrepare": "自動準備候選",
"ownerReview": "owner review",
"ownerReview": "controlled review",
"shadowReplay": "shadow replay",
"learningDraft": "學習草稿"
},
@@ -3964,7 +3964,7 @@
"versionRadar": {
"label": "套件、工具、AI 技術版本雷達",
"detail": "過期來源 {stale}、漂移/升級候選 {candidates}。",
"next": "Nemotron 做 no-write 比對blocked 操作 {blocked} 先轉 owner packet。"
"next": "Nemotron 做 no-write 比對blocked 操作 {blocked} 先轉 controlled packet。"
},
"reportOps": {
"label": "日報 / 週報 / 月報產製",
@@ -4014,7 +4014,7 @@
"ownerGate": "Owner gate 後通知"
},
"learning": {
"ownerReview": "維護窗與 owner review 寫回待批准。",
"ownerReview": "維護窗與 controlled review 寫回待批准。",
"snapshot": "以 committed snapshot 累積資產知識。",
"redactedEvidence": "只寫入脫敏證據,不寫入未脫敏紀錄。",
"versionRadar": "版本雷達產生候選,升級仍需 gate。",
@@ -4444,7 +4444,7 @@
"tool_install_or_ci_change_approval_required": "工具安裝或 CI 變更需批准",
"workflow_and_bot_approval_required": "workflow 與 bot 需批准",
"workflow_modification_approval_required": "workflow 修改需批准",
"write_requires_human_gate": "寫入需人工關卡",
"write_requires_human_gate": "寫入需受控關卡",
"cost_data_approval_required": "需費用與資料邊界批准"
}
},
@@ -5180,7 +5180,7 @@
"readinessTitle": "準備度矩陣",
"policyTitle": "通知政策",
"targetsTitle": "關鍵備份目標",
"noBlocker": "無目標層阻擋restore 仍需人工批准。",
"noBlocker": "無目標層阻擋restore 仍需 break-glass 批准。",
"noEvidence": "尚無證據",
"metrics": {
"targets": "目標",
@@ -7094,14 +7094,14 @@
}
},
"ownerApprovedFixturePromotionGate": {
"title": "P2-114 負責人批准 fixture promotion gate",
"title": "P2-114 controlled fixture promotion gate",
"source": "產生 {generated};目前 {current};下一步 {next}",
"priorGateTitle": "前一關 promotion gate",
"truthTitle": "Owner approval truth",
"truthTitle": "Controlled approval truth",
"redactionTitle": "前端遮蔽契約",
"metrics": {
"overall": "完成度",
"packets": "owner packet",
"packets": "controlled packet",
"templates": "acceptance template",
"reviews": "fixture review",
"verifiers": "無寫入 verifier",
@@ -7110,7 +7110,7 @@
"approvalRequired": "需批准",
"blocked": "阻擋",
"critical": "critical blocker",
"ownerApprovals": "owner 批准",
"ownerApprovals": "critical 批准",
"acceptanceWrites": "acceptance 寫入",
"executions": "promotion 執行",
"canonicalReads": "canonical 讀取",
@@ -7131,7 +7131,7 @@
"promotionGateLoaded": "P2-113 loaded={value}",
"packageReady": "package ready={value}",
"acceptanceReady": "acceptance ready={value}",
"ownerApproval": "負責人批准={value}",
"ownerApproval": "break-glass 批准={value}",
"telegramSend": "Telegram 發送={value}",
"resultWrite": "結果寫入={value}",
"redactionRequired": "redaction={value}",
@@ -7154,7 +7154,7 @@
"runtimePromotionAllowed": "runtime promotion={value}"
},
"packetStatuses": {
"ready_for_owner_review": "待 負責人審查",
"ready_for_owner_review": "待受控審查",
"approval_required": "需批准",
"blocked_by_policy": "政策阻擋"
},
@@ -7187,7 +7187,7 @@
"critical": "關鍵"
},
"actionTypes": {
"review_owner_packet": "審查 owner packet",
"review_owner_packet": "審查 controlled packet",
"verify_acceptance_template": "驗證 acceptance template",
"confirm_verifier_plan": "確認 verifier plan",
"lock_blocked_promotion": "鎖定 blocked promotion",
@@ -7197,7 +7197,7 @@
"canonicalRuntimeReadbackOwnerAcceptance": {
"title": "P2-115 canonical runtime readback 負責人驗收",
"source": "產生 {generated};目前 {current};下一步 {next}",
"priorGateTitle": "前一關 owner promotion gate",
"priorGateTitle": "前一關 controlled promotion gate",
"truthTitle": "Canonical readback 負責人驗收 truth"
},
"failureReceiptNoSendReplay": {
@@ -8613,9 +8613,9 @@
"route": "流向Run 監控 / 事件詳情"
},
"approval": {
"title": "人工閘門",
"signal": "高風險待批准",
"owner": "負責:SRE approve / reject",
"title": "AI 受控閘門",
"signal": "低 / 中 / 高風險待 AI policy / verifier 判定",
"owner": "負責:AI policy + SRE break-glass reviewer",
"route": "流向:審批佇列"
},
"execute": {
@@ -8625,9 +8625,9 @@
"route": "流向:執行狀態 / Audit"
},
"manual": {
"title": "人工升級",
"signal": "AI 無法安全修復",
"owner": "負責:戰情室接手",
"title": "AI 補齊升級",
"signal": "缺 PlayBook / verifier / rollback",
"owner": "負責:AI 戰情室補齊",
"route": "流向AwoooI SRE 戰情室"
}
},
@@ -8820,7 +8820,7 @@
},
"highValueConfigOwnerPacket": {
"title": "高價值配置 Owner Packet",
"subtitle": "AwoooP 首頁只讀顯示 IwoooS 產生的高價值配置 owner packet 草案;目前只是收件候選狀態,不送 request、不標記收到或接受也不開任何執行期入口。",
"subtitle": "AwoooP 首頁只讀顯示 IwoooS 產生的高價值配置 controlled packet 草案;目前只是收件候選狀態,不送 request、不標記收到或接受也不開任何執行期入口。",
"badge": "只讀 packet",
"openIwooos": "開啟 IwoooS",
"refsTitle": "Owner packet 參照",
@@ -8846,7 +8846,7 @@
}
},
"refs": {
"packetDraft": "高價值配置 owner packet 草案已由分類 Gate 產生,但尚未送出。",
"packetDraft": "高價值配置 controlled packet 草案已由分類 Gate 產生,但尚未送出。",
"c0Scope": "目前快照已有 Nginx public gateway 與 DNS / TLS / certbot C0 packet仍只進 owner gate不代表 reload、renew 或 route change。",
"s49Envelope": "欄位沿用 S4.9 canonical owner response envelope但收件與接受計數仍是 0。",
"runtimeBoundary": "IwoooS projection 固定 runtime gate 0AwoooP 只能鏡像狀態。"
@@ -8868,8 +8868,8 @@
},
"operatorSop": {
"eyebrow": "操作 SOP 判讀",
"title": "人工卡點與自動化缺口接手面板",
"subtitle": "把阻塞、修復候選、資產沉澱與負責人審查集中成一條操作 rail先判斷狀態再下鑽 Runs、工作項、總帳與批准。",
"title": "AI 受控卡點與自動化缺口接手面板",
"subtitle": "把阻塞、修復候選、資產沉澱與 controlled review 集中成一條操作 rail先判斷狀態再下鑽 Runs、工作項、總帳與受控批准。",
"boundary": "此面板只做只讀導覽與下一步判讀;不觸發通知、不改服務、不套用腳本,也不代表 runtime gate 已開。",
"metrics": {
"verifiedRate": "驗證率",
@@ -8884,15 +8884,15 @@
"conclusion": {
"label": "一眼判讀",
"blocked": {
"title": "目前仍有人工卡點,不能宣稱全自動閉環",
"detail": "先看阻塞工作項與人工閘門,再補 PlayBook、Verifier、rollback 與 owner review。"
"title": "目前仍有 AI 受控卡點,不能宣稱全自動閉環",
"detail": "先看阻塞工作項與 AI 受控閘門,再補 PlayBook、Verifier、rollback 與 controlled review。"
},
"inProgress": {
"title": "自動化資產正在補齊,仍需追蹤候選品質",
"detail": "優先確認候選是否有證據 refs、安全路由、回滾計畫與修復後驗證。"
},
"watching": {
"title": "目前沒有明顯人工卡點,持續觀察資料新鮮度",
"title": "目前沒有明顯 AI 受控卡點,持續觀察資料新鮮度",
"detail": "若日報、週報、告警或來源突然歸零,仍要回到 Runs 與來源健康檢查。"
}
},
@@ -8911,7 +8911,7 @@
},
"owner": {
"title": "接手",
"detail": "人工閘門與負責人審查"
"detail": "AI 受控閘門與負責人審查"
},
"verifier": {
"title": "驗證",
@@ -8920,8 +8920,8 @@
},
"cards": {
"blockers": {
"title": "阻塞與人工閘門",
"detail": "阻塞工作項 {workItems}人工閘門 {manual};資產阻塞 {assets}。",
"title": "阻塞與 AI 受控隊列",
"detail": "阻塞工作項 {workItems}AI 受控閘門 {manual};資產阻塞 {assets}。",
"action": "查看工作項"
},
"candidates": {
@@ -8936,21 +8936,21 @@
},
"owners": {
"title": "負責人接手",
"detail": "人工閘門 {manual};來源審查 {source};已記錄 {recorded}。",
"detail": "AI 受控閘門 {manual};來源審查 {source};已記錄 {recorded}。",
"action": "查看審查"
}
}
},
"automationBlockerMap": {
"eyebrow": "告警自動化卡點總盤",
"title": "為什麼仍需人工處理",
"title": "為什麼仍需 AI 補齊處理",
"subtitle": "把焦點事故從收件、證據、候選、PlayBook、安全路由、放行、Verifier 到學習回寫拆成可量化 lane先看卡在哪裡再看下方詳細證據。",
"completion": "自動化閉環就緒度",
"boundary": "目前仍有 {blocked} 個阻擋點;這是只讀判讀,不代表 runtime gate 已開或可直接套用修復。",
"blockedLabel": "卡點 {count}",
"nextAction": "下一步:{value}",
"metrics": {
"manual": "人工閘門",
"manual": "AI 受控閘門",
"gap": "自動化缺口",
"verified": "已驗證修復",
"runtime": "Runtime gate"
@@ -9040,7 +9040,7 @@
},
"playbook": {
"title": "PlayBook",
"detail": "OpenClaw 修復候選、服務專屬策略、trust 與人工閘門。",
"detail": "OpenClaw 修復候選、服務專屬策略、trust 與 AI 受控閘門。",
"next": "下一步:把通用兜底改成服務專屬 PlayBook補 rollback 與適用條件。"
},
"script": {
@@ -9056,7 +9056,7 @@
"verifier": {
"title": "Verifier",
"detail": "status-chain、remediation history、quality summary 與最終驗證。",
"next": "下一步:每次修復或人工接手都必須留下 success / degraded / failed 判定。"
"next": "下一步:每次修復、AI 補齊或 break-glass 都必須留下 success / degraded / failed 判定。"
}
},
"sources": {
@@ -9202,7 +9202,7 @@
"gates": {
"sourceDossier": "入站告警必須能查到 received / incident_linked / 來源 refs",
"autoRepair": "必須同時有 auto_repair、verification_result=success與KM 回寫",
"recurrenceWorkItems": "Run 完成無修復、修復失敗與人工閘門必須進入可追蹤工作項",
"recurrenceWorkItems": "Run 完成無修復、修復失敗與 AI 受控閘門必須進入可追蹤工作項",
"aiRouteRepairWorkItem": "Provider lane 降級時必須顯示 evidence、owner、PlayBook候選與是否可自動修復",
"reportSourceGapOwnerReview": "每個 report-source-gap 必須有 PlayBook 草案、Verifier 計畫、腳本 readback、排程 無發送 與 負責人審查;不得把全 0 當健康或自動執行授權",
"configDriftFsm": "同一 drift fingerprint 必須顯示重複、PR、零 diff、交接與下一步",
@@ -9223,7 +9223,7 @@
"evidence": {
"channelEvents": "最近 Alertmanager 通道事件:{count}",
"autoRepair": "已驗證自動修復:{verified}/{evaluated}",
"recurrenceWorkItems": "重複告警待處理:{open};無修復:{gap};修復失敗:{failed}人工閘門:{manual};來源待審:{source}",
"recurrenceWorkItems": "重複告警待處理:{open};無修復:{gap};修復失敗:{failed}AI 受控閘門:{manual};來源待審:{source}",
"recurrenceLatest": "最新:{alert} / {incident}",
"recurrenceReason": "原因:{reason}",
"recurrenceSourceReviewRecorded": "來源審核已寫入歷史:{count}",
@@ -9242,7 +9242,7 @@
"aiRouteRepairOwner": "Owner{owner};主責 Agent{lead}",
"aiRouteRepairPlaybook": "PlayBook{playbook};步驟 {steps}",
"aiRouteRepairSafety": "可安全自動修復:{safe}",
"aiRouteRepairSummary": "AI route 目前由 {selected} 承接;下一步:{action};需人工介入{human}",
"aiRouteRepairSummary": "AI route 目前由 {selected} 承接;下一步:{action};需 AI 補齊{human}",
"aiRouteRepairUnavailable": "AI route repair evidence 尚未回傳",
"reportSourceGapOwnerReview": "報表資料源缺口:{gaps}PlayBook 草案 {playbooks}Verifier 計畫 {verifiers};需 owner {owners}",
"reportSourceGapLatest": "最新工作項:{workItem}route={route}",
@@ -9318,7 +9318,7 @@
},
"adr100Remediation": {
"title": "ADR-100 補救工作佇列",
"subtitle": "補救 {total} 筆AI可接手 {ready};需人工 / PlayBook 改造 {human}",
"subtitle": "補救 {total} 筆AI可接手 {ready};需 AI 補齊 / PlayBook 改造 {human}",
"openGovernance": "開啟治理",
"empty": "目前沒有非成功驗證補救工作;若 SLO 再出現 degraded / failed會在這裡形成可操作項。",
"unknownAlert": "未知告警",
@@ -9357,7 +9357,7 @@
"closed": "已符合關閉條件,保留歷史證據即可",
"investigateActiveGap": "仍有新缺口,檢查新 Telegram reply_markup trace 寫入",
"verifyInstrumentation": "沒有復原訊號,檢查 TelegramGateway / 時間線觀測埋點",
"waitDecay": "等待舊 backlog 24h decay不需人工處理",
"waitDecay": "等待舊 backlog 24h decay不需 AI 補齊處理",
"observeRecovery": "觀察復原訊號,先不開人工任務"
},
"claim": {
@@ -9588,7 +9588,7 @@
},
"readiness": {
"ready": "可乾跑",
"blocked": "需人工排除",
"blocked": "需 AI 補齊排除",
"completed": "已完成",
"failed": "失敗待處理"
}
@@ -9949,7 +9949,7 @@
"flow": {
"ingest": {
"title": "告警接收",
"detail": "事件已進入 AwoooP 真相鏈與 Telegram 人工處置面。"
"detail": "事件已進入 AwoooP 真相鏈與 Telegram AI 受控處置面。"
},
"evidence": {
"title": "證據補齊",
@@ -9975,10 +9975,10 @@
"mcp_evidence_refs": "MCP / Sentry / SigNoz / K8s / log 證據參照。",
"repair_command": "受控修復命令或 Ansible playbook不能是純診斷命令。",
"rollback_command": "修復失敗時的回滾或安全停止方案。",
"verifier_plan": "修復後如何驗證成功、失敗與是否要升級人工。",
"verifier_plan": "修復後如何驗證成功、失敗與是否要升級 AI 補齊或 break-glass。",
"owner_review": "負責人、風險等級、適用條件與批准紀錄。",
"script_or_ansible_ref": "腳本或 Ansible 參照,必須能被安全路由與 reviewer 查到。",
"schedule_or_monitoring_rule_ref": "排程、監控規則或 recurrence 偵測參照,避免同類告警只靠人工記憶。",
"schedule_or_monitoring_rule_ref": "排程、監控規則或 recurrence 偵測參照,避免同類告警只靠人工記憶或口頭交接。",
"km_update_plan": "KM 更新草稿與 負責人審查 計畫,避免錯知識直接固化。",
"automation_asset_record": "自動化資產紀錄,包含 asset id、owner、狀態、來源與下一步。"
},
@@ -10018,21 +10018,21 @@
"writebackTitle": "必須回寫的結果",
"writebacks": {
"incident_timeline_stage_update": "Incident timeline 必須標記目前階段、處置包、owner 與下一步。",
"execution_or_manual_handoff_result": "無執行時也要寫入人工接手結果,不能只留下批准紀錄。",
"execution_or_manual_handoff_result": "無執行時也要寫入 AI 補齊或 break-glass 結果,不能只留下批准紀錄。",
"verifier_result": "Verifier 要能記錄成功、失敗、降級或尚未執行。",
"km_update_draft": "Hermes 產生 KM 草稿,負責人審查 後才可寫入高影響知識。",
"playbook_trust_update": "PlayBook 成功 / 失敗 / 未執行都要回寫 trust 與適用條件。",
"automation_asset_inventory_record": "資產清冊要留下 KM、PlayBook、腳本、排程、Verifier 的 ID 與狀態。"
},
"guardrailTitle": "阻擋原因與禁止誤讀",
"blocker": "目前缺少可信修復候選;系統只能建立人工草案工作項,不能把 no-action、診斷結果或通用兜底當作已修復。",
"blocker": "目前缺少可信修復候選;系統必須建立 AI 補齊草案工作項,不能把 no-action、診斷結果或通用兜底當作已修復。",
"nextStep": "請先補 PlayBook 草案與 MCP evidence再由 負責人審查 決定是否送審批;在此之前不會自動執行、不會寫入成功修復,也不會更新 KM 為已解決。",
"chainTitle": "真相鏈對照",
"chain": {
"stage": "目前階段",
"repair": "修復狀態",
"next": "真相鏈下一步",
"human": "需要人工"
"human": "需要 AI 補齊"
},
"chainHint": "下方完整 status-chain 與 incident timeline 會用同一個 Incident 查詢;如果仍沒有資料,代表資料鏈路還沒把這筆告警完整串上。",
"openRuns": "打開 Runs",
@@ -10040,7 +10040,7 @@
},
"recurrence": {
"title": "重複告警工作項",
"subtitle": "把 run_completed_no_repair、修復失敗與人工閘門接成可追蹤 work item",
"subtitle": "把 run_completed_no_repair、修復失敗與 AI 受控閘門接成可追蹤 work item",
"open": "待處理 {count}",
"automationGap": "無修復 {count}",
"failed": "修復失敗 {count}",
@@ -10110,7 +10110,7 @@
},
"handoffKinds": {
"ticket_proposal": "Ticket 提案",
"manual_review": "人工覆核",
"manual_review": "AI 補齊覆核",
"unknown": "未知"
},
"handoffStatuses": {
@@ -10157,7 +10157,7 @@
"auto_repair_succeeded_unverified": "修復待驗證",
"auto_repair_failed": "修復失敗",
"auto_repair_recorded": "修復已記錄",
"manual_gate": "需人工閘門",
"manual_gate": "需 AI 受控閘門",
"investigating": "調查中",
"run_completed_no_repair": "Run 完成無修復",
"source_correlation_review": "來源證據待配對",
@@ -10229,7 +10229,7 @@
"nextStatusChain": "等待狀態鏈批次回補,或打開 Incident 詳情確認",
"statusChainPending": "狀態鏈待回補",
"statuses": {
"needsHuman": "需人工",
"needsHuman": "需 AI 補齊",
"failed": "執行失敗",
"verified": "已驗證",
"executed": "已執行",
@@ -10249,7 +10249,7 @@
"mcpCount": "MCP 調查 {count} 次",
"route": "MCP{route}",
"emptyShort": "尚未連到 AI 證據",
"manualGate": "下一步:人工審批",
"manualGate": "下一步:AI 受控審批",
"filters": {
"label": "AI 證據篩選",
"all": "所有 AI 證據",
@@ -10275,7 +10275,7 @@
"mcpObserved": "AI 已透過 MCP / 自建 MCP 收集證據,但尚未進入補救試跑或執行。",
"readOnlyDryRun": "AI 已走補救試跑,且最新紀錄沒有寫入 incident或auto-repair 狀態。",
"writeObserved": "最新補救紀錄含寫入旗標,審批前需確認狀態變更來源。",
"blocked": "補救試跑未通過或被 gate 阻擋,需人工確認卡點。",
"blocked": "補救試跑未通過或被 gate 阻擋,需 AI 補齊確認卡點。",
"observed": "此列已連到補救歷史,請進入 執行時間線 查看完整證據。"
},
"summary": {
@@ -10283,8 +10283,8 @@
"mcpObservedDetail": "列表已連到 MCP / 自建 MCP 調查證據",
"readOnly": "只讀試跑",
"readOnlyDetail": "最新證據顯示 AI 已試跑且未寫狀態",
"manualGate": "人工閘門",
"manualGateDetail": "AI 已停在 批准 gate需 approve / reject",
"manualGate": "AI 受控閘門",
"manualGateDetail": "AI 已停在 controlled gate需 policy / verifier / approve 判定",
"writeObserved": "寫入旗標",
"writeObservedDetail": "需確認是否為預期自動修復結果",
"callbackObserved": "TG Callback",
@@ -10346,8 +10346,8 @@
"unlinked": "{count} 筆尚未連 Run",
"limit": "最近 {count} 筆視窗",
"verifiedRepair": "{count} 組已驗證修復",
"sourceReview": "{count} 組 Sentry / SignOz 來源需人工配對",
"manualGates": "{count} 組人工閘門"
"sourceReview": "{count} 組 Sentry / SignOz 來源需 AI 輔助配對",
"manualGates": "{count} 組 AI 受控閘門"
},
"states": {
"pending": "待執行",
@@ -10366,14 +10366,14 @@
"auto_repair_succeeded_unverified": "修復待驗證",
"auto_repair_failed": "修復失敗",
"auto_repair_recorded": "修復已記錄",
"manual_gate": "需人工閘門",
"manual_gate": "需 AI 受控閘門",
"investigating": "調查中",
"run_completed_no_repair": "Run 完成無修復",
"source_correlation_review": "來源證據待配對",
"no_repair_record": "無修復記錄"
},
"workItemStatuses": {
"owner_review_ready": "草案待 owner review",
"owner_review_ready": "草案待 controlled review",
"draft_ready": "草案已準備",
"open": "工作項待處理",
"blocked": "工作項阻塞",
@@ -10399,7 +10399,7 @@
"count": "{total} 筆fallback {fallback};失敗 {failed}",
"emptyShort": "尚無詳情 / 歷史 callback",
"latest": "{action} · {incidentId}",
"needsHuman": "Callback 失敗需人工確認",
"needsHuman": "Callback 失敗需 AI 補齊確認",
"captureLine": "Snapshot{status};已捕捉 {captured} / 部分 {partial} / 未捕捉 {notCaptured}",
"captureMissing": "尚缺:{items}",
"captureStatuses": {
@@ -10429,7 +10429,7 @@
"sent": "Telegram callback reply 已用原格式送達。",
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字備援送達。",
"rescueSent": "Telegram 備援仍失敗後,已用救援純文字送達。",
"failed": "Telegram callback reply 最終送達失敗,需人工確認。",
"failed": "Telegram callback reply 最終送達失敗,需 AI 補齊確認。",
"observed": "Telegram callback reply 已記錄,但狀態不屬於標準分類。"
},
"events": {
@@ -10544,13 +10544,13 @@
}
},
"kmCompletion": {
"title": "KM Owner Review",
"title": "KM Controlled Review",
"status": "狀態:{status}",
"counts": "ready {ready} / blocked {blocked} / completed {completed} / failed {failed}",
"guardrail": "Guardrailwrites_on_read={writesOnRead}batch_writes_allowed={batchWrite}manual_review_required={manualReview}",
"related": "{entryId} · {readiness} · {nextAction}",
"noRelated": "本 Incident 尚未對到 owner-review completion item。",
"fetchFailed": "KM owner-review 摘要讀取失敗:{reason}",
"noRelated": "本 Incident 尚未對到 controlled-review completion item。",
"fetchFailed": "KM controlled-review 摘要讀取失敗:{reason}",
"openWorkItem": "開啟工作項",
"snapshotTitle": "Callback 當下 Evidence Snapshot",
"snapshotStatus": "當下狀態:{status}ready {ready} / blocked {blocked} / completed {completed} / failed {failed}",
@@ -10561,8 +10561,8 @@
"triageAutomation": "自動化:{state};可安全自動修復={safe}",
"triageBlocker": "卡點:{reason}",
"statuses": {
"matched_owner_review": "已匹配 負責人審查",
"no_related_owner_review": "未匹配 負責人審查",
"matched_owner_review": "已匹配受控審查",
"no_related_owner_review": "未匹配受控審查",
"fetch_failed": "讀取失敗",
"no_incident": "缺少 Incident",
"observed": "已記錄"
@@ -10628,7 +10628,7 @@
"primaryTitle": "目前由 {provider} 承接AI lane 正常",
"primaryDetail": "後續備援順序:{standby}。Gemini只在 Ollama lanes都不可用後接手目前下一步是持續監控與保留 fallback 證據。",
"fallbackTitle": "目前由 {provider} 接手AI lane 已降級",
"fallbackDetail": "已跳過:{skipped}。下一步:{action};需確認是否已有 Work Item、PlayBook與人工 gate。"
"fallbackDetail": "已跳過:{skipped}。下一步:{action};需確認是否已有 Work Item、PlayBook與 controlled gate。"
},
"degradedSummary": "目前由 {active} 接手;已跳過 {skipped};下一步:{action}",
"repairEvidence": {
@@ -10697,8 +10697,8 @@
"blockers": "卡點",
"writeFlags": "incident={incident} / autoRepair={autoRepair}",
"human": {
"yes": "需人工",
"no": "不需人工"
"yes": "需 AI 補齊",
"no": "不需 AI 補齊"
},
"fields": {
"stage": "階段",
@@ -10737,8 +10737,8 @@
"outcome": {
"summary": "處置結論",
"execution": "執行判定",
"notification": "人工通知通道",
"reason": "人工原因"
"notification": "受控通知通道",
"reason": "AI 補齊原因"
},
"applyGate": {
"title": "乾跑後套用閘門",
@@ -10785,9 +10785,9 @@
"releaseContractNextStepsTitle": "放行合約下一步",
"ownerReleaseDraftTitle": "AI 預填 Owner release 草案",
"ownerReleaseDraftAiPrefilled": "AI 已預填",
"ownerReleaseDraftHumanDecision": "人工決策",
"ownerReleaseDraftHumanOnly": "人工必審欄位",
"ownerReleaseDraftStillHuman": "仍需人工批准",
"ownerReleaseDraftHumanDecision": "break-glass 決策",
"ownerReleaseDraftHumanOnly": "break-glass 必審欄位",
"ownerReleaseDraftStillHuman": "仍需 break-glass 批准",
"checklistTitle": "Owner 審查清單",
"forbiddenTitle": "禁止動作",
"gates": {
@@ -11016,7 +11016,7 @@
"sources": "來源範圍",
"sourcesStatus": "缺口 {blockers}",
"sourcesDetail": "原始碼範圍只顯示脫敏代號,未完成證據前不得切主來源。",
"owner": "Owner gate",
"owner": "Owner evidence",
"ownerStatus": "待回覆 {waiting}",
"ownerDetail": "沒有負責人接受紀錄,就不把候選範圍當正式核准。",
"runtime": "Runtime gate",
@@ -11027,7 +11027,7 @@
"observability": "可觀測性",
"observabilityDetail": "主機、服務、網站入口、告警與接收證據。",
"knowledge": "知識與自動化",
"knowledgeDetail": "KM、PlayBook、腳本、verifier 與 owner review。",
"knowledgeDetail": "KM、PlayBook、腳本、verifier 與 controlled review。",
"codeReview": "推版審查",
"codeReviewDetail": "產品級防木馬、Aider / ElephantAlpha 與 release gate。"
}
@@ -11400,8 +11400,8 @@
"actions": {
"repair_alert_intake_or_outbound_mirror": "修復告警入庫或出站鏡像",
"route_incident_to_mcp_gateway_and_evidence_collectors": "把事件導入 MCP Gateway 與證據收集器",
"resolve_pending_or_expired_human_gate": "處理待處理 / 已過期人工閘門",
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成人工無動作",
"resolve_pending_or_expired_human_gate": "處理待處理 / 已過期 AI 受控閘門",
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成 AI 補齊無動作",
"write_auto_repair_execution_or_blocker_reason": "寫入自動修復執行或阻塞原因",
"run_post_execution_verification": "執行事後驗證並保存結果",
"write_km_or_learning_evidence": "回寫 KM / learning evidence",
@@ -11430,7 +11430,7 @@
},
"runRefs": {
"mirrorRunState": "AwoooP 執行監控可以理解資安鏡像,但只能當只讀候選。",
"readOnlyDryRun": "若未來產生試跑證據,也必須維持只讀與人工閘門語義。",
"readOnlyDryRun": "若未來產生試跑證據,也必須維持只讀與 AI 受控閘門語義。",
"ownerResponse": "負責人回覆已收到 / 已接受仍為 0任何執行進一步行動都要等待人工收件。",
"activeGates": "主動執行期閘門仍為 0不從執行監控頁開閘門或建立動作按鈕。"
}
@@ -11755,20 +11755,20 @@
"openTickets": "Tickets",
"empty": "無",
"flowTitle": "處理流程",
"handoffTitle": "審批與人工接手",
"handoffTitle": "審批與 AI 受控接手",
"timelineEmpty": "尚未取得 Incident timeline。",
"linkedExplanation": "此 Incident 已有 批准 / timeline 關聯;若下方待審清單為空,代表它可能已完成、過期、拒絕,或已轉成驗證後人工接手。",
"linkedExplanation": "此 Incident 已有 批准 / timeline 關聯;若下方待審清單為空,代表它可能已完成、過期、拒絕,或已轉成驗證後 AI 補齊接手。",
"unlinkedExplanation": "目前沒有對應 批准 id這代表此 Incident不是等待批准的狀態應從 Work Items / Runs 追下一步。",
"needsHuman": {
"yes": "需要人工",
"no": "不需人工"
"yes": "需要 AI 補齊",
"no": "不需 AI 補齊"
},
"metrics": {
"approvals": "關聯審批",
"stage": "目前階段",
"repair": "修復狀態",
"verification": "驗證",
"handoff": "人工接手"
"handoff": "AI 受控接手"
},
"handoff": {
"approvalIds": "Approval IDs",
@@ -11792,9 +11792,9 @@
},
"nextAction": "下一步",
"blocker": "阻擋原因",
"missingTitle": "缺少的 owner review / 安全路由欄位",
"missingTitle": "缺少的 control evidence / 安全路由欄位",
"missingEmpty": "未回報缺欄位;請仍以 runtime gate 與 verifier 為準",
"openWorkItem": "開啟 owner review",
"openWorkItem": "開啟 controlled work item",
"openRuns": "追蹤 Runs"
},
"evidence": {
@@ -12086,13 +12086,13 @@
"action": {
"eyebrow": "下一步判斷",
"approval": {
"title": "等待人工審批",
"detail": "AI 已停在人工閘門,尚未恢復。請從審批頁核准拒絕,所有決策都會回寫執行狀態與稽核紀錄。",
"title": "等待 AI 受控審批",
"detail": "AI 已停在 controlled gate,尚未恢復。請從審批頁核准拒絕或排入 verifier / rollback,所有決策都會回寫執行狀態與稽核紀錄。",
"primary": "前往審批決策"
},
"manual": {
"title": "需人工接手",
"detail": "AI 無法安全閉環,或執行已失敗 / 超時。請回執行監控比對同專案任務,必要時交由 SRE 戰情室處置。",
"title": "需 AI 補齊接手",
"detail": "AI 尚未安全閉環,或執行已失敗 / 超時。請回執行監控比對同專案任務,排入 PlayBook、rollback、verifier 或 break-glass。",
"primary": "回執行監控"
},
"completed": {
@@ -12107,7 +12107,7 @@
},
"observe": {
"title": "觀察中",
"detail": "目前尚未進入人工閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"detail": "目前尚未進入 AI 受控閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"primary": "回執行監控"
},
"evidence": {
@@ -12195,7 +12195,7 @@
"approvalDecision": {
"back": "返回審批佇列",
"viewTimeline": "查看執行時間線",
"eyebrow": "人工審批閘門",
"eyebrow": "AI 受控審批閘門",
"title": "審批決策",
"timeout": "審批期限",
"empty": "--",
@@ -12210,7 +12210,7 @@
"reject": "執行已拒絕,正在回到時間線"
},
"notWaiting": {
"title": "此執行目前不在人工審批狀態",
"title": "此執行目前不在 AI 受控審批狀態",
"detail": "目前狀態為 {state}。此頁不會顯示 approve / reject請回執行時間線檢查最新狀態。"
},
"gate5Projection": {
@@ -12319,7 +12319,7 @@
"runId": "執行 ID",
"approve": {
"title": "確認核准",
"body": "核准後,執行會從人工閘門恢復,繼續交由 Runtime / MCP 閘道 執行。",
"body": "核准後,執行會從 AI 受控閘門恢復,繼續交由 Runtime / MCP 閘道 執行。",
"warning": "此決策會寫入執行狀態、批准 token與稽核軌跡。",
"confirm": "確認核准"
},
@@ -12480,13 +12480,13 @@
"action": {
"eyebrow": "下一步判斷",
"approval": {
"title": "等待人工審批",
"detail": "AI 已停在人工閘門,尚未 恢復執行。請從審批頁 approvereject所有決策都會回寫 執行狀態與audit。",
"title": "等待 AI 受控審批",
"detail": "AI 已停在 controlled gate,尚未恢復執行。請從審批頁 approvereject 或排入 verifier / rollback,所有決策都會回寫執行狀態與 audit。",
"primary": "前往審批決策"
},
"manual": {
"title": "需人工接手",
"detail": "AI 無法安全閉環,或執行已失敗 / 超時。請回 Run 監控比對同專案任務,必要時交由 SRE 戰情室處置。",
"title": "需 AI 補齊接手",
"detail": "AI 尚未安全閉環,或執行已失敗 / 超時。請回 Run 監控比對同專案任務,排入 PlayBook、rollback、verifier 或 break-glass。",
"primary": "回 Run 監控"
},
"completed": {
@@ -12501,7 +12501,7 @@
},
"observe": {
"title": "觀察中",
"detail": "目前尚未進入人工閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"detail": "目前尚未進入 AI 受控閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"primary": "回 Run 監控"
},
"evidence": {
@@ -12537,7 +12537,7 @@
"approvalDecision": {
"back": "返回審批佇列",
"viewTimeline": "查看 執行時間線",
"eyebrow": "人工審批閘門",
"eyebrow": "AI 受控審批閘門",
"title": "審批決策",
"timeout": "審批期限",
"empty": "--",
@@ -12552,7 +12552,7 @@
"reject": "Run 已拒絕,正在回到 時間線"
},
"notWaiting": {
"title": "此 Run 目前不在人工審批狀態",
"title": "此 Run 目前不在 AI 受控審批狀態",
"detail": "目前狀態為 {state}。此頁不會顯示 approve / reject請回 執行時間線 檢查最新狀態。"
},
"remediation": {
@@ -12597,7 +12597,7 @@
"runId": "Run ID:",
"approve": {
"title": "確認核准",
"body": "核准後,執行會從人工閘門 恢復執行,繼續交由 Runtime / MCP 閘道 執行。",
"body": "核准後,執行會從 AI 受控閘門恢復執行,繼續交由 Runtime / MCP 閘道 執行。",
"warning": "此決策會寫入 執行狀態、批准 token與稽核軌跡。",
"confirm": "確認核准"
},
@@ -14418,7 +14418,7 @@
"output": "更新 已收到 / 已接受 狀態,不執行"
},
"humanDecision": {
"title": "等待人工決策",
"title": "等待 break-glass 授權決策",
"body": "資安閘門 需要 決策紀錄AwoooP 批准、程式碼審查或進度數字都不能自動替代。",
"output": "人控決策,不是 執行期"
},
@@ -16504,7 +16504,7 @@
"sourceControlCutoverSeparated": {
"title": "主要來源切換分離",
"body": "GitHub 主要來源、Gitea 停用、分支 / 標籤參照或工作流程 / 機密設定都不能由準備佇列直接推進。",
"prep": "只把主要來源相關缺口列入待人工決策清單。",
"prep": "只把主要來源相關缺口列入待 break-glass 授權清單。",
"guard": "不建立專案庫、不改可見性、不同步參照、不停用 Gitea。"
}
}
@@ -20573,13 +20573,13 @@
"accepted": "接受"
},
"domainStatus": {
"owner_packet_required": "等待 owner packet 與脫敏 live evidence",
"owner_packet_required": "等待 owner evidence packet 與脫敏 live evidence",
"waiting_live_hash_and_owner_response": "等待 live hash、維護窗口與 owner response",
"waiting_receiver_route_and_receipt_evidence": "等待 receiver route、告警 receipt 與 reload owner",
"waiting_actor_before_after_and_recurrence_guard": "等待 actor、before / after 與防再發證據",
"manifest_mapped_read_only_runtime_gate_closed": "Manifest 已映射runtime gate 仍關閉",
"waiting_manager_registry_readback": "等待 Wazuh manager registry 全量讀回",
"draft_waiting_owner_review_runtime_gate_closed": "等待 owner reviewruntime gate 仍關閉",
"draft_waiting_owner_review_runtime_gate_closed": "等待 owner evidence reviewruntime gate 仍關閉",
"read_only_inventory_runtime_write_gate_closed": "只讀盤點完成AI runtime write gate 仍關閉"
},
"domainBody": {
@@ -21183,7 +21183,7 @@
},
"p0Groups": {
"label": "P0 群組",
"detail": "14 個 P0 群組需要 owner packet 與 reviewer check。"
"detail": "14 個 P0 群組需要 owner evidence packet 與 reviewer check。"
},
"evidenceRefs": {
"label": "證據參照",
@@ -21244,7 +21244,7 @@
},
"candidates": {
"label": "P0 候選",
"detail": "14 個候選全部需要 owner packet 與 reviewer check。"
"detail": "14 個候選全部需要 owner evidence packet 與 reviewer check。"
},
"hosts": {
"label": "alias",
@@ -21348,7 +21348,7 @@
"gateLabel": "閘門",
"stateLabel": "狀態",
"boundaryTitle": "高價值配置收件邊界",
"boundaryIntro": "以下鍵值固定:此卡只顯示 owner packet 草案與禁止動作,不代表 Nginx reload、workflow 修改、secret rotation、agent-bounty runtime 或任何主機操作已授權。",
"boundaryIntro": "以下鍵值固定:此卡只顯示 owner evidence packet 草案與禁止動作,不代表 Nginx reload、workflow 修改、secret rotation、agent-bounty runtime 或任何主機操作已授權。",
"summary": {
"packetCount": {
"label": "Packet 草案",

View File

@@ -934,7 +934,7 @@
"incidentFlow": {
"standard": "BPMN / Swimlane",
"title": "告警到修復流程",
"detail": "用泳道圖拆開 Telegram、OpenClaw、Hermes、MCP、Ansible、人工審批與驗證責任。",
"detail": "用泳道圖拆開 Telegram、OpenClaw、Hermes、MCP、Ansible、AI 受控審批與驗證責任。",
"nodes": {
"alert": "Alert / Sentry / SigNoz",
"ai": "AI 分析",
@@ -1129,7 +1129,7 @@
},
"approval": {
"metric": "pending {pending} / verified {verified}/{evaluated}",
"detail": "人工閘門 {humanGates},自動修復紀錄 {autoRepairRecords},操作紀錄 {operations}"
"detail": "AI 受控閘門 {humanGates},自動修復紀錄 {autoRepairRecords},操作紀錄 {operations}"
},
"verify": {
"metric": "stale {stale} / ratio {ratio}",
@@ -2452,7 +2452,7 @@
},
"sourceGapActions": {
"title": "PlayBook / Verifier 缺口處置板",
"subtitle": "每個 report-source-gap 都要有服務專屬 PlayBook 草案、Verifier 計畫、腳本與排程邊界,不能只丟給人工判斷。",
"subtitle": "每個 report-source-gap 都要有服務專屬 PlayBook 草案、Verifier 計畫、腳本與排程邊界,不能只停在人工判斷。",
"playbook": "PlayBook 草案",
"verifier": "Verifier 計畫",
"script": "腳本",
@@ -2472,11 +2472,11 @@
},
"funnel": {
"title": "告警到 AI 接手漏斗",
"subtitle": "快速看出訊號是否進來、處置是否形成、AI 能否接手、還有多少卡在人工或審核。",
"subtitle": "快速看出訊號是否進來、處置是否形成、AI 能否接手、還有多少卡在補齊或審核。",
"alerts": "告警訊號",
"dispositions": "處置紀錄",
"auto": "AI / 冷啟動接手",
"human": "人工處置",
"human": "AI 補齊處置",
"waiting": "待審核工作"
},
"assets": {
@@ -3467,18 +3467,18 @@
"blockedBoundary": "阻擋邊界",
"escalation": "升級條件",
"readOnlyReady": "只讀可推進",
"ownerGate": "需負責人閘門",
"ownerGate": "受控 / break-glass 閘門",
"reportOwnership": "報告責任",
"presets": {
"openclaw": {
"lane": "生產仲裁 / 高風險 gate",
"question": "候選 Agent 是否已通過 replay、shadow、canary、成本、安全與可觀測性證據足以改變生產決策",
"escalation": "只有 replay / shadow / canary 與 owner approval 全部補齊後,才可進入 provider switch 或 OpenClaw replacement review。"
"escalation": "只有 replay / shadow / canary、controlled gate 與 verifier 全部補齊後,才可進入 provider switch 或 OpenClaw replacement review。"
},
"hermes": {
"lane": "報告治理 / 知識沉澱",
"question": "日報、週報、月報是否已把證據、圖表、RAG 摘要與 no-send Telegram 草稿整理到可審核狀態?",
"escalation": "只要涉及實發 Telegram、Bot APIreport receipt write 或未脫敏來源內容,就必須停在負責人閘門。"
"escalation": "實發 Telegram、Bot APIreport receipt write 走受控 Gateway / verifier未脫敏來源內容與 critical 外發才進 break-glass。"
},
"nemotron": {
"lane": "離線 replay / 模型能力比較",
@@ -3492,8 +3492,8 @@
},
"reviewer": {
"lane": "交叉審查 / owner queue",
"question": "跨 Agent 產出的證據是否足以支持低中風險自動處理,或必須升級成高風險 owner review",
"escalation": "只要涉及 live query、runtime write、機密、部署或外部發送,就維持人工批准。"
"question": "跨 Agent 產出的證據是否足以支持低 / 中 / 高風險 controlled apply或必須升級成 critical break-glass",
"escalation": "live query、runtime write、部署或外部發送走 allowlist、check-mode、verifier 與 rollback機密、破壞性 DB、付費 provider、force push 才進 break-glass。"
}
}
},
@@ -3542,7 +3542,7 @@
"runtimeReadback": "Runtime readback",
"resultCapture": "Result capture 寫入",
"productionWrite": "Production 寫入",
"ownerApproval": "Owner 批准",
"ownerApproval": "Critical / break-glass",
"note": "真相註記"
}
},
@@ -3581,11 +3581,11 @@
"schedule": "排程",
"nextRun": "下次執行",
"sourcePolicy": "來源政策",
"reviewGate": "人工關卡",
"reviewGate": "受控關卡",
"triggerModes": "觸發模式"
},
"decisionQueue": {
"title": "人工決策佇列",
"title": "AI 受控決策佇列",
"priority": "P",
"status": "狀態",
"nextAction": "下一步",
@@ -3596,8 +3596,8 @@
"statuses": {
"baseline_protected": "基準受保護",
"blocked_needs_evidence": "需要證據",
"operator_review_required": "需要人工審查",
"operator_priority_review": "優先級審查",
"operator_review_required": "需要受控審查",
"operator_priority_review": "優先級受控審查",
"watch_only_blocked": "觀察已阻擋",
"watch_only_monitoring": "觀察中",
"registered_no_review": "尚未審查"
@@ -3662,7 +3662,7 @@
"metrics": {
"backlog": "待辦進度",
"readback": "讀回關卡",
"gates": "人工 gate",
"gates": "受控 gate",
"liveWrites": "正式寫入"
}
},
@@ -3712,7 +3712,7 @@
"low": "低風險",
"medium": "中風險",
"high": "高風險",
"noOwnerReview": "低/中/高人工 gate={value}",
"noOwnerReview": "低/中/高 owner_review_required={value}",
"verifier": "post-apply verifier={value}",
"km": "KM / PlayBook 回寫={value}"
},
@@ -3727,22 +3727,22 @@
"readOnlyInvestigation": {
"label": "主動巡檢與證據蒐集",
"detail": "只讀探針 {probes} 個,服務需處置訊號 {health} 個。",
"next": "下一步:整理 owner packetruntime blocker {blocked} 個。"
"next": "下一步:整理 controlled packetruntime blocker {blocked} 個。"
},
"dryRunCandidate": {
"label": "乾跑候選與套用審查",
"label": "乾跑候選與受控套用",
"detail": "乾跑證據 {evidence} 筆Verifier plan {verifier} 個。",
"next": "下一步:{review} 個候選進 owner review不直接執行。"
"next": "下一步:{review} 個候選進 controlled apply 檢查,不繞過 verifier。"
},
"shadowReplay": {
"label": "Nemotron replay / shadow",
"detail": "無寫入 replay {replays} 次Verifier shadow case {verifier} 個。",
"next": "下一步:{approvals} 個 checkpoint 需批准才可升級。"
"next": "下一步:{approvals} 個 checkpoint 需 controlled gate 才可升級。"
},
"permissionModel": {
"label": "操作權限模型",
"detail": "Gate transition {gates} 條blocked category {blocked} 個。",
"next": "下一步:{approvals} 類仍需人工批准。"
"next": "下一步:{approvals} 類進 controlled gatecritical 才 break-glass。"
},
"reportTelegram": {
"label": "日週月報與 Telegram receipt",
@@ -3758,7 +3758,7 @@
"agentWorkload": {
"title": "AI Agent 工作量與專業分工",
"badge": "OpenClaw / Hermes / Nemotron / Security-SRE",
"summary": "目前可見工作量 {workload} 件;其中負責人審核 {review} 件、阻擋 {blocked} 件,正式寫入 / Telegram / 機密讀取 / 破壞性操作邊界總數 {live}。",
"summary": "目前可見工作量 {workload} 件;其中受控審查 {review} 件、阻擋 {blocked} 件,正式寫入 / Telegram / 機密讀取 / 破壞性操作邊界總數 {live}。",
"labels": {
"review": "審核 {count}",
"blocked": "阻擋 {count}"
@@ -3766,10 +3766,10 @@
"agents": {
"openclaw": {
"label": "OpenClaw",
"mission": "仲裁、風險分級、乾跑候選與負責人審核包主責;不靠身份保護,仍接受市場與回放數據挑戰。",
"telegram": "Telegram{reviews} 件需審核時只產摘要/批准包,不直接發正式處置。",
"mission": "仲裁、風險分級、乾跑候選與受控審查包主責;不靠身份保護,仍接受市場與回放數據挑戰。",
"telegram": "Telegram{reviews} 件需審核時只產摘要/受控處置包,不直接繞過 Gateway。",
"learning": "學習:承接 {candidates} 個 PlayBook / KM 候選,等待 gate 後寫回。",
"next": "下一步:整理 {dryRuns} 個乾跑候選與 {high} 個高風險審核包。"
"next": "下一步:整理 {dryRuns} 個乾跑候選與 {high} 個高風險 controlled apply 包。"
},
"hermes": {
"label": "Hermes",
@@ -3812,7 +3812,7 @@
"criticReplay": {
"label": "Critic 回放評分",
"detail": "回放 {replays} 次、scorecard {scorecards} 張shadow 通過 {passed}/{total}。",
"next": "下一步:{approvals} 個升級 checkpoint 等 owner review。"
"next": "下一步:{approvals} 個升級 checkpoint 等 controlled review。"
},
"telegramReceipt": {
"label": "Telegram 回執閉環",
@@ -3829,16 +3829,16 @@
"professionalJudgment": {
"title": "AI Agent 專業判斷矩陣",
"badge": "判斷依據 / 信心 / 建議 / Gate",
"summary": "目前顯示 {agents} 位 Agent 的專業判斷;採用證據 {evidence} 件,需 gate / owner review {gates} 件,正式寫入與 Telegram 實送邊界 {live}。",
"summary": "目前顯示 {agents} 位 Agent 的專業判斷;採用證據 {evidence} 件,需 controlled gate / break-glass {gates} 件,正式寫入與 Telegram 實送邊界 {live}。",
"auditLine": "邊界只讀取治理快照與脫敏證據deploy marker + production readback 才算上線非產品對話、secrets、Telegram token、runtime write 全部不展示、不送出。",
"items": {
"openclaw": {
"role": "仲裁與風險分級:先看乾跑證據、owner packet 與高風險接受度。",
"judgment": "判斷:乾跑需審 {dryRuns},高風險 {high},已接受 owner response {accepted};未接受前只做候選與審核包。",
"role": "仲裁與風險分級:先看乾跑證據、controlled packet 與高風險 verifier。",
"judgment": "判斷:乾跑需審 {dryRuns},高風險 {high},已接受控制證據 {accepted};未通過前只做候選與審核包。",
"evidence": "證據 {evidence} / packet {packets}",
"confidence": "低/中 {low}/{medium}",
"recommendation": "建議blocked {blocked} 先維持人工 gate不升級 runtime。",
"gate": "GateOpenClaw owner review {reviews}。"
"recommendation": "建議blocked {blocked} 先維持 controlled gate不升級 runtime。",
"gate": "GateOpenClaw controlled review {reviews}。"
},
"hermes": {
"role": "報告與記憶:把工作量、回執、圖表與 RAG / KM 摘要整理成可讀證據。",
@@ -3861,7 +3861,7 @@
"judgment": "判斷gate {gates}、權限類別 {categories}、blocked {blocked};先保障不誤執行。",
"evidence": "Verifier {verifiers} / health {health}",
"confidence": "write {write} / TG {telegram}",
"recommendation": "建議:高風險 {high} 先整理 owner packetrollback owner。",
"recommendation": "建議:高風險 {high} 先整理 controlled packetrollback 與 verifier。",
"gate": "Gateruntime / write blocked {blocked}。"
}
}
@@ -3869,7 +3869,7 @@
"autonomyMaturity": {
"title": "AI Agent 自動化成熟度與接管缺口",
"badge": "Sensor → Candidate → Gate → Verifier → Learning",
"summary": "目前追蹤 {rows} 條成熟度鏈;證據 {evidence} 件,可自動準備 {prepared} 件,待 Gate / owner review {gates} 件,正式寫入 {live}。",
"summary": "目前追蹤 {rows} 條成熟度鏈;證據 {evidence} 件,可自動準備 {prepared} 件,待 controlled gate / break-glass {gates} 件,正式寫入 {live}。",
"stages": {
"sensor": "L1-L2 Sensor / Evidence",
"candidate": "L3-L4 Candidate / Dry-run",
@@ -3933,7 +3933,7 @@
"marketRadar": "版本雷達",
"noSendPreview": "無發送報告預覽",
"autoPrepare": "自動準備候選",
"ownerReview": "owner review",
"ownerReview": "controlled review",
"shadowReplay": "shadow replay",
"learningDraft": "學習草稿"
},
@@ -3964,7 +3964,7 @@
"versionRadar": {
"label": "套件、工具、AI 技術版本雷達",
"detail": "過期來源 {stale}、漂移/升級候選 {candidates}。",
"next": "Nemotron 做 no-write 比對blocked 操作 {blocked} 先轉 owner packet。"
"next": "Nemotron 做 no-write 比對blocked 操作 {blocked} 先轉 controlled packet。"
},
"reportOps": {
"label": "日報 / 週報 / 月報產製",
@@ -4014,7 +4014,7 @@
"ownerGate": "Owner gate 後通知"
},
"learning": {
"ownerReview": "維護窗與 owner review 寫回待批准。",
"ownerReview": "維護窗與 controlled review 寫回待批准。",
"snapshot": "以 committed snapshot 累積資產知識。",
"redactedEvidence": "只寫入脫敏證據,不寫入未脫敏紀錄。",
"versionRadar": "版本雷達產生候選,升級仍需 gate。",
@@ -4444,7 +4444,7 @@
"tool_install_or_ci_change_approval_required": "工具安裝或 CI 變更需批准",
"workflow_and_bot_approval_required": "workflow 與 bot 需批准",
"workflow_modification_approval_required": "workflow 修改需批准",
"write_requires_human_gate": "寫入需人工關卡",
"write_requires_human_gate": "寫入需受控關卡",
"cost_data_approval_required": "需費用與資料邊界批准"
}
},
@@ -5180,7 +5180,7 @@
"readinessTitle": "準備度矩陣",
"policyTitle": "通知政策",
"targetsTitle": "關鍵備份目標",
"noBlocker": "無目標層阻擋restore 仍需人工批准。",
"noBlocker": "無目標層阻擋restore 仍需 break-glass 批准。",
"noEvidence": "尚無證據",
"metrics": {
"targets": "目標",
@@ -7094,14 +7094,14 @@
}
},
"ownerApprovedFixturePromotionGate": {
"title": "P2-114 負責人批准 fixture promotion gate",
"title": "P2-114 controlled fixture promotion gate",
"source": "產生 {generated};目前 {current};下一步 {next}",
"priorGateTitle": "前一關 promotion gate",
"truthTitle": "Owner approval truth",
"truthTitle": "Controlled approval truth",
"redactionTitle": "前端遮蔽契約",
"metrics": {
"overall": "完成度",
"packets": "owner packet",
"packets": "controlled packet",
"templates": "acceptance template",
"reviews": "fixture review",
"verifiers": "無寫入 verifier",
@@ -7110,7 +7110,7 @@
"approvalRequired": "需批准",
"blocked": "阻擋",
"critical": "critical blocker",
"ownerApprovals": "owner 批准",
"ownerApprovals": "critical 批准",
"acceptanceWrites": "acceptance 寫入",
"executions": "promotion 執行",
"canonicalReads": "canonical 讀取",
@@ -7131,7 +7131,7 @@
"promotionGateLoaded": "P2-113 loaded={value}",
"packageReady": "package ready={value}",
"acceptanceReady": "acceptance ready={value}",
"ownerApproval": "負責人批准={value}",
"ownerApproval": "break-glass 批准={value}",
"telegramSend": "Telegram 發送={value}",
"resultWrite": "結果寫入={value}",
"redactionRequired": "redaction={value}",
@@ -7154,7 +7154,7 @@
"runtimePromotionAllowed": "runtime promotion={value}"
},
"packetStatuses": {
"ready_for_owner_review": "待 負責人審查",
"ready_for_owner_review": "待受控審查",
"approval_required": "需批准",
"blocked_by_policy": "政策阻擋"
},
@@ -7187,7 +7187,7 @@
"critical": "關鍵"
},
"actionTypes": {
"review_owner_packet": "審查 owner packet",
"review_owner_packet": "審查 controlled packet",
"verify_acceptance_template": "驗證 acceptance template",
"confirm_verifier_plan": "確認 verifier plan",
"lock_blocked_promotion": "鎖定 blocked promotion",
@@ -7197,7 +7197,7 @@
"canonicalRuntimeReadbackOwnerAcceptance": {
"title": "P2-115 canonical runtime readback 負責人驗收",
"source": "產生 {generated};目前 {current};下一步 {next}",
"priorGateTitle": "前一關 owner promotion gate",
"priorGateTitle": "前一關 controlled promotion gate",
"truthTitle": "Canonical readback 負責人驗收 truth"
},
"failureReceiptNoSendReplay": {
@@ -8613,9 +8613,9 @@
"route": "流向Run 監控 / 事件詳情"
},
"approval": {
"title": "人工閘門",
"signal": "高風險待批准",
"owner": "負責:SRE approve / reject",
"title": "AI 受控閘門",
"signal": "低 / 中 / 高風險待 AI policy / verifier 判定",
"owner": "負責:AI policy + SRE break-glass reviewer",
"route": "流向:審批佇列"
},
"execute": {
@@ -8625,9 +8625,9 @@
"route": "流向:執行狀態 / Audit"
},
"manual": {
"title": "人工升級",
"signal": "AI 無法安全修復",
"owner": "負責:戰情室接手",
"title": "AI 補齊升級",
"signal": "缺 PlayBook / verifier / rollback",
"owner": "負責:AI 戰情室補齊",
"route": "流向AwoooI SRE 戰情室"
}
},
@@ -8820,7 +8820,7 @@
},
"highValueConfigOwnerPacket": {
"title": "高價值配置 Owner Packet",
"subtitle": "AwoooP 首頁只讀顯示 IwoooS 產生的高價值配置 owner packet 草案;目前只是收件候選狀態,不送 request、不標記收到或接受也不開任何執行期入口。",
"subtitle": "AwoooP 首頁只讀顯示 IwoooS 產生的高價值配置 controlled packet 草案;目前只是收件候選狀態,不送 request、不標記收到或接受也不開任何執行期入口。",
"badge": "只讀 packet",
"openIwooos": "開啟 IwoooS",
"refsTitle": "Owner packet 參照",
@@ -8846,7 +8846,7 @@
}
},
"refs": {
"packetDraft": "高價值配置 owner packet 草案已由分類 Gate 產生,但尚未送出。",
"packetDraft": "高價值配置 controlled packet 草案已由分類 Gate 產生,但尚未送出。",
"c0Scope": "目前快照已有 Nginx public gateway 與 DNS / TLS / certbot C0 packet仍只進 owner gate不代表 reload、renew 或 route change。",
"s49Envelope": "欄位沿用 S4.9 canonical owner response envelope但收件與接受計數仍是 0。",
"runtimeBoundary": "IwoooS projection 固定 runtime gate 0AwoooP 只能鏡像狀態。"
@@ -8868,8 +8868,8 @@
},
"operatorSop": {
"eyebrow": "操作 SOP 判讀",
"title": "人工卡點與自動化缺口接手面板",
"subtitle": "把阻塞、修復候選、資產沉澱與負責人審查集中成一條操作 rail先判斷狀態再下鑽 Runs、工作項、總帳與批准。",
"title": "AI 受控卡點與自動化缺口接手面板",
"subtitle": "把阻塞、修復候選、資產沉澱與 controlled review 集中成一條操作 rail先判斷狀態再下鑽 Runs、工作項、總帳與受控批准。",
"boundary": "此面板只做只讀導覽與下一步判讀;不觸發通知、不改服務、不套用腳本,也不代表 runtime gate 已開。",
"metrics": {
"verifiedRate": "驗證率",
@@ -8884,15 +8884,15 @@
"conclusion": {
"label": "一眼判讀",
"blocked": {
"title": "目前仍有人工卡點,不能宣稱全自動閉環",
"detail": "先看阻塞工作項與人工閘門,再補 PlayBook、Verifier、rollback 與 owner review。"
"title": "目前仍有 AI 受控卡點,不能宣稱全自動閉環",
"detail": "先看阻塞工作項與 AI 受控閘門,再補 PlayBook、Verifier、rollback 與 controlled review。"
},
"inProgress": {
"title": "自動化資產正在補齊,仍需追蹤候選品質",
"detail": "優先確認候選是否有證據 refs、安全路由、回滾計畫與修復後驗證。"
},
"watching": {
"title": "目前沒有明顯人工卡點,持續觀察資料新鮮度",
"title": "目前沒有明顯 AI 受控卡點,持續觀察資料新鮮度",
"detail": "若日報、週報、告警或來源突然歸零,仍要回到 Runs 與來源健康檢查。"
}
},
@@ -8911,7 +8911,7 @@
},
"owner": {
"title": "接手",
"detail": "人工閘門與負責人審查"
"detail": "AI 受控閘門與負責人審查"
},
"verifier": {
"title": "驗證",
@@ -8920,8 +8920,8 @@
},
"cards": {
"blockers": {
"title": "阻塞與人工閘門",
"detail": "阻塞工作項 {workItems}人工閘門 {manual};資產阻塞 {assets}。",
"title": "阻塞與 AI 受控隊列",
"detail": "阻塞工作項 {workItems}AI 受控閘門 {manual};資產阻塞 {assets}。",
"action": "查看工作項"
},
"candidates": {
@@ -8936,21 +8936,21 @@
},
"owners": {
"title": "負責人接手",
"detail": "人工閘門 {manual};來源審查 {source};已記錄 {recorded}。",
"detail": "AI 受控閘門 {manual};來源審查 {source};已記錄 {recorded}。",
"action": "查看審查"
}
}
},
"automationBlockerMap": {
"eyebrow": "告警自動化卡點總盤",
"title": "為什麼仍需人工處理",
"title": "為什麼仍需 AI 補齊處理",
"subtitle": "把焦點事故從收件、證據、候選、PlayBook、安全路由、放行、Verifier 到學習回寫拆成可量化 lane先看卡在哪裡再看下方詳細證據。",
"completion": "自動化閉環就緒度",
"boundary": "目前仍有 {blocked} 個阻擋點;這是只讀判讀,不代表 runtime gate 已開或可直接套用修復。",
"blockedLabel": "卡點 {count}",
"nextAction": "下一步:{value}",
"metrics": {
"manual": "人工閘門",
"manual": "AI 受控閘門",
"gap": "自動化缺口",
"verified": "已驗證修復",
"runtime": "Runtime gate"
@@ -9040,7 +9040,7 @@
},
"playbook": {
"title": "PlayBook",
"detail": "OpenClaw 修復候選、服務專屬策略、trust 與人工閘門。",
"detail": "OpenClaw 修復候選、服務專屬策略、trust 與 AI 受控閘門。",
"next": "下一步:把通用兜底改成服務專屬 PlayBook補 rollback 與適用條件。"
},
"script": {
@@ -9056,7 +9056,7 @@
"verifier": {
"title": "Verifier",
"detail": "status-chain、remediation history、quality summary 與最終驗證。",
"next": "下一步:每次修復或人工接手都必須留下 success / degraded / failed 判定。"
"next": "下一步:每次修復、AI 補齊或 break-glass 都必須留下 success / degraded / failed 判定。"
}
},
"sources": {
@@ -9202,7 +9202,7 @@
"gates": {
"sourceDossier": "入站告警必須能查到 received / incident_linked / 來源 refs",
"autoRepair": "必須同時有 auto_repair、verification_result=success與KM 回寫",
"recurrenceWorkItems": "Run 完成無修復、修復失敗與人工閘門必須進入可追蹤工作項",
"recurrenceWorkItems": "Run 完成無修復、修復失敗與 AI 受控閘門必須進入可追蹤工作項",
"aiRouteRepairWorkItem": "Provider lane 降級時必須顯示 evidence、owner、PlayBook候選與是否可自動修復",
"reportSourceGapOwnerReview": "每個 report-source-gap 必須有 PlayBook 草案、Verifier 計畫、腳本 readback、排程 無發送 與 負責人審查;不得把全 0 當健康或自動執行授權",
"configDriftFsm": "同一 drift fingerprint 必須顯示重複、PR、零 diff、交接與下一步",
@@ -9223,7 +9223,7 @@
"evidence": {
"channelEvents": "最近 Alertmanager 通道事件:{count}",
"autoRepair": "已驗證自動修復:{verified}/{evaluated}",
"recurrenceWorkItems": "重複告警待處理:{open};無修復:{gap};修復失敗:{failed}人工閘門:{manual};來源待審:{source}",
"recurrenceWorkItems": "重複告警待處理:{open};無修復:{gap};修復失敗:{failed}AI 受控閘門:{manual};來源待審:{source}",
"recurrenceLatest": "最新:{alert} / {incident}",
"recurrenceReason": "原因:{reason}",
"recurrenceSourceReviewRecorded": "來源審核已寫入歷史:{count}",
@@ -9242,7 +9242,7 @@
"aiRouteRepairOwner": "Owner{owner};主責 Agent{lead}",
"aiRouteRepairPlaybook": "PlayBook{playbook};步驟 {steps}",
"aiRouteRepairSafety": "可安全自動修復:{safe}",
"aiRouteRepairSummary": "AI route 目前由 {selected} 承接;下一步:{action};需人工介入{human}",
"aiRouteRepairSummary": "AI route 目前由 {selected} 承接;下一步:{action};需 AI 補齊{human}",
"aiRouteRepairUnavailable": "AI route repair evidence 尚未回傳",
"reportSourceGapOwnerReview": "報表資料源缺口:{gaps}PlayBook 草案 {playbooks}Verifier 計畫 {verifiers};需 owner {owners}",
"reportSourceGapLatest": "最新工作項:{workItem}route={route}",
@@ -9318,7 +9318,7 @@
},
"adr100Remediation": {
"title": "ADR-100 補救工作佇列",
"subtitle": "補救 {total} 筆AI可接手 {ready};需人工 / PlayBook 改造 {human}",
"subtitle": "補救 {total} 筆AI可接手 {ready};需 AI 補齊 / PlayBook 改造 {human}",
"openGovernance": "開啟治理",
"empty": "目前沒有非成功驗證補救工作;若 SLO 再出現 degraded / failed會在這裡形成可操作項。",
"unknownAlert": "未知告警",
@@ -9357,7 +9357,7 @@
"closed": "已符合關閉條件,保留歷史證據即可",
"investigateActiveGap": "仍有新缺口,檢查新 Telegram reply_markup trace 寫入",
"verifyInstrumentation": "沒有復原訊號,檢查 TelegramGateway / 時間線觀測埋點",
"waitDecay": "等待舊 backlog 24h decay不需人工處理",
"waitDecay": "等待舊 backlog 24h decay不需 AI 補齊處理",
"observeRecovery": "觀察復原訊號,先不開人工任務"
},
"claim": {
@@ -9588,7 +9588,7 @@
},
"readiness": {
"ready": "可乾跑",
"blocked": "需人工排除",
"blocked": "需 AI 補齊排除",
"completed": "已完成",
"failed": "失敗待處理"
}
@@ -9949,7 +9949,7 @@
"flow": {
"ingest": {
"title": "告警接收",
"detail": "事件已進入 AwoooP 真相鏈與 Telegram 人工處置面。"
"detail": "事件已進入 AwoooP 真相鏈與 Telegram AI 受控處置面。"
},
"evidence": {
"title": "證據補齊",
@@ -9975,10 +9975,10 @@
"mcp_evidence_refs": "MCP / Sentry / SigNoz / K8s / log 證據參照。",
"repair_command": "受控修復命令或 Ansible playbook不能是純診斷命令。",
"rollback_command": "修復失敗時的回滾或安全停止方案。",
"verifier_plan": "修復後如何驗證成功、失敗與是否要升級人工。",
"verifier_plan": "修復後如何驗證成功、失敗與是否要升級 AI 補齊或 break-glass。",
"owner_review": "負責人、風險等級、適用條件與批准紀錄。",
"script_or_ansible_ref": "腳本或 Ansible 參照,必須能被安全路由與 reviewer 查到。",
"schedule_or_monitoring_rule_ref": "排程、監控規則或 recurrence 偵測參照,避免同類告警只靠人工記憶。",
"schedule_or_monitoring_rule_ref": "排程、監控規則或 recurrence 偵測參照,避免同類告警只靠人工記憶或口頭交接。",
"km_update_plan": "KM 更新草稿與 負責人審查 計畫,避免錯知識直接固化。",
"automation_asset_record": "自動化資產紀錄,包含 asset id、owner、狀態、來源與下一步。"
},
@@ -10018,21 +10018,21 @@
"writebackTitle": "必須回寫的結果",
"writebacks": {
"incident_timeline_stage_update": "Incident timeline 必須標記目前階段、處置包、owner 與下一步。",
"execution_or_manual_handoff_result": "無執行時也要寫入人工接手結果,不能只留下批准紀錄。",
"execution_or_manual_handoff_result": "無執行時也要寫入 AI 補齊或 break-glass 結果,不能只留下批准紀錄。",
"verifier_result": "Verifier 要能記錄成功、失敗、降級或尚未執行。",
"km_update_draft": "Hermes 產生 KM 草稿,負責人審查 後才可寫入高影響知識。",
"playbook_trust_update": "PlayBook 成功 / 失敗 / 未執行都要回寫 trust 與適用條件。",
"automation_asset_inventory_record": "資產清冊要留下 KM、PlayBook、腳本、排程、Verifier 的 ID 與狀態。"
},
"guardrailTitle": "阻擋原因與禁止誤讀",
"blocker": "目前缺少可信修復候選;系統只能建立人工草案工作項,不能把 no-action、診斷結果或通用兜底當作已修復。",
"blocker": "目前缺少可信修復候選;系統必須建立 AI 補齊草案工作項,不能把 no-action、診斷結果或通用兜底當作已修復。",
"nextStep": "請先補 PlayBook 草案與 MCP evidence再由 負責人審查 決定是否送審批;在此之前不會自動執行、不會寫入成功修復,也不會更新 KM 為已解決。",
"chainTitle": "真相鏈對照",
"chain": {
"stage": "目前階段",
"repair": "修復狀態",
"next": "真相鏈下一步",
"human": "需要人工"
"human": "需要 AI 補齊"
},
"chainHint": "下方完整 status-chain 與 incident timeline 會用同一個 Incident 查詢;如果仍沒有資料,代表資料鏈路還沒把這筆告警完整串上。",
"openRuns": "打開 Runs",
@@ -10040,7 +10040,7 @@
},
"recurrence": {
"title": "重複告警工作項",
"subtitle": "把 run_completed_no_repair、修復失敗與人工閘門接成可追蹤 work item",
"subtitle": "把 run_completed_no_repair、修復失敗與 AI 受控閘門接成可追蹤 work item",
"open": "待處理 {count}",
"automationGap": "無修復 {count}",
"failed": "修復失敗 {count}",
@@ -10110,7 +10110,7 @@
},
"handoffKinds": {
"ticket_proposal": "Ticket 提案",
"manual_review": "人工覆核",
"manual_review": "AI 補齊覆核",
"unknown": "未知"
},
"handoffStatuses": {
@@ -10157,7 +10157,7 @@
"auto_repair_succeeded_unverified": "修復待驗證",
"auto_repair_failed": "修復失敗",
"auto_repair_recorded": "修復已記錄",
"manual_gate": "需人工閘門",
"manual_gate": "需 AI 受控閘門",
"investigating": "調查中",
"run_completed_no_repair": "Run 完成無修復",
"source_correlation_review": "來源證據待配對",
@@ -10229,7 +10229,7 @@
"nextStatusChain": "等待狀態鏈批次回補,或打開 Incident 詳情確認",
"statusChainPending": "狀態鏈待回補",
"statuses": {
"needsHuman": "需人工",
"needsHuman": "需 AI 補齊",
"failed": "執行失敗",
"verified": "已驗證",
"executed": "已執行",
@@ -10249,7 +10249,7 @@
"mcpCount": "MCP 調查 {count} 次",
"route": "MCP{route}",
"emptyShort": "尚未連到 AI 證據",
"manualGate": "下一步:人工審批",
"manualGate": "下一步:AI 受控審批",
"filters": {
"label": "AI 證據篩選",
"all": "所有 AI 證據",
@@ -10275,7 +10275,7 @@
"mcpObserved": "AI 已透過 MCP / 自建 MCP 收集證據,但尚未進入補救試跑或執行。",
"readOnlyDryRun": "AI 已走補救試跑,且最新紀錄沒有寫入 incident或auto-repair 狀態。",
"writeObserved": "最新補救紀錄含寫入旗標,審批前需確認狀態變更來源。",
"blocked": "補救試跑未通過或被 gate 阻擋,需人工確認卡點。",
"blocked": "補救試跑未通過或被 gate 阻擋,需 AI 補齊確認卡點。",
"observed": "此列已連到補救歷史,請進入 執行時間線 查看完整證據。"
},
"summary": {
@@ -10283,8 +10283,8 @@
"mcpObservedDetail": "列表已連到 MCP / 自建 MCP 調查證據",
"readOnly": "只讀試跑",
"readOnlyDetail": "最新證據顯示 AI 已試跑且未寫狀態",
"manualGate": "人工閘門",
"manualGateDetail": "AI 已停在 批准 gate需 approve / reject",
"manualGate": "AI 受控閘門",
"manualGateDetail": "AI 已停在 controlled gate需 policy / verifier / approve 判定",
"writeObserved": "寫入旗標",
"writeObservedDetail": "需確認是否為預期自動修復結果",
"callbackObserved": "TG Callback",
@@ -10346,8 +10346,8 @@
"unlinked": "{count} 筆尚未連 Run",
"limit": "最近 {count} 筆視窗",
"verifiedRepair": "{count} 組已驗證修復",
"sourceReview": "{count} 組 Sentry / SignOz 來源需人工配對",
"manualGates": "{count} 組人工閘門"
"sourceReview": "{count} 組 Sentry / SignOz 來源需 AI 輔助配對",
"manualGates": "{count} 組 AI 受控閘門"
},
"states": {
"pending": "待執行",
@@ -10366,14 +10366,14 @@
"auto_repair_succeeded_unverified": "修復待驗證",
"auto_repair_failed": "修復失敗",
"auto_repair_recorded": "修復已記錄",
"manual_gate": "需人工閘門",
"manual_gate": "需 AI 受控閘門",
"investigating": "調查中",
"run_completed_no_repair": "Run 完成無修復",
"source_correlation_review": "來源證據待配對",
"no_repair_record": "無修復記錄"
},
"workItemStatuses": {
"owner_review_ready": "草案待 owner review",
"owner_review_ready": "草案待 controlled review",
"draft_ready": "草案已準備",
"open": "工作項待處理",
"blocked": "工作項阻塞",
@@ -10399,7 +10399,7 @@
"count": "{total} 筆fallback {fallback};失敗 {failed}",
"emptyShort": "尚無詳情 / 歷史 callback",
"latest": "{action} · {incidentId}",
"needsHuman": "Callback 失敗需人工確認",
"needsHuman": "Callback 失敗需 AI 補齊確認",
"captureLine": "Snapshot{status};已捕捉 {captured} / 部分 {partial} / 未捕捉 {notCaptured}",
"captureMissing": "尚缺:{items}",
"captureStatuses": {
@@ -10429,7 +10429,7 @@
"sent": "Telegram callback reply 已用原格式送達。",
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字備援送達。",
"rescueSent": "Telegram 備援仍失敗後,已用救援純文字送達。",
"failed": "Telegram callback reply 最終送達失敗,需人工確認。",
"failed": "Telegram callback reply 最終送達失敗,需 AI 補齊確認。",
"observed": "Telegram callback reply 已記錄,但狀態不屬於標準分類。"
},
"events": {
@@ -10544,13 +10544,13 @@
}
},
"kmCompletion": {
"title": "KM Owner Review",
"title": "KM Controlled Review",
"status": "狀態:{status}",
"counts": "ready {ready} / blocked {blocked} / completed {completed} / failed {failed}",
"guardrail": "Guardrailwrites_on_read={writesOnRead}batch_writes_allowed={batchWrite}manual_review_required={manualReview}",
"related": "{entryId} · {readiness} · {nextAction}",
"noRelated": "本 Incident 尚未對到 owner-review completion item。",
"fetchFailed": "KM owner-review 摘要讀取失敗:{reason}",
"noRelated": "本 Incident 尚未對到 controlled-review completion item。",
"fetchFailed": "KM controlled-review 摘要讀取失敗:{reason}",
"openWorkItem": "開啟工作項",
"snapshotTitle": "Callback 當下 Evidence Snapshot",
"snapshotStatus": "當下狀態:{status}ready {ready} / blocked {blocked} / completed {completed} / failed {failed}",
@@ -10561,8 +10561,8 @@
"triageAutomation": "自動化:{state};可安全自動修復={safe}",
"triageBlocker": "卡點:{reason}",
"statuses": {
"matched_owner_review": "已匹配 負責人審查",
"no_related_owner_review": "未匹配 負責人審查",
"matched_owner_review": "已匹配受控審查",
"no_related_owner_review": "未匹配受控審查",
"fetch_failed": "讀取失敗",
"no_incident": "缺少 Incident",
"observed": "已記錄"
@@ -10628,7 +10628,7 @@
"primaryTitle": "目前由 {provider} 承接AI lane 正常",
"primaryDetail": "後續備援順序:{standby}。Gemini只在 Ollama lanes都不可用後接手目前下一步是持續監控與保留 fallback 證據。",
"fallbackTitle": "目前由 {provider} 接手AI lane 已降級",
"fallbackDetail": "已跳過:{skipped}。下一步:{action};需確認是否已有 Work Item、PlayBook與人工 gate。"
"fallbackDetail": "已跳過:{skipped}。下一步:{action};需確認是否已有 Work Item、PlayBook與 controlled gate。"
},
"degradedSummary": "目前由 {active} 接手;已跳過 {skipped};下一步:{action}",
"repairEvidence": {
@@ -10697,8 +10697,8 @@
"blockers": "卡點",
"writeFlags": "incident={incident} / autoRepair={autoRepair}",
"human": {
"yes": "需人工",
"no": "不需人工"
"yes": "需 AI 補齊",
"no": "不需 AI 補齊"
},
"fields": {
"stage": "階段",
@@ -10737,8 +10737,8 @@
"outcome": {
"summary": "處置結論",
"execution": "執行判定",
"notification": "人工通知通道",
"reason": "人工原因"
"notification": "受控通知通道",
"reason": "AI 補齊原因"
},
"applyGate": {
"title": "乾跑後套用閘門",
@@ -10785,9 +10785,9 @@
"releaseContractNextStepsTitle": "放行合約下一步",
"ownerReleaseDraftTitle": "AI 預填 Owner release 草案",
"ownerReleaseDraftAiPrefilled": "AI 已預填",
"ownerReleaseDraftHumanDecision": "人工決策",
"ownerReleaseDraftHumanOnly": "人工必審欄位",
"ownerReleaseDraftStillHuman": "仍需人工批准",
"ownerReleaseDraftHumanDecision": "break-glass 決策",
"ownerReleaseDraftHumanOnly": "break-glass 必審欄位",
"ownerReleaseDraftStillHuman": "仍需 break-glass 批准",
"checklistTitle": "Owner 審查清單",
"forbiddenTitle": "禁止動作",
"gates": {
@@ -11016,7 +11016,7 @@
"sources": "來源範圍",
"sourcesStatus": "缺口 {blockers}",
"sourcesDetail": "原始碼範圍只顯示脫敏代號,未完成證據前不得切主來源。",
"owner": "Owner gate",
"owner": "Owner evidence",
"ownerStatus": "待回覆 {waiting}",
"ownerDetail": "沒有負責人接受紀錄,就不把候選範圍當正式核准。",
"runtime": "Runtime gate",
@@ -11027,7 +11027,7 @@
"observability": "可觀測性",
"observabilityDetail": "主機、服務、網站入口、告警與接收證據。",
"knowledge": "知識與自動化",
"knowledgeDetail": "KM、PlayBook、腳本、verifier 與 owner review。",
"knowledgeDetail": "KM、PlayBook、腳本、verifier 與 controlled review。",
"codeReview": "推版審查",
"codeReviewDetail": "產品級防木馬、Aider / ElephantAlpha 與 release gate。"
}
@@ -11400,8 +11400,8 @@
"actions": {
"repair_alert_intake_or_outbound_mirror": "修復告警入庫或出站鏡像",
"route_incident_to_mcp_gateway_and_evidence_collectors": "把事件導入 MCP Gateway 與證據收集器",
"resolve_pending_or_expired_human_gate": "處理待處理 / 已過期人工閘門",
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成人工無動作",
"resolve_pending_or_expired_human_gate": "處理待處理 / 已過期 AI 受控閘門",
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成 AI 補齊無動作",
"write_auto_repair_execution_or_blocker_reason": "寫入自動修復執行或阻塞原因",
"run_post_execution_verification": "執行事後驗證並保存結果",
"write_km_or_learning_evidence": "回寫 KM / learning evidence",
@@ -11430,7 +11430,7 @@
},
"runRefs": {
"mirrorRunState": "AwoooP 執行監控可以理解資安鏡像,但只能當只讀候選。",
"readOnlyDryRun": "若未來產生試跑證據,也必須維持只讀與人工閘門語義。",
"readOnlyDryRun": "若未來產生試跑證據,也必須維持只讀與 AI 受控閘門語義。",
"ownerResponse": "負責人回覆已收到 / 已接受仍為 0任何執行進一步行動都要等待人工收件。",
"activeGates": "主動執行期閘門仍為 0不從執行監控頁開閘門或建立動作按鈕。"
}
@@ -11755,20 +11755,20 @@
"openTickets": "Tickets",
"empty": "無",
"flowTitle": "處理流程",
"handoffTitle": "審批與人工接手",
"handoffTitle": "審批與 AI 受控接手",
"timelineEmpty": "尚未取得 Incident timeline。",
"linkedExplanation": "此 Incident 已有 批准 / timeline 關聯;若下方待審清單為空,代表它可能已完成、過期、拒絕,或已轉成驗證後人工接手。",
"linkedExplanation": "此 Incident 已有 批准 / timeline 關聯;若下方待審清單為空,代表它可能已完成、過期、拒絕,或已轉成驗證後 AI 補齊接手。",
"unlinkedExplanation": "目前沒有對應 批准 id這代表此 Incident不是等待批准的狀態應從 Work Items / Runs 追下一步。",
"needsHuman": {
"yes": "需要人工",
"no": "不需人工"
"yes": "需要 AI 補齊",
"no": "不需 AI 補齊"
},
"metrics": {
"approvals": "關聯審批",
"stage": "目前階段",
"repair": "修復狀態",
"verification": "驗證",
"handoff": "人工接手"
"handoff": "AI 受控接手"
},
"handoff": {
"approvalIds": "Approval IDs",
@@ -11792,9 +11792,9 @@
},
"nextAction": "下一步",
"blocker": "阻擋原因",
"missingTitle": "缺少的 owner review / 安全路由欄位",
"missingTitle": "缺少的 control evidence / 安全路由欄位",
"missingEmpty": "未回報缺欄位;請仍以 runtime gate 與 verifier 為準",
"openWorkItem": "開啟 owner review",
"openWorkItem": "開啟 controlled work item",
"openRuns": "追蹤 Runs"
},
"evidence": {
@@ -12086,13 +12086,13 @@
"action": {
"eyebrow": "下一步判斷",
"approval": {
"title": "等待人工審批",
"detail": "AI 已停在人工閘門,尚未恢復。請從審批頁核准拒絕,所有決策都會回寫執行狀態與稽核紀錄。",
"title": "等待 AI 受控審批",
"detail": "AI 已停在 controlled gate,尚未恢復。請從審批頁核准拒絕或排入 verifier / rollback,所有決策都會回寫執行狀態與稽核紀錄。",
"primary": "前往審批決策"
},
"manual": {
"title": "需人工接手",
"detail": "AI 無法安全閉環,或執行已失敗 / 超時。請回執行監控比對同專案任務,必要時交由 SRE 戰情室處置。",
"title": "需 AI 補齊接手",
"detail": "AI 尚未安全閉環,或執行已失敗 / 超時。請回執行監控比對同專案任務,排入 PlayBook、rollback、verifier 或 break-glass。",
"primary": "回執行監控"
},
"completed": {
@@ -12107,7 +12107,7 @@
},
"observe": {
"title": "觀察中",
"detail": "目前尚未進入人工閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"detail": "目前尚未進入 AI 受控閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"primary": "回執行監控"
},
"evidence": {
@@ -12195,7 +12195,7 @@
"approvalDecision": {
"back": "返回審批佇列",
"viewTimeline": "查看執行時間線",
"eyebrow": "人工審批閘門",
"eyebrow": "AI 受控審批閘門",
"title": "審批決策",
"timeout": "審批期限",
"empty": "--",
@@ -12210,7 +12210,7 @@
"reject": "執行已拒絕,正在回到時間線"
},
"notWaiting": {
"title": "此執行目前不在人工審批狀態",
"title": "此執行目前不在 AI 受控審批狀態",
"detail": "目前狀態為 {state}。此頁不會顯示 approve / reject請回執行時間線檢查最新狀態。"
},
"gate5Projection": {
@@ -12319,7 +12319,7 @@
"runId": "執行 ID",
"approve": {
"title": "確認核准",
"body": "核准後,執行會從人工閘門恢復,繼續交由 Runtime / MCP 閘道 執行。",
"body": "核准後,執行會從 AI 受控閘門恢復,繼續交由 Runtime / MCP 閘道 執行。",
"warning": "此決策會寫入執行狀態、批准 token與稽核軌跡。",
"confirm": "確認核准"
},
@@ -12480,13 +12480,13 @@
"action": {
"eyebrow": "下一步判斷",
"approval": {
"title": "等待人工審批",
"detail": "AI 已停在人工閘門,尚未 恢復執行。請從審批頁 approvereject所有決策都會回寫 執行狀態與audit。",
"title": "等待 AI 受控審批",
"detail": "AI 已停在 controlled gate,尚未恢復執行。請從審批頁 approvereject 或排入 verifier / rollback,所有決策都會回寫執行狀態與 audit。",
"primary": "前往審批決策"
},
"manual": {
"title": "需人工接手",
"detail": "AI 無法安全閉環,或執行已失敗 / 超時。請回 Run 監控比對同專案任務,必要時交由 SRE 戰情室處置。",
"title": "需 AI 補齊接手",
"detail": "AI 尚未安全閉環,或執行已失敗 / 超時。請回 Run 監控比對同專案任務,排入 PlayBook、rollback、verifier 或 break-glass。",
"primary": "回 Run 監控"
},
"completed": {
@@ -12501,7 +12501,7 @@
},
"observe": {
"title": "觀察中",
"detail": "目前尚未進入人工閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"detail": "目前尚未進入 AI 受控閘門或終止狀態。請沿時間線確認入站事件、工具呼叫與出站訊息是否有缺口。",
"primary": "回 Run 監控"
},
"evidence": {
@@ -12537,7 +12537,7 @@
"approvalDecision": {
"back": "返回審批佇列",
"viewTimeline": "查看 執行時間線",
"eyebrow": "人工審批閘門",
"eyebrow": "AI 受控審批閘門",
"title": "審批決策",
"timeout": "審批期限",
"empty": "--",
@@ -12552,7 +12552,7 @@
"reject": "Run 已拒絕,正在回到 時間線"
},
"notWaiting": {
"title": "此 Run 目前不在人工審批狀態",
"title": "此 Run 目前不在 AI 受控審批狀態",
"detail": "目前狀態為 {state}。此頁不會顯示 approve / reject請回 執行時間線 檢查最新狀態。"
},
"remediation": {
@@ -12597,7 +12597,7 @@
"runId": "Run ID:",
"approve": {
"title": "確認核准",
"body": "核准後,執行會從人工閘門 恢復執行,繼續交由 Runtime / MCP 閘道 執行。",
"body": "核准後,執行會從 AI 受控閘門恢復執行,繼續交由 Runtime / MCP 閘道 執行。",
"warning": "此決策會寫入 執行狀態、批准 token與稽核軌跡。",
"confirm": "確認核准"
},
@@ -14418,7 +14418,7 @@
"output": "更新 已收到 / 已接受 狀態,不執行"
},
"humanDecision": {
"title": "等待人工決策",
"title": "等待 break-glass 授權決策",
"body": "資安閘門 需要 決策紀錄AwoooP 批准、程式碼審查或進度數字都不能自動替代。",
"output": "人控決策,不是 執行期"
},
@@ -16504,7 +16504,7 @@
"sourceControlCutoverSeparated": {
"title": "主要來源切換分離",
"body": "GitHub 主要來源、Gitea 停用、分支 / 標籤參照或工作流程 / 機密設定都不能由準備佇列直接推進。",
"prep": "只把主要來源相關缺口列入待人工決策清單。",
"prep": "只把主要來源相關缺口列入待 break-glass 授權清單。",
"guard": "不建立專案庫、不改可見性、不同步參照、不停用 Gitea。"
}
}
@@ -20573,13 +20573,13 @@
"accepted": "接受"
},
"domainStatus": {
"owner_packet_required": "等待 owner packet 與脫敏 live evidence",
"owner_packet_required": "等待 owner evidence packet 與脫敏 live evidence",
"waiting_live_hash_and_owner_response": "等待 live hash、維護窗口與 owner response",
"waiting_receiver_route_and_receipt_evidence": "等待 receiver route、告警 receipt 與 reload owner",
"waiting_actor_before_after_and_recurrence_guard": "等待 actor、before / after 與防再發證據",
"manifest_mapped_read_only_runtime_gate_closed": "Manifest 已映射runtime gate 仍關閉",
"waiting_manager_registry_readback": "等待 Wazuh manager registry 全量讀回",
"draft_waiting_owner_review_runtime_gate_closed": "等待 owner reviewruntime gate 仍關閉",
"draft_waiting_owner_review_runtime_gate_closed": "等待 owner evidence reviewruntime gate 仍關閉",
"read_only_inventory_runtime_write_gate_closed": "只讀盤點完成AI runtime write gate 仍關閉"
},
"domainBody": {
@@ -21183,7 +21183,7 @@
},
"p0Groups": {
"label": "P0 群組",
"detail": "14 個 P0 群組需要 owner packet 與 reviewer check。"
"detail": "14 個 P0 群組需要 owner evidence packet 與 reviewer check。"
},
"evidenceRefs": {
"label": "證據參照",
@@ -21244,7 +21244,7 @@
},
"candidates": {
"label": "P0 候選",
"detail": "14 個候選全部需要 owner packet 與 reviewer check。"
"detail": "14 個候選全部需要 owner evidence packet 與 reviewer check。"
},
"hosts": {
"label": "alias",
@@ -21348,7 +21348,7 @@
"gateLabel": "閘門",
"stateLabel": "狀態",
"boundaryTitle": "高價值配置收件邊界",
"boundaryIntro": "以下鍵值固定:此卡只顯示 owner packet 草案與禁止動作,不代表 Nginx reload、workflow 修改、secret rotation、agent-bounty runtime 或任何主機操作已授權。",
"boundaryIntro": "以下鍵值固定:此卡只顯示 owner evidence packet 草案與禁止動作,不代表 Nginx reload、workflow 修改、secret rotation、agent-bounty runtime 或任何主機操作已授權。",
"summary": {
"packetCount": {
"label": "Packet 草案",

View File

@@ -1,7 +1,7 @@
// =============================================================================
// WOOO AIOps - AwoooP Approval Decision
// =============================================================================
// 人工審批必須回到 Run State / Timeline,避免 Approval 成為獨立孤島。
// AI controlled approval must return to Run State / Timeline to avoid isolated Approval islands.
"use client";

View File

@@ -780,8 +780,8 @@ const LANE_CONFIG: Record<
className: "border-[#9bb6d9] bg-[#eef5ff] text-[#1f5b9b]",
},
approval: {
label: "人工閘門",
detail: "等待 SRE 批准或拒絕",
label: "AI 受控閘門",
detail: "等待 policy、check-mode 與 verifier 判定",
icon: ShieldCheck,
className: "border-[#d9b36f] bg-[#fff7e8] text-[#8a5a08]",
},
@@ -798,8 +798,8 @@ const LANE_CONFIG: Record<
className: "border-[#9bc7a4] bg-[#f0faf2] text-[#17602a]",
},
manual: {
label: "人工升級",
detail: "AI 無法閉環,需人工處置",
label: "AI 補齊升級",
detail: "補 PlayBook、rollback、verifier 或 break-glass 證據",
icon: TriangleAlert,
className: "border-[#e2a29b] bg-[#fff0ef] text-[#9f2f25]",
},