778 lines
32 KiB
Markdown
778 lines
32 KiB
Markdown
# LOGBOOK - AWOOOI 進度軌跡
|
||
|
||
> **用途**: AI 代理進度追蹤,防止 Session 斷層
|
||
> **規則**: 完成重要節點後追加一行
|
||
> **歷史**: 舊條目已壓縮,詳細記錄見 git log
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 深夜 — 全站真實數據驗收 + AI 回覆修復 + Backlog 清零 ✅)
|
||
|
||
### 本 Session 完成項目 (2026-04-10 深夜 第二輪)
|
||
|
||
| Commit | 內容 |
|
||
|--------|------|
|
||
| `0b93f0e` | B2 拓撲圖 — useElkLayout.ts + 展開收合 + 過濾控制 (全展開/收合/只看異常) |
|
||
| `2a66bb1` | B5 CI — 改用 Gitea Actions `services:` 架構,徹底解決 DinD 網路隔離問題 |
|
||
| `527ce9f` | 後端 `/api/v1/notifications/channels` 路由補齊 (前端 404 修復) |
|
||
| `100e4d9` | AI 回覆截斷修復 — persona 強制注入 + Markdown 清理 + 600字截斷 |
|
||
| `cdccc7e` | SOUL.md v5.6 + capabilities.json v5.6 (B6 完成) |
|
||
|
||
**全站真實數據清查結果**:
|
||
- 34 個頁面全部串接真實 API,零假數據
|
||
- 唯一缺口:`/notifications/channels` 後端 404 → 已修復
|
||
- notifications: 4 頻道 (OpenClaw TG / Nemotron TG / SSE / Redis Stream) 全 active
|
||
|
||
**AI 回覆問題修復**:
|
||
- 根因:`_call_openclaw/nemotron` 未帶 persona,LLM 輸出 Markdown 且無字數限制
|
||
- 修正:強制前置 PERSONA (300字規範) + `_clean_ai_reply()` 清除語法 + 600字硬截斷
|
||
|
||
**Backlog 狀態**:
|
||
- B2 ✅ 完成
|
||
- B5 ✅ 完成
|
||
- B6 ✅ 完成
|
||
- **所有 Backlog 清零**
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 深夜 — ADR-067全完成 + CI B5通過 + SOUL v5.6 ✅)
|
||
|
||
### 本 Session 完成項目 (2026-04-10 深夜)
|
||
|
||
| Commit | 內容 |
|
||
|--------|------|
|
||
| `9a3002e` | CI B5 整合測試 — container IP 方案,解決 DinD port mapping |
|
||
| `527ce9f` | 後端 /api/v1/notifications/channels 路由 |
|
||
| `cdccc7e` | SOUL.md v5.6 + capabilities.json v5.6 — ADR-067五大應用 + Guardrail BLOCK層 |
|
||
|
||
**CI Run 640 驗收**:
|
||
- Unit Tests: 499 passed ✅
|
||
- B5 整合測試 (真實 DB): 5 passed ✅
|
||
- K8s 部署: 3 API + 2 Web Pods Running,image `5d45499` ✅
|
||
|
||
**ADR-067 五大 Ollama 應用全部完成**:
|
||
- Phase 30-34:Drift摘要 / Log摘要 / PR審查 / RAG知識庫(5814 chunks) / 圖片分析
|
||
- Telegram `/rag <問題>` 指令已驗收,E2E 回答 ADR-067 內容正確
|
||
|
||
**Backlog 剩餘**:
|
||
- B1: Sprint 5.2 全面監控 (P2)
|
||
- B2: Phase O-6 前端拓撲視覺化 (P3)
|
||
- D1: models.json 集中化 (P3)
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 下午 飛輪 Telegram 回饋閉環 + 心跳告警排除 ✅)
|
||
|
||
### 飛輪 Telegram 回饋閉環 + 心跳排除
|
||
|
||
| Commit | 內容 |
|
||
|--------|------|
|
||
| `7768924` | 自動修復後移除 Telegram 按鈕(`mark_auto_repaired()`)+ `NoAlertsReceived2Hours` 排除飛輪 |
|
||
| `e1dfbed` | `HostHighCpuLoad` `auto_repair: false → true`(Prometheus rules 部署) |
|
||
|
||
**根本原因診斷**:
|
||
- `GUARDRAIL_BLOCKED` 原因:`alerts-unified.yml` 裡 `auto_repair: "false"` 標籤封鎖所有 HostHighCpuLoad
|
||
- Telegram 按鈕不消失:`_push_to_telegram_background` 和 `_try_auto_repair_background` 獨立背景任務,無協調
|
||
|
||
**修正架構**:
|
||
- `telegram_gateway.send_approval_card`: 存 `tg_approval:{id}` → Redis
|
||
- `telegram_gateway.mark_auto_repaired()`: 新方法 — 移除按鈕 + reply 結果
|
||
- `constants.is_heartbeat_alertname()`: `NoAlertsReceived2Hours` / `Watchdog` 等排除飛輪
|
||
|
||
**E2E 驗收**(2026-04-10 13:36):
|
||
```
|
||
ALERT_RECEIVED → AUTO_REPAIR_TRIGGERED ok=True → EXECUTION_COMPLETED ok=True
|
||
TELEGRAM_RESULT_SENT ok=True auto_repair_card_updated ✅ (按鈕已移除)
|
||
```
|
||
|
||
**CI B5 整合測試**: continue-on-error 暫設,docker cp 方案待驗證
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 ADR-068 飛輪冷啟動全閉環 ✅ 首席架構師審查 97/100)
|
||
|
||
### ADR-068 飛輪冷啟動斷層修復 — 全閉環
|
||
|
||
| Commit | 內容 |
|
||
|--------|------|
|
||
| `c6edfb5` | 四階段修復:P1 affected_services / P2 alertname 變體 / P3 Jaccard 豁免 / P4 embedding 持久化 |
|
||
| `670cd5d` | 首席架構師審查修正:C1 Repository / C2 Router→Service / I1-I4 / M1 |
|
||
|
||
**E2E 驗收**(2026-04-10 03:20):
|
||
```
|
||
ALERT_RECEIVED → AUTO_REPAIR_TRIGGERED ok=True → EXECUTION_COMPLETED ok=True → TELEGRAM_SENT
|
||
HostHighCpuLoad 匹配 high-cpu-restart PB-20260406-488671 ✅
|
||
```
|
||
|
||
**文件更新**: ADR-068 ✅ | Skill 02 v2.8 ✅ | Memory feedback ✅ | LOGBOOK ✅
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 飛輪四階段系統性修復 ✅ E2E 驗收通過)
|
||
|
||
### 飛輪冷啟動斷層修復 (c6edfb5 → ab6f6fa)
|
||
|
||
| Phase | 根因 | 修復 | 驗收 |
|
||
|-------|------|------|------|
|
||
| P3 | Jaccard 空集合打 0 → 通用型 Playbook 永不匹配 | `similarity.py` affected_services/severity 空集合豁免 1.0 | ✅ |
|
||
| P2 | Redis index 缺少 HostHighCpuLoad 等真實 alertname | Redis 腳本執行 + alert_rules.yaml 擴充 5 條規則 | ✅ |
|
||
| P1 | affected_services=[alertname] 污染 + alert_name="custom" | `_extract_affected_services()` + 完整 labels → Signal | ✅ |
|
||
| P4 | 重啟後向量快取清空(冷啟動斷層) | `playbook_embeddings` pgvector 表 + 啟動自動重建 18/18 | ✅ |
|
||
|
||
**E2E 驗收 log(2026-04-10 03:20):**
|
||
```
|
||
ALERT_RECEIVED HostHighCpuLoad
|
||
AUTO_REPAIR_TRIGGERED ok=True high-cpu-restart ← 不再 NO_MATCH ✅
|
||
EXECUTION_COMPLETED ok=True PB-20260406-488671
|
||
TELEGRAM_SENT ok=True approval_card
|
||
```
|
||
|
||
### 下一步 Backlog
|
||
B5 整合測試框架 > B2 前端拓撲補完 > B6 SOUL.md
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 Phase O-6 視覺化驗收 ✅ + 全 Backlog 閉環)
|
||
|
||
### Phase O-6 視覺化驗收 — 全部通過
|
||
|
||
| 項目 | 結果 |
|
||
|------|------|
|
||
| O-6.1 Grafana 3 dashboards | ✅ ai/infra/nvidia 已存在 |
|
||
| O-6.2 service-registry | ✅ 補齊9個K8s部署, prometheus 96%, 0 errors (ab3e266) |
|
||
| O-6.3 ADR-053 可觀測性統一架構 | ✅ 已存在 |
|
||
| E2E Prometheus 35/35 targets | ✅ |
|
||
| E2E Velero daily backup | ✅ |
|
||
| E2E API all components | ✅ |
|
||
| B1 Sensor Agent stream | ✅ awoooi:signals 活躍 |
|
||
|
||
### 下一步 Backlog
|
||
B5 整合測試框架 > B2 前端拓撲補完 > B6 SOUL.md
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 Phase 33 架構審查完成 + RAG 5814 chunks E2E 驗收)
|
||
|
||
### ADR-067 Phase 30-34 最終狀態
|
||
|
||
| Phase | 應用 | Commit | 狀態 |
|
||
|-------|------|--------|------|
|
||
| 30 | Drift 報告中文摘要 (qwen2.5:7b-instruct) | a30713b | ✅ |
|
||
| 31 | Log 異常摘要 (deepseek-r1:14b) | 63e840a | ✅ |
|
||
| 32 | PR 自動審查 (qwen2.5-coder:7b) | 63e840a | ✅ |
|
||
| 33 | RAG 知識庫 pgvector (nomic-embed-text) | cc8cabe | ✅ 5814 chunks 架構審查合規 |
|
||
| 34 | 圖片分析 Telegram (llava:latest) | 63e840a | ✅ |
|
||
|
||
### Phase 33 架構審查修正 (2026-04-10 cc8cabe)
|
||
|
||
首席架構師審查評分: **62/100 → 修正後預估 88/100**
|
||
|
||
| # | 問題 | 嚴重度 | 修正 |
|
||
|---|------|--------|------|
|
||
| C2 | Router 層有業務邏輯 `_run_index()` | Critical | 移入 `KnowledgeRAGService.index_all_sources()` |
|
||
| C3 | `glob` 無法掃子目錄 | Critical | `glob → rglob` |
|
||
| C4 | docstring 寫 Ollama 188 (實際是 111) | Critical | 修正說明 |
|
||
| I2 | 重複索引累積 chunks | Important | `index_document()` 先 `_delete_by_source_id()` |
|
||
| I3 | debug endpoint 硬碼 188 IP | Important | 改用 `settings.OLLAMA_URL` |
|
||
| I4 | httpx client 未在 shutdown 關閉 | Important | main.py lifespan 加 `close()` |
|
||
|
||
**C1 修正 (5c2db65)**: 新增 `rag_chunk_repository.py` — Service 不再直接碰 DB ✅
|
||
|
||
### RAG 知識庫關鍵坑記錄
|
||
- K3s NetworkPolicy v1.3 已封閉 188:11434 → 必須用 `settings.OLLAMA_URL`(111)
|
||
- docs/ 被 .dockerignore 排除 → 明確移除排除規則讓 RAG 文件進容器
|
||
- `_run_index()` 業務邏輯屬 Service 層責任 → leWOOOgo 原則
|
||
|
||
### 下一步
|
||
- ~~C1 Repository 層重構~~ ✅ 完成 (5c2db65)
|
||
- ivfflat index 建立 (5814 chunks 已超過 100 筆門檻,可手動執行)
|
||
- ADR-067 五大應用全完成 → 待議下一個 Sprint
|
||
|
||
---
|
||
|
||
## 📍 舊狀態 (2026-04-10 ADR-067 Phase 30-34 全部實作完成 🔄 CD 部署中)
|
||
|
||
### ADR-067 Ollama 五大應用 — 實作完成
|
||
|
||
| Phase | 應用 | Commit | 狀態 |
|
||
|-------|------|--------|------|
|
||
| 30 | Drift 報告中文摘要 (qwen2.5:7b-instruct) | 89015d4 | ✅ 已部署 a30713b |
|
||
| 31 | Log 異常摘要 (deepseek-r1:14b) | 63e840a | 🔄 CD 中 |
|
||
| 32 | PR 自動審查 (qwen2.5-coder:7b) | 63e840a | 🔄 CD 中 |
|
||
| 33 | RAG 知識庫 pgvector (nomic-embed-text 768d) | 63e840a | 🔄 CD 中 |
|
||
| 34 | 圖片分析 Telegram (llava:latest) | 63e840a | 🔄 CD 中 |
|
||
|
||
- Migration phase28 (rag_chunks) + phase29 (pr_reviews) 已執行 ✅
|
||
- 今天額外完成: Sprint 5.1/5.2 + Phase 27 + nginx-exporter + sensor cron 清理
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 ADR-067 Ollama 五大應用批准,Phase 30 即將開始)
|
||
|
||
### ADR-067 Ollama 五大應用 — 2026-04-10 統帥批准
|
||
|
||
| Phase | 應用 | 狀態 |
|
||
|-------|------|------|
|
||
| 30 | Drift 報告中文摘要 (qwen2.5:7b-instruct) | 🔲 Next |
|
||
| 31 | Log 異常摘要 (deepseek-r1:14b) | 🔲 |
|
||
| 32 | PR 自動審查 (qwen2.5-coder:7b) | 🔲 |
|
||
| 33 | RAG pgvector (nomic-embed-text 768d) | 🔲 |
|
||
| 34 | 圖片分析 (llava:latest) | 🔲 |
|
||
|
||
- pgvector 0.8.2 已在 prod ✅
|
||
- 詳細規格: ADR-067, project_ollama_applications.md
|
||
|
||
---
|
||
|
||
## 📍 前一狀態 (2026-04-10 Sprint 5.1 + Phase 27 部署中 🔄)
|
||
|
||
### Sprint 5.1 Data Safety Guardrails — 全部確認已部署
|
||
|
||
| 項目 | 狀態 | 備註 |
|
||
|------|------|------|
|
||
| DB M-002: approval_records MultiSig 欄位 | ✅ 已在 DB | approval_level/votes/required_votes |
|
||
| DB M-003: alert_event_type ENUM +8 | ✅ 已在 DB | 18個 event_type |
|
||
| ops/config/service-registry.yaml | ✅ 已 commit | BLOCK/CRITICAL_HITL/STANDARD_HITL/AUTO |
|
||
| service_registry.py / velero_client.py / preflight_service.py | ✅ 已部署 | Sprint 3 時即已部署 |
|
||
| Playbook model 3 安全欄位 | ✅ 已部署 | requires_approval_level/stateful_targets/requires_pre_backup |
|
||
| auto_repair_service.py Guardrail 注入 | ✅ 已部署 | StatefulLevel.BLOCK 攔截 |
|
||
| alert_operation_log_repository 8 新 event_type | ✅ 已部署 | GUARDRAIL_BLOCKED 等 |
|
||
| K8s Velero RBAC | ✅ 已有 | awoooi-executor 已有 list backups 權限 |
|
||
|
||
### Phase 27 frequency_snapshot 持久化
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| incidents.frequency_snapshot JSONB | ✅ DB 已建立 | migration 執行 ✅ |
|
||
| incident_repository 序列化/反序列化 | ✅ | 9846a6c |
|
||
| CD 部署中 | 🔄 run/653 | — |
|
||
|
||
**下一步**: CD 完成確認 → 下一 Sprint
|
||
|
||
## 📍 當前狀態 (2026-04-10 Sprint 6 A+B+C+D 全完成 ✅)
|
||
|
||
### Sprint 6 完整閉環
|
||
|
||
| Phase | 項目 | 結果 | Commit |
|
||
|-------|------|------|--------|
|
||
| A1 | SSH config 補 120/121 | ✅ | — |
|
||
| A2 | CD 狀態確認(正常) | ✅ | — |
|
||
| B | Sensor Agent 188+110 systemd service | ✅ active | 31d45f0 |
|
||
| C | blast_radius AIBlastRadius→BlastRadius | ✅ | 7e49862 |
|
||
| C | AIDataImpact .lower() → DataImpact | ✅ | 0571ad1 |
|
||
| C | telegram_chat_id INTEGER→BIGINT (K8s exec) | ✅ | — |
|
||
| C | E2E: approval_created_db ✅ + telegram_sent ✅ | ✅ | — |
|
||
| D | drift CAST(:param AS jsonb) SQL fix | ✅ | 5d591c4 |
|
||
| D | drift k8s/ 打包進 image | ✅ | c132fd4 |
|
||
| D | drift_reports DB 寫入驗證 total=1 | ✅ | — |
|
||
|
||
**下一步**: Telegram 批准按鈕真實 E2E(需要統帥點按鈕驗收)/ 其他 Backlog
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 Sprint 6 Phase A+B+C 進行中)
|
||
|
||
### Sprint 6 C — Telegram E2E + blast_radius bug 修復
|
||
|
||
| 項目 | 結果 | Commit |
|
||
|------|------|--------|
|
||
| SSH config 補 120/121 | ✅ | — |
|
||
| CD 狀態確認(正常,無積壓) | ✅ | — |
|
||
| Sensor Agent 188 systemd service | ✅ active | — |
|
||
| Sensor Agent 110 systemd service | ✅ active | — |
|
||
| E2E 注入告警 → signoz_telegram_sent | ✅ | — |
|
||
| blast_radius AIBlastRadius→BlastRadius bug | ✅ 修復 | 7e49862 |
|
||
| CD 部署 7e49862 | 🔄 進行中 | — |
|
||
|
||
**下一步**: CD 完成後重跑 E2E 驗收
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 Sensor Agent B1 部署完成 ✅)
|
||
|
||
### Sprint 6 B — Sensor Agent 兩台主機部署
|
||
|
||
| 主機 | 狀態 | 採集週期 | Redis |
|
||
|------|------|---------|-------|
|
||
| 192.168.0.110 (wooo) | `active (running)` systemd user service | 30s | awoooi:signals DB10 |
|
||
| 192.168.0.188 (ollama) | `active (running)` systemd user service | 30s | awoooi:signals DB10 |
|
||
|
||
- 三層採集:NodeMetrics + Journal + ServiceProbe 全正常
|
||
- systemd enable → 開機自啟
|
||
- 部署路徑:`~/awoooi-sensor/agent.py --loop --interval 30`
|
||
|
||
**下一步**: C — Telegram E2E 批准閉環真實測試 / D — drift CronJob 診斷
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 Sprint 5R Phase 3 完成 ✅)
|
||
|
||
### Sprint 5R Phase 3 — Command Palette + 主機抽屜
|
||
|
||
| 項目 | 內容 | Commit |
|
||
|------|------|--------|
|
||
| ⌘K Command Palette | 全局指令面板,高斯模糊背景,9頁導航+Terminal快速動作,↑↓/Enter/Esc,100% i18n | 89db96f |
|
||
| 主機卡點擊抽屜 | 行內展開:CPU/RAM大字+服務清單(port/latency)+相關事件,✕關閉,選中藍框 | 5244235 |
|
||
| i18n commandPalette | zh-TW + en 兩語言完整 | 89db96f |
|
||
|
||
**下一步**: Backlog B1 Sensor Agent / B5 整合測試 / 或統帥指示
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5R Phase 2 完成 ✅)
|
||
|
||
### Sprint 5R Phase 2 — Tab 3 COT + Tab 4 MTTR
|
||
|
||
| 項目 | 內容 | Commit |
|
||
|------|------|--------|
|
||
| Tab 3 Chain-of-Thought 面板 | 點擊 SSE 事件展開 COT(provider/confidence/latency/tools/reasoning),COT badge | ab5ba70 |
|
||
| Tab 4 by_anomaly Top 5 | 水平進度條 + auto_rate 著色(≥80% 綠/≥50% 橙/其他紅) | ab5ba70 |
|
||
| Tab 4 MTTR | 大字顯示秒→分鐘換算,無資料 fallback | ab5ba70 |
|
||
| by_anomaly API 結構修正 | 適配真實欄位 `disposition.total` / `alert_name` / `anomaly_key` | af7b6be |
|
||
| i18n 插值修正 | `byAnomalyAutoRate` 補 `{pct}%` 插值,`mttrUnit` 改「分鐘」 | 764dcf2 |
|
||
| QA 驗證 | Tab 4 截圖確認真實資料渲染正確 | — |
|
||
|
||
**下一步**: ⌘J Command Palette / 其他 Backlog 功能
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5R 架構審查 + QA 全驗收 ✅)
|
||
|
||
### Sprint 5R 完整閉環
|
||
|
||
| 階段 | 內容 | Commit |
|
||
|------|------|--------|
|
||
| 架構審查 (首席架構師) | 9 項問題發現:P0 import crash / i18n 10 個 hardcode / fake data / silent error | — |
|
||
| P0 修復 | `proposal_service.py` 補 `get_redis` + `INCIDENT_KEY_PREFIX` import | 890e2a9 |
|
||
| P1 i18n | 拓撲群組移除 emoji,host labels / ai-model-status / disposition / recent-activity 全走 i18n | 890e2a9 |
|
||
| P2 品質 | pending-approvals 靜默錯誤修復 + page-tabs 載入中 i18n + ↑5% 動態化 | 890e2a9 |
|
||
| Linter 強化 | pending-approvals 防重複點擊 + loading 狀態 | 896bef9 |
|
||
| CORS 修復 | `config.py` 補 K3s NodePort 3 個 origin | 8c2983b |
|
||
| sign body 修復 | `signer: 'web-ui'` → `signer_id/name: CURRENT_USER` (修前: 403/422) | 8c2983b |
|
||
| host_aggregator | 四台主機 probe 端點錯誤 → 全部顯示 unhealthy 修正 | 21567a7 |
|
||
| QA 全頁面驗收 | **9/9 通過**,無假資料,HTTP 200,真實 API 資料 | — |
|
||
|
||
**下一步**: 下次 Session 繼續 Sprint 5R Phase 2 (Chain of Thought / MTTR 趨勢 / ⌘J Palette)
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 E2E 驗證 + K8s executor 連線修復)
|
||
|
||
| 項目 | 結果 | Commit |
|
||
|------|------|--------|
|
||
| 部署驗證 (新版本) | ✅ `a4d6b3f3` → `34f0228` 全 Pod Running | — |
|
||
| DB migration telegram_message_id | ✅ K8s Job 執行成功,欄位存在 | 34f0228 |
|
||
| action 解析根本 bug | ✅ `RESTART_DEPLOYMENT` 成功解析 (以前 skip) | ae97808 |
|
||
| K8s ClusterIP 10.43.0.1 不可達 | ✅ `K8S_API_SERVER_URL=https://192.168.0.120:6443` 覆蓋 | 34f0228 |
|
||
| kubectl 實際執行 | ✅ `awoooi-worker` rollout restart `success=True` | 34f0228 |
|
||
| Telegram 按鈕移除邏輯 | ✅ code review 確認正確 | 1483218 |
|
||
|
||
**根本問題**: K3s Pod 內 iptables/kube-proxy 未把 10.43.0.1 流量導到實際 API server
|
||
**修法**: executor.py 讀 `K8S_API_SERVER_URL` env 覆蓋 in-cluster host
|
||
|
||
**下一步**: Sprint 5R Web 截圖驗收
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 批准執行閉環修復 + TG 訊息持久化 + AI 鏈路透明化)
|
||
|
||
| 項目 | 修法 | Commit |
|
||
|------|------|--------|
|
||
| **根本Bug: 批准後永遠不執行** | Nemotron tool 回填 `kubectl_command` | 2c7d5d0 |
|
||
| **根本Bug: action="未知操作"** | proposal_service 優先用 kubectl_command | ae97808 |
|
||
| **TG 按鈕按後無回應** | `_notify_approval_result()` reply 狀態行 | 1483218 |
|
||
| **message_id 僅 Redis 24h** | approval_records 加 telegram_message_id 欄位 | 1483218 |
|
||
| **AI 鏈路不透明** | TG 訊息顯示模型/後端 (Ollama/NIM/Gemini) | d8c2969 |
|
||
| **Ollama 取代 NVIDIA NIM** | OllamaToolProvider llama3.1:8b,44s→4s | 7857c25 |
|
||
| 5 筆孤兒 OBSERVE approval | 直接 EXPIRED 清理 DB | — |
|
||
|
||
**根本問題鏈**:
|
||
```
|
||
Nemotron→restart_deployment(sentry) → 只存 nemotron_tools[] → kubectl_command="" →
|
||
approval_records.action="未知操作 | " → parse_operation_from_action→None →
|
||
execute_approved_action SKIP → 幾個月來批准/拒絕按鈕完全無效
|
||
```
|
||
|
||
**下一步**: 部署驗證 → 新告警完整執行閉環測試
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-10 Sprint 5R 前端重構 13/14 完成 — CD 部署中)
|
||
|
||
| 步驟 | 內容 | Commit | 狀態 |
|
||
|------|------|--------|------|
|
||
| S11 | Tab 2 approvals API 修正 | 289dac6 | ✅ |
|
||
| S12 | 安全合規/知識庫/拓撲圖修復 | 289dac6 | ✅ |
|
||
| S1 | KPI Strip 5 張卡片 | 7a2e07f | ✅ |
|
||
| S4 | 處置統計環形圖 | b85a0e2 | ✅ |
|
||
| S5 | 最近活動時間線 | b85a0e2 | ✅ |
|
||
| S6 | OpenClaw AI Terminal | a0f3a7d | ✅ |
|
||
| S7 | 待審批任務 | 895784e | ✅ |
|
||
| S9 | AI 模型狀態 2×2 | 895784e | ✅ |
|
||
| S10 | 監控工具 3×2 | 895784e | ✅ |
|
||
| S8 | 拓撲群組 2×2 + 主機 4 台 | 03b07d5 | ✅ |
|
||
| S2 | FlowPipeline OpenClaw icon | 09c6eb3 | ✅ |
|
||
| S3 | AI 提案橫幅確認 | 09c6eb3 | ✅ |
|
||
| G1 | 骨架屏取代載入中 | 49a15e1 | ✅ |
|
||
| CD 部署驗收 | 截圖對比設計稿 | — | 🔄 |
|
||
|
||
**設計稿**: `.playwright-mcp/sprint5r-approved-design.html`
|
||
**ADR**: ADR-065
|
||
**下一步**: CD 完成 → 截圖對比 → 統帥驗收
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 自動修復全鏈路完整閉環 — 雙主機 E2E 驗證)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| Bug #1 Jaccard 門檻阻擋 alert_exact_match | ✅ | af49a54 |
|
||
| Bug #2 NameError get_alert_operation_log_repository | ✅ | e4070b2 |
|
||
| Bug #3 _extract_symptoms 用 alert_name="custom" | ✅ | fc03eb1 |
|
||
| Bug #4 Signal.labels 缺 alertname key | ✅ | 1d88b7c |
|
||
| Bug #5 target_resource 未優先用 component label | ✅ | 1fb0c0c |
|
||
| Bug #6 Dockerfile 無 openssh-client | ✅ | 1fb0c0c |
|
||
| Bug #7 sentry 未在 service-registry 定義 | ✅ | 1fb0c0c |
|
||
| Bug #11 NetworkPolicy 缺 port 22 egress (110+188) | ✅ | 07a097c |
|
||
| Bug #12 Deployment 缺 fsGroup=1000 | ✅ | 77f2da9 |
|
||
| 8 個新 Playbook 自動產生+APPROVED | ✅ | API |
|
||
| repair-bot-188.sh 新增 momo/tsenyang/bitan | ✅ | 188主機 |
|
||
| repair-bot-110.sh 新增 stock-platform | ✅ | 110主機 |
|
||
| known_hosts 110+188 Secret 更新 | ✅ | kubectl |
|
||
| openclaw-down-repair 修正 docker-110→docker-188 | ✅ | API |
|
||
| service-registry 新增 signoz/bitan-app | ✅ | 07a097c |
|
||
|
||
**E2E 雙主機驗證**:
|
||
- docker-110: SentryDown → REPAIR_OK:sentry (6208ms) ✅
|
||
- docker-188: MoWoooWorkDown → REPAIR_OK:momo-app (3791ms) ✅
|
||
|
||
**Playbook 覆蓋**: 20 個 (含 8 個 auto-generated,全部 `auto_repair=true` 告警已覆蓋)
|
||
**下一步**: Sprint 5R 前端重構 (S11→S12→S1-S10→G1)
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5.2 全面完成 + 自動修復閉環)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| docker-health-monitor 升級自動修復 | ✅ | 8d0042e |
|
||
| L2-2 alerts-unified 14條規則 | ✅ | b43e1f1 |
|
||
| Nemotron placeholder 修復 | ✅ | d467fc1 |
|
||
| decision_manager resolved 不重送 | ✅ | b66263a |
|
||
| target_down 自動重啟 exporter | ✅ | b43e1f1 |
|
||
| Plan B exporters 188 全 UP | ✅ | — |
|
||
| Plan C Blackbox 13 targets 全 UP | ✅ | — |
|
||
|
||
**自動修復鏈路閉環**: 容器 down → cron 偵測 → docker restart → 回報 API → Telegram
|
||
**下一步**: ADR-064 L1 Redis 分散式鎖(技術債,P3)
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5 全面完成 + 監控告警修復)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| C1 殘留 i18n 5 處 (badge/toggle) | ✅ | 28d2ff7 |
|
||
| I3 Approve/Reject API 串接 | ✅ | 4a94588 |
|
||
| I4 SIGNOZ_URL 改環境變數 | ✅ | 4a94588 |
|
||
| I5 ErrorsPanel nothing-gray | ✅ | 4a94588 |
|
||
| C4 TOOL_EMOJI → Lucide icon | ✅ | 5800533 |
|
||
| RedisMemoryHigh 誤報修正 (÷0) | ✅ | 85d4857 |
|
||
| node-exporter 部署 110+188 (Docker) | ✅ | 手動 |
|
||
| HostDown ×2 告警消除 | ✅ | 自動 |
|
||
| Prometheus 0 firing alerts | ✅ | — |
|
||
| 所有 Incidents 關閉 | ✅ | API |
|
||
|
||
**Sprint 5 審查修正清零**: C1-C4 + I1-I5 全部修正完成
|
||
**下一步**: Sprint 5.2 docker-health-monitor 部署 / alerts-unified L2-2
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Telegram 截斷根因修復 + Panel 全面抽取)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| `建議: kubectl rollout restart deployment/` 截斷根因修復 | ✅ | c5e4751 |
|
||
| telegram_gateway.py `[:35]→[:80]` | ✅ | c5e4751 |
|
||
| decision_manager.py enum string 補正 (用規則引擎查 kubectl) | ✅ | c5e4751 |
|
||
| Panel 全面抽取完成 (13 個 Panel) | ✅ | fb66ecd |
|
||
| /observability 5 Tab 全 Panel | ✅ | fb66ecd |
|
||
| /automation 3 Tab 全 Panel | ✅ | fb66ecd |
|
||
| /operations 5 Tab 全 Panel | ✅ | fb66ecd |
|
||
| CD 部署驗證 | 🔄 | 進行中 |
|
||
|
||
**根本根因**: `suggested_action[:35]` = 35 字剛好截到 `deployment/` 後,name 永遠空白
|
||
**下一步**: 等 CD 完成 → 驗收新告警顯示格式 → 關閉舊 Incident
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Alert Rule Engine + Ollama M1 Pro + 首席架構師審查)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| Ollama 切換 188→111 (M1 Pro, 0.45→40+ tok/s) | ✅ | 多個 |
|
||
| deepseek-r1:14b (RCA) + gemma3:4b (summary) | ✅ | f32b077 |
|
||
| Gemini fallback for NIM 完全失敗 | ✅ | d80153b |
|
||
| 告警規則引擎 alert_rules.yaml + alert_rule_engine.py | ✅ | d1ede7f |
|
||
| AI 自動規則學習 (generic_fallback 觸發) | ✅ | 71437db |
|
||
| 首席架構師審查 63/100 → 6 個問題修復 | ✅ | 本次 |
|
||
| ADR-064 Alert Rule Engine | ✅ | 本次 |
|
||
| Skills 02/03 更新 | ✅ | 本次 |
|
||
| model_registry fallback 同步更新 | ✅ | 89da2d2 |
|
||
| K8s 部署驗證 (image 89da2d2) | ✅ | 2 Pod Running |
|
||
|
||
**已知技術債**: 多 Pod 規則重複生成(ADR-064 L1),lru_cache 跨 Pod 不同步(ADR-064 L2)
|
||
|
||
**下一步**: 前端重設計整合頁面 Panel 抽取 (解決雙重 AppLayout)
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5.2 全面監控 + Alert Op Log API + 效能修復)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| Plan A: docker-health-monitor 110+188 */5 | ✅ | 0e6c4b8 |
|
||
| Plan B: pg/redis exporter 確認 UP | ✅ | — |
|
||
| Plan C: 5 條外部網站告警規則 | ✅ | 9799a14 |
|
||
| Alertmanager telegram-direct fallback | ✅ | 7e327c8 |
|
||
| pg-backup.sh 每 6h 188 cron | ✅ | f98be41 |
|
||
| DR Drill cron 121 月第一週日 03:00 | ✅ | 手動 |
|
||
| 188 CD 自動同步 ops scripts | ✅ | c51d7ef |
|
||
| alert_operation_log API (list/stats) | ✅ | 5ea6c3f |
|
||
| /alert-operation-logs 前端頁面 | ✅ | 5ea6c3f |
|
||
| incidents 效能修復(Redis cache + fire-and-forget) | ✅ | 4b3fdd8 |
|
||
| Panel 抽取全面完成(雙重 AppLayout 修正) | ✅ | fb66ecd |
|
||
| **CD 部署 run #586** | 🔄 | fb66ecd2 |
|
||
|
||
**下一步**: CD 完成 → API 驗收 → 告警鏈路 E2E 驗收
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5 首席架構師審查 P0 修正完成)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| 首席架構師審查 | 72/100 有條件通過 | — |
|
||
| C1: 首頁 i18n 30+ 處 | ✅ 修正 | 7153395 |
|
||
| C2: 拓撲 i18n 10+ 處 | ✅ 修正 | 9e10305 |
|
||
| C3: Loading 改 LobsterLoading | ✅ 修正 | 7153395 |
|
||
| I1: 100ms 輪詢改 popstate | ✅ 修正 | 7153395 |
|
||
| I2: 13 Panel 全部抽取 (雙重 AppLayout) | ✅ 修正 | 7934ade |
|
||
| C4: TOOL_EMOJI (pre-existing) | 📝 後續 | — |
|
||
|
||
**下一步**: Re-Review → 驗收
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-09 Sprint 5 前端重設計完成 + 部署中)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| Phase 0: 安裝 React Flow + elkjs + /classic | ✅ | 11ff517 |
|
||
| Phase 1: 首頁 4-Tab + Sidebar 精簡 6+2+經典 | ✅ | eaa6102 |
|
||
| Phase 2: React Flow 拓撲圖元件 (7 新檔) | ✅ | d276b39 |
|
||
| Phase 3: 5 個整合頁面 (觀測/自動/營運/安全/知識) | ✅ | 1413804 |
|
||
| Phase 4: 舊路由並存 | ✅ | 9188e49 |
|
||
| Sidebar label + Tab 同步 + 龍蝦動畫 + 效能優化 | ✅ | 多個 |
|
||
| OpenClaw 風格龍蝦 SVG (三色: 紅/綠/黃) | ✅ | 65e1edb |
|
||
| service_registry Docker 安全降級 | ✅ | c9f1bcd |
|
||
| 拓撲圖 Toggle 整合到首頁 | ✅ | 030f4f7 |
|
||
| 測試修正 (nemotron + smart_router) | ✅ | 多個 |
|
||
| **CD 部署** | 🔄 | 進行中 |
|
||
|
||
**下一步**: CD 完成 → 統帥驗收 → 整合頁面 Panel 抽取 (解決雙重 AppLayout)
|
||
|
||
---
|
||
|
||
## 📍 當前狀態 (2026-04-08 Sprint 5.1 L1-L5 + Review 修正完成)
|
||
|
||
| 項目 | 狀態 | Commit |
|
||
|------|------|--------|
|
||
| Sprint 5.1 L1-L5 全部實作 | ✅ | 88696db |
|
||
| 首席架構師審查(70/100→修正) | ✅ | 0f5fecf |
|
||
| DB Migration M-002/M-003(已在 188 執行) | ✅ | — |
|
||
| service-registry.yaml(21 個服務分級) | ✅ | 88696db |
|
||
| 三個新 Service(registry/velero/preflight) | ✅ | 0f5fecf |
|
||
| Guardrail 注入 auto_repair_service | ✅ | 0f5fecf |
|
||
| ALERT_RECEIVED + auto_repair flag webhooks | ✅ | 0f5fecf |
|
||
| T1-T6 Telegram 通知 | ✅ | 0f5fecf |
|
||
| docker-health-monitor.sh 純感知層 | ✅ | 88696db |
|
||
| ADR-062/063 | ✅ | 6f7a4be |
|
||
|
||
**當前焦點**: Sprint 5.1 L7 E2E 驗收(CD 部署後執行)
|
||
**待完成**: L2-2 alerts-unified.yml + docker-health-monitor 部署到 110/188 + E2E 驗收
|
||
**Sprint 5.2**: Plan A(docker-health-monitor 部署)/ Plan B(Exporter)/ Plan C(Blackbox)
|
||
|
||
---
|
||
|
||
## 📊 里程碑總覽 (壓縮版)
|
||
|
||
### 2026-04-08 — Sprint 5.1 L1-L5 實作 + 首席架構師審查修正
|
||
|
||
- L1: DB Migration M-002(approval_records MultiSig)/ M-003(ENUM 8個新值)在 188 執行完畢
|
||
- L2-1: ops/config/service-registry.yaml 建立(21 個服務,BLOCK/CRITICAL_HITL/STANDARD_HITL/AUTO)
|
||
- L3: service_registry.py / velero_client.py / preflight_service.py 三個新服務
|
||
- L4: Guardrail 注入 auto_repair_service + ALERT_RECEIVED/auto_repair flag webhooks + MultiSig DB model
|
||
- L4-6: docker-health-monitor.sh 改造為純感知層(移除所有 docker restart)
|
||
- L5: telegram_gateway T1-T6 六個新通知方法(Guardrail/Pre-flight/Backup/MultiSig/ChangeApplied)
|
||
- 首席架構師審查 70/100 → 修正 S1×4 S2×2 S3×1 → 預計 90+/100
|
||
- structlog 取代 logging(三個新 service)
|
||
- now_taipei() 取代 datetime.now(UTC)
|
||
- Guardrail 失敗改為保守拒絕(不放行)
|
||
- velero kubectl apply CRD 修正(原語法錯誤)
|
||
- T1-T6 補齊 try/except
|
||
- Langfuse URL 改用 settings.LANGFUSE_URL
|
||
|
||
### 2026-04-08 — Sprint 5.1 資料安全護欄規劃完成
|
||
|
||
- 11 項首席架構師決策(Q1-Q11)完成
|
||
- 服務分級(BLOCK/CRITICAL_HITL/STANDARD_HITL/AUTO)確立
|
||
- Pre-flight 備份檢查機制設計完成
|
||
- MultiSig 雙簽機制設計完成
|
||
- ADR-062 Data Safety Guardrails 批准
|
||
- ADR-063 Service Registry IaC 批准
|
||
- 完整實施方案 + 規範驗證通過(P1-P5 問題修正)
|
||
- 關鍵發現:Playbook 存於 Redis(非 PostgreSQL),修正 M-001 方向
|
||
|
||
### 2026-04-08 — 全面監控+操作溯源架構
|
||
|
||
- 自動修復移除所有 gate:直接執行(統帥指令)
|
||
- Phase 10: auto_repair_executions DB 記錄(成功/失敗都寫入)
|
||
- Phase 11: alert_operation_log Event Sourcing(654 筆歷史回填)
|
||
- ADR-060: 全面基礎設施監控規劃(4 主機 30+ 服務)
|
||
- ADR-061: Alert Operation Log 架構決策
|
||
- 統帥首席架構師裁示:Plan A→B→C 優先序,Redis/PG 僅告警,Intent→Action→Result 三段式
|
||
|
||
### 2026-04-07 — Sprint 3+4+F 完成
|
||
|
||
- Sprint 3: SSH_COMMAND 指揮權鏈 (T1-T7) + P0 Security Fixes + Re-Review 91/100
|
||
- Sprint F: 29處假數據清除 + CURRENT_USER 統一 + 98/100
|
||
- Sprint 4: 告警處置統計 Phase A→F (資料層→API→Telegram→前端→首頁→週報)
|
||
- 首次信任機制 (冷啟動破解)
|
||
|
||
### 2026-04-06 — 四個網站修復+監控
|
||
|
||
- mo.wooo.work / www.tsenyang.com / stock.wooo.work / bitan.wooo.work 全部修復
|
||
- Prometheus blackbox-http 新增 3 target
|
||
- nginx 110/188 路由修正
|
||
|
||
### 2026-04-05 — Phase 25 Review + ADR-057~059 + 備份
|
||
|
||
- Phase 25 首席架構師 Review R1+R2 通過 (76/100→修正後通過)
|
||
- ADR-054~057 全部完成
|
||
- Telegram 按鈕根因修復 (whitelist int→list[int])
|
||
- ADR-059 Gitea Webhook 遷移 (10/10 測試)
|
||
- Sprint 3 Host Repair 全通過 + 5 Playbooks
|
||
- 備份全面自動化 (backup-all.sh v2 + GFS 保留策略)
|
||
- 全系統重開機恢復 (188/110/120/121)
|
||
|
||
### 2026-04-04 — Phase 25 驗證 + 自動修復閉環
|
||
|
||
- Phase 25 P0/P1/P2 全部驗證通過 (36/36 tests)
|
||
- 自動修復閉環打通 (Playbook→RAG→執行→KM沉澱)
|
||
- Ollama embedding is_closed 修復
|
||
- phase8/9 DB migration prod 執行完成
|
||
|
||
### 2026-04-03 — Phase 24 + Monitoring Wave D + Layout
|
||
|
||
- Phase 24 AI Provider Registry 全面完成 (Phase A→C)
|
||
- Monitoring Wave D: Grafana 3 dashboards + ClickHouse TTL
|
||
- Layout 對齊修復 (sidebar/header/metrics)
|
||
- 首席架構師 Review 88/100
|
||
|
||
### 2026-04-02 — Phase O 可觀測性 + Phase 24 規劃
|
||
|
||
- Phase O O-1~O-5 全部完成 (8/8 Smoke Test)
|
||
- OTEL Collector DaemonSet + Event Exporter
|
||
- Prometheus scrape → SigNoz (90天保留)
|
||
- Phase 24 AIRouter 14 項決策 (D1-D14)
|
||
- ADR-052 AI Provider Registry
|
||
|
||
### 2026-04-01 — Phase R 完整審查 + Phase 11 驗收
|
||
|
||
- Phase R ADR-047: 97/100 OUTSTANDING
|
||
- Phase 11 統帥驗收: ✅ 批准
|
||
- R4-129 webhooks.py AlertAnalyzer 遷移 (-243行)
|
||
- ADR-046 IncidentConverter 型別統一
|
||
|
||
### 2026-03-31 — Phase 22 Nemotron + Telegram 重設計
|
||
|
||
- Phase 22 雙 AI 對話 + NemotronCollabService
|
||
- Phase 10.2 Session Replay 完成
|
||
- Telegram 訊息格式 v7.0 重設計
|
||
- NVIDIA NIM 整合 + Gemini fallback
|
||
|
||
### 2026-03-29~30 — Monitoring + Gitea CI/CD
|
||
|
||
- Monitoring 主計畫 Wave A-C 批准+執行
|
||
- ADR-039 Gitea CI/CD 遷移完成
|
||
- 前端內網 IP 禁令確立
|
||
- NEXT_PUBLIC_* build-time 變數規範
|
||
|
||
### 2026-03-28 — Phase 19+20 完成
|
||
|
||
- Phase 19 Omni-Terminal 全 7 Wave (47/50)
|
||
- Phase 20 CSRF 防護 (Double Submit Cookie)
|
||
- K3s 優化 (Swap/kube-reserved/etcd/PDB)
|
||
|
||
### 2026-03-27 — Phase 16~18 完成
|
||
|
||
- Phase 16 架構大掃除 R1-R4 (50/50 OUTSTANDING)
|
||
- Phase 17 技術債清理
|
||
- Phase 18 E2E Hardening (9.2/10)
|
||
- Phase 10.2 Sentry Telegram 通知+去重
|
||
|
||
### 2026-03-26 — Phase 13~15 完成
|
||
|
||
- Phase 13 Enterprise AIOps (6 MCP Tools + Router)
|
||
- Phase 14 紅區治理+依賴防護+共用型別
|
||
- Phase 15 LLMOps (Langfuse+DeepLink+取樣)
|
||
|
||
### 2026-03-25 — Phase 11+12 批准+開工
|
||
|
||
- Phase 11 對話式 AI 批准+實作
|
||
- Phase 12 Ollama Tool Calling 100%
|
||
|
||
### 2026-03-24 — Phase 6.5 + QA + Sentry
|
||
|
||
- Statistics API 6 端點
|
||
- Mock 測試全面禁止鐵律
|
||
- Sentry Self-Hosted 整合
|
||
- Phase 8 QA + 緊急修復
|
||
|
||
### 2026-03-23 — Phase 6.4 + Phase 9
|
||
|
||
- Decision Proposal API + Guardrails
|
||
- Agent Teams + ConsensusEngine 90/90
|
||
- 技術債清理 (44 未用 import + 22 i18n)
|
||
|
||
### 2026-03-22 — Phase 6 認知覺醒
|
||
|
||
- Event Bus (Redis Streams) 通電
|
||
- Memory Layer (Redis + PostgreSQL) 雙層
|
||
- Incident Engine v1 (聚合+GraphRAG+去重)
|
||
- Redis Multi-Sig 分散式鎖
|
||
|
||
### 2026-03-20~21 — Phase 0-4 MVP
|
||
|
||
- Phoenix Rising 基建部署
|
||
- BFF Gateway + 原子組件庫
|
||
- SSE 前後端整合 + HITL 授權卡片
|
||
- i18n 雙語引擎 135 鍵值
|
||
|
||
---
|
||
|
||
## 📊 專案統計 (截至 2026-04-07)
|
||
|
||
| 指標 | 數值 |
|
||
|------|------|
|
||
| 已完成 Phase | 25+ (含子Phase) |
|
||
| 已完成 Sprint | 3 (Sprint 3/4/F) |
|
||
| ADR 文件 | 61 份 (ADR-060~061) |
|
||
| 首席架構師審查 | 15+ 次 |
|
||
| 最高評分 | Phase 16: 50/50 + Phase R: 97/100 |
|
||
| 監控 Targets | 15/15 UP |
|
||
| Grafana Dashboard | 3 |
|
||
| Playbooks | 12 (全部 approved, auto_repair 已啟用) |
|
||
| alert_operation_log 記錄 | 654 筆歷史 + 即時寫入 |
|