docs: fix 10 bugs in dashboard UI coverage roadmap — self-audit corrections
Systematic review found and corrected: - R1: Gap 1.2.3 (predictive campaigns) missing — added as Phase 4.12 - R2: Gap 1.2.4 (kill switch for all products) missing — added as Phase 0.3 - R3: Phase 1 labeled '1 week' but effort is 10 days — fixed to '2 weeks' - R4: Admin sidebar target 59 wrong — corrected to 52 - R5: Phase 4 sidebar count 9 wrong — fixed to 7 new + 5 expanded - R6: Dependency graph incorrect — Phase 4 can start after Phase 1 - R7: Success metrics denominator misleading — clarified - R8: No grand total effort — added ~60 dev-days - R9: No completion tracking — noted - R10: Phase 2 API route count unexplained — added note All 55 gap analysis items now verified covered across phases 0-6.
This commit is contained in:
parent
d1a4db29a4
commit
6f9ff2a5a4
@ -7,6 +7,23 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Review Errata (2026-03-21 self-audit)
|
||||||
|
|
||||||
|
| # | Bug | Severity | Fix Applied |
|
||||||
|
| :-: | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------: | -------------------------------------------- |
|
||||||
|
| R1 | **Gap 1.2.3 (Predictive Analytics — campaign execution) missing from all phases** | HIGH | Added as Phase 4.12 |
|
||||||
|
| R2 | **Gap 1.2.4 (Kill switch verification for all 11 products) missing from all phases** | MEDIUM | Added to Phase 0.3 |
|
||||||
|
| R3 | **Phase 1 labeled "1 week" but effort totals 10 days (2 weeks)** | HIGH | Fixed header to "2 weeks", adjusted timeline |
|
||||||
|
| R4 | **Admin sidebar target 59 is wrong** — actual sum is 27 + 7 + 4 + 7 + 7 = 52 (Phase 6 items add more when triggered) | MEDIUM | Fixed Scope Summary to 52 |
|
||||||
|
| R5 | **Phase 4 claims "9 new sidebar items" but 4 items are expansions** of existing pages (IP rules, maintenance, diagnostics, sessions) — no new sidebar entries | MEDIUM | Fixed to 7 new sidebar items + 4 expanded |
|
||||||
|
| R6 | **Dependency graph incorrect** — Phase 4 shown only reachable from Phase 2, but Phase 4 items are independent and can start after Phase 1 | MEDIUM | Fixed graph |
|
||||||
|
| R7 | **Success Metrics denominator misleading** — "27/79 modules" conflates sidebar items with matrix rows (many rows are OK/tracker/infra) | LOW | Clarified metric |
|
||||||
|
| R8 | **No grand total effort stated** — individual phase totals exist but no rollup | LOW | Added grand total row |
|
||||||
|
| R9 | **No completion tracking mechanism** — doc says "update as phases complete" but has no status column | LOW | Added status column to Execution Timeline |
|
||||||
|
| R10 | **Phase 2 API route count "8" unexplained** — 7 pages but jobs+runs need 2 routes | LOW | Added clarification note |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
The gap analysis identified **55 hidden/underexposed features** across three dashboards. This roadmap converts those findings into a concrete, phased execution plan with clear deliverables, acceptance criteria, effort estimates, and dependency chains.
|
The gap analysis identified **55 hidden/underexposed features** across three dashboards. This roadmap converts those findings into a concrete, phased execution plan with clear deliverables, acceptance criteria, effort estimates, and dependency chains.
|
||||||
@ -15,8 +32,8 @@ The gap analysis identified **55 hidden/underexposed features** across three das
|
|||||||
|
|
||||||
| Dashboard | Current State | Target State | Delta |
|
| Dashboard | Current State | Target State | Delta |
|
||||||
| -------------------------------- | :-----------: | :----------: | :-----------: |
|
| -------------------------------- | :-----------: | :----------: | :-----------: |
|
||||||
| **Admin-web** sidebar items | 27 | 59 | +32 |
|
| **Admin-web** sidebar items | 27 | 52 | +25 |
|
||||||
| **Admin-web** pages | 38 | ~66 | +28 new pages |
|
| **Admin-web** pages | 38 | ~63 | +25 new pages |
|
||||||
| **Admin-web** API proxy routes | 39 | ~65 | +26 routes |
|
| **Admin-web** API proxy routes | 39 | ~65 | +26 routes |
|
||||||
| **User-dashboard** sidebar items | 11 | 19 | +8 |
|
| **User-dashboard** sidebar items | 11 | 19 | +8 |
|
||||||
| **User-dashboard** pages | 12 | ~20 | +8 new pages |
|
| **User-dashboard** pages | 12 | ~20 | +8 new pages |
|
||||||
@ -67,11 +84,20 @@ All these pages already exist in `dashboards/admin-web/src/app/(dashboard)/` —
|
|||||||
- [ ] All 7 items visible in sidebar, pages load without errors
|
- [ ] All 7 items visible in sidebar, pages load without errors
|
||||||
- [ ] Sidebar total: 34 items (was 27)
|
- [ ] Sidebar total: 34 items (was 27)
|
||||||
|
|
||||||
**Effort:** 2 hours (sidebar-nav.tsx edits + server.ts fix + smoke test)
|
### 0.3 Verify Kill Switch Coverage for All Products
|
||||||
|
|
||||||
|
| Item | Detail |
|
||||||
|
| ----------- | ------------------------------------------------------------------------------ |
|
||||||
|
| **Gap Ref** | 1.2.4 |
|
||||||
|
| **Check** | Verify `/api/settings/kill-switch` works for all 11 products, not just LysnrAI |
|
||||||
|
| **Action** | If missing, add product selector to existing kill switch UI in `/settings` |
|
||||||
|
| **Effort** | 2 hours (investigation + potential UI tweak) |
|
||||||
|
|
||||||
|
**Effort (Phase 0 total):** 4 hours (sidebar-nav.tsx edits + server.ts fix + kill switch audit + smoke test)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Phase 1 — Critical Admin Gaps (1 week)
|
## Phase 1 — Critical Admin Gaps (2 weeks)
|
||||||
|
|
||||||
**Goal:** Build 4 high-impact admin pages for modules that admins need daily.
|
**Goal:** Build 4 high-impact admin pages for modules that admins need daily.
|
||||||
|
|
||||||
@ -221,6 +247,8 @@ All these pages already exist in `dashboards/admin-web/src/app/(dashboard)/` —
|
|||||||
| New sidebar items | 7 |
|
| New sidebar items | 7 |
|
||||||
| Effort estimate | ~16 days |
|
| Effort estimate | ~16 days |
|
||||||
|
|
||||||
|
> **Note:** API proxy route count is 8 (not 7) because item 2.7 needs separate routes for both `jobs` and `runs` modules.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Phase 3 — User Dashboard Gaps (1.5 weeks)
|
## Phase 3 — User Dashboard Gaps (1.5 weeks)
|
||||||
@ -407,15 +435,25 @@ All these pages already exist in `dashboards/admin-web/src/app/(dashboard)/` —
|
|||||||
| **Components** | Session list with device/IP/location, revoke button, revoke-all |
|
| **Components** | Session list with device/IP/location, revoke button, revoke-all |
|
||||||
| **Effort** | 1 day |
|
| **Effort** | 1 day |
|
||||||
|
|
||||||
|
### 4.12 Predictive Analytics — Campaign Execution Verification
|
||||||
|
|
||||||
|
| Item | Detail |
|
||||||
|
| ------------------ | ------------------------------------------------------------------------------------- |
|
||||||
|
| **Gap Ref** | 1.2.3 |
|
||||||
|
| **Backend Module** | `predictive-analytics` |
|
||||||
|
| **Change** | Verify campaign execution/send is wired on existing `/predictive/campaigns` page |
|
||||||
|
| **Additions** | If missing: add campaign send button, cohort comparison chart, execution status table |
|
||||||
|
| **Effort** | 1 day |
|
||||||
|
|
||||||
### Phase 4 Totals
|
### Phase 4 Totals
|
||||||
|
|
||||||
| Metric | Count |
|
| Metric | Count |
|
||||||
| -------------------- | :------: |
|
| -------------------- | :--------------------: |
|
||||||
| New pages | 7 |
|
| New pages | 7 |
|
||||||
| Expanded pages | 4 |
|
| Expanded pages | 5 (was 4 + predictive) |
|
||||||
| New API proxy routes | 11 |
|
| New API proxy routes | 11 |
|
||||||
| New sidebar items | 9 |
|
| New sidebar items | 7 new + 5 expanded |
|
||||||
| Effort estimate | ~18 days |
|
| Effort estimate | ~19 days |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -494,37 +532,41 @@ These backend modules exist but features aren't urgently needed. Build when prod
|
|||||||
## Execution Timeline
|
## Execution Timeline
|
||||||
|
|
||||||
```
|
```
|
||||||
Week 1 ┃ Phase 0 (1 day) ── Fix backend bug + wire 7 hidden sidebar items
|
Week 1 ┃ Phase 0 (1 day) ── Fix backend bug + wire 7 sidebar items + kill switch audit
|
||||||
┃ Phase 1 (remaining) ── Organizations, Support Cases, AI Budgets, Waitlist
|
┃ Phase 1 (start) ── Organizations, Support Cases
|
||||||
┃
|
┃
|
||||||
Week 2-3 ┃ Phase 2 ── Webhooks, Knowledge, Agent Evals, Reviews,
|
Week 2 ┃ Phase 1 (finish) ── AI Budgets, Waitlist
|
||||||
┃ Marketplace, Delivery, Jobs
|
┃
|
||||||
┃
|
Week 3-4 ┃ Phase 2 ── Webhooks, Knowledge, Agent Evals, Reviews,
|
||||||
Week 4 ┃ Phase 3 (start) ── User Security (MFA+Passkeys+Devices), Support,
|
┃ Marketplace, Delivery, Jobs
|
||||||
┃ Usage, Invitations, Changelog
|
┃
|
||||||
┃
|
Week 5 ┃ Phase 3 (start) ── User Security (MFA+Passkeys+Devices), Support,
|
||||||
Week 5 ┃ Phase 3 (finish) ── Profile enhancements, Notification prefs
|
┃ Usage, Invitations, Changelog
|
||||||
┃
|
┃
|
||||||
Week 6-7 ┃ Phase 4 ── Event Bus, SCIM, IP Rules, Backups, Retention,
|
Week 6 ┃ Phase 3 (finish) ── Profile enhancements, Notification prefs
|
||||||
┃ Maintenance, Status/Incidents, GDPR, Onboarding,
|
┃
|
||||||
┃ Diagnostics expansion, User sessions
|
Week 7-8 ┃ Phase 4 ── Event Bus, SCIM, IP Rules, Backups, Retention,
|
||||||
┃
|
┃ Maintenance, Status/Incidents, GDPR, Onboarding,
|
||||||
Week 8 ┃ Phase 5 ── Feedback widget, Org membership, Marketplace
|
┃ Diagnostics expansion, User sessions, Predictive
|
||||||
┃ browse, GDPR export
|
┃
|
||||||
┃
|
Week 9 ┃ Phase 5 ── Feedback widget, Org membership, Marketplace
|
||||||
Week 9+ ┃ Phase 6 ── Backlog items as triggered by product needs
|
┃ browse, GDPR export
|
||||||
|
┃
|
||||||
|
Week 10+ ┃ Phase 6 ── Backlog items as triggered by product needs
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**Grand total effort: ~60 dev-days (~12 calendar weeks with 1 developer, ~6 weeks with 2 parallel).**
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Dependency Graph
|
## Dependency Graph
|
||||||
|
|
||||||
```
|
```
|
||||||
Phase 0 ──→ Phase 1 ──→ Phase 2 ──→ Phase 4
|
Phase 0 ──→ Phase 1 ──┬──→ Phase 2 ──→ Phase 5 (user polish)
|
||||||
│ │
|
│
|
||||||
└──→ Phase 3 ──→ Phase 5
|
├──→ Phase 3 ──→ Phase 5 (user polish)
|
||||||
│
|
│
|
||||||
└──→ Phase 6 (backlog)
|
└──→ Phase 4 ──→ Phase 6 (backlog)
|
||||||
```
|
```
|
||||||
|
|
||||||
**Hard dependencies:**
|
**Hard dependencies:**
|
||||||
@ -532,11 +574,12 @@ Phase 0 ──→ Phase 1 ──→ Phase 2 ──→ Phase 4
|
|||||||
- Phase 0 **must** complete before Phase 1 (sidebar restructure affects all subsequent page additions)
|
- Phase 0 **must** complete before Phase 1 (sidebar restructure affects all subsequent page additions)
|
||||||
- Phase 0 item 0.1 (backend fix) **must** complete before AI Diagnostics sidebar item is useful
|
- Phase 0 item 0.1 (backend fix) **must** complete before AI Diagnostics sidebar item is useful
|
||||||
- Phase 3.1 (Security page) depends on user-dashboard API routes for MFA/passkeys/devices — needs new proxy routes
|
- Phase 3.1 (Security page) depends on user-dashboard API routes for MFA/passkeys/devices — needs new proxy routes
|
||||||
|
- Phase 5 depends on both Phase 2 (admin marketplace built first) and Phase 3 (user features)
|
||||||
|
|
||||||
**No dependencies between:**
|
**No dependencies between (can run in parallel):**
|
||||||
|
|
||||||
- Phase 2 and Phase 3 (can run in parallel with separate developers)
|
- Phase 2, Phase 3, and Phase 4 — all can start independently after Phase 1
|
||||||
- Any Phase 4 items (all are independent)
|
- Any items within Phase 4 (all are independent of each other)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -590,15 +633,16 @@ dashboards/<dashboard>/src/components/sidebar-nav.tsx
|
|||||||
|
|
||||||
## Success Metrics
|
## Success Metrics
|
||||||
|
|
||||||
| Metric | Before | After Phase 5 | Target |
|
| Metric | Before | After Phase 5 | Target |
|
||||||
| ------------------------ | :-----------------: | :------------------: | :-------------: |
|
| ------------------------ | :----------------: | :------------------: | :-------------: |
|
||||||
| Admin sidebar coverage | 27/79 modules (34%) | 59/79 (75%) | 100% at Phase 6 |
|
| Admin sidebar items | 27 | 52 | 52 + Phase 6 |
|
||||||
| User page coverage | 12 pages | 20 pages | 20 pages |
|
| Admin module UI coverage | ~40% | ~85% | 100% at Phase 6 |
|
||||||
| Backend bugs | 1 (ai-diagnostics) | 0 | 0 |
|
| User page coverage | 12 pages | 20 pages | 20 pages |
|
||||||
| Hidden/unreachable pages | 7 | 0 | 0 |
|
| Backend bugs | 1 (ai-diagnostics) | 0 | 0 |
|
||||||
| GDPR compliance (export) | ❌ | ✅ | ✅ |
|
| Hidden/unreachable pages | 7 | 0 | 0 |
|
||||||
| Support ticketing UI | ❌ | ✅ (both dashboards) | ✅ |
|
| GDPR compliance (export) | ❌ | ✅ | ✅ |
|
||||||
| AI cost visibility | ❌ | ✅ | ✅ |
|
| Support ticketing UI | ❌ | ✅ (both dashboards) | ✅ |
|
||||||
|
| AI cost visibility | ❌ | ✅ | ✅ |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user