OG T
|
ec4ebaf310
|
fix(ops): pg-backup momo_analytics 改用 docker exec (無對外 port)
momo-db 容器無 port binding,TCP 127.0.0.1:5432 連到 host PG 非容器。
改用 docker exec momo-db pg_dump,實際備份 91M。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:57:05 +08:00 |
|
OG T
|
89da2d24be
|
fix(model-registry): fallback config 更新為 deepseek-r1:14b + gemma3:4b
CD Pipeline / build-and-deploy (push) Successful in 13m20s
- model_registry._get_default_config: ollama summary llama3.2:3b → gemma3:4b
- model_registry._get_default_config: ollama default/rca → deepseek-r1:14b
- 修正 test_smart_router::test_simple_context 失敗 (斷言 gemma3:4b)
- alert_rule_engine: 移除 asyncio/time unused import
- 2026-04-09 ogt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:52:47 +08:00 |
|
OG T
|
c51d7ef336
|
feat(cd): 自動同步 ops 腳本到 188 (DEPLOY_SSH_KEY_188)
CD Pipeline / build-and-deploy (push) Has been cancelled
新增 Sync Ops Scripts to 188 步驟:
- 每次 CD 自動 scp docker-health-monitor.sh + pg-backup.sh 到 ollama@188
- 使用新 Gitea Secret DEPLOY_SSH_KEY_188 (ed25519, gitea-cd-deploy-188)
- continue-on-error:true 不阻塞主要部署流程
188 authorized_keys 已加入 gitea-cd-deploy-188 public key。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:51:21 +08:00 |
|
OG T
|
c26c4030e4
|
feat(web): /topology 升級為 React Flow 完整版 (串接真實 dashboard API)
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 09:49:31 +08:00 |
|
OG T
|
71437db0e9
|
feat(rule-engine): 自動規則生成 — generic_fallback 觸發 AI 學習
CD Pipeline / build-and-deploy (push) Successful in 11m25s
流程:
1. 告警命中 generic_fallback 規則
2. 背景觸發 auto_generate_rule()
3. Ollama (deepseek-r1:14b) 生成 YAML 規則片段
4. Ollama 失敗 → Gemini 備援
5. 驗證格式 → append alert_rules.yaml → 清除 lru_cache
6. 下次同類告警直接命中專屬規則,不再走兜底
去重: 同一 alertname 進程內只生成一次
手寫規則 priority 1-499,AI 生成 500-899,兜底 999
2026-04-09 ogt: AI 自學規則引擎
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:20:33 +08:00 |
|
OG T
|
f98be41517
|
feat(ops): pg-backup.sh — PostgreSQL 每 6h 自動備份
備份目標 (188):
- awoooi_prod (host PostgreSQL, TCP 127.0.0.1)
- momo_analytics (momo-db 容器)
功能:
- gzip 壓縮,保留 7 天自動清理
- Telegram 通知 (成功/失敗)
- cron 0 */6 * * * 已設定
驗證: 兩個 DB 備份成功 (awoooi_prod 206K, gz 完整)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:16:21 +08:00 |
|
OG T
|
9af281cc98
|
docs(logbook): Sprint 5 前端重設計完成記錄
|
2026-04-09 09:15:20 +08:00 |
|
OG T
|
db02eb41d0
|
fix(docker): COPY alert_rules.yaml 進容器
CD Pipeline / build-and-deploy (push) Has been cancelled
規則引擎從 ./alert_rules.yaml 載入,Dockerfile 漏了 COPY
2026-04-09 ogt: fix
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:12:42 +08:00 |
|
OG T
|
030f4f7c32
|
feat(web): 首頁基礎架構加入拓撲圖 Toggle (主機/拓撲切換,串接真實 API)
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 09:12:31 +08:00 |
|
OG T
|
d1ede7f989
|
feat(openclaw): 告警規則引擎 — alert_rules.yaml 取代硬編碼 if/elif
CD Pipeline / build-and-deploy (push) Has been cancelled
- 新增 alert_rules.yaml: 6 條規則 (docker/target_down/oom/cpu/5xx/crash) + 通用兜底
- 新增 alert_rule_engine.py: YAML 載入、匹配邏輯、變數填充
- openclaw.py _generate_mock_response: 重構為呼叫規則引擎 (v8.0)
- 新增規則只需修改 YAML,重啟 Pod 即可,不需改代碼
- 2026-04-09 ogt: 架構重構
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:05:23 +08:00 |
|
OG T
|
7e327c806e
|
feat(alertmanager): Telegram Fallback 直送路徑 (ADR-035)
新增 telegram-direct receiver,critical 告警同時走:
1. awoooi-webhook (主路徑: AI 分析 + 去重)
2. telegram-direct (fallback: AWOOOI API 掛時直接通知)
continue:true 讓 critical route 同時匹配兩個 receiver。
warning 僅走 awoooi-webhook,避免雙重通知。
已在 110 熱重載驗證 (receivers: awoooi-webhook + telegram-direct)。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:04:46 +08:00 |
|
OG T
|
1e1f24c561
|
fix(test): ComplexityScorer 模型名稱更新 llama3.2:3b → gemma3:4b
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 09:01:59 +08:00 |
|
OG T
|
3abc7c2f85
|
fix(openclaw): DockerContainerUnhealthy + TargetDown 專屬規則匹配
CD Pipeline / build-and-deploy (push) Has been cancelled
- DockerContainerUnhealthy: ssh docker inspect + docker restart,含 healthcheck 指令驗證
- TargetDown / IP:port instance: ssh 確認 exporter 存活
- 修正 target 混用 alertname 作為 deployment 名稱的問題
- alertname/labels 從 alert_context 提取供規則判斷
- 2026-04-09 ogt: 新增兩條專屬規則
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 09:00:31 +08:00 |
|
OG T
|
4b6f14d9a1
|
fix(webhook): alertmanager 路徑 suggested_action 改用 kubectl_command
CD Pipeline / build-and-deploy (push) Failing after 1m43s
- 1399 行: suggested_action.value (RESTART_DEPLOYMENT) → kubectl_command
- 與 /alerts 路徑 887 行保持一致
- 修正 Telegram 顯示「kubectl rollout restart deployment/」後面空白的問題
- 2026-04-09 ogt: bug fix
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 08:57:56 +08:00 |
|
OG T
|
65e1edb0ad
|
feat(web): OpenClaw 風格龍蝦 SVG + 三色狀態燈號 + 測試修正
CD Pipeline / build-and-deploy (push) Failing after 1m39s
前端:
- OpenClawLobster 全新 SVG (參考 dashboardicons.com/icons/openclaw)
圓潤身體 + 大眼睛 + 鉗子 + 觸角 + 微笑 + 小腳
- 三色版本: red(異常/預設) / green(健康) / yellow(警告)
- LobsterLoading 改用新 SVG
測試修正:
- test_nemotron_failure_still_returns_proposal: func_body 截取 5000→10000
原因: 函數超過 5000 字元,導致 rfind 找不到最後的 return
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-09 08:55:21 +08:00 |
|
OG T
|
dca758bdbd
|
chore: trigger CD — Gemini fallback for NIM + deepseek-r1:14b
|
2026-04-09 08:53:33 +08:00 |
|
OG T
|
9799a14f54
|
feat(monitoring): Plan C 外部網站告警 — 4個網站 + SSL憑證預警
Deploy Alert Rules / Deploy Prometheus Alert Rules (push) Successful in 34s
新增 external_website_alerts 群組:
- MoWoooWorkDown (mo.wooo.work, 188, momo-app)
- TsenyangWebsiteDown (tsenyang.com, 188, tsenyang-website)
- StockWoooWorkDown (stock.wooo.work, 110, stock-platform)
- BitanWoooWorkDown (bitan.wooo.work, 188, bitan-app)
- ExternalSiteSSLExpiringSoon (14天預警, auto_repair:false)
blackbox-http 已涵蓋全部目標,此為結構化告警規則。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-09 08:53:08 +08:00 |
|
OG T
|
f32b077336
|
fix(models): 更新 Ollama 設定 — M1 Pro + deepseek-r1:14b
CD Pipeline / build-and-deploy (push) Failing after 1m36s
E2E Health Check / e2e-health (push) Successful in 44s
- endpoint: 188 → 111 (M1 Pro, 40+ tok/s)
- rca/default model: qwen2.5:7b-instruct → deepseek-r1:14b (SRE最強推理)
- summary model: llama3.2:3b → gemma3:4b (快速摘要)
- timeout: 90s → 120s (deepseek-r1:14b 實測最慢 54s)
- version: 1.1.0 → 1.2.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:59:53 +08:00 |
|
OG T
|
0e6c4b83d4
|
feat(ops): docker-health-monitor 完成部署 110+188
- 增加 EXCLUDE_CONTAINERS 排除清單(signoz init containers)
- max-time 30→60 支援 API 首次 AI 分析所需時間
- 110: wooo/awoooi-ops, cron */5, secrets.env 已設定
- 188: ollama/awoooi-ops, cron */5, secrets.env 已設定
- 驗證: 188→API webhook 200, Telegram 已收到告警
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:59:45 +08:00 |
|
OG T
|
d80153bdce
|
fix(openclaw): NIM 完全失敗後 fallback 到 Gemini 產生執行方案
CD Pipeline / build-and-deploy (push) Failing after 1m34s
NIM tool calling 多次 timeout 後,不再顯示空白執行方案,
改由 Gemini 代理產生 kubectl 操作指令(JSON 解析)。
只有 NIM 完全失敗才觸發,符合統帥「必須等到有回應」原則。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:55:25 +08:00 |
|
OG T
|
c669069427
|
feat: 小龍蝦載入動畫 + HostAggregator 效能優化
CD Pipeline / build-and-deploy (push) Has been cancelled
前端:
- LobsterLoading 共用元件 (Q版龍蝦上下浮動 + 文字提示)
- 替換首頁所有「載入中...」為小龍蝦動畫
- PageTabs 骨架屏也換成龍蝦
後端:
- TCP probe timeout: 3.0s → 1.5s
- HTTP probe timeout: 5.0s → 2.0s
- 30 秒記憶體快取 (避免 unreachable 主機拖慢前端)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 22:44:24 +08:00 |
|
OG T
|
6f475000f6
|
fix(db): alert_operation_log.event_type String→PgEnum (create_type=False)
CD Pipeline / build-and-deploy (push) Has been cancelled
修正 DatatypeMismatchError: DB 欄位為 native enum alert_event_type,
SQLAlchemy model 誤用 String(50),導致 alert_operation_log 寫入失敗。
使用 PgEnum(create_type=False) 讓 SQLAlchemy 映射已存在的 DB enum,
不重建型別。18 個 event_type 值與 M-003 migration 一致。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:42:36 +08:00 |
|
OG T
|
86ac6ed028
|
perf(api): HostAggregator 效能優化 — probe timeout 縮短 + 30 秒記憶體快取
|
2026-04-08 22:42:01 +08:00 |
|
OG T
|
2a6977343a
|
fix(telegram): 補傳 incident_id 至所有 _push_to_telegram_background 呼叫點
CD Pipeline / build-and-deploy (push) Has been cancelled
規則匹配有六顆按鈕但 Ollama/OpenClaw 路徑只有三顆,根因是
alertmanager 和 fallback 路徑呼叫 _push_to_telegram_background 時
未傳 incident_id,導致詳情/重診/歷史按鈕不顯示。
- _push_to_telegram_background: 新增 incident_id 參數
- alertmanager 主路徑: 補傳 incident_id
- alertmanager fallback 路徑: 存回傳值並補傳
- /alerts 路徑: 尚無 incident,明確傳空字串
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:40:22 +08:00 |
|
OG T
|
ef17720dfe
|
fix(web): 首頁 Tab 切換同步修正 — activeTabId 追蹤 URL query 變化
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-08 22:36:39 +08:00 |
|
OG T
|
286df4b3e3
|
fix(web): Sidebar section label 修正 — main 不顯示標題,legacy 用分隔線
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-08 22:33:17 +08:00 |
|
OG T
|
4aa7c179c1
|
feat(k8s): Sprint 5.1 Guardrail — service-registry ConfigMap 掛載到 API 容器
CD Pipeline / build-and-deploy (push) Successful in 16m36s
問題: Docker 容器無 ops/ 目錄,service_registry.py 找不到 YAML → 全部降級 AUTO
解法: ConfigMap 掛載 service-registry.yaml 到 /app/ops/config/
變更:
- k8s/awoooi-prod/15-service-registry-configmap.yaml (新增 ConfigMap)
- k8s/awoooi-prod/06-deployment-api.yaml (volumeMount + volume)
- .gitea/workflows/cd.yaml (Step 1c apply ConfigMap)
效果: _find_registry_path() 可找到 YAML → BLOCK/CRITICAL_HITL/STANDARD_HITL 生效
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:12:29 +08:00 |
|
OG T
|
9188e499cc
|
feat(web): Sprint 5 Phase 3+4 — 整合頁面完成 + 舊路由保留並存
CD Pipeline / build-and-deploy (push) Has been cancelled
Phase 3: 5 個整合頁面 (lazy import 現有內容)
Phase 4: 舊路由暫保留獨立可用,新舊並存
- /monitoring 仍可訪問 (原始頁面)
- /observability?tab=monitoring (整合入口)
- 避免 redirect 循環問題
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 22:10:46 +08:00 |
|
OG T
|
1413804378
|
feat(web): Sprint 5 Phase 3 — 5 個整合頁面 + Sidebar 路由更新
新增頁面:
- /observability: 服務監控 + APM + 錯誤追蹤 + 應用 + 服務目錄 (5 Tab)
- /automation: 自動修復 + 神經指揮 + Drift (3 Tab)
- /operations: 部署 + 工單 + 成本 + 行動日誌 + 計費 (5 Tab)
- /security-compliance: 安全 + 合規 (2 Tab)
- /knowledge: 知識庫
所有 Tab 用 React.lazy + Suspense 載入現有頁面內容
零假數據: 每個 Tab 都是現有真實頁面
Sidebar 路由更新指向新整合頁面
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 22:09:53 +08:00 |
|
OG T
|
8b5db2f58e
|
feat(infra): 切換 Ollama 到 M1 Pro 192.168.0.111 + NetworkPolicy 更新
CD Pipeline / build-and-deploy (push) Has been cancelled
- OLLAMA_URL: 188 → 111 (M1 Pro, 40+ tok/s vs 0.45 tok/s)
- OPENCLAW_DEFAULT_MODEL: qwen2.5:7b-instruct → deepseek-r1:14b (SRE最強推理)
- OPENCLAW_TIMEOUT: 90s → 120s (deepseek-r1:14b 實測最慢 54s)
- NetworkPolicy v1.3: 新增 192.168.0.111:11434 egress,移除 188 的 Ollama port
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 22:05:14 +08:00 |
|
OG T
|
c9f1bcd122
|
fix(api): service_registry 安全降級 — Docker 無 YAML 時不 crash,fallback AUTO
CD Pipeline / build-and-deploy (push) Successful in 11m37s
|
2026-04-08 21:47:38 +08:00 |
|
OG T
|
3cab16a681
|
fix(cd): 強制觸發 CD — 部署 service_registry 路徑修正 + OLLAMA_URL=192.168.0.111
|
2026-04-08 21:42:42 +08:00 |
|
OG T
|
db4b28c49d
|
fix(ci): 強制觸發 CD — service_registry.py Docker 路徑修正已包含於 1f9eea5
CD Pipeline / build-and-deploy (push) Failing after 8m45s
Pod CrashLoopBackOff: IndexError parents[5]
修復: _find_registry_path() 安全搜尋 (parents[4]/parents[3]/絕對路徑)
1f9eea5 已修復但未觸發 CI,此 commit 強制重新 build
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 21:37:49 +08:00 |
|
OG T
|
1f9eea5b74
|
fix(api): service_registry.py Path 索引修正 — 相容 Docker 容器環境
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-08 21:34:40 +08:00 |
|
OG T
|
f7c1c46f96
|
chore: 觸發 CD 部署 Sprint 5 前端
CD Pipeline / build-and-deploy (push) Failing after 10m29s
|
2026-04-08 21:23:13 +08:00 |
|
OG T
|
3c6807d79c
|
ops(monitoring): 觸發 deploy-alerts — database_detail_alerts 6條規則補部署
Deploy Alert Rules / Deploy Prometheus Alert Rules (push) Successful in 39s
d9e0fab 新增了 6 條 DB 詳細告警規則但 deploy-alerts 因 pyyaml 未安裝失敗
0f86c5c 已修復 workflow,此 commit 觸發重新部署
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 21:17:26 +08:00 |
|
OG T
|
14cb015826
|
fix(openclaw): Nemotron 重試邏輯 + exhausted log key (未提交的修改)
CD Pipeline / build-and-deploy (push) Has been cancelled
- generate_incident_proposal_with_tools: 單次 try/except → 2次重試迴圈
- 失敗 log key: nemotron_collaboration_failed → nemotron_collaboration_exhausted
- 失敗時 nemotron_enabled=True (讓統帥看到失敗狀態)
- _call_nemotron_tools: timeout 超時改為拋出異常(讓外層重試)
- 這是之前 Session 的本地修改,修正測試與實際實作不一致問題
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 21:16:34 +08:00 |
|
OG T
|
d276b39bd5
|
feat(web): Sprint 5 Phase 2 — React Flow 拓撲圖元件 (串接真實 dashboard API)
新增 7 個檔案:
- ServiceTopology.tsx: 主元件 (ReactFlow + Controls + MiniMap + 空狀態)
- GroupNode.tsx: 群組節點 (memo + 收合摘要 + CPU/RAM 指標)
- ServiceNode.tsx: 服務節點 (memo + 狀態燈 + 端口 + 延遲)
- TopologyEdge.tsx: 自定義邊線 (漸層 + 虛線)
- useTopologyData.ts: 從 dashboard store 讀取真實資料 → nodes/edges
- index.ts: 匯出
資料來源: useDashboardStore → hosts[] (HostAggregator 真實 TCP/HTTP 探測)
依賴關係: 靜態定義 (對應 ConfigMap 環境變數)
零假數據: 所有節點資料來自真實 API
TypeScript: 零新增錯誤
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 21:14:29 +08:00 |
|
OG T
|
eaa6102e69
|
feat(web): Sprint 5 Phase 1.3 — Sidebar 精簡 25→6+2+經典
導航重組 (統帥批准 2026-04-08):
- 指令中心 / → 整合: 儀表板+授權+告警+報表 (4 Tab)
- 可觀測性 → 整合: 監控+APM+錯誤+應用+服務 (5 Tab)
- 自動化 → 整合: 自動修復+神經指揮+Drift (3 Tab)
- 營運 → 整合: 部署+工單+成本+行動日誌+計費 (5 Tab)
- 安全合規 → 整合: 安全+合規 (2 Tab)
- 知識 → 知識庫
- Legacy: 經典 AI 中心 (/classic)
- 底部: 終端 + 設定
i18n: zh-TW + en 新增 7 個導航 key
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 21:10:11 +08:00 |
|
OG T
|
0f86c5c2fb
|
fix(ci): deploy-alerts 補 pyyaml 安裝步驟
CD Pipeline / build-and-deploy (push) Failing after 1m35s
Validate alerts YAML 步驟在 runner 的 python3 沒有 yaml 模組
加入 pip3 install pyyaml 前置確保環境就緒
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 21:09:53 +08:00 |
|
OG T
|
b380b6a34c
|
fix(ci): 修正 nemotron 測試函數體截斷 5000→10000 字元
CD Pipeline / build-and-deploy (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 21:09:19 +08:00 |
|
OG T
|
d9e0fab3fe
|
feat(monitoring): Sprint 5.2 Plan B — 資料庫詳細告警規則
Deploy Alert Rules / Deploy Prometheus Alert Rules (push) Failing after 17s
新增 database_detail_alerts 規則群組:
PostgreSQL:
- PostgreSQLSlowQueries: 慢查詢 >60s
- PostgreSQLDeadlocks: 死鎖發生
- PostgreSQLTooManyConnections: 連接數 >50
Redis:
- RedisKeyEviction: Key 驅逐
- RedisConnectionsHigh: 連接數 >100
- RedisCommandLatencyHigh: 命令延遲 >10ms
前置: postgres-exporter:9187 + redis-exporter:9121 已在 188 部署 ✅
Prometheus scrape 已更新 ✅
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 18:19:03 +08:00 |
|
OG T
|
170ce2f11d
|
fix(ci): 修正測試與 Sprint 5.2 部署腳本
CD Pipeline / build-and-deploy (push) Failing after 1m38s
tests/test_auto_repair_service.py:
- 更新 3個測試符合 2026-04-07 統帥指令移除門檻
- APPROVED Playbook 直接通過 (低相似度/低品質/高風險均通過)
tests/test_phase22_nemotron_collab.py:
- 更新 log key: nemotron_collaboration_failed → exhausted
ops/monitoring/docker-compose.exporters.yaml:
- 修正 postgres DSN: awoooi:awoooi_prod_2026@localhost:5432/awoooi_prod
Sprint 5.2 新增腳本:
- scripts/sprint51_e2e_validation.py: L7 E2E 驗收腳本 (T1-T5)
- scripts/ops/deploy-docker-health-monitor.sh: Plan A 一鍵部署腳本
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 18:17:48 +08:00 |
|
OG T
|
4f2f9e176f
|
feat(web): Sprint 5 Phase 1.2 — 首頁 4-Tab 結構 (全部串接真實 API)
Tab 1 戰情總覽: 保留現有首頁所有元素 (MetricsStrip + IncidentCard + OpenClaw + HostGrid + MonitoringTools)
Tab 2 告警 & 授權: 串接 /api/v1/incidents + /api/v1/approvals (真實數據)
Tab 3 活動串流: 串接 SSE /api/v1/dashboard/stream (EventSource 即時)
Tab 4 處置統計: 串接 /api/v1/stats/disposition (Sprint 4 API)
零假數據: 所有 Tab 無資料時顯示空狀態,不用 Mock
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 18:17:10 +08:00 |
|
OG T
|
46ca2eadc3
|
feat(web): Sprint 5 Phase 1.1 — PageTabs 共用頁籤元件
|
2026-04-08 18:12:43 +08:00 |
|
OG T
|
11ff517406
|
feat(web): Sprint 5 Phase 0 — 安裝 React Flow + elkjs + 保留經典首頁
Phase 0:
- 安裝 @xyflow/react 12.10.2 + elkjs 0.11.1
- import 驗證通過
經典首頁保留:
- 複製現有首頁到 /classic/page.tsx (815行)
- 統帥指示: 新指令中心部署後,舊版保留供對照
零假數據鐵律: 所有新頁面必須串接真實 API
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-08 18:07:59 +08:00 |
|
OG T
|
39499c6be3
|
design: Sprint 5 指令中心設計稿 — 統帥批准版本
|
2026-04-08 18:03:51 +08:00 |
|
OG T
|
18452ceb9f
|
fix(ci): 補 pyyaml 依賴 + 同步 Sprint 5.1 Pydantic → TypeScript 型別
CD Pipeline / build-and-deploy (push) Failing after 1m43s
Type Sync Check / check-type-sync (push) Successful in 57s
- pyproject.toml: 新增 pyyaml>=6.0.0 (service_registry.py 需要)
- shared-types: 同步 PlaybookAction 三個新欄位
(requires_approval_level / stateful_targets / requires_pre_backup)
- shared-types: 同步 ApprovalRecord 三個新欄位
(approval_level / approval_votes / required_votes)
修正: build-and-deploy 因 import yaml 失敗 + check-type-sync 因模型未同步
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 17:06:44 +08:00 |
|
OG T
|
0847fa3a60
|
feat(sprint5.1): L2-2 — alerts-unified.yml 補 DockerContainerUnhealthy/Exited 規則
Deploy Alert Rules / Deploy Prometheus Alert Rules (push) Failing after 19s
新增 docker_health_alerts group:
- DockerContainerUnhealthy: container_health_status==0, for 2m, auto_repair=true
- DockerContainerExited: container_running_status==0, for 1m, auto_repair=true
標籤 auto_repair=true 讓 AWOOOI API 進入 Guardrail 決策鏈路,
實際修復動作由 Service Registry 分級(ADR-062)決定,
docker-health-monitor.sh(純感知層)送 webhook 後由此規則補充 Prometheus 路徑。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 16:40:44 +08:00 |
|
OG T
|
0af5c2e89c
|
docs(sprint5.1): LOGBOOK + ADR-062 + Skill 02 更新(首席架構師審查記錄)
- docs/LOGBOOK.md: 當前狀態更新至 L1-L5+審查完成,里程碑補充審查修正記錄
- docs/adr/ADR-062: 新增實施記錄章節(執行清單+審查問題+修正方式)
- .agents/skills/02-lewooogo-backend-core.md v2.5→v2.6:
加入 Sprint 5.1 Service Registry 模式
加入 Guardrail 保守原則(失敗 block 不放行)
加入新 Service 標準樣板(structlog/now_taipei/DI setter/try-except)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-08 16:38:31 +08:00 |
|