diff --git a/docs/DASHBOARD_UI_GAP_ANALYSIS.md b/docs/DASHBOARD_UI_GAP_ANALYSIS.md index 90728834..25e44930 100644 --- a/docs/DASHBOARD_UI_GAP_ANALYSIS.md +++ b/docs/DASHBOARD_UI_GAP_ANALYSIS.md @@ -113,34 +113,54 @@ Since the gap analysis was written, significant implementation work has been don | agent-evals | `POST /suites/:id/run` (singular, 404) | `POST /suites/:id/runs` (plural) | | agent-evals | `DELETE /suites/:id` (no backend endpoint) | Disabled (TODO Q3) | -### Missing Proxy Routes Created (`880338b`) +### Missing Proxy Routes Created — Batch 1 (`880338b`) - [x] `/api/ai-diagnostics/[...path]` — GET/POST proxy to platform-service - [x] `/api/feedback/route.ts` — base GET/POST proxy - [x] `/api/feedback/[...path]` — GET/POST/DELETE proxy to platform-service -### Still Missing — Admin Proxy Routes (no `/api/` route dir yet) +### API Call Bug Fixes + Proxy Routes — Batch 4 (`8c45e44`) -| Module | Has Page? | Has Sidebar? | Proxy Route Needed | -| ------------------ | :-------: | :----------: | ------------------------------- | -| `scim` | No | No | `/api/scim/[...path]` | -| `agents/executor` | No | No | `/api/agents/execute/[...path]` | -| `retention` | No | No | `/api/retention/[...path]` | -| `backups` | No | No | `/api/backups/[...path]` | -| `cdn` | No | No | `/api/cdn/[...path]` | -| `dunning` | No | No | `/api/dunning/[...path]` | -| `status` | Yes | Yes | `/api/status/[...path]` | -| `onboarding` | No | No | `/api/onboarding/[...path]` | -| `search` | No | No | `/api/search/[...path]` | -| `billing-checkout` | No | No | Add to existing `/billing` | +New proxy routes: + +- [x] `/api/experiments/route.ts` — base GET/POST, rewrites to `/api/ab-testing/experiments` +- [x] `/api/experiments/[...path]` — catch-all, rewrites to `/api/ab-testing/experiments/*` +- [x] `/api/ab-testing/[...path]` — catch-all for suggestions, hypotheses, etc. + +Bug fix: +| Page | Bug | Fix | +| -------- | ----------------------------------------------- | ----------------------- | +| webhooks | `GET /webhooks/deliveries` (no such endpoint) | Removed (TODO Q4) | + +### Verification — All Page API Calls Have Proxy Routes ✅ + +**Direct `fetch('/api/...')` paths (14):** ab-testing, ai-diagnostics, auth, docs, experiments, exports, feedback, flags, licenses, ops, products, settings, telemetry, waitlist — **ALL have proxy routes.** + +**`createProxyFetch('/api/...')` paths (16):** agent-evals, ai-budgets, delivery, event-subscriptions, ip-rules, jobs, knowledge, maintenance, marketplace, orgs, reviews, runs, sessions, support, waitlist, webhooks — **ALL have proxy routes.** + +### Still Missing — Backend Modules Without Admin Pages (no page needed for proxy) + +| Module | Has Page? | Has Sidebar? | Notes | +| ------------------ | :-------: | :----------: | ----------------------------------- | +| `scim` | No | No | Enterprise SSO — page deferred | +| `agents/executor` | No | No | Internal API only | +| `retention` | No | No | Background job — no admin UI | +| `backups` | No | No | Ops tool — CLI preferred | +| `cdn` | No | No | Not yet implemented | +| `dunning` | No | No | Not yet implemented | +| `status` | Yes | Yes | Uses direct service URLs, no proxy | +| `onboarding` | No | No | User-facing only | +| `search` | No | No | Not yet implemented | +| `billing-checkout` | No | No | Stripe-hosted, no admin page needed | ### Open TODOs -| # | Description | Priority | -| --- | ------------------------------------------------------------------------------------- | -------- | -| Q1 | Backend needs `POST /delivery/logs/:id/retry` endpoint for delivery page retry button | P2 | -| Q2 | Backend needs `POST /reviews/:id/flag` endpoint for reviews page flag button | P2 | -| Q3 | Backend needs `DELETE /agent-evals/suites/:id` endpoint for agent-evals delete button | P2 | +| # | Description | Priority | +| --- | ---------------------------------------------------------------------------------------- | -------- | +| Q1 | Backend needs `POST /delivery/logs/:id/retry` endpoint for delivery page retry button | P2 | +| Q2 | Backend needs `POST /reviews/:id/flag` endpoint for reviews page flag button | P2 | +| Q3 | Backend needs `DELETE /agent-evals/suites/:id` endpoint for agent-evals delete button | P2 | +| Q4 | Webhooks page needs per-subscription delivery loading (no top-level deliveries endpoint) | P3 | --- @@ -712,18 +732,18 @@ These platform-service modules have NO corresponding `/api/` proxy route in admi | Platform-service endpoints | 511+ | 511+ | | Admin-web sidebar items | 27 | **50** | | Admin-web pages | 38 | **41 dirs** | -| Admin-web API proxy route dirs | 24 | **43** | +| Admin-web API proxy route dirs | 24 | **46** | | User-dashboard pages | 12 | 12 | | User-dashboard API routes | 39 | 39 | | **Admin: Completely missing (no page, no sidebar, no API)** | **28** | **~11** | | **Admin: Partially exposed (page exists, features missing)** | **4** | **4** | | **Admin: Hidden pages (page exists, no sidebar item)** | **7** | **0** (all wired) | | **Admin: Backend bug (routes.ts exists, not registered)** | **1** | **0** (fixed) | -| **Admin: Broken API calls (wrong paths)** | — | **19 fixed** (3 commits) | +| **Admin: Broken API calls (wrong paths)** | — | **20 fixed** (4 commits) | | **User: Completely missing features** | **12** | **12** | | **User: Partially exposed** | **3** | **3** | | New admin sidebar items still needed | 32 (25 new + 7 hidden pages) | **0** | -| New admin API proxy routes still needed | 26 | **~10** | +| New admin API proxy routes still needed | 26 | **0 for pages** | | New user sidebar items needed | 8 | **8** | | Estimated new pages still to build | ~28 (hidden pages already built) | **~11** |