OG T
|
22fa6ea413
|
refactor(web): ApmPanel 抽取 — /observability 的 monitoring+apm 兩個 Tab 無雙重 Layout
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 10:49:39 +08:00 |
|
OG T
|
f05a391d02
|
feat(web): panels/index.ts 匯出 + Panel 抽取進度標記
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 10:42:30 +08:00 |
|
OG T
|
770667eed4
|
refactor(web): MonitoringPanel 抽取 — 解決 /observability 雙重 AppLayout
CD Pipeline / build-and-deploy (push) Has been cancelled
|
2026-04-09 10:40:07 +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
|
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
|
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
|
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
|
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
|
46ca2eadc3
|
feat(web): Sprint 5 Phase 1.1 — PageTabs 共用頁籤元件
|
2026-04-08 18:12:43 +08:00 |
|
OG T
|
22bc384b28
|
feat(web): Sprint 4 Phase E — 前端處置統計儀表板
E1: /reports 頁面升級為完整處置統計儀表板
- 頂部 3 KPI (處置總次數/自動化率/人工介入率)
- 四大計數卡片 (自動修復/人工審核/手動處理/冷啟動信任)
- 堆疊分佈條 (百分比視覺化)
- 按異常類型明細表格
- 串接 GET /api/v1/stats/disposition
E3: /auto-repair 頁面加入處置概況 4 卡片
E4: /neural-command stats tab 加入處置分佈區塊
E5: 新增 25+ i18n 翻譯鍵 (zh-TW + en)
全部頁面 next build 通過,統帥鐵律: 無假數據,無資料顯示 '--'
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-07 13:00:41 +08:00 |
|
OG T
|
246587a401
|
fix(web): Sprint F 前端打假行動 — 29處假數據全面清除 (首席架構師 98/100)
P0: Neural Command 三個子組件移除所有 MOCK 常數,接上真實 API props
- NeuralLiveCenter: 假歷史/假KPI/假雷達 → 從 stats/history/incidents 即時計算
- NeuralStats: MOCK_HISTORY/SCHEME_STATS/PLAYBOOK_RANKINGS → useMemo 聚合
- NeuralApprovalPanel: MOCK_PENDING → 真實 /api/v1/approvals 簽核操作
P1: 10+處假用戶身份 (demo-user/user-001/War Room User) → CURRENT_USER 常數統一
P2: 刪除 6 個 Demo 匯出 (GlobalPulseChartDemo/MOCK_APPROVAL/DEMO_DECISION_CHAIN)
P3: /demo 頁面加 NEXT_PUBLIC_ENABLE_DEMO 環境變數保護
i18n: 新增 22 個翻譯鍵 (zh-TW + en)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-07 12:53:52 +08:00 |
|
OG T
|
9197994d51
|
feat(neural-command): 加入 Sprint 3 指揮鏈可視化 + T1-T7 任務進度監控
CD Pipeline / build-and-deploy (push) Successful in 11m15s
- SSH Gateway → URI解析器 → Shell防注入 → Redis冪等鎖 → Ansible Playbook DB 節點流程圖
- T1-T7 任務卡片 (T1/T2 標記完成,T3-T7 待執行)
- 4 指標面板:實作速度/安全等級/可觀測性/架構健康度
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-06 14:13:58 +08:00 |
|
OG T
|
0b1ceb8618
|
feat(web): 新增神經指揮中心頁面 /neural-command
CD Pipeline / build-and-deploy (push) Successful in 12m22s
Sprint 3 SSH_COMMAND 指揮權鏈 UI — 完整前端實作:
- Pre-Flight 審查面板: 8/8 安全檢查 (A/B/C 三類) + 通過狀態 + 功能開關
- 即時指揮中心: OpenClaw 🦞 + NemoTron ⚡ 狀態 + 神經傳導鏈路動畫 + 執行串流
- 統計 & 歷史: 5 KPI + URI scheme 分佈 + Playbook 成效排名 + 時間軸
- 核鑰授權面板: 兩位指揮官診斷 + 執行路徑詳情 + NuclearKeyButton 長按確認
技術:
- 路由: /neural-command (獨立新頁面,非取代 /auto-repair)
- sidebar: BrainCircuit icon,緊接 auto-repair 下方
- i18n: 完整 zh-TW + en 支援 (neuralCommand namespace)
- TypeScript: 型別定義獨立至 components/neural-command/types.ts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-06 14:01:31 +08:00 |
|
OG T
|
aea16c87ce
|
feat(web/drift): Config Drift Detection 頁面 — Phase 25 P2 前端
CD Pipeline / build-and-deploy (push) Waiting to run
- drift/page.tsx: 漂移偵測頁面(報告列表 + 手動掃描)
- sidebar.tsx: 加入 drift nav item(Diff icon,ops section)
- i18n: zh-TW + en 新增 nav.drift + drift.* keys
功能:
- GET /api/v1/drift/reports → 顯示最近 20 份報告
- POST /api/v1/drift/scan → 手動觸發掃描,顯示結果 banner
- DriftLevelBadge: 高/中/低 漂移計數
- StatusBadge: pending/resolved/ignored
- Nemotron 意圖分析顯示
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-04 18:08:05 +08:00 |
|
OG T
|
37eb17fc78
|
fix(layout): sidebar/header 對齊 — ml-[224px] + pt-[68px] 消除 32px 空隙
CD Pipeline / build-and-deploy (push) Failing after 48s
- ml-64(256px) → ml-[224px] 對齊 sidebar 實際寬度
- pt-16(64px) → pt-[68px] 對齊 header 實際高度
- calc(100vh-64px) → calc(100vh-68px)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 13:35:47 +08:00 |
|
OG T
|
6ae655d943
|
fix(dashboard): metrics strip 完整對齊 figma-v2
CD Pipeline / build-and-deploy (push) Successful in 6m44s
- background 改為 #fff(白色)
- padding 改為 8px 16px,min-width:120px
- divider 改為獨立元素(width:0.5px height:36px alignSelf:center)
- label font-size 改為 11px
- 移除 borderRight hack,使用獨立 divider
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 12:15:32 +08:00 |
|
OG T
|
59eaf5c51b
|
fix(sidebar): 從 top:68px 開始,不再蓋住 header brand area
CD Pipeline / build-and-deploy (push) Has been cancelled
sidebar 原本從 top:0 + 68px spacer 實作,z-index:40 > header:30
導致 sidebar 蓋住 header 左側 brand area (AwoooI logo 消失)
修復: 改為 top:68px bottom:0,完全在 header 下方
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 12:12:10 +08:00 |
|
OG T
|
cbe528b5c6
|
feat(ui): header/sidebar/openclaw 完整對齊 figma-v2
CD Pipeline / build-and-deploy (push) Successful in 6m57s
- 移除 OpenClaw "AWOOOI v1.0.0 | 正式環境" header
- 語言按鈕標籤改為 繁/EN (pill 樣式)
- header/sidebar 視覺對齊 figma-v2
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 11:36:38 +08:00 |
|
OG T
|
2dcbedd80f
|
fix(host-grid): 對齊 figma — 服務行去掉 port/描述,hostname 顯示末段 IP
CD Pipeline / build-and-deploy (push) Successful in 7m4s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 00:59:59 +08:00 |
|
OG T
|
8bc086af58
|
feat(infra): 完整監控工具 + 主機服務清單 + K3s Cluster 突顯
CD Pipeline / build-and-deploy (push) Successful in 6m50s
監控工具 (6個):
- 加入 Grafana (110:3002), Sentry (110:9000), Langfuse (110:3100)
- 保留 Prometheus, SigNoz, Gitea
基礎架構:
- 靜態服務目錄 HOST_CATALOG:每台主機完整服務+Port+說明
- K3s Server #2 (121) 補靜態卡 (API 未回傳)
- K3s Cluster HA 獨立藍色區塊,☸ 標題 + VIP 資訊
- 所有服務含 Port 號與功能描述
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 00:36:59 +08:00 |
|
OG T
|
2253c1b74e
|
fix(layout): 修復主頁大空白 + Metrics Strip 右側溢出
CD Pipeline / build-and-deploy (push) Successful in 7m18s
E2E Health Check / e2e-health (push) Successful in 18s
新增 AppLayout fullBleed prop,主頁 opt-out p-6 包裝,
移除 page.tsx 的 margin: '-24px' hack。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 23:58:48 +08:00 |
|
OG T
|
e9a1ac6276
|
fix(ui): 對齊 figma-v2 設計稿 — IncidentCard + OpenClawPanel 視覺修正
CD Pipeline / build-and-deploy (push) Failing after 35s
IncidentCard:
- 背景 #fff、圓角 12px、頂邊條 4px(對齊設計稿)
- P1 嚴重度色修正為 #F59E0B(amber,非 orange)
- Severity badge 改為 4px 圓角 uppercase 樣式
- Impact 指標列移除灰底方塊,改為細邊框分隔線
- AI 提案按鈕改為全寬居中橙色風格
OpenClawPanel:
- 移除多餘 rounded-xl/backdrop/border(由父層卡片容器提供)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 23:36:59 +08:00 |
|
OG T
|
58002e6bf4
|
feat(phase24-b3): NemotronProvider 抽取 + incident-card 重構
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
Phase 24 B3:
- 新增 ai_providers/nemotron.py: NemotronProvider 封裝 K8s Tool Calling
搬移自 openclaw.py _call_nemotron_tools (L1623-1785)
capabilities=tool_calling, privacy_level=cloud
- ai_router.py: 加入 NemotronProvider 到 Registry
- ai_providers/__init__.py: 匯出 NemotronProvider
Phase R-UI2 (架構師 Warning):
- incident-card.tsx: 抽取 useApprovalAction hook
handleApprove/handleReject 60行重複邏輯 → 共用 hook
行為完全不變,維護性提升
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 23:12:42 +08:00 |
|
OG T
|
ba4ee46514
|
fix(ui): 架構師 Review 修復 — i18n/keyframe/型別/版面
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
Critical:
- flow-pipeline.tsx: 移除 4 個重複 lobster-bob keyframe,統一在父元件注入
修正 isResolved 路由邏輯,保留嚴重度視覺識別 (P0 resolved 仍用 StyleA)
- incident-card.tsx: 修復 4 個硬編碼中文字串 (affectedServices/signalCount/statusLabel/aiProposal)
新增對應 i18n key 到 zh-TW.json + en.json
Warning:
- page.tsx: MetricItem type 提升至 module scope,pendingApprovals null 安全檢查
Metrics Strip 移除固定 height:68px 改為 auto + padding:8px
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 21:36:51 +08:00 |
|
OG T
|
93e3aa6811
|
feat(ui): 四種嚴重度管線動畫 + WoooClaw 命名更新
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
- flow-pipeline.tsx: 新增 severity prop,四種管線樣式
- P0 → Style A: 脈衝光波 + 流動光效 (#cc2200)
- P1 → Style B: 進度條,龍蝦站在進度端點 (#F59E0B)
- P2 → Style C: 卡片步驟,龍蝦浮在 active 卡片上方 (#4A90D9)
- P3 → Style D: 時間軸,虛線流動動畫 (#22C55E)
- incident-card.tsx: FlowPipeline 傳入 severity={sev}
- openclaw-panel.tsx: NemoClaw→WoooClaw, OpenClaw Pipeline→WoooClaw Pipeline
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 21:18:22 +08:00 |
|
OG T
|
9afb518ea6
|
fix(ui): 修復事件卡片溢出框 + 基礎架構資料欄位錯誤對應
CD Pipeline / build-and-deploy (push) Failing after 49s
E2E Health Check / e2e-health (push) Successful in 21s
- incident-card: AI提案按鈕 width 100% + margin 造成右側懸浮框,改為 calc(100%-20px)
- page.tsx: useHosts() 返回 Host[] 但直接傳入 HostGrid 期望的 HostInfo[],
補上 mapper (name→hostname, metrics.cpu_percent→cpuPct, service.status→healthy)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 19:01:07 +08:00 |
|
OG T
|
1ec342db0c
|
fix(web): 首席架構師審查修復 (82/100 → Pass)
E2E Health Check / e2e-health (push) Successful in 18s
CD Pipeline / build-and-deploy (push) Has been cancelled
- 字體遷移遺漏: host-grid (2處), sidebar (1處) → var(--font-body)
- time-series-chart tick → var(--font-mono) (圖表軸標籤保留等寬意圖)
- i18n key 重複: 移除 incident.anomaly, 保留 incident.card.anomaly
- 全站 inline fontFamily: 'monospace' 歸零
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 13:56:43 +08:00 |
|
OG T
|
1f174e1268
|
fix(web): 首頁全面 QA 修復 — hosts 數據 + incident 標題 + i18n + 字體
E2E Health Check / e2e-health (push) Successful in 17s
CD Pipeline / build-and-deploy (push) Has been cancelled
- HostGrid 接 useHosts() SSE 數據(不再傳空陣列)
- IncidentCard 標題從 description?? '--' 改為 decision.action ?? services + 異常
- 6 處硬編碼中文改 i18n (活躍事件/載入中/系統穩定/OpenClaw認知引擎/基礎架構)
- fontFamily: Inter/monospace → var(--font-body) 全部替換
- 新增 dashboard.openclawEngine / infrastructure i18n keys
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 13:33:48 +08:00 |
|
OG T
|
4d46e6b9a7
|
style(web): 全站 font-mono → font-body (DM Mono 設計系統套用)
E2E Health Check / e2e-health (push) Successful in 17s
CD Pipeline / build-and-deploy (push) Has been cancelled
45 個 component + 6 個 page 統一從舊 font-mono 遷移到
font-body (DM Mono),確保設計系統一致性。
font-body = DM Mono (等寬),視覺效果相同但走新設計 token。
保留: font-heading (Syne)、font-dot-matrix (VT323/DSEG7)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 09:37:03 +08:00 |
|
OG T
|
3ecfe7b3f5
|
chore: 清理 NemoNodeAnimation 殘留 + 修復 Migration YAML
E2E Health Check / e2e-health (push) Successful in 19s
CD Pipeline / build-and-deploy (push) Has been cancelled
- 移除 nemo-node-animation.tsx (無人引用,已被 NemoClaw 取代)
- Migration YAML: 修復 $$ 在 YAML heredoc 被 shell 解析問題
改用單引號字串 DO '' 語法
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 09:09:25 +08:00 |
|
OG T
|
e17248fd10
|
fix: 首席架構師審查修復 — i18n/CD/時區/死碼清理
E2E Health Check / e2e-health (push) Successful in 16s
CD Pipeline / build-and-deploy (push) Has been cancelled
P0 前端 i18n 合規 (6 檔案):
- settings/page.tsx: 全面改用 useTranslations('settings')
- auto-repair/page.tsx: 30+ 處硬編碼改用 t('autoRepair.*')
- sidebar.tsx: sectionLabel 改用 tSection(),aria-label 國際化
- openclaw-panel.tsx: STATUS_MESSAGES 改用 tPanel(),Production 改用 tBrand
- alerts/page.tsx: StatPill label 改用 t('incident.severity.*')
P1 CD Pipeline:
- cd.yaml: runs-on 改 self-hosted (ADR-039)
- Telegram Secret 注入失敗改為 exit 1 (ADR-035)
- kubectl patch op:replace → op:add (首次部署相容)
P2 後端:
- langfuse_client.py: 移除 v4.x 死碼分支 (SDK 鎖定 <3.0.0)
- ai.py: 標記 TODO(R4) Router 瘦身
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 09:02:41 +08:00 |
|
OG T
|
5959855a71
|
feat(web): 字體系統升級 + NemoClaw SVG 還原 + Knowledge Base 設計文件
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
- 字體:Syne (標題) + DM Mono (內文) + VT323 (品牌點陣),替換 Inter
- Tailwind: fontFamily 更新 + 5 層文字色彩 token (primary→disabled)
- Sidebar: NemoClaw 白瓷龍蝦爪 SVG + AWOOOI 用 VT323 放大
- OpenClaw Panel: 還原 NemoClaw 3D 白瓷龍蝦爪 (替換 NemoNodeAnimation)
- Knowledge Base 設計文件 (B分離/A K8s Job/Phase1跳過向量搜尋)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 00:48:42 +08:00 |
|
OG T
|
cdf60bb8c8
|
feat(pages): 補全所有缺失路由頁面 (15 個)
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
實作頁面:
- /monitoring: 黃金指標 + 主機狀態 + 服務健康表格
- /alerts: P0-P3 分組 + 嚴重度統計 (已送)
- /terminal: OmniTerminal 路由 (已送)
- /authorizations: LiveApprovalPanel (已送)
佔位頁面 (ComingSoon):
- /apm /topology /security /compliance
- /auto-repair /deployments /tickets /cost /reports
- /apps /services /users /notifications /billing /help
新增 ComingSoon 元件 (極簡動點動畫)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 22:59:02 +08:00 |
|
OG T
|
79c8a2e7ab
|
fix(layout): 還原 Header 原始設計 + 修復 Metrics Strip 高度
CD Pipeline / build-and-deploy (push) Has been cancelled
E2E Health Check / e2e-health (push) Has been cancelled
- Header 左側換回頁面標題 (移除重複的 SVG + AWOOOI 品牌)
- Metrics Strip height 50→60px (避免三行文字被截斷)
- 原因: commit 249ecde 錯誤地在 Header 加入品牌區塊,與 Sidebar 重複
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 22:42:07 +08:00 |
|
OG T
|
48d89a1a91
|
style(font): 系統性字體升級 — 對齊業界標準 Linear/Vercel/Anthropic
E2E Health Check / e2e-health (push) Has been cancelled
CD Pipeline / build-and-deploy (push) Has been cancelled
- openclaw-panel: 11/9/8px → 13/12/11px
- sidebar: nav 13→14px, badges 11→12px, bottom 12→13px, icons 14→15px
- page.tsx: metric labels 11→12px, section headers 12→13px
- incident-card: 11px 全面升 12px, meta 12→13px
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 22:15:35 +08:00 |
|
OG T
|
0ae210a433
|
fix(ui): sidebar font sizes to standard + remove dead NemoClaw SVG from openclaw-panel
CD Pipeline / build-and-deploy (push) Successful in 6m47s
E2E Health Check / e2e-health (push) Successful in 17s
|
2026-04-01 21:24:52 +08:00 |
|
OG T
|
0df2625b26
|
fix(ui): increase font sizes to mainstream web standards across AI Center
|
2026-04-01 21:05:03 +08:00 |
|
OG T
|
249ecdeb25
|
feat(header): update NemoClaw Logo SVG with ceramic3d arms and LED core
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:11:39 +08:00 |
|
OG T
|
e623b1c4e9
|
chore(incident): remove DualStateIncidentCard (Phase 6.5 old style, migrated to IncidentCard)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:10:20 +08:00 |
|
OG T
|
beb6a227db
|
feat(ai): replace dragon arm SVG with NemoNodeAnimation in OpenClawPanel
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:05:18 +08:00 |
|
OG T
|
edc3707032
|
fix(incident): a11y AI proposal button, move spin keyframe to globals, fix deps
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:03:09 +08:00 |
|
OG T
|
823e2b95a3
|
feat(incident): redesign IncidentCard with FlowPipeline, migrate auth logic from DualState
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 20:00:16 +08:00 |
|
OG T
|
faf658c4b4
|
feat(sidebar): 4-section nav with AI center active style #d97757
|
2026-04-01 19:53:00 +08:00 |
|
OG T
|
91b42b4bb9
|
feat(infra): add HostGrid 2x2 compact host grid component
|
2026-04-01 19:50:27 +08:00 |
|
OG T
|
354bf7a6f2
|
feat(ai): add NemoNodeAnimation 72x72 SVG with orb-pulse and ring-spin
|
2026-04-01 19:50:05 +08:00 |
|
OG T
|
16ca133955
|
feat(incident): add FlowPipeline 7-node pipeline with lobster animation
|
2026-04-01 19:47:19 +08:00 |
|
OG T
|
22de22c989
|
refactor(phase-s): Phase S 技術債清理 - 五項架構改善
S-01: generate_alert_fingerprint() 移至 alert_analyzer_service (Router→Service)
S-02: 移除廢棄 USE_NEW_ENGINE config (Phase R 已完成歷史使命)
S-03: github_webhook.py linter 清理 (Field unused + delivery_id noqa)
S-04: Pydantic v2 遷移 - approval/incident models (class Config → ConfigDict)
S-05: Skill 09 v1.1 更新 (USE_NEW_ENGINE 廢棄說明)
測試: 393 passed, 零失敗
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-01 13:12:02 +08:00 |
|
OG T
|
95de7e0e15
|
fix(web): 活躍事件 Y/n 按鈕補上 CSRF Token (P0 根本原因)
E2E Health Check / e2e-health (push) Successful in 19s
問題: DualStateIncidentCard 的 Y/n 按鈕呼叫 apiClient.signApproval/rejectApproval
時,沒有帶 X-CSRF-Token header 也沒有 credentials: 'include'
後端返回 403 CSRF token cookie missing
修復:
- api-client.ts: signApproval/rejectApproval 加入 csrfToken 參數
+ X-CSRF-Token header + credentials: 'include'
- dual-state-incident-card.tsx: 加入 useCSRF() hook,
將 csrfToken 傳入 API 呼叫,更新 useCallback deps
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-03-31 22:45:27 +08:00 |
|
OG T
|
589f2fc4c7
|
fix(web): openclaw-state-machine 補上 CSRF Token (P0 根本原因)
E2E Health Check / e2e-health (push) Successful in 15s
根本原因: 首頁用的是 openclaw-state-machine.tsx 而非 LiveApprovalPanel
該元件的 handleApprove 完全沒有 CSRF token 和 credentials: include
導致後端回傳 "CSRF token cookie missing" → 按鈕沒有任何反應
修復:
- import useCSRF hook
- handleApprove 加上 X-CSRF-Token header
- fetch 加上 credentials: 'include'
- useCallback deps 加上 csrfToken
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-03-31 21:50:34 +08:00 |
|