From eaa6102e69e07e10e307817ca18b58468a3f8f79 Mon Sep 17 00:00:00 2001 From: OG T Date: Wed, 8 Apr 2026 21:10:11 +0800 Subject: [PATCH] =?UTF-8?q?feat(web):=20Sprint=205=20Phase=201.3=20?= =?UTF-8?q?=E2=80=94=20Sidebar=20=E7=B2=BE=E7=B0=A1=2025=E2=86=926+2+?= =?UTF-8?q?=E7=B6=93=E5=85=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 導航重組 (統帥批准 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) --- apps/web/messages/en.json | 8 ++- apps/web/messages/zh-TW.json | 8 ++- apps/web/src/components/layout/sidebar.tsx | 66 ++++++++-------------- 3 files changed, 36 insertions(+), 46 deletions(-) diff --git a/apps/web/messages/en.json b/apps/web/messages/en.json index 5cc682ec..ea7cf65a 100644 --- a/apps/web/messages/en.json +++ b/apps/web/messages/en.json @@ -60,7 +60,13 @@ "billing": "Billing", "help": "Help", "drift": "Drift Detection", - "neuralCommand": "Neural Command" + "neuralCommand": "Neural Command", + "commandCenter": "Command Center", + "observability": "Observability", + "automation": "Automation", + "operations": "Operations", + "securityCompliance": "Security & Compliance", + "classicAICenter": "Classic AI Center" }, "locale": { "switch": "Switch Language", diff --git a/apps/web/messages/zh-TW.json b/apps/web/messages/zh-TW.json index c1f566e7..7074368e 100644 --- a/apps/web/messages/zh-TW.json +++ b/apps/web/messages/zh-TW.json @@ -60,7 +60,13 @@ "billing": "帳單", "help": "說明", "drift": "漂移偵測", - "neuralCommand": "神經指揮中心" + "neuralCommand": "神經指揮中心", + "commandCenter": "指令中心", + "observability": "可觀測性", + "automation": "自動化", + "operations": "營運", + "securityCompliance": "安全合規", + "classicAICenter": "經典 AI 中心" }, "locale": { "switch": "切換語系", diff --git a/apps/web/src/components/layout/sidebar.tsx b/apps/web/src/components/layout/sidebar.tsx index e5b29a61..0dcf7337 100644 --- a/apps/web/src/components/layout/sidebar.tsx +++ b/apps/web/src/components/layout/sidebar.tsx @@ -64,65 +64,43 @@ type NavSection = { } // ============================================================ -// AI中心 v6 — 4分區 Sidebar(統帥批准 2026-04-01) +// Sprint 5: 精簡導航 6+2+經典(統帥批准 2026-04-08) +// ============================================================ +// 整合對照: +// 指令中心 / → 整合: 儀表板 + 授權 + 告警 + 報表 (4 Tab) +// 可觀測性 /observability → 整合: 監控 + APM + 錯誤 + 應用 + 服務 (5 Tab) [暫指 /monitoring] +// 自動化 /automation → 整合: 自動修復 + 神經指揮 + Drift (3 Tab) [暫指 /auto-repair] +// 營運 /operations → 整合: 部署 + 工單 + 成本 + 行動日誌 + 計費 (5 Tab) [暫指 /deployments] +// 安全合規 /security-compliance → 整合: 安全 + 合規 (2 Tab) [暫指 /security] +// 知識 /knowledge → 知識庫 [暫指 /knowledge-base] // ============================================================ const NAV_SECTIONS: NavSection[] = [ { - sectionKey: 'aiCore', + sectionKey: 'main', sectionLabel: '', items: [ - { id: 'ai-center', href: '/', labelKey: 'dashboard', Icon: LayoutDashboard }, - { id: 'authorizations', href: '/authorizations', labelKey: 'approvals', Icon: ShieldCheck, badge: true }, - { id: 'alerts', href: '/alerts', labelKey: 'alerts', Icon: Bell }, + { id: 'command-center', href: '/', labelKey: 'commandCenter', Icon: LayoutDashboard }, + { id: 'observability', href: '/monitoring', labelKey: 'observability', Icon: Monitor }, + { id: 'automation', href: '/auto-repair', labelKey: 'automation', Icon: Wrench }, + { id: 'operations', href: '/deployments', labelKey: 'operations', Icon: Package }, + { id: 'security-compliance', href: '/security', labelKey: 'securityCompliance',Icon: Shield }, + { id: 'knowledge', href: '/knowledge-base', labelKey: 'knowledge', Icon: BookOpen }, ], }, { - sectionKey: 'monitoring', - sectionLabel: '', + // Legacy: 經典 AI 中心 (統帥指示保留) + sectionKey: 'legacy', + sectionLabel: 'legacy', items: [ - { id: 'monitoring', href: '/monitoring', labelKey: 'monitoring', Icon: Monitor }, - { id: 'apm', href: '/apm', labelKey: 'apm', Icon: Activity }, - { id: 'errors', href: '/errors', labelKey: 'errors', Icon: Bug }, - { id: 'topology', href: '/topology', labelKey: 'topology', Icon: GitBranch }, - { id: 'security', href: '/security', labelKey: 'security', Icon: Shield }, - { id: 'compliance', href: '/compliance', labelKey: 'compliance', Icon: ClipboardCheck }, - ], - }, - { - sectionKey: 'ops', - sectionLabel: '', - items: [ - { id: 'auto-repair', href: '/auto-repair', labelKey: 'autoRepair', Icon: Wrench }, - // 2026-04-06 Claude Code: Sprint 3 SSH_COMMAND 神經指揮中心 - { id: 'neural-command', href: '/neural-command', labelKey: 'neuralCommand', Icon: BrainCircuit }, - // 2026-04-04 Claude Code: Phase 25 P2 — Config Drift Detection - { id: 'drift', href: '/drift', labelKey: 'drift', Icon: Diff }, - { id: 'deployments', href: '/deployments', labelKey: 'deployments', Icon: Package }, - { id: 'tickets', href: '/tickets', labelKey: 'tickets', Icon: Ticket }, - { id: 'cost', href: '/cost', labelKey: 'cost', Icon: DollarSign }, - { id: 'action-logs', href: '/action-logs', labelKey: 'actions', Icon: Zap }, - { id: 'reports', href: '/reports', labelKey: 'reports', Icon: FileText }, - ], - }, - { - sectionKey: 'knowledge', - sectionLabel: '', - items: [ - { id: 'knowledge-base', href: '/knowledge-base', labelKey: 'knowledge', Icon: BookOpen }, - { id: 'terminal', href: '/terminal', labelKey: 'terminal', Icon: Terminal }, - { id: 'apps', href: '/apps', labelKey: 'apps', Icon: AppWindow }, - { id: 'services', href: '/services', labelKey: 'services', Icon: Server }, + { id: 'classic', href: '/classic', labelKey: 'classicAICenter', Icon: LayoutDashboard }, ], }, ] const BOTTOM_NAV_ITEMS: NavItemConfig[] = [ - { id: 'users', href: '/users', labelKey: 'users', Icon: Users }, - { id: 'notifications', href: '/notifications', labelKey: 'notifications', Icon: BellRing }, - { id: 'billing', href: '/billing', labelKey: 'billing', Icon: CreditCard }, - { id: 'help', href: '/help', labelKey: 'help', Icon: HelpCircle }, - { id: 'settings', href: '/settings', labelKey: 'settings', Icon: Settings }, + { id: 'terminal', href: '/terminal', labelKey: 'terminal', Icon: Terminal }, + { id: 'settings', href: '/settings', labelKey: 'settings', Icon: Settings }, ] // =============================================================================