Signal/docs/reviews/2026-06-11-demo-mvp-gap-analysis.md
Kisa cc2a5f4b47 coverage calculator and UI refinements; add demo MVP gap analysis and quality review docs
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-12 13:04:23 -04:00

3 KiB
Raw Blame History

Demo MVP Spec Gap Analysis — 2026-06-11

Spec: docs/superpowers/specs/2026-06-07-signal-demo-mvp-design.md. Read-only analysis by background agent.

DONE

  • Visit date priority chain — _resolve_visit_date() coverage_calculator.py:167-183 (CSV > Supabase confirmed > shipment30d estimate)
  • 6-month validation — _compute_visit_flag() + /api/confirm-visit main.py:511-523
  • 90/60/45 tier system + urgency sort — _compute_priority() coverage_calculator.py:203-224
  • 45-day prescriber outreach flag — FLAG_ACTIONS RENEWAL_CRITICAL
  • Confirm Visit workflow end to end — modal, persistence, recompute, live row update, persists across imports
  • Full 5-item payer-dependent doc state machine — doc_state_machine.py matches spec exactly
  • Cascade on expanded row + 5-dot status bar — WorklistTable.jsx:260-293, DocStatusBar.jsx
  • Transfer detection via Transfer_From column — normalizer.py:75-78, TRANSFER_PENDING short-circuit
  • CSV test suite — 50 files (PA+NJ), parameterized generators, market_data.json
  • Legal drafts — pitch/legal/ (LOI, NDA, BAA)

PARTIAL

  • Status labels deviated from spec — RESOLVED 2026-06-11: locked to At Risk / Action Needed / On Track / Clear to Ship everywhere (see quality review doc)
  • Supply Lapsed alert banner — sorts to top, no banner component
  • Estimated label wording — spec's "Estimated — verify with prescriber office" not in UI
  • Cascade format — all-gaps list vs spec's single chain (deliberate redesign, commit ff657f4)
  • Per-item recommended actions in expanded checklist — live in cascade lines only
  • Cycle reset via re-import — recompute works, but NO diff vs previous import; CSV visit dates not persisted to confirmed_visits
  • Transfer clearing — "Verify Docs" button has no onClick handler
  • MFA on admin accounts NOT VERIFIED; attorney review of LOI/NDA pending

NOT BUILT

  • Patient-disappeared-from-import flag (needs import diff: persistence.py previous batch load, main.py compare + new flag, frontend badge)
  • Transfer detection via history gap (same import-history dependency)
  • Duplicate patient_id detection in one file (normalizer.py has none; collapses silently)
  • Watcher Agent (nothing exists; demo needs it only as talking point)
  • 6 pilot questions in /pilot-prep skill (zero present)

Empty-state / status legend

Spec does NOT cover either — no overlap, safe to build separately. EmptyState.jsx exists (no CSV guidance); zero "legend" hits in signal-ui/src. Maps directly to the last PARTIAL pilot-readiness item.

  1. Status legend + empty-state guidance (clears pilot readiness to 13/13)
  2. Pilot-prep skill questions (5-minute edit)
  3. Import diff package: previous-batch lookup, disappeared flag, persist CSV visit dates ("Signal gets smarter every import")
  4. Wire Verify Docs transfer clearing
  5. Duplicate patient_id flagging
  6. Watcher Agent (trail)
  7. Parallel ops: MFA verification, attorney review

Beyond-spec already built: column mapping review UI (CSVImport.jsx) — spec Sec 12 excluded it; no action.