Skip to content

Coordinator Dashboard — Design Brief

Status: Ready for /impeccable craft Issue: #250 Spec source: docs/specs/platform-restructuring-design.md Part 4 Target app: apps/coordinator-app/ (port 8081) Reference: docs/specs/provider-portal-design-brief.md (Linear-style precedent)


1. Feature Summary

A unified case management dashboard for Curaway coordinators (ops staff) to triage, manage, and act on ~20 active patient cases. Replaces the current risk-only RiskQueue with a PFS-sorted case queue and a 4-tab case detail view covering the full coordination lifecycle: patient overview, timeline & transport, communication, and documents.

2. Primary User Action

Identify the highest-priority case and take the next action. Every screen visit should answer: "What needs my attention right now?"

3. Users

  • Primary: Curaway coordinator (ops staff, ~20 active cases, desktop, full-day usage)
  • Context: Professional tool in an office setting. Coordinators are measured on CSAT and response times. Speed and accuracy matter.
  • State of mind: Task-oriented, context-switching frequently between cases. Need to scan quickly, drill in when needed.
  • Frequency: Open all day, checked every few minutes

4. Design Direction

Linear-inspired instrument panel. Same direction as the provider portal but with more surface area (coordinators see more data than providers).

  • Dense data, no whitespace waste. Information-rich tables, not card grids.
  • Deep Ocean #004D4D for the nav rail (56px, same as provider portal).
  • Teal sparingly — active states, primary actions. Coral for urgency/escalation.
  • PFS band colors are the primary status indicator: green (ready), teal (conditional), amber (needs attention), red (not ready).
  • Keyboard-navigable: ↑/↓ to navigate queue, Enter to open case, Esc to return.
  • No completion rings in the queue (those are patient-facing). Use horizontal PFS bar or numeric badge.

Referencing .impeccable.md: "Clean and clear — medical data is complex. The UI must make it scannable." Coordinators juggle 20 cases — scanability is survival.

5. Layout Strategy

Queue View (Default)

┌─────────────────────────────────────────────────────────────────┐
│ [Nav 56px]  Case Queue (18)              [Search] [Filters ▾]  │
├──────┬──────────────────────────────────────────────────────────┤
│      │                                                          │
│ Nav  │  ┌─ Filters: Phase ▾  PFS Band ▾  Destination ▾  Tier ▾│
│ rail │  │                                                       │
│      │  │  Case         Patient    Procedure   PFS  Tier  Next  │
│      │  │  ─────────────────────────────────────────────────── │
│      │  │  CRW-00247   Aisha M.   TKR Istanbul 78▲  T1   Quote │
│      │  │  CRW-00251   James R.   CABG Chennai 48●  T2   Upload│
│      │  │  CRW-00255   Wei L.     Bariatric BKK 32▼ T1   Call  │
│      │  │  ...                                                  │
│      │  │                                                       │
│      │  └─ 18 cases · 3 escalated · avg PFS 64                 │
└──────┴──────────────────────────────────────────────────────────┘

Visual hierarchy: PFS score (color-coded) → Next Action (bold) → Procedure → Patient → Case #

Case Detail (4-Tab)

┌──────┬─────────────────────────────────────────────────────────┐
│      │  ← Back to Queue    CRW-2026-00247 · Aisha M.          │
│ Nav  │  ──────────────────────────────────────────────────────  │
│ rail │  [Patient Overview] [Timeline & Transport] [Comms] [Docs]│
│      │  ──────────────────────────────────────────────────────  │
│      │                                                          │
│      │       Tab content area (full width)                     │
│      │                                                          │
│      │  ──────────────────────────────────────────────────────  │
│      │  Action Bar: [Escalate] [Reassign] [Add Note] [Close]  │
└──────┴─────────────────────────────────────────────────────────┘

Tab 1: Patient Overview

  • Left column (60%): Layer summary (4 sections mirroring SummaryPanelV2 layout — About You, Health Profile, Travel Readiness, Planning). Each section expandable.
  • Right column (40%): PFS/HSS/FMS score cards. Gap list. Matched provider. Consultation routing recommendation.

Tab 2: Timeline & Transport

  • Vertical timeline (left edge): journey milestones from intake → pre-op → travel → admitted → procedure → post-op → follow-up → case complete
  • Each milestone: status (done/current/upcoming), date, responsible party
  • Transport bookings: inline cards with vendor, route, vehicle, cost. [+ Book] button at top.
  • Vendor quick-select: searchable dropdown filtered by city + service type

Tab 3: Communication

  • Chat thread (coordinator ↔ patient), most recent at bottom
  • Message composer at bottom with AI draft assist:
  • Coordinator types OR clicks "AI Draft" → AI generates message → coordinator edits → sends
  • Clear visual distinction: AI-drafted messages show a subtle "AI drafted" label until coordinator edits/approves
  • Real-time updates (SSE or polling)
  • Message types: text, file attachment, system notification

Tab 4: Documents & EHR

  • Shared EHR viewer (reuse FullEHRDrawerV2 inline, not overlay)
  • Document checklist: required docs per procedure, status (uploaded/missing/flagged), action buttons (request upload, flag issue)
  • Coordinator can annotate: "Missing pre-op blood work" → patient notified

6. Key States

State User sees User feels
Empty queue "No cases assigned" Relaxed
Queue with cases PFS-sorted rows, urgency indicators Clear priority
Escalation active Red badge on case row, coral highlight Urgent attention needed
Case detail loading Skeleton tabs Brief wait
Timeline empty "No milestones yet — case in intake" Informed
Transport booked Green status, vendor details Confirmed
AI drafting message Thinking indicator in composer Patient
AI draft ready Draft in composer with "AI drafted" label, edit button In control
Chat message sent Optimistic append, checkmark when delivered Confirmed
Document missing Red "Missing" badge, [Request] button Actionable
All docs complete Green checkmarks across checklist Complete

7. Interaction Model

  • Queue navigation: Click row to open case detail. ↑/↓ keyboard nav. Enter to open. Esc back to queue.
  • Filters: Dropdown chips (Phase, PFS Band, Destination, Transport Tier). Multi-select. Persist across sessions (localStorage).
  • Sort: Click column headers. Default: PFS ascending (worst first = needs attention first).
  • Tab switching: Click tabs. URL updates (/cases/CRW-00247/timeline). 1/2/3/4 keyboard shortcuts.
  • Escalation: "Escalate" button in action bar → inline form (reason, severity, action taken). No modal.
  • Transport booking: [+ Book] → inline form in timeline tab. Select vendor → fill details → confirm. Patient notified automatically.
  • Communication: Type message → send (Enter). Or "AI Draft" → review → edit → send (Cmd+Enter).
  • Audit: Every action writes to coordinator_audit_log automatically. No UI for this — it's invisible compliance.

8. Content Requirements

Queue columns

  • Case: CRW-YYYY-XXXXX format
  • Patient: First name + last initial (Aisha M.)
  • Procedure: Short name + destination city (TKR · Istanbul)
  • PFS: Numeric (0-100) with colored background per band
  • Tier: T1/T2/T3/T4 badge
  • Phase: Current case state (intake/matching/quoting/booked/traveling/post-op)
  • Next Action: Bold, actionable verb (Quote, Upload, Call, Book, Review)
  • Time: Time since last activity or time to deadline
  • Case count, escalation count, average PFS

Tab labels

  • "Overview" (not "Patient Overview" — too long for tab)
  • "Timeline" (not "Timeline & Transport" — tab labels should be short)
  • "Messages" (not "Communication")
  • "Documents" (not "Documents & EHR")

AI draft label

  • "AI drafted — review before sending"
  • After edit: label disappears (coordinator owns the message)
  • spatial-design.md — dense table layout, tab content areas
  • interaction-design.md — forms, inline editing, keyboard navigation
  • typography.md — data-dense type scale, tabular numbers
  • motion-design.md — tab transitions, message append animation
  • ux-writing.md — action verbs, professional tone, status copy

10. Open Questions

  1. Should the queue auto-refresh (SSE) or manual refresh? Recommend: auto-refresh with subtle "New cases" banner.
  2. AI draft assist: should it pre-populate or require explicit "Draft" button? Recommend: explicit button — coordinator should always be in control.
  3. Escalation severity levels: how many tiers? Recommend: 2 (urgent, critical) — keep simple.
  4. Should coordinators see other coordinators' cases? Recommend: no by default, "Team view" toggle for supervisors.