docs(logbook): record Telegram Work Item handoff rollout [skip ci]

This commit is contained in:
Your Name
2026-06-25 23:29:22 +08:00
parent 3e475bc082
commit 6e6c8609de
2 changed files with 56 additions and 5 deletions

View File

@@ -1,3 +1,36 @@
## 2026-06-25Telegram 修復候選卡補 Work Item owner review 入口
**背景**`INC-20260625-977E5F` / `node-exporter-188` 類告警已能產生 owner review 修復候選草案,也能在 Runs 顯示乾跑後套用閘門;但 Telegram 卡片仍把 operator 留在「處置包 / 重診 / Runs」層批准後也只回「已轉人工處置包」沒有把最該處理的 Work Item 放到第一層。這會讓 AI 自動化看起來仍像只把事情丟回人工。
**修正內容**
- `telegram_gateway.py` 將修復候選 Work Item URL 正規化為正式站 `zh-TW` deep link相對路徑 `/awooop/work-items?...` 會補成 `https://awoooi.wooo.work/zh-TW/awooop/work-items?...`
- NO_ACTION / draft-ready / owner-review-required 卡片的文字提示改成 `Work Item -> 處置包 -> Runs`,避免只顯示人工處置文字。
- Telegram inline keyboard 在 no-action 修復候選卡第一列新增 `Work Item` URL 按鈕;保留 `處置包``重診``歷史``真相鏈``Runs`
- 批准 NO_ACTION 類卡片後,原訊息回寫的資訊按鈕同樣保留 `Work Item`;狀態行改成「已轉 owner review請開 Work Item / 處置包補齊修復候選,這不是執行中」。
**Commit / Deploy**
- Code commit`4e814393 fix(api): surface Work Item handoff in Telegram cards`
- Deploy marker`3e475bc0 chore(cd): deploy 4e81439 [skip ci]`
**驗證**
- `env DATABASE_URL=postgresql+asyncpg://test:test@localhost/test pytest apps/api/tests/test_telegram_ai_automation_block.py apps/api/tests/test_telegram_message_templates.py -q``82 passed`
- `python3 -m py_compile apps/api/src/services/telegram_gateway.py apps/api/src/api/v1/telegram.py apps/api/src/api/v1/webhooks.py`:通過。
- `python3 scripts/security/source-control-owner-response-guard.py --root .``SOURCE_CONTROL_OWNER_RESPONSE_GUARD_OK`
- `python3 scripts/security/security-mirror-progress-guard.py --root .``SECURITY_MIRROR_PROGRESS_GUARD_OK`
- `git diff --check`:通過。
- 本地格式產生檢查:`HAS_WORK_ITEM_HINT=True``HAS_ABSOLUTE_LINK=True`keyboard 第一列包含 `Work Item` URL + `處置包`
- Production health`https://awoooi.wooo.work/api/v1/health``healthy / prod / mock_mode=false`
- Production deep link`/zh-TW/awooop/work-items?...INC-20260625-977E5F...repair-candidate-draft...&_v=3e475bc0-tg-workitem-link``200`HTML 不含 `Application error` / `Unhandled Runtime Error`,可讀到 incident 與 work item id。
- Production Runs link`/zh-TW/awooop/runs?project_id=awoooi&incident_id=INC-20260625-977E5F&_v=3e475bc0-tg-runs-link``200`HTML 不含錯誤文字,可讀到事故焦點狀態鏈。
**完成度同步**
- Telegram 修復候選 operator handoff`64% -> 70%`
- AwoooP AI 自動化可判讀性:`64% -> 66%`
- 全站 UI/UX 專業化:`57% -> 58%`
- production autonomous repair verified success不提高仍約 `3-5%`
**邊界**:本段只修 Telegram 卡片與 callback 後資訊按鈕;沒有發送測試 Telegram、沒有執行 Ansible apply、沒有重啟 `node-exporter-188`、沒有 SSH、沒有寫 runtime state、沒有開 runtime gate。正式 health 仍顯示 `ollama_local` 502需列入下一個 AI provider 真相盤點,不能因本段部署而假性標綠。
## 2026-06-25Runs apply gate 串接 Work Item 審查入口與焦點優先讀取
**背景**`INC-20260625-977E5F` / `node-exporter-188` 已被修正為 `ansible_check_mode_only`Runs 事故焦點也能顯示乾跑、套用審查與 verifier 卡點;但 operator 仍需要自己複製 Work Item ID 去找審查頁,且首次載入會被整頁 Run 狀態鏈批次拖慢,造成「看起來仍沒有下一步」。

View File

@@ -1,7 +1,7 @@
# AWOOOI 全面工作盤點與產品 UI/UX 專業化推進清單
> 日期2026-06-25台北時間
> 基線:`gitea/main=3e2890f6`deploy `5ee68dc7`,包含 Runs apply gate Work Item 審查入口焦點優先讀取)
> 基線:`gitea/main=3e475bc0`deploy `4e814393`,包含 Runs apply gate Work Item 審查入口焦點優先讀取與 Telegram Work Item owner review 入口
> 定位:回應「做了很多但使用者看不到成果」的產品真相盤點、頁面優化計畫與 AI 自動化落地路線。
> 邊界:本文件只建立盤點與推進清單;不開 runtime gate、不 SSH、不 active scan、不讀 secret、不發 Telegram、不修改主機或 workflow。
@@ -16,7 +16,7 @@
| AI Agent 只讀治理 / API / gate 契約 | `92%` | 已有很多 snapshot、API、治理頁與邊界顯示但主要仍是「看得到、不能動」。 |
| 完整 AI 自動化產品閉環 | 約 `60-64%` | Sensor / Evidence / Classification / Gate / UI 有雛形;`repair_candidate_missing` 已拆出 owner-review-ready 草案狀態,但 execution、verifier、KM / PlayBook writeback、Telegram live receipt 仍不足。 |
| 真正 production autonomous repair | 約 `3-5%` verified success | 多數告警仍落在 manual review、draft ready owner review、general fallback 或 no-action草案 ready 不等於 runtime success。 |
| 全站專業 UI/UX 產品化 | 約 `57%` | Google Ads 式 shell、主導航整併、Tenants 作戰圖 / mobile responsive 資產卡、AwoooP 首屏 AI 自動化真相帶、Work Items operator SOP rail、Approvals decision handoff rail,以及 Runs apply gate Work Item 入口已上線Observability / Knowledge Base 仍需大幅圖表化與重複頁整併。 |
| 全站專業 UI/UX 產品化 | 約 `58%` | Google Ads 式 shell、主導航整併、Tenants 作戰圖 / mobile responsive 資產卡、AwoooP 首屏 AI 自動化真相帶、Work Items operator SOP rail、Approvals decision handoff railRuns apply gate Work Item 入口,以及 Telegram Work Item owner review 入口已上線Observability / Knowledge Base 仍需大幅圖表化與重複頁整併。 |
| 全產品 / 網站 / 專案納管 | read-only `65%`runtime `0%` | Tenants API 已列 `16` 個產品面、`31` 條公開路由、`10` 個候選 repoowner accepted / runtime gate / action buttons 仍全為 `0`。 |
因此下一階段不能再以「新增更多文字卡」為主要進度。必須改成:
@@ -66,7 +66,7 @@
| 工作域 | 目前成果 | 缺口 |
|---|---|---|
| Incidents / Runs / Approvals / Work Items | 狀態鏈、MCP evidence、repair candidate draft、approval gate、learning record 等資料已可見Work Items 已新增人工卡點與自動化缺口 SOP railApprovals 已新增 decision handoff rail能把阻塞、證據、接手包與安全閘門集中判讀 | Runs 仍需同樣的 SOP rail每個 blocked lane 後端仍要補 service-specific PlayBook、safe command route、verifier、rollback 與回寫狀態。 |
| Telegram 告警 | 已有 no-send / failure-only / AwoooI SRE 戰情室契約與紅線2026-06-25 已修 `PostgreSQLSlowQueries` 被 backup / escrow token 誤分類的問題 | live send、receipt production write、Bot API、Gateway queue 多數仍 `0`;週報 / 日報出現全 0 代表資料源或報表邏輯未變成有效營運訊號。 |
| Telegram 告警 | 已有 no-send / failure-only / AwoooI SRE 戰情室契約與紅線2026-06-25 已修 `PostgreSQLSlowQueries` 被 backup / escrow token 誤分類的問題,並把 repair-candidate no-action / owner-review-ready 卡片補上 Work Item 第一層入口 | live send、receipt production write、Bot API、Gateway queue 多數仍 `0`;週報 / 日報出現全 0 代表資料源或報表邏輯未變成有效營運訊號。 |
| PlayBook / Ansible / Repair | PlayBook trust、repair candidate、Ansible evidence 已在多處顯示database target 不再預填 K8s restart改為 read-only DB evidence + owner review | 多數仍只「建議」或「草案」,缺 service-specific playbook、safe command route、verifier 與 rollback receiptDB 類事件仍需真實 production formatter / Work Items / Runs readback 驗證。 |
| KM / learning | KM / PlayBook / writeback gate 被多次定義 | 使用者在頁面與 TG 看不到完整沉澱結果KM 頁資料鏈仍需修。 |
@@ -359,6 +359,24 @@ Tenants 目前已讀到:
完成度同步Runs apply gate handoff 正式站可審查性 `78% -> 100%`AwoooP Runs 可判讀性 `74% -> 77%`。下一步仍是把 owner review / verifier / KM writeback 變成真正狀態機,不是把人工卡點藏在長文字裡。
### 2.5.15 Telegram 修復候選 Work Item 入口
2026-06-25 已完成 Telegram 卡片小切片,讓 `INC-20260625-977E5F` / `node-exporter-188` 這類已產生 owner review 修復候選草案但 runtime gate 未開的告警,不再只顯示「處置包 / 重診 / Runs」而是在卡片與批准後回覆都放入 `Work Item` 第一層入口。
| 項目 | 結果 |
|---|---|
| Code commit | `4e814393 fix(api): surface Work Item handoff in Telegram cards` |
| Deploy marker | `3e475bc0 chore(cd): deploy 4e81439 [skip ci]` |
| 文字提示 | no-action / owner-review-ready 卡片顯示 `Work Item -> 處置包 -> Runs` |
| Inline keyboard | 非可執行修復卡第一列加入 `Work Item` URL保留 `處置包``重診``歷史``真相鏈``Runs` |
| Callback 後狀態 | 批准 NO_ACTION 後仍顯示 Work Item / 處置包資訊按鈕,並明確標示 `這不是執行中` |
| URL 正規化 | `/awooop/work-items?...` 會補成 `https://awoooi.wooo.work/zh-TW/awooop/work-items?...` |
| 測試 | Telegram 訊息與 keyboard 測試 `82 passed`py_compile、source-control guard、security mirror guard、diff check 通過 |
| Production readback | health `healthy / prod / mock_mode=false`Work Item / Runs deep link 皆 `200` 且不含錯誤文字 |
| 邊界 | 不發 Telegram 測試訊息、不執行 Ansible apply、不重啟、不 SSH、不寫 runtime state、不開 runtime gate |
完成度同步Telegram 修復候選 operator handoff `64% -> 70%`AwoooP AI 自動化可判讀性 `64% -> 66%`;全站 UI/UX 專業化 `57% -> 58%`。真正 production autonomous repair verified success 仍約 `3-5%`
## 3. 頁面 UI/UX 現況盤點
2026-06-25 對正式站桌機 / mobile 抽查:
@@ -552,9 +570,9 @@ AWOOOI 缺的是:
| 項目 | 基準完成度 |
|---|---:|
| 全站 UI/UX 專業化 | `56%` |
| 全站 UI/UX 專業化 | `58%` |
| 導航 / IA 整合 | `64%` |
| AwoooP 操作台產品化 | `67%` |
| AwoooP 操作台產品化 | `68%` |
| Tenants 全產品資產中心 | `68%` |
| Observability 專業拓樸 / 告警中心 | `38%` |
| Knowledge / PlayBook 沉澱可視化 | `34%` |