diff --git a/apps/api/src/services/ai_orchestrator.py b/apps/api/src/services/ai_orchestrator.py new file mode 100644 index 00000000..e69de29b diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index 997e7c09..09d1dbe3 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -6,6 +6,71 @@ --- +## 📍 2026-04-19 晚 21:30 — Gap Review + 3 Gap 修 + AI 自主化 1/9→4/9 LLM 🎖️🎖️🎖️🎖️ + +### 統帥核心指示 +「有確認過是否符合全景、全流程、全節點、全架構?每次變更都不忘全景!朝 AI 自主化方向!」 +→ 本階段不疊加功能,先 Audit 誠實暴露 3 個 Gap,按順序修 + +### Audit 3 Gap 誠實清單 +| Gap | 內容 | 狀態 | +|---|---|---| +| **Gap 1** host IPv4 bug | labels.host="125" (短名) 被當 IP,建了 host/110/112/125/188 短名 asset,同時 192.168.0.112/121 因 instance 無 port 漏掉 | ✅ 修 | +| **Gap 2** 24h 0 aol | 真相: HostBackupFailed 是 TYPE-1 設計 (ADR-075 + 2026-04-12 決議),AI 判 NO_ACTION 保守,_auto_execute 提前 return | ✅ 非 bug | +| **Gap 3** AI 層淺 | 8/9 新 scanner 純 threshold,只 Hermes 1 個用 LLM | ✅ 修 (4/9 LLM) | + +### 修復 Commits + +**Gap 1 14474d4**: +- 新增 `_is_valid_ipv4()` 嚴格 4 段 0-255 驗證 (6/6 單元測試) +- DB 清理 266 筆重複資料 (4 短名 host + 10 relationship + 140 coverage + 112 compliance) + +**Gap 2 非 bug 確認**: +- `classify_alert_early` line 173-185 刻意把 backup 類歸 TYPE-1 不進 LLM +- `decision_manager._auto_execute` line 1571-1576 YAML NO_ACTION 提前 return +- 兩者都是設計決策,統帥選跳過 (方案 B) + +**Gap 3 LLM 升級 3 個 scanner**: +- d6b854a capacity_forecaster: `_llm_analyze_risk` (host 風險分析) +- f6cb938 compliance_scanner: `_llm_analyze_compliance_posture` (合規態勢 + Telegram) +- 2f5cab2 coverage_evaluator: `_llm_analyze_coverage_gaps` (補覆蓋建議 + Telegram) + +### AIOps KPI Dashboard 上線 +0004554 `GET /api/v1/aiops/kpi` (積木化 Service + Router): +- 6 section: asset_inventory / coverage_kpi / rule_quality / capacity_health / + automation_flow_24h / ai_autonomy_score +- **autonomy_score 實測: 63/100 (starter)** +- 5 子項: coverage/rule/capacity/flow/diversity × 20 分 + +### AI 自主化進度對照 +| 指標 | Session 前 | Session 後 | +|---|---|---| +| LLM decision | 1/9 | **4/9** (Hermes+forecaster+compliance+coverage) | +| 0 writer 表 | 8 張 | **0 張** 全活化 | +| 7 維 coverage 實作 | 3/7 | **7/7** | +| 24h ops | 22 | **150+** | +| autonomy_score | 無 | **63/100** 可量化追蹤 | + +### 今晚 AI 自主化排程(待 2f5cab2 部署) +| 時間 | Service | AI 動作 | +|---|---|---| +| 02:00 | capacity_scanner | host snapshot | +| 03:00 | **compliance + LLM** | LLM posture 分析 → Telegram grade+top3 | +| 04:00 | **Hermes LLM** | rule 噪音分析 (目前 0 noisy 可能不推) | +| 05:00 | **forecaster + LLM** | predict_linear + LLM 具體建議 → Telegram | +| 每 1h | **coverage + LLM** | red ≥ 20 才觸發 → LLM 補覆蓋建議 → Telegram | + +### Session 累計 35 commits 全成功(含 hook 擋下 1 次後正確修) +從 e7ba8cb 到 2f5cab2,全部保留 + 全部 CI 通過(除了被 concurrency 合法 cancel) + +### 下 session 接手重點(記憶 project_gap_review_20260419.md) +1. Gap 3 剩 5 scanner 不需 LLM(純資料移動) +2. Gap 2 選項 B (aol NO_ACTION 留痕) 可做 +3. SSL compliance 在 working tree 未 commit (統帥拒絕過) +4. human_feedback tracking 大工程未做 + +--- + ## 📍 2026-04-19 晚 20:00 — Hermes LLM 升級 + Rule 1 deprecate + coverage 7 維完整化 🎖️🎖️🎖️ ### 統帥反饋激活