29 KiB
AWOOOI 全景盤點 × 2026 AI 趨勢比對 × 優化整合方案(最終版)
產出:2026-05-08 終版(取代 5/7 v1 + 5/8 v2) 範圍:254 commits / 全 codebase / 6 主機 + 1 MacBook / AI 子系統 / DB / 監控 / CI/CD / 安全 / AwoooP 方法:12 Agent 並行盤點 + 4 Web Researcher 並行調研 + 三機 SSH 實測效能 benchmark 信心:High(每節 2+ 來源交叉驗證 + 實機數據)
第一部分 — 硬體現況真相(先過這一關)
AWOOOI 全部七台機器:零 NVIDIA GPU。 任何 CUDA-only 工具直接劃為 not applicable。
| 主機 | 角色 | 機型 | CPU | GPU | RAM | 推理可用性 |
|---|---|---|---|---|---|---|
| 110 | DevOps 金庫 | bare metal | — | ❌ | — | 不跑 LLM(Harbor / Gitea / Sentry / Langfuse / Prometheus / Nginx Ollama proxy) |
| 120 | K3s CP MASTER | bare metal | — | ❌ | — | 不跑 LLM(keepalived MASTER + awoooi-prod) |
| 121 | K3s CP BACKUP | bare metal | — | ❌ | — | 不跑 LLM(ArgoCD / kube-state-metrics / mon cluster) |
| 188 | AI+Web 中心 | bare metal | — | ❌ | — | 不跑大 LLM(PG/Redis/SignOz/Local Ollama 集中度過高) |
GCP-A 34.143.170.20 |
Ollama Primary | c4d-standard-8-lssd |
AMD EPYC 9B45 8 vCPU AVX-512 | ❌ | 30 GB | CPU 推理 ≤7B |
GCP-B 34.21.145.224 |
Ollama Secondary | c4d-standard-8-lssd |
同 A | ❌ | 30 GB | CPU 推理 ≤7B |
| 111 | Local Ollama 邊緣 | MacBook Pro | M1 Pro 8 CPU | 14 GPU cores Metal | 16 GB unified | Metal 推理 ≤7B(14B OOM) |
儲存:GCP-A/B 各有 375 GB Local NVMe SSD(c4d-lssd 後綴含義),扣掉 65G/63G 模型佔用,仍有 290+ GB 充足空間。GCP-A boot disk 已從 100% 滿恢復到 45%(5/8 完成)。
三機 LLM 實測效能(同 prompt 同 quantization)
| 平台 | 3B 單請求 | 7B 單請求 | 7B 4 並行 wall | 14B | 32B |
|---|---|---|---|---|---|
| GCP c4d-CPU | 25.6 tok/s | ~5-10 tok/s | — | 2-5 tok/s ✅統帥認可 | 0.4 tok/s(5+ 分/問) |
| 111 M1 Pro Metal | 58.7 tok/s | 26.3 tok/s | wall 11s, agg 14.6 tok/s | OOM(16G + 4G swap 不夠) | 不可能 |
統帥校正鐵律:14B at 2-5 tok/s 可接受(告警解決非即時)→ SGLang 升級從「重要」降為「條件觸發」。
第二部分 — 12 面向盤點清單
1. Codex 254 commits 提交稽核(12 天)
作者比例:Your Name 218(86%)/ AWOOOI CD 37(14% 純自動部署) 類型:fix 123(48%)/ feat 48(19%)/ chore 58 / docs 16 / test 9 / refactor 0 信號:補丁驅動開發,零重構消化技術債
九大主題
| 主題 | commits | 代表 commit |
|---|---|---|
| Ollama ADR-110 GCP 三層容災 | 27 | b1ef05fa 主架構、fb0c72db 推翻 A2、c38227e9 移除 188 |
| AwoooP Agent Platform Phase 0-8 | 10 | 8629ac70 Phase 1-8、13e51802 Phase 0+1 |
| AIOps 飛輪 / 自動修復 | 30+ | e45b055e 治理四軌、3779f6f1 /metrics 串接 |
| Governance / Watchdog | 10 | aa4ccec4 ADR-092 B4、f6b698c8 PromQL 注入防線 |
| Telegram 去重 / 升級 | 13 | b3a0f0d7+47342dfb fingerprint+24h、8fb0c5df heartbeat |
| CI/CD Gitea Actions | 25+ | 5e625f77 stale job、fe618960 systemd runner baseline |
| K8s / Smoke / Deploy | 10+ | 47234999 playwright deps、0f7e9d34 host runner |
| DB Migration / Schema | 7 | 4115ddde、474b913a、f09a8f56 |
| Secrets 安全事故 | 3 | 7b471e7a Gemini key、439c432c Gitea token、297afb69 ssh-mcp-key |
反覆修補警訊(同檔 ≥10 次 = 設計缺陷)
| 檔案 | 修補次數 | 問題 |
|---|---|---|
apps/api/src/core/config.py |
21 | 缺中央化設定,env/旗標散落 |
apps/api/src/services/decision_manager.py |
20 | Tier 3 紅區改 20 次違反 RED_ZONES |
.gitea/workflows/cd.yaml |
18 | CD 不穩,runner 改 7 次仍治標 |
apps/api/src/services/ollama_failover_manager.py |
14 | 分層健康檢測抽象不完整 |
apps/api/src/api/v1/webhooks.py |
14 | Alertmanager 入口反覆改格式 |
apps/api/src/services/telegram_gateway.py |
12 | 去重邏輯改 12 次 |
services/governance_agent.py / ai_router.py / openclaw.py / db/models.py |
各 10 | schema 漂移、決策飄移 |
2. 後端 API 盤點
- 總量:347 Python 檔,約 107,000+ 行
- 核心:services/ 163 檔 ~79,000 行;api/v1/ 37 routers;agents/ 11;jobs/ 20;workers/ 4
- 巨型檔 8 個(>1000 行):
| 檔案 | 行數 | 重構優先 |
|---|---|---|
services/telegram_gateway.py |
6,426 | P1 拆 4 檔 |
services/decision_manager.py |
3,531 | P2 Tier 3 紅區,需授權 |
services/openclaw.py |
2,711 | P3 |
api/v1/webhooks.py |
2,458 | P3 |
db/models.py |
1,687 | 按 domain 切 |
services/incident_service.py |
1,448 | — |
services/ai_router.py |
1,407 | 三 class 拆三檔 |
services/learning_service.py |
1,341 | — |
重複實作 5 例
- Ollama Failover 四層疊架:
ollama_health_monitor→ollama_failover_manager→ollama_auto_recovery→ollama_endpoint_resolver(後者被 5 個 service 直接引用,繞過 ai_router 違 ADR-052) - 決策融合雙軌:
decision_fusion.py(562) vsdecision_fusion_adapter.py(546) - Trust Engine 雙份:
core/trust_engine.pyvsservices/trust_engine.py - Playbook/Runbook 雙生成器:
playbook_generator.py(Ollama) vsrunbook_generator.py(Nemotron) - Governance 三元組:
governance_agent+governance_dispatcher+governance_query_service
半成品 / 死代碼 10 例
routes/notifications.py全檔 stubTODO: 實際發送通知routes/agent.py:63,76假訊息TODO: 實際調用 OpenClawagents/security.py:187-188Phase 9.4 LLM stubapi/v1/ai.py:43TODO(R4): 移入 approval_serviceapi/v1/sentry_webhook.py:460TODO(2026-04-05)30 天未修jobs/compliance_scanner_job.py三個 TODO(ssl/cve/backup)routes/health.py:278健康檢查未完成jobs/capacity_forecaster_job.pyHolt-Winters 用線性回歸代替plugins/mcp/providers/grafana_provider.py:54例外空殼plugins/mcp/providers/filesystem_provider.py:84同上
封存待清:_archived/routes/approvals.py (477) + _archived/services/approval.py (389),觀察期已逾 12 天
3. 前端網站盤點
apps/web/已從磁碟移除,git 仍追蹤 70+ D 檔案(半遷移狀態)- Active:
/Users/ogt/wooo-aiops/web/(Next.js 14.1 / TS 5.3 / Radix UI / Zustand / TanStack Query / Tailwind) - 頁面總數:70 個 page.tsx
- i18n 完全沒接:
useTranslations呼叫數 = 0,違反feedback_i18n_zero_hardcode鐵律 - 硬編碼 IP 違規:
activities/route.ts、notifications/history/route.ts假 IP;.env.examplelocalhost:8000危險 - Emoji 違規:26 檔 / 42 處違反
feedback_no_emoji_use_icons
4. 前端頁面功能正常性(70 個 page.tsx)
| 狀態 | 數量 | 代表 |
|---|---|---|
| 功能正常 | ~25 | /awooop/runs、/awooop/approvals、/billing、/settings、/cost |
| 半完成 | ~15 | /awooop/approvals/[run_id] (as any 殘留)、/dashboard、/users、/tickets/* |
| 壞掉 / 假資料 | ~30 | /monitoring (Math.random!)、/tickets/dashboard 硬寫 DevOps:15、/blog POSTS 寫死、/pricing 純靜態、13 個行銷頁 |
P0 必修頁面 Top 5
/monitoring/MonitoringContent.tsx— 全假資料(Math.random()生成 SLA)/tickets/dashboard/page.tsx— 硬寫DevOps: 15 tickets, resolved: 14/dashboard/DashboardContent.tsx— SSR 完全關閉,多 widget 未確認真實 API/users/page.tsx— 168 處硬字串(全站最高)/compliance/page.tsx— i18n=0、無 error state
殘留物:console.log 94 處 / 14 page.tsx;as any 3 處;TODO 23 檔
5. AI / OpenClaw / Decision 子系統
12 個 Agent
| Agent | 入口 | 用途 |
|---|---|---|
| DiagnosticianAgent | agents/diagnostician_agent.py:68 |
診斷 |
| SolverAgent | agents/solver_agent.py:439 |
修復方案 |
| CriticAgent | agents/critic_agent.py:62 |
二次審查 |
| ReviewerAgent | agents/reviewer_agent.py:64 |
最終審核 |
| CoordinatorAgent | agents/coordinator_agent.py:49 |
協調 |
| ActionPlannerAgent | agents/action_planner.py:270 |
動作規劃 |
| BlastRadiusAgent | agents/blast_radius.py:164 |
影響半徑 |
| SecurityAgent | agents/security.py |
安全(Phase 9.4 LLM 仍 stub) |
| GovernanceAgent | services/governance_agent.py:57 |
治理迴圈 |
| HostRepairAgent | services/host_repair_agent.py:184 |
主機修復 |
| TrustDriftDetector | services/trust_drift_detector.py:99 |
信任漂移 |
| AgentToolExecutor (MCP) | services/ai_providers/agent_loop.py:13 |
Shadow Mode |
Ollama ADR-110 容災(已修正 188 移除)
| 層 | URL | env |
|---|---|---|
| GCP-A Primary | 34.143.170.20:11434 |
OLLAMA_URL |
| GCP-B Secondary | 34.21.145.224:11434 |
OLLAMA_SECONDARY_URL |
| Local 111 | (188 nginx proxy) | OLLAMA_FALLBACK_URL |
| Gemini | flag-gated | ENABLE_ALERT_CLOUD_FALLBACK |
決策融合方法 III — services/decision_fusion.py
- LOW:Hermes 0.5 + Playbook 0.3 + MCP 0.2
- MED:OpenClaw 0.35 + Hermes 0.35 + Playbook 0.2 + MCP 0.1
- HIGH:OpenClaw 0.3 + ElephantAlpha 0.25 + Playbook 0.25 + MCP 0.2
- composite > 0.7 → auto;≤ 0.7 → HITL
已知缺口(北極星「AI 自主化」62/100)
| 缺口 | 嚴重度 |
|---|---|
USE_AI_ROUTER=False 新路由器空轉 |
🔴 |
ENABLE_OPENCLAW_AGENT_LOOP_SHADOW=False Agent Loop 仍 shadow |
🔴 |
9 處 decision_fusion_adapter.py 權重 hardcode |
🔴(與「自學」北極星矛盾) |
| Security LLM 層 stub | 🟠 |
| DIAGNOSE 已無 Ollama,全靠雲端 | 🟠(成本/延遲) |
FLYWHEEL_MIN_SAMPLE=10 hardcode |
🟡 |
6. 資料庫盤點
- PG 表數:~55-60(37 ORM + AwoooP 16 + Phase 1-7 約 20)
- Pool:
pool_size=10, max_overflow=20 - ClickHouse:客戶端 max=100,server pool 不在 repo(在 SignOz 188)— 2026-05-05 過載事故根因
12 天 11 個 migration(AwoooP Phase 1-7 共 7 個 SQL,未見 rollback 檔,重大缺口)
潛在風險
learning_service.py:5028N+1 query- Redis namespace 不統一(
awoooi:vsalert:vsgovernance:vsincident:) - AwoooP RLS migration 未測量鎖時長
phase25_knowledge_enum_names.sql容忍insufficient_privilege已踩兩次
7. 監控告警 Telegram 鏈路
- 告警規則總量:~314 條 / 14 檔
- 最大檔:
alerts-unified.yml106 條 +alerts.yml80 條 - Telegram dedup 散落 4+ 模組(ADR-109 統一 dedup 未落地,33 個 send_xxx 仍 caller-side)
8 個監控盲區
- ADR-109 未統一 dedup
- Alertmanager fallback secrets 無 placeholder sanity check
- VIP 125 SPF-1 單點
- SignOz 與 Prometheus dedup key 分離(同事件可能雙觸發)
- Sentry → Telegram 缺 dedup scope
- Heartbeat hash 與真告警 collide 未驗證
- webhooks.py:2049
X-Forwarded-For第一段可被偽造 - Loki 已棄用,但部分 rule/dashboard 可能仍引用
8. K3s + CI/CD 部署
- 集群:110 K3s server + Harbor + Gitea + ArgoCD;120/188 K3s agent
- Workloads:3 Deployment + 5 CronJob + 3 HPA + 3 VPA(prod)
- Gitea workflows:8 個(cd / cd-dev / code-review / deploy-alerts / e2e-health / run-migration / ansible-lint / type-sync-check)
- GitHub Actions 殘留 6 個應封存
已知問題
- Docker Build Lock 競爭仍有機率超時
- Stale Gitea Jobs 治理依賴 cron
- ArgoCD 與 Gitea HMAC webhook 斷線無告警
- workflow-only 變更跳過 CD 過濾邏輯可能誤判
9. 四主機服務盤點(已校正)
| 主機 | 近期事故 |
|---|---|
| 110 | 2026-05-05 load 41→37(Sentry CH pool 升 4→8) |
| 188 | 2026-05-05 load 20→3.56(cadvisor v0.47 + SignOz CH + litellm Prisma + momo) |
| GCP-A | 2026-05-08 boot disk 100% → 45%(已修) |
| GCP-B | 幾乎閒置 load 0.02(與 ADR-110 主備配置不符) |
5 個監控盲區
- 121 沒進 prometheus.yml node-exporter target
- GCP-A/B 無主機級監控(CPU/memory/IO 全盲)
- 120 主機沒 node-exporter target
- cadvisor 自身仍是單點(無獨立 watchdog)
- ClickHouse pool×ratio 沒有自動門檻檢查告警
SPOF 警報:188 = K3s datastore + 觀測 + Local Ollama + 應用(單點集中度過高)
10. 前後端串聯邏輯(破鏈與孤兒)
5 個破鏈
/alerts→GET /api/v1/alerts:後端無此 router → 404/repairs→GET /api/v1/repairs:後端 prefix 是/auto-repair→ 全部 404/activity→GET /api/v1/activities:後端只有/audit-logs→ 404- WebSocket
/api/v1/ws:前端 hardcodelocalhost:8000,後端只有/api/v1/stats/flywheel/ws dashboard/streamSSE 不被前端使用:前端用 WebSocket 而非 EventSource
2 個孤兒
GET /api/v1/aiops/timeline後端有但前端未接GET /api/v1/audit-logs後端有但前端打/activities
11. 技術債與遺留垃圾
死代碼 / 封存
apps/api/src/_archived/主檔仍在 git treeservices/_archived/incident_engine_v1.py、incident_memory_v1.py(標 2026-06-24 刪除)ai_router.py:618標 DEPRECATED 無呼叫方- 三個
*_agent.pytimeout alias 過期未清
Spec 未閉環 18 份:sprint5 4 份分散、aider-watch v1 未標 superseded、aiops-flywheel-repair 未 close-out
過期 feature flag:USE_AI_ROUTER、AIOPS_P1~P6_ENABLED、三個 *_TIMEOUT_SEC
12. AwoooP Agent Platform + 安全 + MCP
AwoooP Phase 0-8 進度
| Phase | 狀態 |
|---|---|
| 0 Pre-flight Audit + 14 ADR | ✅ |
| 1 Control Plane Schema + RLS | ✅ schema;⚠️ RLS migration 需確認 prod |
| 2 Tenant Isolation + ADR-120 三層 hard kill | ✅ |
| 3 Contract Packages & Validators | ✅ |
| 4 Platform Shell Shadow | ✅ |
| 5 MCP Gateway 五閘門 + redaction | ✅ |
| 6 EwoooC Read-Only Onboarding | ✅ schema;⏳ Provider Proxy 待 |
| 7 Channel Hub Telegram 入站鏡像 | ✅ Shadow |
| 8 Final Reply + Approval Flow 改寫 | 🚧 未完成 |
ADR-106 ~ ADR-124 一句話:106 六平面 / 111 Bootstrap / 112 Contract 治理 / 113 Active Revision / 114 Channel dedup / 115 Canonical principal / 116 Security / 117 MCP OAuth 2.1 / 118 RLS / 119 Durable Execution Saga / 120 Token budget hard kill / 121 OTel GenAI / 122 OWASP+ISO 42001 / 123 31 background loops / 124 13 global singleton 分解
5 個安全紅燈
- 🔴 .claude/settings.json 含真實 token(GITEA
e6c9fecb+ SENTRY2b730506×4) - 🔴 RLS migration 未確認 prod 已執行
- 🔴 03-secrets.yaml CHANGE_ME 仍在 repo
- 🟠 settings.json merge conflict marker 未清
- 🟠 Phase 8 final reply 未完成 → channel_hub Shadow 中無回應
MCP servers:context7 / figma / telegram / playwright(活躍)
第三部分 — 2026 主流趨勢調研
A. AI Agent / Multi-Agent Framework
2026 Top 5
| 排名 | Framework | 適用 |
|---|---|---|
| 1 | LangGraph | 有狀態工作流 / HITL / audit;MIT;企業最廣 |
| 2 | OpenAI Agents SDK | 2025-03 取代 Swarm;handoff + tracing + guardrails |
| 3 | CrewAI | 學習曲線最低;快速原型 |
| 4 | AutoGen (AG2) | 對話式 GroupChat;MS 維護 |
| 5 | AWS Strands / Pydantic AI | AWS / Python-first 型別驗證 |
互通協議現況
- A2A Protocol(Linux Foundation, Google 捐):v1.0 Signed Agent Cards、150+ 組織、22k stars — agent 間通訊未來標準
- MCP(Anthropic):tool 連接層;Confused Deputy 風險已確認
- AGNTCY(Cisco 捐):發現層,與 A2A 互補
Tool Use 可靠性 4 種 Pattern:Journal-Based Replay(Temporal)/ DB Checkpointing(LangGraph + Postgres / DBOS)/ Step-Based Retries(Inngest)/ Transactional Idempotency(Prefect)
Token / 預算 / 安全:OWASP Agentic Top 10 2026 發布(ASI08 Cascading / ASI10 Rogue Agents);Microsoft Agent Governance Toolkit(2026-04 開源)
B. LLM Observability / Governance
OTel GenAI Semantic Conventions:所有 gen_ai.* 屬性仍在 Development。OpenLLMetry SDK 是 OTel-native 推薦做法。
LLM Tracing Top 5:Langfuse(已用)/ Phoenix (Arize) / OpenLLMetry (Traceloop) / Helicone / LangSmith
AI Gateway:LiteLLM 95ms(已用)/ Portkey 27ms / Kong AI Gateway 12ms
Guardrails:NeMo Guardrails(NVIDIA, Apache 2.0, Colang)/ LLM Guard(MIT, 35 scanner)/ Lakera Guard(Check Point 收購)/ Llama Guard(Meta)
Governance 三標準:ISO 42001(可認證 3-6 月)/ NIST AI RMF / EU AI Act 2026-08-02 高風險全面執法
C. AIOps + Autonomous Remediation
2026 Top 5 平台:Dynatrace Davis(拓撲驅動因果)/ PagerDuty 3 SRE Agent(91% 降噪)/ Datadog Bits AI SRE / Microsoft Azure SRE Agent(Claude 驅動 GA) / NeuBird Falcon
5 種模式:Confidence-Gate / Blast Radius Gate / Bounded-Reversible / Progressive Autonomy / Agentic War Room
SRE Copilot 商用:Resolve.ai($1M+/年)/ Rootly($20/user/月)/ Azure SRE Agent
Alert Correlation 鐵律:Fingerprint = SHA256 of sorted JSON(排除 timestamp);業界標竿 70-85% 壓縮率
Knowledge / Postmortem:Zalando 兩年生產驗證 — 多階段 LLM pipeline 必勝(小模型幻覺 40%);HITL 不可省
D. RAG / Embeddings / Local LLM
Embedding Top 5
| 排名 | 模型 | 維度 | License |
|---|---|---|---|
| 1 | Qwen3-Embedding-8B | 7168 | Apache 2.0(需 16GB VRAM) |
| 2 | NV-Embed-v2 | 4096 | CC-BY-NC |
| 3 | Jina v5-text-small | 1024 | Apache 2.0 |
| 4 | Snowflake Arctic 2.0-L | 1024 | Apache 2.0(比 BGE-M3 高 14% MTEB-R) |
| 5 | BGE-M3(現況) | 1024 | MIT |
Reranker:BGE-Reranker-v2-M3(OSS)/ Cohere Rerank 3.5 / Jina Reranker v2
RAG 進階:CRAG(CP 值最高)/ Self-RAG / Agentic RAG(LangGraph DCG)
Vector DB:pgvector 0.9 升 HNSW + sparse vector 即可滿足現況(< 10M 向量)
Ollama vs vLLM vs SGLang:c4d-CPU 跑 32B = 0.4 tok/s(實測) / vLLM GPU 50-150 / SGLang H100 500-1000+;SGLang 強制 CUDA
Multi-LLM Router:LiteLLM 仍主流,鎖定版本 ≥ 1.83.0(2026-03 供應鏈攻擊)
第四部分 — Gap Analysis(盤點 vs 趨勢)
命中:12/12 概念對齊
Multi-Agent / MCP / Token Budget / OTel GenAI / OWASP+ISO 42001 / Ollama 容災 / fingerprint dedup / KM Flywheel / HITL / pgvector / LiteLLM / Langfuse — 概念全到位,但「規劃 vs 落地」差距顯著。
落地差距:規劃完整、落地未完成
| 規劃 | 落地缺口 | 影響 |
|---|---|---|
| ADR-052 AI Router | USE_AI_ROUTER=False |
新路由器空轉 |
| MCP Agent Loop | Shadow Mode | AI 無法主動執行工具 |
| 決策融合方法 III | 9 處權重 hardcode | 「自學」是包裝 |
| ADR-118 RLS | migration 未確認 prod 執行 | tenant isolation 形同虛設 |
| ADR-109 Telegram dedup 統一 | 33 個 send_xxx caller-side | 漏一個就重複轟炸 |
| AwoooP Phase 0-8 | Phase 8 未完成 | 用戶端零可感知功能 |
| Security Agent Phase 9.4 LLM | stub | 安全審查仍純規則 |
apps/web/ 遷移 |
70+ 檔案 D 未 commit | CI 拉空殼 |
| i18n 100% next-intl | 新前端 0 useTranslations | 違反鐵律 |
真盲區(市場已收斂、AWOOOI 沒做)— 加上硬體相容性過濾
| 2026 主流 | 後端要求 | AWOOOI 可用性 |
|---|---|---|
| OpenLLMetry SDK | Python lib | ✅ 全機可用 |
| Snowflake Arctic 2.0-L Embedding | Ollama / Transformers | ✅ 全機可用 |
| A2A Protocol | gRPC / HTTP | ✅ 全機可用 |
| NeMo Guardrails / Llama Guard 8B | Ollama / vLLM | ✅ 全機可用 |
| CUDA-only | ❌ 全機不適用,永久延後 | |
| LangGraph PG Checkpointing | PG + Python | ✅ 用 188 現有 PG |
結論:6 個 → 5 個立即可上(83% 命中),不動硬體。SGLang 改條件觸發。
第五部分 — 飛輪推理層分配(基於實測效能)
| 任務類型 | 模型 | 推薦平台 | 理由 |
|---|---|---|---|
| Embedding (RAG / KM) | 1B (bge-m3 / Arctic 2.0-L) | GCP-A/B + 111 | CPU/Metal 都夠快 |
| 告警分類 / 路由 | 3B-4B | GCP-A/B + 111 | 25-58 tok/s 即時 |
| DIAGNOSE Ollama lane | 7B | GCP-A/B(首選)/ 111(次選) | 5-26 tok/s |
| Solver / Critic 簡單版 | 14B | GCP-A/B(2-5 tok/s 統帥認可) | 不需即時 |
| Solver / Critic 複雜版 | 32B+ | 雲端 API(NEMO/Gemini/Claude) | CPU/Metal 都不行 |
| 結構化動作生成 | 32B+ | 雲端 API | 同上 |
這直接支持 ADR-105 commit fb0c72db「DIAGNOSE primary 改 Ollama」設計 — 只要 ≤14B 就走本地,否則回雲端。
SGLang 升級條件(觸發才動)
| 方案 | 月成本 | 解鎖 | 觸發條件 |
|---|---|---|---|
| 維持現況 | $0 | 5/6 命中 + 14B 邊緣可用 | 預設 |
升 GCP-A 為 g2-standard-8 (L4 24GB) |
~+$650 | SGLang 30x + 32B 本地 | 雲端 API 月費 > $1500 |
| 採購 Mac Studio M3/M4 Max 64GB+ | ~$5000 一次 | MLX 跑 70B 本地 | 業務需求 70B 本地 |
| 維持 NVIDIA NIM API | 按用量 | 無新成本 | 預設 |
第六部分 — 修訂後 P0-P4 Roadmap
🔴 P0 本週必修(5/8-5/14)— 全部不動硬體
| # | 動作 | 狀態 |
|---|---|---|
| 1 | GCP-A boot disk 100% 滿 → 45% | ✅ 已完成 5/8 |
| 2 | Journal cap 100M 防再長 | ✅ 已完成 5/8 |
| 3 | git rm apps/web 70+ D 檔 |
⏳ |
| 4 | 修 CLAUDE.md / HARD_RULES.md apps/web/** 路徑 |
⏳ |
| 5 | 清 .claude/settings.json 真實 token + 加入 .gitignore + 輪換 |
⏳ |
| 6 | 修 4 個前後端破鏈(/repairs / /alerts / /activity / WebSocket) |
⏳ |
| 7 | /monitoring + /tickets/dashboard 假資料替換 |
⏳ |
| 8 | 確認 awooop_phase1_batch1_rls_2026-05-04.sql prod 已執行 + cross-tenant pytest |
⏳ |
| 9 | LiteLLM 鎖版本 ≥ 1.83.0(2026-03 供應鏈攻擊) | ⏳ |
| 10 | 120/121 補 prometheus.yml node-exporter target | ⏳ |
| 11 | GCP-A/B 對齊 ADR-110 主備(B 目前閒置 load 0.02) | ⏳ |
| 12 | GCP-A 加 swap 8GB(防 OOM) | ⏳ |
🟠 P1 兩週內(5/15-5/28)— 5 個 2026 盲區全落地
| # | 動作 |
|---|---|
| 13 | OpenLLMetry SDK 注入 API 呼叫層 → trace 同送 Langfuse + SignOz(ADR-121 落地) |
| 14 | Embedding 升級 BGE-M3 → Snowflake Arctic 2.0-L(同維度同 license,重跑 KM ingestion) |
| 15 | NeMo Guardrails / Llama Guard 8B 部署 GCP-B(閒置 + 288G SSD)→ 注入 OpenClaw 決策路徑 |
| 16 | A2A Protocol PoC:自製 12 Agent 之一試 Signed Agent Card |
| 17 | LangGraph PG Checkpointing:用 188 現有 PG,飛輪 read-only canary |
| 18 | 拆 telegram_gateway.py 6426 行 → 4 檔 + 落地 ADR-109 統一 dedup |
| 19 | AwoooP Phase 8 啟動:final reply + approval flow(首個用戶可感知功能) |
| 20 | ClickHouse pool×ratio 啟動時自檢 |
| 21 | Redis namespace 收斂 core/redis_keys.py |
| 22 | USE_AI_ROUTER=True 灰度 10% → 50% → 100% |
| 23 | AwoooP Phase 1-7 補 rollback SQL |
🟡 P2 一個月內(5/29-6/30)— 架構升級 / 消化技術債
| # | 動作 |
|---|---|
| 24 | MCP Agent Loop 從 Shadow 升 Production(read-only 動作起步) |
| 25 | 9 處 fusion 權重 hardcode → settings + AI 自學 |
| 26 | 拆 decision_manager.py 3531 行(需首席架構師授權,Tier 3) |
| 27 | AwoooP Phase 8 完成 + E2E 驗證 |
| 28 | SecurityAgent Phase 9.4 LLM 實作(升級 Llama Guard 整合) |
| 29 | CRAG 升級 RAG(擷取後加 grader 層) |
| 30 | GitHub Actions 6 個殘留 workflow 全封存 |
| 31 | 集中化 settings registry(消化 config.py 21 次修補) |
| 32 | 拆 188 SPOF:PG 評估 streaming replication;Local Ollama 從 188 搬出 |
| 33 | 111 角色重新定義:M1 Pro 16GB 退為「邊緣備援」 |
🟢 P3 兩個月內(7-8 月)— 治理 / 合規 / 前端重建
| # | 動作 |
|---|---|
| 34 | A2A Protocol 全面落地(自製 12 Agent 改 Signed Agent Cards) |
| 35 | LangGraph 全面取代飛輪 in-memory state |
| 36 | Agentic RAG 引入 LangGraph DCG |
| 37 | ISO 42001 + NIST AI RMF + EU AI Act 合規啟動(EU AI Act 2026-08-02 高風險全面執法倒數) |
| 38 | Microsoft Agent Governance Toolkit Agent SRE 模組整合 |
| 39 | 前端重建 next-intl + 設計系統(13 行銷頁假資料替換) |
| 40 | 拆 openclaw.py 2711 行 + webhooks.py 2458 行 |
| 41 | Multi-stage LLM Pipeline(Zalando 鐵證) |
🔵 P4 長期戰略(Q3-Q4 2026)— 自主化飛輪 80→90
| # | 動作 |
|---|---|
| 42 | Bounded-Reversible Action 全鏈分類 |
| 43 | Agentic War Room(NeuBird/Resolve.ai 模式) |
| 44 | 機構記憶複利(Azure SRE Agent 模式) |
| 45 | FalconClaw Skills Hub 模式積木化 |
| 46 | 重複實作合併(Trust Engine / Playbook+Runbook / Governance 三元組) |
⚪ Conditional 條件觸發
- SGLang 落地 ← 雲端 API 月費 > $1500 或新採購 NVIDIA GPU
- MLX 整合 ← 採購 Mac Studio M3/M4 Max 64GB+
第七部分 — 關鍵指標儀表
Codebase / 規模
- apps/api 347 檔 ~107k 行
- 前端 70 個 page.tsx
- 11 個 ADR 待加 rollback
- 18 個 spec 待閉環
- Codex 254 commits / 12 天(fix 48% / refactor 0)
資料 / 儲存
- ~55-60 PG 表 / 11 migration 12 天 / pool 10+20
- ClickHouse pool×ratio 守護鐵律
- Redis namespace 4+ 種待收斂
監控 / 告警
- ~314 條規則 / 14 檔
- Telegram dedup 散 4+ 模組
- ADR-109 統一 dedup 待落地
部署 / K8s
- 3 主機 K3s + 13 Deployment + 6 CronJob + 3 DaemonSet
- 8 Gitea workflow + 6 GitHub 待封存
AI
- 12 Agent 角色
- 北極星「自主化」覆蓋率 62/100
- USE_AI_ROUTER=False / Agent Loop Shadow / 9 處 fusion 權重 hardcode
MCP
- context7 / figma / telegram / playwright(活躍)
硬體(實測 5/8 確立)
- 6 主機 + 1 MacBook 全部 零 NVIDIA GPU
- GCP-A/B:c4d-lssd CPU + 30GB RAM + 375GB Local NVMe
- 111:M1 Pro 14 GPU cores Metal + 16GB(≤7B 適用)
已完成(5/8)
- ✅ GCP-A boot disk 100% → 45%(Ollama 4.9G 搬到 SSD)
- ✅ Journal cap 100M 已配置
- ✅ 三機 LLM benchmark 實測完畢
- ✅ 14B 2-5 tok/s 統帥認可
- ✅ SGLang 改條件觸發
第八部分 — 紅燈警報
🔴🔴🔴 必須立刻處理
.claude/settings.json含真實 token — GITEAe6c9fecb+ SENTRY2b730506×4,.gitignore未排除apps/web/70+ D 未 commit — git 半遷移狀態,CI 拉空殼- AwoooP RLS migration prod 未確認執行 — tenant isolation 形同虛設,EwoooC Phase 6 已開但 RLS 未驗證 → cross-tenant data leak 風險
🔴🔴 中期紅燈
- EU AI Act 2026-08-02 高風險全面執法 — 倒數 86 天
- 188 SPOF 集中度過高(PG + 觀測 + Local Ollama + 應用 + dev API 同台)
- Local Ollama nginx proxy 11435/11436/11437 都在 110(110 掛全鏈斷)
🟠 持續觀察
- ClickHouse pool×ratio 沒有自動門檻檢查
- cadvisor 自身仍是單點(無獨立 watchdog)
- ArgoCD 與 Gitea HMAC webhook 斷線無告警
- 9 處
decision_fusion_adapter.py權重 hardcode(與 AI 自學北極星矛盾)
第九部分 — 學到的教訓 → 立規矩
鐵律:「2026 工具評估」必須先過硬體相容性門
新增 Memory:feedback_hardware_compatibility_first.md
任何 LLM serving / inference 工具在 roadmap 中標「立即可上」前,必須先分類後端要求:
| 後端類別 | 代表工具 | AWOOOI 適用性 |
|---|---|---|
| CUDA-only | SGLang / vLLM 主流模式 / TensorRT-LLM | ❌ 全機不適用,除非新採購 NVIDIA GPU |
| Apple Silicon (Metal/MLX) | MLX / llama.cpp Metal | ✅ 只 111,且 16GB RAM 限制 ≤7B |
| CPU-friendly | llama.cpp / Ollama (內建) | ✅ AVX-512 EPYC c4d-lssd,限制 ≤7B 即時 / 14B 慢 |
| 後端無關 | SDK / Protocol / DB lib / Tracing | ✅ 全機通用 |
禁止行為:把 CUDA-only 工具放「立即可上」表;用「考慮升 GPU」當作工具立即可用的理由。
其他次要教訓
- 「fix 48% / refactor 0」是技術債堆積信號,下個 Sprint 必排 1 次重構衝刺消化巨型檔
- 「同檔修補 ≥10 次」是設計缺陷信號,不是「這支架程式很重要」
- 「規劃完整 ≠ 已落地」,roadmap 評分要看 flag 是否 True、migration 是否 prod 執行、test 是否 cover
信心評估
- 12 盤點 agent 全部讀真實檔案 + grep + git log,證據鏈完整
- 4 web research 每節 2+ 獨立來源交叉驗證
- 三機(GCP-A、GCP-B、111)SSH 實測 benchmark 提供硬體真相
- 統帥認可校正了原方案盲點(CUDA-only 警示 + 14B 2-5 tok/s 可接受)
- Roadmap P0-P4 共 46 項,每項對應到本盤點具體發現
整體信心:High
附錄:交付物索引
- 本檔(最終版):
docs/superpowers/specs/2026-05-08-FINAL-comprehensive-audit-and-roadmap.md - 中間版(已被取代):
docs/superpowers/specs/2026-05-07-comprehensive-audit-and-2026-roadmap.mddocs/superpowers/specs/2026-05-08-revised-roadmap-with-hardware-truth.md
- LOGBOOK:
docs/LOGBOOK.md(5/7 + 5/8 entries) - Memory:
~/.claude/projects/-Users-ogt-awoooi/memory/project_audit_20260507.md~/.claude/projects/-Users-ogt-awoooi/memory/feedback_hardware_compatibility_first.md(新鐵律)