fix(web): 清理 AwoooP Runs fallback 文案
This commit is contained in:
@@ -1209,10 +1209,10 @@
|
||||
"execution": "執行判定",
|
||||
"ansible": "Ansible",
|
||||
"mcp": "MCP",
|
||||
"mcpValue": "{success}/{total} success;top {tool}",
|
||||
"mcpValue": "{success}/{total} 成功;主要工具 {tool}",
|
||||
"km": "KM",
|
||||
"notification": "通知通道",
|
||||
"events": "Timeline events"
|
||||
"events": "時間線事件"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -1460,7 +1460,7 @@
|
||||
"tickets": "Tickets"
|
||||
},
|
||||
"metrics": {
|
||||
"sourceRefs": "Source refs",
|
||||
"sourceRefs": "來源參照",
|
||||
"sourceRefsValue": "{inbound} 入站 / {outbound} 出站",
|
||||
"provider": "Sentry / SigNoz",
|
||||
"mcp": "MCP Gateway",
|
||||
@@ -1487,7 +1487,7 @@
|
||||
"aiTitle": "AI 處置判定",
|
||||
"aiDetail": "狀態 {state};下一步 {nextStep};人工 {needsHuman}",
|
||||
"sourceTitle": "Sentry / SigNoz 匹配",
|
||||
"sourceDetail": "direct {direct} / candidate {candidate} / applied {applied};原因 {reason}",
|
||||
"sourceDetail": "直連 {direct} / 候選 {candidate} / 已套用 {applied};原因 {reason}",
|
||||
"needsHumanYes": "需要",
|
||||
"needsHumanNo": "不需要",
|
||||
"stateLabels": {
|
||||
@@ -1863,26 +1863,26 @@
|
||||
"fetchFailed": "provider 關聯查詢失敗"
|
||||
},
|
||||
"tiles": {
|
||||
"sourceRefs": "Source refs",
|
||||
"sourceRefs": "來源參照",
|
||||
"sourceRefsValue": "{inbound} 入站 / {outbound} 出站",
|
||||
"sourceRefsDetail": "direct {direct}、candidate {candidate}、applied {applied}",
|
||||
"sourceRefsDetail": "直連 {direct}、候選 {candidate}、已套用 {applied}",
|
||||
"provider": "Sentry / SigNoz",
|
||||
"providerDetail": "{reason};provider events {providerEvents}",
|
||||
"providerDetail": "{reason};供應者事件 {providerEvents}",
|
||||
"mcp": "MCP Gateway",
|
||||
"mcpValue": "{success} / {total}",
|
||||
"mcpDetail": "failed {failed}、blocked {blocked}、policy {policy}",
|
||||
"mcpDetail": "失敗 {failed}、阻擋 {blocked}、政策 {policy}",
|
||||
"ansible": "Ansible",
|
||||
"ansibleDetail": "mode {mode}、rc {rc}、apply {apply}",
|
||||
"ansibleDetail": "模式 {mode}、回傳碼 {rc}、套用 {apply}",
|
||||
"km": "KM",
|
||||
"kmDetail": "verification {verification};next {next}",
|
||||
"kmDetail": "驗證 {verification};下一步 {next}",
|
||||
"handoff": "交接狀態"
|
||||
},
|
||||
"providerEvidence": {
|
||||
"title": "Provider 匹配狀態",
|
||||
"title": "供應者匹配狀態",
|
||||
"rawIdsHidden": "raw id 已收斂",
|
||||
"summary": "目前判斷:{status}。原因:{reason}。",
|
||||
"counts": "direct {direct} / candidate {candidate} / applied {applied}",
|
||||
"latest": "latest event {event};heartbeat {heartbeat}"
|
||||
"counts": "直連 {direct} / 候選 {candidate} / 已套用 {applied}",
|
||||
"latest": "最新事件 {event};心跳 {heartbeat}"
|
||||
},
|
||||
"timeline": {
|
||||
"title": "Incident Timeline 寫入證據",
|
||||
@@ -3598,7 +3598,7 @@
|
||||
"callbackTraceRecoveryBacklog": "Callback trace backlog:缺 trace {missing};1h {recent1h};24h {recent24h};gap 後 traced {recovered};復原 {status}",
|
||||
"callbackTraceRecoveryAction": "接續處理:{action};需要人工={human}",
|
||||
"callbackTraceRecoveryOwner": "主責:AwoooP Callback Evidence;協作:TelegramGateway / 執行時間線",
|
||||
"callbackTraceRecoveryEvidenceSurface": "查證入口:Runs / TG Callback Evidence",
|
||||
"callbackTraceRecoveryEvidenceSurface": "查證入口:Runs / TG Callback 證據",
|
||||
"callbackTraceRecoveryClosure": "關閉條件:1h=0 且 24h=0;目前 1h {recent1h} / 24h {recent24h}",
|
||||
"callbackTraceRecoveryDecision": "判讀:{gap};下一步:{next}",
|
||||
"callbackTraceRecoveryLatest": "最後缺口:{missing};復原首筆:{first};復原最新:{latest}",
|
||||
@@ -3875,7 +3875,7 @@
|
||||
"recheckTotal": "Recheck {count}",
|
||||
"guardrail": "讀取不寫入={writes};人工覆核={review}",
|
||||
"itemState": "階段:{stage};結果:{outcome}",
|
||||
"itemRefs": "Source:{source};Recheck:{recheck}"
|
||||
"itemRefs": "來源:{source};複查:{recheck}"
|
||||
},
|
||||
"completionQueue": {
|
||||
"title": "Completion分流佇列",
|
||||
@@ -4219,13 +4219,13 @@
|
||||
"sourceRefs": "來源 refs:{refs}(Sentry {sentry} / SignOz {signoz})",
|
||||
"sourceFlow": {
|
||||
"label": "來源流程:{status}",
|
||||
"detail": "refs={refs}; Sentry={sentry}; SignOz={signoz}; event={event}",
|
||||
"detail": "參照={refs};Sentry={sentry};SigNoz={signoz};事件={event}",
|
||||
"statuses": {
|
||||
"applied": "已套用",
|
||||
"reviewed": "審核已記錄",
|
||||
"review": "待審核配對",
|
||||
"evidence": "來源證據已到",
|
||||
"provider": "Provider 已接收",
|
||||
"provider": "供應者已接收",
|
||||
"waiting": "等待來源"
|
||||
}
|
||||
},
|
||||
@@ -4369,17 +4369,17 @@
|
||||
"sourceFlow": {
|
||||
"column": "來源流程",
|
||||
"notLinked": "尚未關聯 incident",
|
||||
"detail": "providers={providers}; d/c/a={direct}/{candidate}/{applied}",
|
||||
"nextLine": "next={next}",
|
||||
"blockedLine": "blocked={blocker}",
|
||||
"mcpLine": "MCP {success}/{total}; failed={failed}; blocked={blocked}",
|
||||
"ansibleLine": "Ansible candidates={candidates}; apply={applied}; reason={reason}",
|
||||
"kmLine": "KM entries={count}",
|
||||
"detail": "供應者={providers};直連/候選/套用={direct}/{candidate}/{applied}",
|
||||
"nextLine": "下一步={next}",
|
||||
"blockedLine": "阻塞={blocker}",
|
||||
"mcpLine": "MCP {success}/{total};失敗={failed};阻擋={blocked}",
|
||||
"ansibleLine": "Ansible 候選={candidates};套用={applied};原因={reason}",
|
||||
"kmLine": "KM 條目={count}",
|
||||
"operator": {
|
||||
"fallbackMcpSummary": "狀態鏈批次回補中;目前可見 MCP 證據 {count} 筆,route={route}",
|
||||
"fallbackMcpSummary": "狀態鏈批次回補中;目前可見 MCP 證據 {count} 筆,路由={route}",
|
||||
"fallbackMissingChain": "狀態鏈批次回補中;先用 Run 證據判讀",
|
||||
"nextStatusChain": "等待狀態鏈批次回補,或打開 Incident 詳情確認",
|
||||
"statusChainPending": "status_chain_pending",
|
||||
"statusChainPending": "狀態鏈待回補",
|
||||
"statuses": {
|
||||
"needsHuman": "需人工",
|
||||
"failed": "執行失敗",
|
||||
@@ -4392,7 +4392,7 @@
|
||||
"verified": "已驗證",
|
||||
"applied": "已套用",
|
||||
"evidence": "已找到證據",
|
||||
"provider": "Provider 已接收",
|
||||
"provider": "供應者已接收",
|
||||
"waiting": "等待來源",
|
||||
"loading": "讀取中"
|
||||
}
|
||||
@@ -4553,7 +4553,7 @@
|
||||
},
|
||||
"captureItems": {
|
||||
"awooopStatusChain": "AwoooP 狀態鏈",
|
||||
"kmCompletionSummary": "KM owner-review snapshot"
|
||||
"kmCompletionSummary": "KM 負責人覆核快照"
|
||||
},
|
||||
"filters": {
|
||||
"label": "TG Callback 篩選",
|
||||
@@ -4562,7 +4562,7 @@
|
||||
"statuses": {
|
||||
"noCallback": "尚無 Callback",
|
||||
"sent": "已送達",
|
||||
"fallbackSent": "Fallback 已送達",
|
||||
"fallbackSent": "備援已送達",
|
||||
"rescueSent": "救援已送達",
|
||||
"failed": "送達失敗",
|
||||
"observed": "已記錄"
|
||||
@@ -4570,19 +4570,19 @@
|
||||
"details": {
|
||||
"noCallback": "此 Run 尚未有詳情 / 歷史 callback reply 證據。",
|
||||
"sent": "Telegram callback reply 已用原格式送達。",
|
||||
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字 fallback 送達。",
|
||||
"rescueSent": "Telegram fallback仍失敗後,已用救援純文字送達。",
|
||||
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字備援送達。",
|
||||
"rescueSent": "Telegram 備援仍失敗後,已用救援純文字送達。",
|
||||
"failed": "Telegram callback reply 最終送達失敗,需人工確認。",
|
||||
"observed": "Telegram callback reply 已記錄,但狀態不屬於標準分類。"
|
||||
},
|
||||
"events": {
|
||||
"title": "TG Callback Evidence",
|
||||
"subtitle": "詳情 / 歷史回覆證據來自 AwoooP outbound mirror",
|
||||
"title": "TG Callback 證據",
|
||||
"subtitle": "詳情 / 歷史回覆證據來自 AwoooP 出站鏡像",
|
||||
"total": "{count} 筆",
|
||||
"loading": "正在同步 callback evidence;尚未回來前不判定為空資料。",
|
||||
"cacheHit": "快取命中 {age}s / TTL {ttl}s",
|
||||
"cacheMiss": "剛重新聚合 / TTL {ttl}s",
|
||||
"empty": "目前尚無 callback reply evidence。",
|
||||
"empty": "目前尚無 callback reply 證據。",
|
||||
"error": "Callback evidence 載入失敗:{error}",
|
||||
"summary": {
|
||||
"outbound": "出站鏡像",
|
||||
@@ -4597,13 +4597,13 @@
|
||||
"outboundReplyMarkupTopPrefixItem": "{prefix} {total}(24h {recent},最後 {last})",
|
||||
"operatorVerdictTitle": "Operator 判讀",
|
||||
"operatorVerdictDetail": "入站點擊鏡像:{inboundStatus}(累計 {inboundTotal},24h {inboundRecent24h});snapshot:{snapshotStatus} / {snapshotCoverage};trace 復原:{traceRecoveryStatus};下一步:{nextAction}",
|
||||
"callbacks": "Callback replies",
|
||||
"callbacks": "Callback 回覆",
|
||||
"callbackDetail": "detail {detail} / history {history};Incident {incidents}",
|
||||
"inboundCallbackDetail": "入站 click:{status};累計 {total} / 24h {recent24h};最新 {latest};動作 {action}",
|
||||
"snapshots": "Evidence snapshots",
|
||||
"snapshots": "證據快照",
|
||||
"snapshotDetail": "captured {captured} / partial {partial} / missing {missing};覆蓋 {coverage}",
|
||||
"delivery": "送達失敗",
|
||||
"deliveryDetail": "sent {sent};fallback {fallback};outbound failed {outboundFailed}",
|
||||
"deliveryDetail": "已送達 {sent};備援 {fallback};出站失敗 {outboundFailed}",
|
||||
"next": "下一步",
|
||||
"latest": "最新 callback:{time}",
|
||||
"statuses": {
|
||||
@@ -4660,9 +4660,9 @@
|
||||
"previewEmpty": "無摘要",
|
||||
"openRun": "開啟 Run",
|
||||
"awooopSnapshotTitle": "Callback 當下 AwoooP 狀態鏈",
|
||||
"awooopSnapshotMcp": "MCP:total {total} / success {success} / failed {failed} / blocked {blocked};top {topTool}",
|
||||
"awooopSnapshotExecution": "Execution:executor {executor};playbook {playbook};Ansible considered={ansible} / candidates={candidates}",
|
||||
"awooopSnapshotSource": "Source:{status};direct {direct} / candidate {candidate} / applied {applied};{providers}",
|
||||
"awooopSnapshotMcp": "MCP:總數 {total} / 成功 {success} / 失敗 {failed} / 阻擋 {blocked};主要工具 {topTool}",
|
||||
"awooopSnapshotExecution": "執行:執行器 {executor};PlayBook {playbook};Ansible 已評估={ansible} / 候選={candidates}",
|
||||
"awooopSnapshotSource": "來源:{status};直連 {direct} / 候選 {candidate} / 已套用 {applied};{providers}",
|
||||
"capture": {
|
||||
"title": "Evidence Capture 狀態",
|
||||
"captured": "已捕捉:{items}",
|
||||
@@ -4678,7 +4678,7 @@
|
||||
},
|
||||
"items": {
|
||||
"awooopStatusChain": "AwoooP 狀態鏈",
|
||||
"kmCompletionSummary": "KM owner-review snapshot"
|
||||
"kmCompletionSummary": "KM 負責人覆核快照"
|
||||
},
|
||||
"nextActions": {
|
||||
"none": "不需補動作",
|
||||
@@ -4870,45 +4870,45 @@
|
||||
"mcpValue": "Gateway {success}/{total},失敗 {failed},阻擋 {blocked}",
|
||||
"mcpDetail": "top={topTool}; first-class={firstClass}; legacy={legacy}; policy={policy}",
|
||||
"source": "Sentry / SigNoz",
|
||||
"sourceValue": "{status}; direct {direct}, candidate {candidate}, applied {applied}",
|
||||
"sourceDetail": "{providers}; reason={reason}",
|
||||
"execution": "Executor",
|
||||
"sourceValue": "{status};直連 {direct},候選 {candidate},已套用 {applied}",
|
||||
"sourceDetail": "{providers};原因={reason}",
|
||||
"execution": "執行器",
|
||||
"executionValue": "{executor} / {status}",
|
||||
"executionDetail": "operation={operation}; action={action}; ops={ops}",
|
||||
"executionDetail": "操作={operation};動作={action};維運={ops}",
|
||||
"playbook": "PlayBook / Ansible",
|
||||
"playbookValue": "{playbook}",
|
||||
"playbookDetail": "ansible={ansible}; candidates={candidates}; check/apply={check}/{apply}; mode={mode}; rc={rc}; 批准={approval}; catalog={catalog}; status={status}",
|
||||
"learning": "KM / Learning",
|
||||
"learningValue": "KM {km}; AutoRepair {autoRepair}; Ops {ops}",
|
||||
"learningDetail": "verification={verification}; next={nextStep}"
|
||||
"learning": "KM / 學習",
|
||||
"learningValue": "KM {km};自動修復 {autoRepair};維運 {ops}",
|
||||
"learningDetail": "驗證={verification};下一步={nextStep}"
|
||||
},
|
||||
"drilldown": {
|
||||
"title": "單一 Incident 處理流程",
|
||||
"step": "{step}. {label}",
|
||||
"signal": "來源接收",
|
||||
"signalDetail": "inbound={inbound}; outbound={outbound}; 來源={status}; reason={reason}",
|
||||
"signalDetail": "入站={inbound};出站={outbound};來源={status};原因={reason}",
|
||||
"investigation": "MCP 調查",
|
||||
"investigationValue": "success {success}/{total}",
|
||||
"investigationDetail": "tools={tools}; failed={failed}; blocked={blocked}",
|
||||
"investigationValue": "成功 {success}/{total}",
|
||||
"investigationDetail": "工具={tools};失敗={failed};阻擋={blocked}",
|
||||
"playbook": "PlayBook / Ansible",
|
||||
"playbookDetail": "candidates={candidates}; check/apply={check}/{apply}; 批准={approval}",
|
||||
"playbookDetail": "候選={candidates};檢查/套用={check}/{apply};批准={approval}",
|
||||
"execution": "執行結果",
|
||||
"executionValue": "{executor} / {status}",
|
||||
"executionDetail": "operation={operation}; rc={rc}; mode={mode}",
|
||||
"learning": "KM / Learning",
|
||||
"learningValue": "KM {km}; autoRepair {autoRepair}",
|
||||
"learningDetail": "verification={verification}; next={nextStep}",
|
||||
"executionDetail": "操作={operation};回傳碼={rc};模式={mode}",
|
||||
"learning": "KM / 學習",
|
||||
"learningValue": "KM {km};自動修復 {autoRepair}",
|
||||
"learningDetail": "驗證={verification};下一步={nextStep}",
|
||||
"handoff": "人工 / 下一步",
|
||||
"handoffDetail": "reason={reason}; next={nextAction}"
|
||||
"handoffDetail": "原因={reason};下一步={nextAction}"
|
||||
},
|
||||
"source": {
|
||||
"status": "來源關聯",
|
||||
"verification": "狀態鏈驗證",
|
||||
"directCandidate": "Direct / Candidate / Applied",
|
||||
"directCandidate": "直連 / 候選 / 已套用",
|
||||
"directCandidateValue": "{direct} / {candidate} / {applied}",
|
||||
"latestApplied": "最新套用事件",
|
||||
"reason": "未匹配原因",
|
||||
"providers": "Provider",
|
||||
"providers": "供應者",
|
||||
"reasons": {
|
||||
"providerHeartbeatNoMatch": "Provider 有心跳,但這個 Incident 尚未匹配",
|
||||
"noMatchingProviderSourceEvent": "查無可匹配的 Sentry / SigNoz 事件",
|
||||
@@ -4917,11 +4917,11 @@
|
||||
"fetchFailed": "讀取來源關聯失敗"
|
||||
},
|
||||
"flow": {
|
||||
"providerIngress": "Provider 接收",
|
||||
"providerIngress": "供應者接收",
|
||||
"sourceEvidence": "來源證據",
|
||||
"appliedVerification": "套用關聯驗證",
|
||||
"providerDetail": "provider events={providerEvents}; ready providers={readyProviders}",
|
||||
"verificationDetail": "latest={latest}",
|
||||
"providerDetail": "供應者事件={providerEvents};就緒供應者={readyProviders}",
|
||||
"verificationDetail": "最新={latest}",
|
||||
"status": {
|
||||
"ready": "已接收",
|
||||
"waiting": "等待資料",
|
||||
@@ -5118,11 +5118,11 @@
|
||||
"operator_visible": "Operator可見性"
|
||||
},
|
||||
"actions": {
|
||||
"repair_alert_intake_or_outbound_mirror": "修復告警入庫或outbound mirror",
|
||||
"route_incident_to_mcp_gateway_and_evidence_collectors": "把事件導入 MCP Gateway與evidence collectors",
|
||||
"resolve_pending_or_expired_human_gate": "處理 pending / expired 人工 gate",
|
||||
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成人工 no-action",
|
||||
"write_auto_repair_execution_or_blocker_reason": "寫入 auto-repair execution或blocker reason",
|
||||
"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": "記錄有效執行,或明確標成人工無動作",
|
||||
"write_auto_repair_execution_or_blocker_reason": "寫入自動修復執行或阻塞原因",
|
||||
"run_post_execution_verification": "執行事後驗證並保存結果",
|
||||
"write_km_or_learning_evidence": "回寫 KM / learning evidence",
|
||||
"repair_timeline_or_operator_notification_visibility": "修復 timeline或operator notification可見性"
|
||||
@@ -5395,16 +5395,16 @@
|
||||
"reason": "原因"
|
||||
},
|
||||
"evidence": {
|
||||
"executor": "Executor",
|
||||
"executor": "執行器",
|
||||
"ansible": "Ansible",
|
||||
"mcp": "MCP",
|
||||
"mcpValue": "{success}/{total} success;top {tool}",
|
||||
"source": "Source",
|
||||
"sourceValue": "direct {direct} / candidate {candidate} / applied {applied}",
|
||||
"mcpValue": "{success}/{total} 成功;主要工具 {tool}",
|
||||
"source": "來源",
|
||||
"sourceValue": "直連 {direct} / 候選 {candidate} / 已套用 {applied}",
|
||||
"km": "KM",
|
||||
"command": "指令判定",
|
||||
"notification": "通知通道",
|
||||
"events": "Timeline events"
|
||||
"events": "時間線事件"
|
||||
}
|
||||
},
|
||||
"legacyHitl": {
|
||||
@@ -6120,7 +6120,7 @@
|
||||
"running": "執行中",
|
||||
"sent": "已送出",
|
||||
"callbackReplySent": "Callback 已送出",
|
||||
"callbackReplyFallbackSent": "Callback fallback",
|
||||
"callbackReplyFallbackSent": "Callback 備援",
|
||||
"callbackReplyRescueSent": "Callback 救援",
|
||||
"callbackReplyFailed": "Callback 失敗",
|
||||
"shadow": "Shadow",
|
||||
|
||||
@@ -1209,10 +1209,10 @@
|
||||
"execution": "執行判定",
|
||||
"ansible": "Ansible",
|
||||
"mcp": "MCP",
|
||||
"mcpValue": "{success}/{total} success;top {tool}",
|
||||
"mcpValue": "{success}/{total} 成功;主要工具 {tool}",
|
||||
"km": "KM",
|
||||
"notification": "通知通道",
|
||||
"events": "Timeline events"
|
||||
"events": "時間線事件"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -1460,7 +1460,7 @@
|
||||
"tickets": "Tickets"
|
||||
},
|
||||
"metrics": {
|
||||
"sourceRefs": "Source refs",
|
||||
"sourceRefs": "來源參照",
|
||||
"sourceRefsValue": "{inbound} 入站 / {outbound} 出站",
|
||||
"provider": "Sentry / SigNoz",
|
||||
"mcp": "MCP Gateway",
|
||||
@@ -1487,7 +1487,7 @@
|
||||
"aiTitle": "AI 處置判定",
|
||||
"aiDetail": "狀態 {state};下一步 {nextStep};人工 {needsHuman}",
|
||||
"sourceTitle": "Sentry / SigNoz 匹配",
|
||||
"sourceDetail": "direct {direct} / candidate {candidate} / applied {applied};原因 {reason}",
|
||||
"sourceDetail": "直連 {direct} / 候選 {candidate} / 已套用 {applied};原因 {reason}",
|
||||
"needsHumanYes": "需要",
|
||||
"needsHumanNo": "不需要",
|
||||
"stateLabels": {
|
||||
@@ -1863,26 +1863,26 @@
|
||||
"fetchFailed": "provider 關聯查詢失敗"
|
||||
},
|
||||
"tiles": {
|
||||
"sourceRefs": "Source refs",
|
||||
"sourceRefs": "來源參照",
|
||||
"sourceRefsValue": "{inbound} 入站 / {outbound} 出站",
|
||||
"sourceRefsDetail": "direct {direct}、candidate {candidate}、applied {applied}",
|
||||
"sourceRefsDetail": "直連 {direct}、候選 {candidate}、已套用 {applied}",
|
||||
"provider": "Sentry / SigNoz",
|
||||
"providerDetail": "{reason};provider events {providerEvents}",
|
||||
"providerDetail": "{reason};供應者事件 {providerEvents}",
|
||||
"mcp": "MCP Gateway",
|
||||
"mcpValue": "{success} / {total}",
|
||||
"mcpDetail": "failed {failed}、blocked {blocked}、policy {policy}",
|
||||
"mcpDetail": "失敗 {failed}、阻擋 {blocked}、政策 {policy}",
|
||||
"ansible": "Ansible",
|
||||
"ansibleDetail": "mode {mode}、rc {rc}、apply {apply}",
|
||||
"ansibleDetail": "模式 {mode}、回傳碼 {rc}、套用 {apply}",
|
||||
"km": "KM",
|
||||
"kmDetail": "verification {verification};next {next}",
|
||||
"kmDetail": "驗證 {verification};下一步 {next}",
|
||||
"handoff": "交接狀態"
|
||||
},
|
||||
"providerEvidence": {
|
||||
"title": "Provider 匹配狀態",
|
||||
"title": "供應者匹配狀態",
|
||||
"rawIdsHidden": "raw id 已收斂",
|
||||
"summary": "目前判斷:{status}。原因:{reason}。",
|
||||
"counts": "direct {direct} / candidate {candidate} / applied {applied}",
|
||||
"latest": "latest event {event};heartbeat {heartbeat}"
|
||||
"counts": "直連 {direct} / 候選 {candidate} / 已套用 {applied}",
|
||||
"latest": "最新事件 {event};心跳 {heartbeat}"
|
||||
},
|
||||
"timeline": {
|
||||
"title": "Incident Timeline 寫入證據",
|
||||
@@ -3598,7 +3598,7 @@
|
||||
"callbackTraceRecoveryBacklog": "Callback trace backlog:缺 trace {missing};1h {recent1h};24h {recent24h};gap 後 traced {recovered};復原 {status}",
|
||||
"callbackTraceRecoveryAction": "接續處理:{action};需要人工={human}",
|
||||
"callbackTraceRecoveryOwner": "主責:AwoooP Callback Evidence;協作:TelegramGateway / 執行時間線",
|
||||
"callbackTraceRecoveryEvidenceSurface": "查證入口:Runs / TG Callback Evidence",
|
||||
"callbackTraceRecoveryEvidenceSurface": "查證入口:Runs / TG Callback 證據",
|
||||
"callbackTraceRecoveryClosure": "關閉條件:1h=0 且 24h=0;目前 1h {recent1h} / 24h {recent24h}",
|
||||
"callbackTraceRecoveryDecision": "判讀:{gap};下一步:{next}",
|
||||
"callbackTraceRecoveryLatest": "最後缺口:{missing};復原首筆:{first};復原最新:{latest}",
|
||||
@@ -3875,7 +3875,7 @@
|
||||
"recheckTotal": "Recheck {count}",
|
||||
"guardrail": "讀取不寫入={writes};人工覆核={review}",
|
||||
"itemState": "階段:{stage};結果:{outcome}",
|
||||
"itemRefs": "Source:{source};Recheck:{recheck}"
|
||||
"itemRefs": "來源:{source};複查:{recheck}"
|
||||
},
|
||||
"completionQueue": {
|
||||
"title": "Completion分流佇列",
|
||||
@@ -4219,13 +4219,13 @@
|
||||
"sourceRefs": "來源 refs:{refs}(Sentry {sentry} / SignOz {signoz})",
|
||||
"sourceFlow": {
|
||||
"label": "來源流程:{status}",
|
||||
"detail": "refs={refs}; Sentry={sentry}; SignOz={signoz}; event={event}",
|
||||
"detail": "參照={refs};Sentry={sentry};SigNoz={signoz};事件={event}",
|
||||
"statuses": {
|
||||
"applied": "已套用",
|
||||
"reviewed": "審核已記錄",
|
||||
"review": "待審核配對",
|
||||
"evidence": "來源證據已到",
|
||||
"provider": "Provider 已接收",
|
||||
"provider": "供應者已接收",
|
||||
"waiting": "等待來源"
|
||||
}
|
||||
},
|
||||
@@ -4369,17 +4369,17 @@
|
||||
"sourceFlow": {
|
||||
"column": "來源流程",
|
||||
"notLinked": "尚未關聯 incident",
|
||||
"detail": "providers={providers}; d/c/a={direct}/{candidate}/{applied}",
|
||||
"nextLine": "next={next}",
|
||||
"blockedLine": "blocked={blocker}",
|
||||
"mcpLine": "MCP {success}/{total}; failed={failed}; blocked={blocked}",
|
||||
"ansibleLine": "Ansible candidates={candidates}; apply={applied}; reason={reason}",
|
||||
"kmLine": "KM entries={count}",
|
||||
"detail": "供應者={providers};直連/候選/套用={direct}/{candidate}/{applied}",
|
||||
"nextLine": "下一步={next}",
|
||||
"blockedLine": "阻塞={blocker}",
|
||||
"mcpLine": "MCP {success}/{total};失敗={failed};阻擋={blocked}",
|
||||
"ansibleLine": "Ansible 候選={candidates};套用={applied};原因={reason}",
|
||||
"kmLine": "KM 條目={count}",
|
||||
"operator": {
|
||||
"fallbackMcpSummary": "狀態鏈批次回補中;目前可見 MCP 證據 {count} 筆,route={route}",
|
||||
"fallbackMcpSummary": "狀態鏈批次回補中;目前可見 MCP 證據 {count} 筆,路由={route}",
|
||||
"fallbackMissingChain": "狀態鏈批次回補中;先用 Run 證據判讀",
|
||||
"nextStatusChain": "等待狀態鏈批次回補,或打開 Incident 詳情確認",
|
||||
"statusChainPending": "status_chain_pending",
|
||||
"statusChainPending": "狀態鏈待回補",
|
||||
"statuses": {
|
||||
"needsHuman": "需人工",
|
||||
"failed": "執行失敗",
|
||||
@@ -4392,7 +4392,7 @@
|
||||
"verified": "已驗證",
|
||||
"applied": "已套用",
|
||||
"evidence": "已找到證據",
|
||||
"provider": "Provider 已接收",
|
||||
"provider": "供應者已接收",
|
||||
"waiting": "等待來源",
|
||||
"loading": "讀取中"
|
||||
}
|
||||
@@ -4553,7 +4553,7 @@
|
||||
},
|
||||
"captureItems": {
|
||||
"awooopStatusChain": "AwoooP 狀態鏈",
|
||||
"kmCompletionSummary": "KM owner-review snapshot"
|
||||
"kmCompletionSummary": "KM 負責人覆核快照"
|
||||
},
|
||||
"filters": {
|
||||
"label": "TG Callback 篩選",
|
||||
@@ -4562,7 +4562,7 @@
|
||||
"statuses": {
|
||||
"noCallback": "尚無 Callback",
|
||||
"sent": "已送達",
|
||||
"fallbackSent": "Fallback 已送達",
|
||||
"fallbackSent": "備援已送達",
|
||||
"rescueSent": "救援已送達",
|
||||
"failed": "送達失敗",
|
||||
"observed": "已記錄"
|
||||
@@ -4570,19 +4570,19 @@
|
||||
"details": {
|
||||
"noCallback": "此 Run 尚未有詳情 / 歷史 callback reply 證據。",
|
||||
"sent": "Telegram callback reply 已用原格式送達。",
|
||||
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字 fallback 送達。",
|
||||
"rescueSent": "Telegram fallback仍失敗後,已用救援純文字送達。",
|
||||
"fallbackSent": "Telegram HTML 回覆失敗後,已用純文字備援送達。",
|
||||
"rescueSent": "Telegram 備援仍失敗後,已用救援純文字送達。",
|
||||
"failed": "Telegram callback reply 最終送達失敗,需人工確認。",
|
||||
"observed": "Telegram callback reply 已記錄,但狀態不屬於標準分類。"
|
||||
},
|
||||
"events": {
|
||||
"title": "TG Callback Evidence",
|
||||
"subtitle": "詳情 / 歷史回覆證據來自 AwoooP outbound mirror",
|
||||
"title": "TG Callback 證據",
|
||||
"subtitle": "詳情 / 歷史回覆證據來自 AwoooP 出站鏡像",
|
||||
"total": "{count} 筆",
|
||||
"loading": "正在同步 callback evidence;尚未回來前不判定為空資料。",
|
||||
"cacheHit": "快取命中 {age}s / TTL {ttl}s",
|
||||
"cacheMiss": "剛重新聚合 / TTL {ttl}s",
|
||||
"empty": "目前尚無 callback reply evidence。",
|
||||
"empty": "目前尚無 callback reply 證據。",
|
||||
"error": "Callback evidence 載入失敗:{error}",
|
||||
"summary": {
|
||||
"outbound": "出站鏡像",
|
||||
@@ -4597,13 +4597,13 @@
|
||||
"outboundReplyMarkupTopPrefixItem": "{prefix} {total}(24h {recent},最後 {last})",
|
||||
"operatorVerdictTitle": "Operator 判讀",
|
||||
"operatorVerdictDetail": "入站點擊鏡像:{inboundStatus}(累計 {inboundTotal},24h {inboundRecent24h});snapshot:{snapshotStatus} / {snapshotCoverage};trace 復原:{traceRecoveryStatus};下一步:{nextAction}",
|
||||
"callbacks": "Callback replies",
|
||||
"callbacks": "Callback 回覆",
|
||||
"callbackDetail": "detail {detail} / history {history};Incident {incidents}",
|
||||
"inboundCallbackDetail": "入站 click:{status};累計 {total} / 24h {recent24h};最新 {latest};動作 {action}",
|
||||
"snapshots": "Evidence snapshots",
|
||||
"snapshots": "證據快照",
|
||||
"snapshotDetail": "captured {captured} / partial {partial} / missing {missing};覆蓋 {coverage}",
|
||||
"delivery": "送達失敗",
|
||||
"deliveryDetail": "sent {sent};fallback {fallback};outbound failed {outboundFailed}",
|
||||
"deliveryDetail": "已送達 {sent};備援 {fallback};出站失敗 {outboundFailed}",
|
||||
"next": "下一步",
|
||||
"latest": "最新 callback:{time}",
|
||||
"statuses": {
|
||||
@@ -4660,9 +4660,9 @@
|
||||
"previewEmpty": "無摘要",
|
||||
"openRun": "開啟 Run",
|
||||
"awooopSnapshotTitle": "Callback 當下 AwoooP 狀態鏈",
|
||||
"awooopSnapshotMcp": "MCP:total {total} / success {success} / failed {failed} / blocked {blocked};top {topTool}",
|
||||
"awooopSnapshotExecution": "Execution:executor {executor};playbook {playbook};Ansible considered={ansible} / candidates={candidates}",
|
||||
"awooopSnapshotSource": "Source:{status};direct {direct} / candidate {candidate} / applied {applied};{providers}",
|
||||
"awooopSnapshotMcp": "MCP:總數 {total} / 成功 {success} / 失敗 {failed} / 阻擋 {blocked};主要工具 {topTool}",
|
||||
"awooopSnapshotExecution": "執行:執行器 {executor};PlayBook {playbook};Ansible 已評估={ansible} / 候選={candidates}",
|
||||
"awooopSnapshotSource": "來源:{status};直連 {direct} / 候選 {candidate} / 已套用 {applied};{providers}",
|
||||
"capture": {
|
||||
"title": "Evidence Capture 狀態",
|
||||
"captured": "已捕捉:{items}",
|
||||
@@ -4678,7 +4678,7 @@
|
||||
},
|
||||
"items": {
|
||||
"awooopStatusChain": "AwoooP 狀態鏈",
|
||||
"kmCompletionSummary": "KM owner-review snapshot"
|
||||
"kmCompletionSummary": "KM 負責人覆核快照"
|
||||
},
|
||||
"nextActions": {
|
||||
"none": "不需補動作",
|
||||
@@ -4870,45 +4870,45 @@
|
||||
"mcpValue": "Gateway {success}/{total},失敗 {failed},阻擋 {blocked}",
|
||||
"mcpDetail": "top={topTool}; first-class={firstClass}; legacy={legacy}; policy={policy}",
|
||||
"source": "Sentry / SigNoz",
|
||||
"sourceValue": "{status}; direct {direct}, candidate {candidate}, applied {applied}",
|
||||
"sourceDetail": "{providers}; reason={reason}",
|
||||
"execution": "Executor",
|
||||
"sourceValue": "{status};直連 {direct},候選 {candidate},已套用 {applied}",
|
||||
"sourceDetail": "{providers};原因={reason}",
|
||||
"execution": "執行器",
|
||||
"executionValue": "{executor} / {status}",
|
||||
"executionDetail": "operation={operation}; action={action}; ops={ops}",
|
||||
"executionDetail": "操作={operation};動作={action};維運={ops}",
|
||||
"playbook": "PlayBook / Ansible",
|
||||
"playbookValue": "{playbook}",
|
||||
"playbookDetail": "ansible={ansible}; candidates={candidates}; check/apply={check}/{apply}; mode={mode}; rc={rc}; 批准={approval}; catalog={catalog}; status={status}",
|
||||
"learning": "KM / Learning",
|
||||
"learningValue": "KM {km}; AutoRepair {autoRepair}; Ops {ops}",
|
||||
"learningDetail": "verification={verification}; next={nextStep}"
|
||||
"learning": "KM / 學習",
|
||||
"learningValue": "KM {km};自動修復 {autoRepair};維運 {ops}",
|
||||
"learningDetail": "驗證={verification};下一步={nextStep}"
|
||||
},
|
||||
"drilldown": {
|
||||
"title": "單一 Incident 處理流程",
|
||||
"step": "{step}. {label}",
|
||||
"signal": "來源接收",
|
||||
"signalDetail": "inbound={inbound}; outbound={outbound}; 來源={status}; reason={reason}",
|
||||
"signalDetail": "入站={inbound};出站={outbound};來源={status};原因={reason}",
|
||||
"investigation": "MCP 調查",
|
||||
"investigationValue": "success {success}/{total}",
|
||||
"investigationDetail": "tools={tools}; failed={failed}; blocked={blocked}",
|
||||
"investigationValue": "成功 {success}/{total}",
|
||||
"investigationDetail": "工具={tools};失敗={failed};阻擋={blocked}",
|
||||
"playbook": "PlayBook / Ansible",
|
||||
"playbookDetail": "candidates={candidates}; check/apply={check}/{apply}; 批准={approval}",
|
||||
"playbookDetail": "候選={candidates};檢查/套用={check}/{apply};批准={approval}",
|
||||
"execution": "執行結果",
|
||||
"executionValue": "{executor} / {status}",
|
||||
"executionDetail": "operation={operation}; rc={rc}; mode={mode}",
|
||||
"learning": "KM / Learning",
|
||||
"learningValue": "KM {km}; autoRepair {autoRepair}",
|
||||
"learningDetail": "verification={verification}; next={nextStep}",
|
||||
"executionDetail": "操作={operation};回傳碼={rc};模式={mode}",
|
||||
"learning": "KM / 學習",
|
||||
"learningValue": "KM {km};自動修復 {autoRepair}",
|
||||
"learningDetail": "驗證={verification};下一步={nextStep}",
|
||||
"handoff": "人工 / 下一步",
|
||||
"handoffDetail": "reason={reason}; next={nextAction}"
|
||||
"handoffDetail": "原因={reason};下一步={nextAction}"
|
||||
},
|
||||
"source": {
|
||||
"status": "來源關聯",
|
||||
"verification": "狀態鏈驗證",
|
||||
"directCandidate": "Direct / Candidate / Applied",
|
||||
"directCandidate": "直連 / 候選 / 已套用",
|
||||
"directCandidateValue": "{direct} / {candidate} / {applied}",
|
||||
"latestApplied": "最新套用事件",
|
||||
"reason": "未匹配原因",
|
||||
"providers": "Provider",
|
||||
"providers": "供應者",
|
||||
"reasons": {
|
||||
"providerHeartbeatNoMatch": "Provider 有心跳,但這個 Incident 尚未匹配",
|
||||
"noMatchingProviderSourceEvent": "查無可匹配的 Sentry / SigNoz 事件",
|
||||
@@ -4917,11 +4917,11 @@
|
||||
"fetchFailed": "讀取來源關聯失敗"
|
||||
},
|
||||
"flow": {
|
||||
"providerIngress": "Provider 接收",
|
||||
"providerIngress": "供應者接收",
|
||||
"sourceEvidence": "來源證據",
|
||||
"appliedVerification": "套用關聯驗證",
|
||||
"providerDetail": "provider events={providerEvents}; ready providers={readyProviders}",
|
||||
"verificationDetail": "latest={latest}",
|
||||
"providerDetail": "供應者事件={providerEvents};就緒供應者={readyProviders}",
|
||||
"verificationDetail": "最新={latest}",
|
||||
"status": {
|
||||
"ready": "已接收",
|
||||
"waiting": "等待資料",
|
||||
@@ -5118,11 +5118,11 @@
|
||||
"operator_visible": "Operator可見性"
|
||||
},
|
||||
"actions": {
|
||||
"repair_alert_intake_or_outbound_mirror": "修復告警入庫或outbound mirror",
|
||||
"route_incident_to_mcp_gateway_and_evidence_collectors": "把事件導入 MCP Gateway與evidence collectors",
|
||||
"resolve_pending_or_expired_human_gate": "處理 pending / expired 人工 gate",
|
||||
"record_effective_execution_or_mark_manual_no_action": "記錄有效執行,或明確標成人工 no-action",
|
||||
"write_auto_repair_execution_or_blocker_reason": "寫入 auto-repair execution或blocker reason",
|
||||
"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": "記錄有效執行,或明確標成人工無動作",
|
||||
"write_auto_repair_execution_or_blocker_reason": "寫入自動修復執行或阻塞原因",
|
||||
"run_post_execution_verification": "執行事後驗證並保存結果",
|
||||
"write_km_or_learning_evidence": "回寫 KM / learning evidence",
|
||||
"repair_timeline_or_operator_notification_visibility": "修復 timeline或operator notification可見性"
|
||||
@@ -5395,16 +5395,16 @@
|
||||
"reason": "原因"
|
||||
},
|
||||
"evidence": {
|
||||
"executor": "Executor",
|
||||
"executor": "執行器",
|
||||
"ansible": "Ansible",
|
||||
"mcp": "MCP",
|
||||
"mcpValue": "{success}/{total} success;top {tool}",
|
||||
"source": "Source",
|
||||
"sourceValue": "direct {direct} / candidate {candidate} / applied {applied}",
|
||||
"mcpValue": "{success}/{total} 成功;主要工具 {tool}",
|
||||
"source": "來源",
|
||||
"sourceValue": "直連 {direct} / 候選 {candidate} / 已套用 {applied}",
|
||||
"km": "KM",
|
||||
"command": "指令判定",
|
||||
"notification": "通知通道",
|
||||
"events": "Timeline events"
|
||||
"events": "時間線事件"
|
||||
}
|
||||
},
|
||||
"legacyHitl": {
|
||||
@@ -6120,7 +6120,7 @@
|
||||
"running": "執行中",
|
||||
"sent": "已送出",
|
||||
"callbackReplySent": "Callback 已送出",
|
||||
"callbackReplyFallbackSent": "Callback fallback",
|
||||
"callbackReplyFallbackSent": "Callback 備援",
|
||||
"callbackReplyRescueSent": "Callback 救援",
|
||||
"callbackReplyFailed": "Callback 失敗",
|
||||
"shadow": "Shadow",
|
||||
|
||||
Reference in New Issue
Block a user