fix(web): connect tickets to incident truth chain
All checks were successful
CD Pipeline / tests (push) Successful in 1m31s
Code Review / ai-code-review (push) Successful in 12s
CD Pipeline / build-and-deploy (push) Successful in 3m36s
CD Pipeline / post-deploy-checks (push) Successful in 1m27s

This commit is contained in:
Your Name
2026-05-31 19:57:21 +08:00
parent 33601f7b1c
commit e9977f39c1
4 changed files with 640 additions and 61 deletions

View File

@@ -1,3 +1,71 @@
## 2026-05-31Tickets 接上 Incident 真相鏈與處理時間線
**背景**
- 使用者指出 Telegram 告警、詳情、歷史與前端頁面無法讓人判斷同一個 Incident 是否重複、AI 流程跑到哪、是否已自動修復、是否卡在人工介入。
- Work Items 已能看到 `INC-20260530-0DD83C` 的 status-chain / timeline`/tickets` 仍只有事件清單,且前端欄位還停在舊 schema`total/id/title/affected_service`,後端實際回 `count/incident_id/affected_services`
**本次調整**
- `apps/web/src/components/panels/TicketsPanel.tsx`
- 修正 incident list schema 對齊,清單總數改讀 `count`,列資料改讀 `incident_id``affected_services``signal_count``proposal_count`
- 支援 `?project_id=awoooi&incident_id=...` 焦點事件視圖。
- 焦點事件讀取:
- `/api/v1/platform/status-chain?project_id=...&incident_id=...`
- `/api/v1/incidents/{incident_id}/timeline`
- 新增「焦點 Incident 真相鏈」區塊階段數、事件數、Sentry / SigNoz 關聯、驗證狀態、AwoooP 狀態鏈、處理流程、Executor / Ansible / MCP / KM 證據。
- 每列事件可直接打開同一頁焦點視圖與 Work Items 真相鏈。
- `apps/web/messages/zh-TW.json` / `apps/web/messages/en.json`
- 補齊 Tickets 真相鏈、純讀提示、訊號 / 提案、Work Items / Runs 導航文案。
**驗證**
```text
python3 -m json.tool apps/web/messages/zh-TW.json / en.json -> pass
git diff --check -> pass
pnpm --dir apps/web exec tsc --noEmit --tsBuildInfoFile /tmp/awoooi-tickets-truth-chain-20260531.tsbuildinfo -> pass
NEXT_PUBLIC_API_URL=https://awoooi.wooo.work pnpm --dir apps/web run build -> pass
local browser with read-only production API proxy:
/zh-TW/tickets?project_id=awoooi&incident_id=INC-20260530-0DD83C
hasTickets=true
hasTruth=true
hasStatusChain=true
hasTimeline=true
hasEvidence=true
hasIncident=true
hasWorkItemsLink=true
hasRunsLink=true
hasReadOnly=true
hasLoadFailed=false
hasListRows=true
listCount=504
canScroll=true
horizontalOverflow=false
screenshot=/tmp/awoooi-tickets-truth-chain-local.png
焦點 Incident 實際顯示:
title=DockerContainerMemoryLimitPressure
stages=10
events=18
status_chain_stage=execution_succeeded / success
repair_state=executed
verification=degraded
next_step=manual_verify_or_repair
mcp_gateway=17/19 success, failed=2, blocked=0
top_mcp=ssh_get_container_status
ansible=infra/ansible/playbooks/188-ai-web.yml
ansible_rc=2
km=1
```
**目前整體進度**
- Telegram / AwoooP / 前端真相鏈可見性:約 82%Runs、Work Items、Tickets 已接上同一組 Incident status-chain / timeline 證據。
- 前端 AI 自動化管理介面同步:約 91%Tickets 從空清單型頁面升級為可追問單一 Incident 的操作頁。
- 整體 AI 自動化飛輪:約 75%;可觀測性和人工接手透明度推進,但仍不可宣稱 24h 完整全自動修復閉環。
- 24h 完整 AI Agent 自動修復 production claim0%;仍需 production 統計連續證明。
## 2026-05-31IwoooS 首屏資安工作雷達
**背景**