docs(logbook): record authorizations truth chain rollout [skip ci]

This commit is contained in:
Your Name
2026-05-31 21:17:19 +08:00
parent 25d42f1bf8
commit 537faf6427

View File

@@ -26,6 +26,113 @@
- VibeWork 目前只讀納管;沒有建立儲存庫、沒有同步 refs、沒有 workflow / secret 變更、沒有掃描、沒有修復、沒有主機操作、沒有正式環境部署。
- 下一個能推動整體進度的真門檻仍是負責人證據接受、脫敏發現收件、GitHub 主倉證據或執行期閘門。
## 2026-05-31Authorizations 接上 Incident 授權真相鏈
**背景**
- 使用者指出 Telegram、詳情、歷史與前端仍無法判斷告警是否重複、approval 是否仍待簽、AI 自動化跑到哪個階段、是否已修復或需要人工介入。
- Runs、Work Items、Tickets、AwoooP Approvals 已能追同一筆 Incident`/zh-TW/authorizations?project_id=...&incident_id=...&approval_id=...` 仍只呈現既有 HITL 清單,沒有把 status-chain / timeline / pending approval 串成同一條授權真相鏈。
**本次調整**
- `apps/web/src/app/[locale]/authorizations/page.tsx`
- 支援 `?project_id=...&incident_id=...&approval_id=...` 焦點模式。
- 讀取 production truth endpoints
- `/api/v1/platform/status-chain?project_id=...&incident_id=...`
- `/api/v1/incidents/{incident_id}/timeline`
- `/api/v1/approvals/pending`
- 顯示此 approval 是否仍在待簽、是否只是 timeline 歷史關聯、目前階段、驗證狀態、人工接手與下一步。
- `apps/web/src/components/approval/incident-authorization-focus.tsx`
- 新增 read-only 授權真相鏈面板,顯示 linked approval ids、AI 處理流程、MCP / 自建 MCP、Ansible、KM、通知通道、執行判定與 read-only 邊界。
- 不新增批准、不拒絕、不觸發執行、不覆寫 pending approval。
- `apps/web/src/app/[locale]/awooop/approvals/page.tsx`
- 焦點 Incident 面板新增「授權中心」連結,帶上同一組 `project_id` / `incident_id` / `approval_id`
- `apps/web/src/components/approval/live-approval-panel.tsx`
- Pending HITL 卡片若有 `incident_id`,新增「查看 Incident 授權真相鏈」入口。
- 同步清理本階段相關硬編碼與 emojiCSRF 狀態、登入身份、resolved banner、權限不足 modal 改用 i18n + lucide icons。
- `apps/web/src/stores/approval.store.ts`
- 補上 live pending approval 的 `incident_id``matched_playbook_id`、Telegram refs、metadata 與 `high` risk 型別,避免前端丟失關聯欄位。
- `apps/web/messages/zh-TW.json` / `apps/web/messages/en.json`
- 補齊 Authorizations focus 與 LiveApprovalPanel 新文案;`en.json` 持續鏡像繁中。
**驗證**
```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-authorizations-incident-focus-rebased-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/authorizations?project_id=awoooi&incident_id=INC-20260530-0DD83C&approval_id=7a229d3c-5cf8-4cbd-b10e-a6ca5ff77cf6
hasFocus=true
hasIncident=true
hasApprovalId=true
hasTimelineLinkedState=true
hasStatusChain=true
hasTimeline=true
hasMcp=true
hasAnsible=true
hasBoundary=true
hasLivePanel=true
canScroll=true
horizontalOverflow=false
screenshot=/tmp/awoooi-authorizations-incident-focus-local.png
```
**Gitea / Production deploy**
```text
6add97b9 fix(web): connect authorizations to incident truth chain
25d42f1b chore(cd): deploy 6add97b [skip ci]
Gitea:
code-review run 2329 -> success
cd run 2328 -> success
k8s awoooi-prod:
awoooi-web image=192.168.0.110:5000/awoooi/web:6add97b9d7442af11948098f677aae71b355bf30
awoooi-api image=192.168.0.110:5000/awoooi/api:6add97b9d7442af11948098f677aae71b355bf30
awoooi-worker image=192.168.0.110:5000/awoooi/api:6add97b9d7442af11948098f677aae71b355bf30
rollout status deploy/awoooi-web -> successfully rolled out
pod awoooi-web-7c547d867-jc9nh ready=true restarts=0
pod awoooi-web-7c547d867-tmdx7 ready=true restarts=0
GET /api/v1/health -> healthyollama_route_order=[ollama_gcp_a, ollama_gcp_b, ollama_local]
production browser smoke:
https://awoooi.wooo.work/zh-TW/authorizations?project_id=awoooi&incident_id=INC-20260530-0DD83C&approval_id=7a229d3c-5cf8-4cbd-b10e-a6ca5ff77cf6&_v=6add97b9
hasFocus=true
hasIncident=true
hasApprovalId=true
hasTimelineLinkedState=true
hasStatusChain=true
hasTimeline=true
hasMcp=true
hasAnsible=true
hasKm=true
hasBoundary=true
hasLivePanel=true
hasOpenApprovals=true
hasWorkItems=true
hasRuns=true
hasTickets=true
hasFocusLoadFailure=false
canScroll=true
horizontalOverflow=false
screenshot=/tmp/awoooi-authorizations-incident-focus-production-6add97b9.png
/zh-TW/awooop/approvals?project_id=awoooi&incident_id=INC-20260530-0DD83C&_v=6add97b9
authorizationsLink=/zh-TW/authorizations?project_id=awoooi&incident_id=INC-20260530-0DD83C&approval_id=7a229d3c-5cf8-4cbd-b10e-a6ca5ff77cf6
horizontalOverflow=false
```
**目前整體進度**
- Telegram / AwoooP / 前端真相鏈可見性:約 87%Runs、Work Items、Tickets、Approvals、Authorizations 已能用同一組 Incident status-chain / timeline 追證據、授權狀態與人工接手。
- 前端 AI 自動化管理介面同步:約 94%;核心操作頁已能從告警、工單、審批、授權四個角度 drill-down 同一個 Incident。
- 整體 AI 自動化飛輪:約 77%;可觀測與 handoff 明顯提升,但仍不可宣稱 24h 完整全自動修復閉環。
- 24h 完整 AI Agent 自動修復 production claim0%;仍需 production 連續統計證明「告警 -> MCP/Sentry/SigNoz/Ansible/KM -> 自動修復 -> 驗證 -> 學習」全鏈路 24h 穩定閉環。
## 2026-05-31IwoooS 納入 VibeWork 新專案只讀資安範圍
**背景**