188 lines
9.4 KiB
Markdown
188 lines
9.4 KiB
Markdown
# 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.2:alert_rules.yaml 補 3 類規則(storage/devops_tool/external_site)
|
||
3. Task 2.3:alert_rule_engine.py kubectl 注入防護
|
||
4. Task 3.3:SSH 修復 KM 萃取
|
||
|
||
---
|
||
|
||
## 📍 前次狀態 (2026-04-14 — 戰術 B 四大 Task 全部完成,675 tests ✅)
|
||
|
||
**本次 session 新增(4 Task,6 檔案,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 通過(+75),10 skipped,0 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 3(Prometheus 規則)
|
||
|
||
---
|
||
|
||
## 📍 前次狀態 (2026-04-12 深夜 — ADR-075 Phase 1+2+CR 全完成,git push gitea main ✅)
|
||
|
||
**ADR-075 全部完成**(3 commits: 2cef209 → 561c1d8 → 1cb654c):
|
||
|
||
Phase 1(4 斷點修復):
|
||
- ✅ 斷點 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 2(TYPE-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 3(Prometheus 規則),或評估下一個 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-glass(TODO 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 3(Tier 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.0(9 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 addopts),618 單元測試全通過 | 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/380(0.5%)** — 自動修復幾乎從未成功 |
|
||
| KM vectorized | **全部 False(699 筆)** — 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 化(I2)184b37a |
|
||
| B3 Phase 15.5 Trace Context UI | 統帥裁示暫緩 |
|
||
| A-3 bitan Docker 化 | P3 低優先 |
|