fix(platform): register ai-diagnostics routes + wire 6 hidden sidebar pages
Phase 0 from DASHBOARD_UI_COVERAGE_ROADMAP: - Register ai-diagnostics routes in server.ts (671-line module was never mounted) - Add 6 hidden pages to admin sidebar-nav.tsx: Debug Sessions, Health Dashboard, Extraction, Experiments, Predictive, AI Diagnostics - /users was already in sidebar (no change needed) - Kill switch verified: already per-product via productId query param - Admin sidebar now has 33 items (was 27)
This commit is contained in:
parent
6f9ff2a5a4
commit
d1d01727e4
@ -33,6 +33,12 @@ import {
|
||||
ClipboardList,
|
||||
Beaker,
|
||||
Crosshair,
|
||||
Bug,
|
||||
HeartPulse,
|
||||
FileSearch,
|
||||
FlaskConical,
|
||||
BrainCircuit,
|
||||
TrendingDown,
|
||||
} from 'lucide-react';
|
||||
import { cn } from '@/lib/utils';
|
||||
import { useAuth } from '@/lib/auth-context';
|
||||
@ -59,10 +65,16 @@ const navItems = [
|
||||
{ href: '/flags', label: 'Feature Flags', icon: Settings },
|
||||
{ href: '/audit', label: 'Audit Log', icon: ScrollText },
|
||||
{ href: '/actiontrail', label: 'ActionTrail', icon: Crosshair },
|
||||
{ href: '/experiments', label: 'Experiments', icon: FlaskConical },
|
||||
{ href: '/predictive/at-risk', label: 'Predictive', icon: TrendingDown },
|
||||
{ href: '/ops', label: 'Mission Control', icon: Activity },
|
||||
{ href: '/ops/client-logs', label: 'Client Logs', icon: FileText },
|
||||
{ href: '/ops/telemetry-policies', label: 'Telemetry Policies', icon: Shield },
|
||||
{ href: '/ops/ab-testing', label: 'A/B Testing', icon: Beaker },
|
||||
{ href: '/debug-sessions', label: 'Debug Sessions', icon: Bug },
|
||||
{ href: '/health-dashboard', label: 'Health Dashboard', icon: HeartPulse },
|
||||
{ href: '/extraction', label: 'Extraction', icon: FileSearch },
|
||||
{ href: '/ai-diagnostics', label: 'AI Diagnostics', icon: BrainCircuit },
|
||||
{ href: '/feedback', label: 'User Feedback', icon: MessageSquare },
|
||||
{ href: '/ops/secrets', label: 'Secrets Manager', icon: KeyRound },
|
||||
{ href: '/settings', label: 'Settings', icon: Settings },
|
||||
|
||||
@ -98,6 +98,7 @@ import { tenantRoutes } from './modules/tenants/routes.js';
|
||||
import { retentionRoutes } from './modules/retention/routes.js';
|
||||
import { backupRoutes } from './modules/backups/routes.js';
|
||||
import { apiVersioningRoutes } from './modules/api-versioning/routes.js';
|
||||
import aiDiagnosticsRoutes from './modules/ai-diagnostics/routes.js';
|
||||
import { initCosmosIfNeeded } from './lib/cosmos-init.js';
|
||||
import { config } from './lib/config.js';
|
||||
import { type JwtPayload, extractProductIdAsync } from './lib/request-context.js';
|
||||
@ -264,6 +265,9 @@ await app.register(retentionRoutes, { prefix: '/api' });
|
||||
await app.register(backupRoutes, { prefix: '/api' });
|
||||
await app.register(apiVersioningRoutes, { prefix: '/api' });
|
||||
|
||||
// AI Diagnostics (NL query, LLM root-cause, error clustering)
|
||||
await app.register(aiDiagnosticsRoutes, { prefix: '/api' });
|
||||
|
||||
// Event subscriptions + DLQ + replay
|
||||
await app.register(eventSubscriptionRoutes, { prefix: '/api' });
|
||||
// Agent executor + tool registry + scheduling + metrics
|
||||
|
||||
Loading…
Reference in New Issue
Block a user