Files
awoooi/docs/LOGBOOK.md
2026-04-14 14:54:37 +08:00

188 lines
9.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# LOGBOOK - AWOOOI 進度軌跡
> **用途**: AI 代理進度追蹤,防止 Session 斷層
> **規則**: 完成重要節點後追加一行
> **歷史**: 舊條目已壓縮,詳細記錄見 git log
---
## 📍 當前狀態 (2026-04-14 — P0 文件補建完成,護城河已部署 e778e4d ✅)
**本次 session 新增2 份 P0 業界標準文件)**
- `docs/slo/SLO-SLI-DEFINITION.md` — 5 個 SLI + SLO 目標值表 + Error Budget 規則 + 里程碑
- `docs/operations/HUMAN-IN-THE-LOOP.md` — 9 種觸發條件 + Kill Switch + Fail-safe 逾時行為 + SOP
**護城河狀態**量尺SLO+ 煞車HITL均已就位配合 684d6cf 的聚合/重試/報告代碼
**觀察中**:等明日 08:00 台北時間日度報告推送,驗證 684d6cf E2E
**下一步**(優先級順序):
1. 等 CD 部署並觀察 E2E
2. Task 2.2alert_rules.yaml 補 3 類規則storage/devops_tool/external_site
3. Task 2.3alert_rule_engine.py kubectl 注入防護
4. Task 3.3SSH 修復 KM 萃取
---
## 📍 前次狀態 (2026-04-14 — 戰術 B 四大 Task 全部完成675 tests ✅)
**本次 session 新增4 Task6 檔案75 新測試)**
- `feat(adr-076): Task 2``alert_grouping_service.py` — 5分鐘滑動視窗告警聚合引擎 + 16 tests
- `feat(adr-076): Task 3``approval_execution.py` — 執行失敗重試MAX_RETRY=2, 30s, 瞬態/永久分類)+ 29 tests
- `feat(adr-076): Task 4``report_generation_service.py` — 日度巡檢報告(08:00台北) + Postmortem + 30 tests
- `webhooks.py` — ADR-076 聚合邏輯整合(指紋後/LLM前
- `main.py` — 日度報告迴圈掛進 lifespan
**測試**: 600 → 675 通過(+7510 skipped0 failed
**下一步**git push gitea main → Pod 部署驗證 → 觀察 E2E
---
## 📍 前次狀態 (2026-04-14 — MASTER AIOps Blueprint 完成,等待統帥批准)
**本次 session 新增(無 commit純文件工作**
- `docs/superpowers/plans/2026-04-14-MASTER-aiops-full-automation-blueprint.md` — 整合4份計畫文件的主計畫書 v1.0
- Memory: `aiops_current_architecture_diagnosis.md` — 完整架構診斷報告
**飛輪現況**: Pod 38ff2bb飛輪 83% 完整4 Phase 等待批准後實作
**業界標準文件缺口**已識別尚未建立SLO/SLI、AI Model Card、Human-in-Loop Spec、Alert Taxonomy Catalog、Configuration Reference
**下一步**:等統帥批准 MASTER 計畫書後,開始 Phase 1 實作
---
## 📍 前次狀態 (2026-04-14 — 飛輪 Bug 修補完成,全面部署 38ff2bb ✅)
**本次 session 修補6 commits全已部署Pod 跑 38ff2bb**
- `38ff2bb` heartbeat → ADR-075 TYPE-1 格式INFO 樹狀結構)
- `f1face4` HostHighCpuLoad 獨立規則 → NO_ACTION停止 kubectl scale unknown
- `1a4b52e` fingerprint 加 alertname 防跨告警指紋衝突 + 心跳分類補入
- `b17a677` gitea webhook analysis.model_dump() dict bug
- `0c88f67` DIAGNOSE 強制 deepseek-r1:14b不用 gemma3:4b
- `09134f5` incident.title bug + DIAGNOSE→NEMOTRON confidence=0.0 修復
**飛輪狀態**規格書層次一二三四全完成ADR-075 全完成,本次額外修補已補齊
**下一步**:觀察自動修復 E2E或繼續 ADR-075 Phase 3Prometheus 規則)
---
## 📍 前次狀態 (2026-04-12 深夜 — ADR-075 Phase 1+2+CR 全完成git push gitea main ✅)
**ADR-075 全部完成**3 commits: 2cef209 → 561c1d8 → 1cb654c
Phase 14 斷點修復):
- ✅ 斷點 A: decision_manager 提取 alert_category → send_approval_card
- ✅ 斷點 B: send_approval_card 新增參數 → _build_inline_keyboard
- ✅ 斷點 C: 互動型通知(TYPE-3/4/4D/8M)禁止發 SRE 群組
- ✅ 斷點 D: k8s_workload → kubernetes + 6 新類按鈕組
- ✅ classify_alert_early: 13 條規則7 新分類52 tests
Phase 2TYPE-8M
- ✅ send_meta_alert() ⚙️ META SYSTEM 卡片
- ✅ decision_manager TYPE-8M elif 分支
CR 修補:
- ✅ P0-2: NotificationType.TYPE_8M 加入 enum + classify_notification 早期回傳
- ✅ P1-1: 移除 _CATEGORY_BUTTONS 死碼
- ✅ P1-4: 測試 docstring 更新 13 條規則
- 664 tests all pass
**下一步**ADR-075 Phase 3Prometheus 規則),或評估下一個 ADR
---
## 📍 前次狀態 (2026-04-12 — 層次三+四全部完成CD 推送中)
**系統狀態**: ADR-073 Phase 1-4 ✅ | ADR-074 M1-M5 ✅ | ADR-073-C C1-C4 ✅ | git push gitea main ✅
**Phase 1 完成清單**:
- ✅ 1-1~1-3: Harbor 確認 + kustomization→105998d + ArgoCD sync
- ✅ 1-4: Pod image 105998d 已驗證
- ✅ 1-5: `_collect_mcp_context` 存在 Pod
- ✅ 1-6: debounce 5→30 min
- ✅ 1-7: alertname NULL 根因修復signals JSONB alias
- ✅ 1-8: cold_start_playbooks.py — Playbooks 0→15
- ✅ 1-9: batch_vectorize_km.py — 711/713 KM 向量化
**架構修復**:
- ArgoCD ignoreDifferences 移除image 更新路徑修通)
- B5 CI break-glassTODO 2026-04-13 恢復)
**Phase 2 完成清單**:
- ✅ 2-1: DB Migration — alertname column 新增 (已在 Pod 執行)
- ✅ 2-2: classify_alert_early() — 6 條規則 config_drift/info/backup/infra/k8s/db/general
- ✅ 2-3: _try_auto_repair_background() outcome 寫入點
- ✅ 2-4: create_incident_for_approval() notification_type/alert_category 寫入
- ✅ 2-5: 134 筆 alertname NULL → 0 回填完成
**下一步**: Phase 3Tier 3 — 首席架構師授權後執行)
---
## 里程碑摘要(壓縮版)
| 日期 | 里程碑 | commit |
|------|--------|--------|
| 2026-04-08 | Sprint 5.1 資料安全護欄完成Guardrail BLOCK/HITL/MultiSig| 88696db/0f5fecf |
| 2026-04-10 | ADR-068 飛輪閉環 E2E 驗收HostHighCpuLoad→PB-20260406| — |
| 2026-04-10 | ADR-067 五大 Ollama 應用全完成Phase 30-34| — |
| 2026-04-10 | B5 CI 整合測試 640 通過 | — |
| 2026-04-11 | ADR-070 全自動 AIOps 閉環MCP 10 providers| a2cc985 |
| 2026-04-11 | ADR-071 A-J Telegram 通知卡片 10 種 | 1ec1965 |
| 2026-04-11 | ADR-072 Bug 修復 P0-P2 全完成 | f34fe19 |
| 2026-04-11 | MCP Security Code Review P0/P1/P2 全修補 | f323633 |
| 2026-04-11 | ADR-069 基礎設施重建 Sprint A/B/C 全完成 | — |
| 2026-04-11 | D1 models.json v1.3.09 purpose keys| f2c18c4 |
| 2026-04-11 | M3 alertname_to_type 抽至 constants | 1ede9f9 |
| 2026-04-11 | I1 ADR-064 Rule Engine get_incident_type() 整合 | 615822d |
| 2026-04-11 | ArgoCD MCP 連線修復IP 120:30443| f23176c |
| 2026-04-11 | 首席架構師 CR Round 1 — get_incident_type rule.id bug + 11 tests | d77b2ad |
| 2026-04-11 | ADR-070 全自動化三大修復auto_approve/MCP context/target| c439277 |
| 2026-04-11 | 首席架構師 CR Round 2 — Tier 3 ternary/timeout/DESTRUCTIVE_PATTERNS + 25 tests | 8be87b0 |
| 2026-04-12 | SSH MCP 188/110 連通驗證authorized_keys 確認 | 796517f |
| 2026-04-12 | fix(test): integration 測試排除pytest addopts618 單元測試全通過 | 6e0ee8b |
| 2026-04-12 | refactor: I2 DI 化 MCP Providers + config list bug + model_regression integration | 184b37a/a67a27f |
| 2026-04-12 | docs(spec): AIOps 飛輪全面修復整合規格書 v1.0(四層方案+監控缺口+ADR-074| 77771c1 |
| 2026-04-12 | docs(adr): ADR-073 補充 ADR-071 整合工作序 + ADR-074 Sprint | f2b427d |
| 2026-04-12 | docs(spec): v2.2 §15 Subsystem 1 四階段路線圖(截圖定案)| d3ddaaf |
| 2026-04-12 | docs(spec): 規格書 v2.0 — 四階段細化實施步驟 + 防偏差守則(等待批准)| — |
| 2026-04-12 | fix(flywheel): Phase 1 — kustomization→8be87b0 + debounce 30min + alertname NULL | 7c4b36c |
| 2026-04-12 | fix(ci): Break-Glass — B5 flaky PG test bypass解封 P0 飛輪部署 | 105998d |
| 2026-04-12 | fix(argocd): 移除 ignoreDifferences image修復 GitOps image 更新斷路 | — |
| 2026-04-12 | feat(flywheel): Phase 1 完成 — 15 Playbooks 冷啟動 ✅ | 711/713 KM 向量化 ✅ |
| 2026-04-12 | feat(flywheel): Phase 2 完成 — classify_alert_early + outcome寫入 + 134筆回填 | 54efa30/97fc49a |
| 2026-04-12 | feat(flywheel): Phase 3 完成 — Tier 3 七大修復 (首席架構師授權) | dbc77c5 |
| 2026-04-12 | feat(flywheel): Phase 4 完成 — KM conversion hook + daily vectorize cron | f2fc471 |
| 2026-04-12 | feat(adr-074): M1 飛輪 Prometheus Exporter + M2 主機網路監控 | 16d6823 |
| 2026-04-12 | fix(cr): ADR-073 CR P0/P1/P2 全修補 + B5 CI 0收集修復 | e770813/c09521a |
| 2026-04-12 | feat(m3-m5): ADR-074 M3 CI Webhook + M4 備份驗證 + M5 詳細告警 | 3489e05~ec6a341 |
| 2026-04-12 | feat(c2-c4): ADR-073-C 前端飛輪 KPI+WebSocket+介入路徑視覺化 | 4b51f9b~9b1812c |
---
## ADR-073 飛輪完整盤點2026-04-12
| 項目 | 發現 |
|------|------|
| Playbooks | **0** — 飛輪從未冷啟動 |
| EXECUTION_SUCCESS | **2/3800.5%** — 自動修復幾乎從未成功 |
| KM vectorized | **全部 False699 筆)** — RAG 無法查詢歷史案例 |
| alertname in DB | **全部 NULL** — signals JSONB 結構問題 |
| debounce window | **5 分鐘**(應 30 分鐘)— 同一問題反覆重建 Incident |
| 8be87b0 部署 | ❌ CD 失敗未上線 — 三大修復未生效 |
| ADR-073 | 已寫入 `docs/adr/ADR-073-flywheel-full-audit.md`,等待統帥批准後實作 |
---
## 已知技術債(下 Sprint 評估)
| 項目 | 說明 |
|------|------|
| NetworkPolicy ClusterIP 10.43.16.201/32 | ArgoCD 重裝需更新 |
| `_collect_mcp_context` Provider 直接實例化 | ✅ 已 DI 化I2184b37a |
| B3 Phase 15.5 Trace Context UI | 統帥裁示暫緩 |
| A-3 bitan Docker 化 | P3 低優先 |