docs(awooop): record t58 source dossier coverage [skip ci]
This commit is contained in:
@@ -1,3 +1,44 @@
|
||||
## 2026-05-18 | T58 Source Dossier Coverage on AwoooP Runs
|
||||
|
||||
**背景**:統帥指出 Telegram 告警截圖仍無法一眼判斷是否重複、是否完整入庫、是否連到 Sentry / SignOz 等相關工作日誌,以及是否已進入 AI 自動處理流程。T15c 已有單筆 Source Event Dossier,T57 已補 TG Callback Evidence;本輪補列表層 coverage,讓 Operator 在 Run 監控第一屏就能看到近期來源事件 truth-chain 覆蓋狀態。
|
||||
|
||||
**修正**:
|
||||
- 新增 read-only `GET /api/v1/platform/events/dossier/coverage`。
|
||||
- 從 `awooop_conversation_event.source_envelope` 統計最近 N 筆來源事件的 `source_envelope`、`source_refs`、dedupe、redaction、Alertmanager / Sentry / SignOz refs 覆蓋率。
|
||||
- 支援 `project_id`、`provider`、`limit` filter;provider filter 使用 typed param,避免重演 asyncpg 參數型別推斷問題。
|
||||
- Runs 頁新增「來源事件覆蓋率」面板,顯示來源事件、關聯索引、缺關聯、重複事件、Sentry refs、SignOz refs,以及 provider breakdown。
|
||||
- 補齊 zh-TW / en i18n 與 coverage helper / service tests。
|
||||
|
||||
**local verification**:
|
||||
- `python3 -m py_compile apps/api/src/services/channel_event_dossier_service.py apps/api/src/api/v1/platform/events.py apps/api/tests/test_channel_event_dossier_service.py`:pass。
|
||||
- `DATABASE_URL='sqlite+aiosqlite:///:memory:' pytest apps/api/tests/test_channel_event_dossier_service.py -q`:5 passed。
|
||||
- `DATABASE_URL='sqlite+aiosqlite:///:memory:' pytest apps/api/tests/test_platform_router_order.py apps/api/tests/test_channel_event_dossier_service.py -q`:9 passed。
|
||||
- `ruff check --select F,E9` changed API/test files:pass。
|
||||
- `jq empty apps/web/messages/zh-TW.json apps/web/messages/en.json`:pass。
|
||||
- `pnpm --filter @awoooi/web typecheck`:pass。
|
||||
- `pnpm --dir apps/web exec next lint --file src/app/[locale]/awooop/runs/page.tsx`:pass with existing literal-string warnings in this legacy page;新增文案已走 i18n。
|
||||
- `NEXT_PUBLIC_API_URL=https://awoooi.wooo.work pnpm --filter @awoooi/web build`:pass with existing Sentry setup warnings。
|
||||
- `git diff --check`:pass。
|
||||
|
||||
**production verification**:
|
||||
- `213523c7 feat(awooop): surface source dossier coverage` pushed to Gitea main。
|
||||
- Gitea `2323` Code Review success;Gitea `2322` CD tests / build-and-deploy / post-deploy-checks success。
|
||||
- Deploy marker:`ba1e7997 chore(cd): deploy 213523c [skip ci]`。
|
||||
- Health:`https://awoooi.wooo.work/api/v1/health` → `status=healthy`、`mock_mode=false`。
|
||||
- Coverage API:`/api/v1/platform/events/dossier/coverage?project_id=awoooi&limit=10` → `200`,`source_count=10`、`source_envelope_total=10`、`missing_source_envelope_total=0`、`with_source_refs_total=10`、`missing_source_refs_total=0`、`duplicate_total=5`、`redacted_total=10`、provider=`alertmanager`。
|
||||
- Sentry provider filter:`provider=sentry&limit=5` → `200`,`source_count=2`、`sentry_ref_total=4`、`missing_source_refs_total=0`。
|
||||
- SignOz provider filter:`provider=signoz&limit=5` → `200`,`source_count=2`、`signoz_ref_total=4`、`missing_source_refs_total=0`。
|
||||
- Frontend smoke:`/zh-TW/awooop/runs?project_id=awoooi` 顯示 Run 監控、導航、來源事件覆蓋率、Sentry refs、SignOz refs;未出現 Application error。
|
||||
- 110 SSH image/log 驗證未完成:目前本機對 `ollama@192.168.0.110` 回 `Permission denied (publickey,password)`;本輪 production confidence 來自 Gitea CD success、public health/API、frontend smoke。
|
||||
|
||||
**目前整體進度**:
|
||||
- AwoooP observability / truth-chain 可回看:約 96%。
|
||||
- 來源告警入庫與 Sentry / SignOz 關聯可見性:約 94%。
|
||||
- Telegram callback detail/history 可追溯:約 96%。
|
||||
- AI 自動修復閉環:約 95%。
|
||||
- 前端 AI 自動化管理介面產品化:約 93%。
|
||||
- 完整 AI 自動化管理產品化:約 88%。
|
||||
|
||||
## 2026-05-18 | T57 AwoooP Callback Reply Evidence Search + Run List Panel
|
||||
|
||||
**背景**:統帥指出 Telegram「詳情 / 歷史」按鈕與告警卡片仍無法清楚判斷是否重複、是否已被 AI 自動處理、跑到哪個流程、是否需要人工介入。T53-T56 已把 callback reply evidence 寫入 outbound mirror、Run Detail timeline 與 Run List filter;本輪補上可搜尋、可回看的 read-only evidence list,避免 Operator 只能靠 Telegram 截圖猜。
|
||||
|
||||
Reference in New Issue
Block a user