From 6e6c8609de8019b59fbd224a6d70ca5158090b80 Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 25 Jun 2026 23:29:22 +0800 Subject: [PATCH] docs(logbook): record Telegram Work Item handoff rollout [skip ci] --- docs/LOGBOOK.md | 33 +++++++++++++++++++ ...026-06-25-awoooi-product-uiux-inventory.md | 28 +++++++++++++--- 2 files changed, 56 insertions(+), 5 deletions(-) diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index 4f4f63d64..da842f03a 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -1,3 +1,36 @@ +## 2026-06-25|Telegram 修復候選卡補 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-25|Runs apply gate 串接 Work Item 審查入口與焦點優先讀取 **背景**:`INC-20260625-977E5F` / `node-exporter-188` 已被修正為 `ansible_check_mode_only`,Runs 事故焦點也能顯示乾跑、套用審查與 verifier 卡點;但 operator 仍需要自己複製 Work Item ID 去找審查頁,且首次載入會被整頁 Run 狀態鏈批次拖慢,造成「看起來仍沒有下一步」。 diff --git a/docs/workplans/2026-06-25-awoooi-product-uiux-inventory.md b/docs/workplans/2026-06-25-awoooi-product-uiux-inventory.md index fd74ef999..2cda78067 100644 --- a/docs/workplans/2026-06-25-awoooi-product-uiux-inventory.md +++ b/docs/workplans/2026-06-25-awoooi-product-uiux-inventory.md @@ -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 rail、Runs apply gate Work Item 入口,以及 Telegram Work Item owner review 入口已上線;Observability / Knowledge Base 仍需大幅圖表化與重複頁整併。 | | 全產品 / 網站 / 專案納管 | read-only `65%`,runtime `0%` | Tenants API 已列 `16` 個產品面、`31` 條公開路由、`10` 個候選 repo;owner 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 rail,Approvals 已新增 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 receipt;DB 類事件仍需真實 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%` |