# AI Translator for Healthcare — UI Flow Design

**Product:** Clinically validated, HIPAA-ready real-time translator for bedside, intake, and telehealth.
**Design goal:** Clear, fast, trustable communication that a nurse can pick up in 30 seconds and a patient can use without being able to read.
**Companion doc:** [`RESEARCH.md`](RESEARCH.md) — competitor + UX research that informs every decision here.

---

## 1. Hero Flow Choice

**Primary flow designed in detail:** Bedside conversation.
**Supporting flows:** Triage / intake (kiosk), Review & export.

| Flow | Why included |
|---|---|
| **Bedside** (hero) | Highest-volume, biggest pain (waiting for human interpreter mid-rounds). Best showcase of Clinical Clarity Filter + face-to-face split + human escalation. |
| **Intake (kiosk)** | Demonstrates speed + auto language detection + structured data handoff to chart — the "delay reduction" benefit. |
| **Review & export** | Demonstrates the audit trail + compliance signal — the "HIPAA-ready" benefit. |

Three flows together cover the brief's three benefits: **fewer errors** (bedside + Clarity Filter), **less delay** (intake + AI-first), **compliance** (review/export).

---

## 2. Target Platforms & Form Factors

Designing for healthcare means picking platforms hospital IT will approve, clinicians already own, and HIPAA reviewers will sign a BAA on. Decisions below; the harder calls are deferred to [§8 Open Questions](#8-open-questions-for-the-stakeholder).

### Launch matrix

| Platform | Role | Form factor | Why |
|---|---|---|---|
| **iOS native** (Swift / SwiftUI) | **Primary** | iPhone (clinician pocket) + iPad (bedside, kiosk) | ~70% of US hospital-issued clinician phones are iOS; on-device Speech framework + Core ML for sub-300ms latency; FaceID for biometric re-entry; tight Bluetooth/AirPods integration; App Store rigor aligns with healthcare procurement |
| **Responsive web** (Next.js + Tailwind, SMART-on-FHIR embeddable) | **Co-launch** | Workstation, EHR embed | Launch-from-chart inside Epic Hyperspace / Cerner PowerChart without leaving the EHR; runs on any clinician workstation; no app-store delay for hospital IT |
| **Android** | Post-MVP (Q3+) | Phone / tablet | ~30% of US healthcare devices but harder HIPAA story across fragmented OEMs. Defer until iOS + web prove the wedge. |
| **Apple Watch** | Explored, deferred | Wrist | Glanceable transcript + tap-to-pause attractive, but watch radio bandwidth isn't reliable enough for live audio yet. |

### Form factor per flow

- **Screen 4 — bedside (hero):** iPhone or iPad held flat between clinician and patient. The inverted top half assumes physical device orientation, *not* a software split view — design tokens differ between iPhone (portrait, 6.1") and iPad (landscape, 11").
- **Intake kiosk (bonus):** iPad mounted on a registration stand. Patient is standing; tap targets bumped to **≥ 56pt**; one-handed reach assumed.
- **Screen 8 — review & export:** Web (Epic embed) for QA nurses, charge nurses, and Joint Commission auditors. Wider transcript view, keyboard navigation, multi-select for batch export.
- **Telehealth overlay (future):** Web. Joins Zoom / Teams / Epic telehealth as a live-caption participant.

### Why not React Native / Flutter for v1

- Live audio + mic-state visuals need tight OS integration. Cross-platform abstractions add a frame of latency per audio chunk that hurts the perception of real-time.
- HIPAA + clinical-safety review is easier when the audit boundary is one platform per submission.
- The two launch platforms (iOS + Web) genuinely share little UI code anyway — the iPhone bedside layout and the Epic-embedded review console are different products in the same family.

### Design-system implications

- **iOS:** Apple HIG, SF Symbols, SF Pro / SF Pro Rounded for patient-facing copy (rounder reads less clinical). Dynamic Type up to AX5.
- **iPad bedside:** Large-touch HIG variant, WCAG 2.2 AA contrast minimum, two-finger drag to swap clinician/patient halves of the screen.
- **Web:** Tailwind + Radix UI on Next.js. Design tokens (color, type scale, spacing) shared with iOS via a JSON token file generated from Figma variables.
- **Right-to-left:** First-class from day one — Arabic is in the launch language set. All layouts use logical properties (start/end) not directional (left/right).
- **Accessibility:** VoiceOver / TalkBack first-class. Dynamic Type / browser zoom honored. Tap targets ≥ 44pt clinician side, ≥ 56pt patient side (see [§5](#5-important-states--interactions--cross-cutting)).
- **Localization:** All UI chrome is translatable; the 6 launch languages are also UI-chrome languages — a Spanish-fluent patient sees the consent screen *and* any chrome they touch in Spanish.

### What this rules out for v1

- **Glassmorphism / heavy translucency** — accessibility risk under fluorescent hospital lighting.
- **Skeuomorphic shapes** — clinical interfaces value information density over delight.
- **Dark mode only** — high-contrast light mode first (hospital lighting is bright); dark mode is a fast-follow, not a launch deliverable.
- **Camera-based features** — no scanning prescriptions, no reading wristbands. Privacy footprint stays small.
- **Cross-clinician-language combos** — English-only clinician side for v1 (a Spanish-native nurse talking to a Mandarin-native patient ships later).

---

## 3. User Journey Snapshot (Bedside)

**Persona:** Maya, ED nurse, 6-year tenure. Mid-shift. Patient room 14 just admitted — Spanish-speaking, abdominal pain, no family present. The on-call interpreter line is showing a 12-minute queue.

| # | Step | Time | Maya's POV | Patient's POV |
|---|---|---|---|---|
| 1 | Launch from chart | 0:00 | Tap "Translator" inside Epic on her phone | – |
| 2 | Pre-flight | 0:03 | Sees patient name, "Spanish" pre-filled from chart, taps Start | – |
| 3 | Consent | 0:05 | Hands phone to patient, points at screen | Hears + sees consent in Spanish, taps "Sí, entiendo" |
| 4 | Live conversation | 0:10 | Speaks naturally, watches translation appear for patient | Hears Spanish, sees Spanish caption, replies — Maya sees English |
| 5 | Clarity flag | 0:45 | "Discharge" flagged → taps "leave hospital" | Patient hears the unambiguous version |
| 6 | Patient distress | 1:30 | Patient agitated, Maya taps "Get a human now" | Live interpreter joins in 11s |
| 7 | End + save | 5:00 | Taps End → reviews 6-line transcript → Save to chart | Hands phone back |
| 8 | (Later) Audit | – | Charge nurse reviews transcript next morning, exports PDF for QA | – |

**Goal time-to-first-translated-word:** under 15 seconds from chart-tap. (Beats Jeenie's 13s human-connect — see [`RESEARCH.md` §1](RESEARCH.md).)

---

## 4. Key Screens

Eight screens cover the hero flow + 2 supporting flows. Each one has a purpose, a wireframe sketch (ASCII), and the states it must handle.

---

### Screen 1 — Home / Today's encounters

**Purpose:** Clinician landing page. Surfaces patients whose chart-listed language ≠ clinician's language.

```
┌──────────────────────────────────────┐
│ 🔒 Encrypted · Maya R., RN · ED      │
├──────────────────────────────────────┤
│ Today                          [⚙]   │
│                                       │
│ ⚠ NEEDS LANGUAGE SUPPORT (3)         │
│ ┌──────────────────────────────────┐ │
│ │ Rm 14 · Ortiz, J.   Spanish   ▶ │ │
│ │ Rm 22 · Chen, L.    Mandarin  ▶ │ │
│ │ Rm 31 · Khalil, A.  Arabic    ▶ │ │
│ └──────────────────────────────────┘ │
│                                       │
│ Recent sessions (7)              ▶   │
│ Phrasebook (offline)             ▶   │
│                                       │
│ ┌──────────────────────────────────┐ │
│ │  + Start translator              │ │
│ └──────────────────────────────────┘ │
└──────────────────────────────────────┘
```

- **Encryption chrome** is persistent at the top — every screen, never just splash.
- **"Needs language support" list** comes from EHR's language-preference field. Most-common failure in clinic: nurse forgets it's on file. Surfacing it removes that step.
- **Recent sessions** is the entry point to Screen 8.
- **Offline phrasebook** is a fallback when network drops (Care to Translate pattern — see [`RESEARCH.md` §2](RESEARCH.md)).

**States:** loaded, loading, empty ("No language-flagged patients today"), offline (yellow banner).

---

### Screen 2 — Pre-flight / Encounter setup

**Purpose:** 3-second confirmation before the conversation starts.

```
┌──────────────────────────────────────┐
│ ← Setup                              │
├──────────────────────────────────────┤
│                                       │
│  PATIENT                              │
│  Jorge Ortiz · MRN 4827193           │
│  Room 14 · ED · Encounter #3         │
│                                       │
│  LANGUAGE PAIR                        │
│  ┌────────────────────────────────┐  │
│  │ English  ⇄  Español  [change] │  │
│  └────────────────────────────────┘  │
│  ⓘ Auto-detected from chart          │
│                                       │
│  ENCOUNTER TYPE                       │
│  [Triage] [Bedside ✓] [Discharge]    │
│  ⓘ Loads relevant verified phrases   │
│                                       │
│  ☑ Save transcript to chart on end   │
│  ⓘ Otherwise deleted at session end  │
│                                       │
│  ┌────────────────────────────────┐  │
│  │  →  Hand phone to patient      │  │
│  └────────────────────────────────┘  │
└──────────────────────────────────────┘
```

- **Auto-population from EHR** (Voyce/LanguageLine pattern — [`RESEARCH.md` §2](RESEARCH.md)) means most encounters need zero edits here.
- **Encounter type** is the lever for Clinical Clarity — different verified-phrase libraries load per type.
- **Retention checkbox** makes the "not stored unless saved" promise tangible. Default *on* for clinical; *off* for casual.

**States:** auto-filled, manual-override, no-EHR-data warning, offline (verified phrases only).

---

### Screen 3 — Patient consent (patient-facing)

**Purpose:** Earn trust in 5 seconds, in the patient's language, with audio for low literacy.

```
┌──────────────────────────────────────┐
│                              🔒      │
│                                       │
│  Hola Jorge.                          │
│                                       │
│  Vamos a usar un traductor de IA     │
│  para hablar con usted.              │
│                                       │
│  ▶ Escuchar  ·  Leer en voz alta     │
│                                       │
│  • La traducción es en tiempo real    │
│  • Sus palabras NO se guardan         │
│    a menos que el enfermero lo pida   │
│  • Puede pedir un intérprete humano   │
│    en cualquier momento               │
│                                       │
│  ¿Está de acuerdo?                    │
│                                       │
│  ┌────────────────┐ ┌──────────────┐ │
│  │   Sí, entiendo │ │ Necesito un  │ │
│  │                │ │   humano     │ │
│  └────────────────┘ └──────────────┘ │
└──────────────────────────────────────┘
```

- **Patient's name first** — pulled from chart, never "Patient".
- **Plain language, big type, calm.** No legalese. Audio playback because literacy ≠ language fluency.
- **Three promises** map 1:1 to the three biggest fears: surveillance, AI inaccuracy, no-human-available.
- **"I need a human" is a peer button**, not buried. Patient can opt out at any moment. This is the trust unlock.

**States:** waiting for tap, audio playing (waveform animation), declined (routes to human queue), language not supported (falls back to top-6 picker with country flags — Martti's "point to flag" pattern).

---

### Screen 4 — Live conversation (face-to-face split) — **the hero screen**

**Purpose:** Phone lies flat between Maya and Jorge. Each half oriented toward one person; clinician's captions inverted on top.

```
┌──────────────────────────────────────┐
│         CLINICIAN VIEW (top)         │
│                                       │
│   "Where does it hurt the most?"     │
│   ────────────────────────────       │
│   tap to repeat · ⚠ flag             │
│                                       │
│   Patient said:                       │
│   "Aquí, abajo del lado derecho."    │
│   → "Here, on the lower right side." │
│                                       │
│   Quick replies:                      │
│   [On a scale 1–10?] [How long?]     │
│   [Sharp or dull?]   [Type custom]   │
│                                       │
├══════════════════════════════════════┤
│  🎙 Listening · 🔒 Encrypted · ES⇄EN │
│             [⏸]  [👤 Human]  [⏹]    │
├══════════════════════════════════════┤
│          PATIENT VIEW (bottom)        │
│                                       │
│   "¿Dónde le duele más?"             │
│                                       │
│   ─── Su turno para hablar ───       │
│                                       │
│   ▼ Toque para hablar                │
│                                       │
└──────────────────────────────────────┘
```

- **Inverted top half** = clinician's view when phone is flat. Patient sees their language right-side-up across the table.
- **Translation dominates; original is secondary caption.** Clinician can audit; patient can read distraction-free.
- **Mic state** (`🎙 Listening`) lives in the center stripe, glanceable from a meter away.
- **Quick replies** on clinician side only — patient side stays simple. (Pattern: Google Interpreter Mode, [`RESEARCH.md` §2](RESEARCH.md).)
- **Three center controls:** pause, escalate, end. Thumb-reachable for both speakers.
- **No EHR clutter.** Chart is one tap away (`⏸` then back) but invisible mid-conversation.

**States:**
- `Listening` (mic open, animated)
- `Translating` (brief shimmer, ~300ms)
- `Speaking` (audio playing — the receiving half pulses)
- `Paused` (both halves dim, big "Resume" button)
- `Low confidence` (yellow border + Clarity flag → Screen 5)
- `Network lost` (red banner: "Offline — verified phrases only")
- `Battery <10%` (warning chip — shared shift devices die mid-conversation otherwise)

---

### Screen 5 — Clarity Filter disambiguation

**Purpose:** When AI confidence on a medical term drops below threshold, **stop, force a choice, never silently guess.** Defensible differentiator vs. DeepL / Google.

Appears as sheet over clinician half only. Patient half shows calm "one moment" message in their language.

```
┌──────────────────────────────────────┐
│ ⚠  Ambiguous term                    │
├──────────────────────────────────────┤
│                                       │
│ You said:                             │
│   "We'll discharge you tomorrow."    │
│                                       │
│ 'discharge' has 3 meanings in        │
│ Spanish. Which one?                   │
│                                       │
│ ┌──────────────────────────────────┐ │
│ │ ● Leave the hospital              │ │
│ │   (dar de alta)                   │ │
│ ├──────────────────────────────────┤ │
│ │ ○ Bodily fluid                    │ │
│ │   (secreción)                     │ │
│ ├──────────────────────────────────┤ │
│ │ ○ Electrical                      │ │
│ │   (descarga)                      │ │
│ └──────────────────────────────────┘ │
│                                       │
│ ☐ Always use this for me              │
│                                       │
│  [Cancel translation]   [Confirm →]   │
└──────────────────────────────────────┘
```

- **Original phrase quoted back** — clinician can correct themselves rather than just pick.
- **Plain-English gloss + verified target phrase** under each option. The verified phrase signals this isn't a guess.
- **"Always use this for me"** is personalization — Maya picks "leave the hospital" 99% of the time; the flag fades for her.
- **"Cancel translation"** is the safety valve — if none fit, she rephrases instead of forcing a wrong one through.

**States:** triggered, expanded definition (tap option), patient-side "one moment", abandoned ("Let me rephrase…" to patient).

---

### Screen 6 — Escalate to human

**Purpose:** One-tap fallback when AI isn't trustable enough — patient distress, dialect mismatch, end-of-life, complex consent.

```
┌──────────────────────────────────────┐
│ ← Connecting a human interpreter     │
├──────────────────────────────────────┤
│                                       │
│   🎧 Spanish · Medical certified     │
│                                       │
│       ◐  Searching…                  │
│       Average wait: 11 seconds       │
│                                       │
│   Position in queue: 1                │
│                                       │
│   Meanwhile, AI translation stays    │
│   on. You can keep talking.          │
│                                       │
│   ─────────────────────────────       │
│                                       │
│   While you wait:                     │
│   ┌────────────────────────────────┐ │
│   │ [En español] Espere un momento │ │
│   │ por favor — un intérprete       │ │
│   │ humano está conectando.         │ │
│   │ ▶ Reproducir para el paciente   │ │
│   └────────────────────────────────┘ │
│                                       │
│   [Cancel — keep using AI]            │
└──────────────────────────────────────┘
```

- **AI doesn't stop while waiting** — conversation continues; human joins on top. Removes the "everything freezes" anxiety.
- **Pre-recorded reassurance phrase** for the patient. One tap plays it.
- **Honest wait time** — pulled from real queue depth, not marketing.
- **Cancel always available** — opting in to a human is not a one-way door.

**States:** searching, connected (Screen 4 transitions to 3-way with interpreter tile), no-one-available ("All Spanish interpreters busy — try phone? [Y/N]"), cancelled.

---

### Screen 7 — Session end / save to chart

**Purpose:** 10-second decision: save, edit, or discard. Defaults make the safe choice automatic.

```
┌──────────────────────────────────────┐
│ Session ended · 4 min 52 sec         │
├──────────────────────────────────────┤
│                                       │
│  Jorge Ortiz · Spanish · Bedside     │
│  12 exchanges · 2 clarity flags      │
│  0 human-interpreter minutes          │
│                                       │
│  ─────────────────────────────        │
│                                       │
│  TRANSCRIPT (12)                      │
│  ┌──────────────────────────────────┐ │
│  │ Maya: Where does it hurt most?  │ │
│  │ Jorge: Here, lower right side.  │ │
│  │ ⚠ "discharge" → "leave hospital"│ │
│  │ Maya: We'll discharge you tom…  │ │
│  │ ... [tap to expand]              │ │
│  └──────────────────────────────────┘ │
│                                       │
│  ┌──────────────────────────────────┐ │
│  │  Save to chart                   │ │
│  └──────────────────────────────────┘ │
│   Discard           Edit transcript   │
└──────────────────────────────────────┘
```

- **Numbers tell a story:** 12 exchanges, 2 clarity flags, 0 human minutes — a charge nurse can audit in 3 seconds.
- **Clarity flags inline in transcript** — audit trail shows *which* terms were disambiguated. Defensible in malpractice review.
- **Save is primary.** Discard secondary — defaulting to save reduces "did I lose it?" anxiety. Patient already consented on Screen 2.
- **Edit transcript** = per-line view, edits tracked, never silent overwrites.

**States:** default, saving (spinner → "Saved to Epic ✓"), error (retry / save locally), discarded ("Transcript deleted ✓ · Audit log retained").

---

### Screen 8 — Session history & review/export (supporting flow)

**Purpose:** Compliance lives here. QA nurse, malpractice reviewer, Joint Commission auditor — all walk in cold and find what they need.

```
┌──────────────────────────────────────┐
│ Sessions · Today                 ⌕   │
├──────────────────────────────────────┤
│  ┌──────────────────────────────────┐ │
│  │ 14:32  Ortiz, J.   Spanish      │ │
│  │ Bedside · 4:52 · ⚠ 2 · Maya R.  │ │
│  │ [Saved to chart ✓]               │ │
│  └──────────────────────────────────┘ │
│  ┌──────────────────────────────────┐ │
│  │ 11:08  Chen, L.    Mandarin     │ │
│  │ Triage · 2:14 · ⚠ 0 · Maya R.   │ │
│  │ [Discarded — audit log only]     │ │
│  └──────────────────────────────────┘ │
│                                       │
│  Filters: [Date] [Lang] [Clinician]   │
│           [⚠ Clarity flags] [Human]   │
│                                       │
│  Export selected (1) → [PDF] [CSV]    │
└──────────────────────────────────────┘
```

Tap into a session →

```
┌──────────────────────────────────────┐
│ ← Ortiz, J. · 14:32 · Spanish        │
├──────────────────────────────────────┤
│  AUDIT TRAIL                          │
│   ✓ Encrypted (AES-256)               │
│   ✓ Consent captured 14:32:05         │
│   ⚠ 2 Clarity flags resolved          │
│   ✓ Saved to Epic by Maya R.          │
│   ✓ Hash: 4f3a…b921                   │
│                                       │
│  TRANSCRIPT  [Expand all]             │
│   14:32:11  Maya: Where does it…     │
│   14:32:14  Jorge: Aquí, abajo…      │
│   14:32:18  ⚠ "discharge" → "leave   │
│              hospital" — Maya         │
│   ...                                 │
│                                       │
│  [Flag for clinical review]           │
│  [Export PDF]  [Send to Epic]         │
└──────────────────────────────────────┘
```

- **Hash on audit trail** = tamper-evidence. If the PDF in court doesn't match the hash, someone edited it.
- **Filter by Clarity flags / Human escalation** lets QA find high-risk sessions first.
- **"Flag for clinical review"** = one-tap route to the clinical safety team. Closes the loop on edge cases.

**States:** list, filtered, empty, individual session, export-in-progress, exported (PDF preview).

---

### Bonus — Intake kiosk variant (supporting flow)

Same engine, different framing. Single device on a stand at registration; patient self-serves before being seen.

```
┌──────────────────────────────────────┐
│  Welcome · 你好 · Bienvenido · أهلاً │
│                                       │
│        Tap your language / flag       │
│                                       │
│  🇺🇸  🇲🇽  🇨🇳  🇻🇳  🇸🇦  🇭🇹       │
│  EN   ES   ZH   VI   AR   HT          │
│                                       │
│  ──── or ────                         │
│       🎙 Just start talking           │
│  We'll detect your language           │
└──────────────────────────────────────┘
```

After language pick → structured Q&A:

```
┌──────────────────────────────────────┐
│ 1 of 6  · Español                    │
├──────────────────────────────────────┤
│                                       │
│  ¿Qué le trae hoy?                   │
│                                       │
│  ▼ Toque para responder              │
│  ────────────────────────             │
│                                       │
│  O elija:                             │
│  [Dolor]  [Fiebre]  [Lesión]         │
│  [Cita]   [Receta]  [Otro]           │
│                                       │
│  [← Atrás]      [Saltar pregunta →]  │
└──────────────────────────────────────┘
```

- **Flag picker + voice fallback** = Martti's "point to country" + Google's auto-detect. Belt-and-suspenders for low-literacy patients.
- **Chip answers + freeform voice** — patients who freeze at open-ended questions can pick a chip.
- **Skip allowed.** Never force an answer; flags blank fields for nurse follow-up.
- **Output:** structured intake note auto-saved to chart in English, transcript attached. Nurse opens chart and sees the patient's answers already typed up.

---

## 5. Important States & Interactions — Cross-Cutting

Persistent across every screen:

| State | Where it shows | Why |
|---|---|---|
| Encryption / "not stored" badge | Top status bar, every screen | Trust signal that doesn't have to be re-earned per screen ([`RESEARCH.md` §4](RESEARCH.md)) |
| Language pair pill | Center stripe on Screen 4, top on others | Always 1-tap-swappable; never have to back out |
| Network state | Top banner when degraded | Drops to verified phrasebook gracefully; never silent-fail |
| Mic state | Animated icon, center stripe | Glanceable across the room |
| Battery low | Small chip when <10% | Shared shift devices die mid-conversation otherwise |
| Audit-log tick | Bottom-right, faint | Every interaction logged; reassures without dominating |

**Interaction rules:**

- **No silent failures.** Network drop → user-visible banner. Low confidence → Clarity flag. Mic permission denied → explicit fix-it dialog.
- **Patient half is always calmer.** Bigger type, fewer controls, more whitespace, slower animations. Patient is anxious; clinician is competent.
- **One-tap escalation everywhere.** "Get a human" reachable from Screens 2, 4, 5 — never more than one tap away mid-conversation.
- **Defaults are safe.** Save to chart on, retention on, encryption on. Clinician opts out, not in.
- **Tap targets ≥ 44pt** even on patient side; older patients with shaky hands shouldn't have to aim.

---

## 6. Assumptions Made

Restated from [`RESEARCH.md` §6](RESEARCH.md) so reviewers can challenge each:

1. **Single device, not paired** — one phone or tablet between clinician and patient (Martti/DeepL precedent; cheaper to deploy).
2. **Clinician is the primary authenticated user.** Patient interacts through a "patient mode" the clinician hands them — chart already identifies them.
3. **AI-first with human fallback**, not human-first with AI as backup. AI confidence is good enough to default; human is the escalation. Clinical Clarity Filter makes this defensible.
4. **EHR integration is post-MVP** for this submission, but every screen anticipates it — Screen 1 reads language from EHR, Screen 7 writes transcript back, Screen 8 surfaces Epic save status.
5. **"Clinical Clarity Filter"** = real-time confidence scoring with mandatory disambiguation below threshold. Threshold tunable per encounter type (stricter for Discharge / Med rec).
6. **Six launch languages:** Spanish, Mandarin, Vietnamese, Arabic, Haitian Creole, Russian — six largest US LEP populations. Auto-detect across all.
7. **Two clinician personas at launch:** ED nurse (Maya, hero) + Registration clerk (kiosk). Doctors and discharge planners are out of scope for this submission.
8. **HIPAA-ready posture, not certified.** BAA-able; SOC 2 Type II target inside 12 months; on-device processing where feasible.
9. **No video on AI side.** AI is voice + text only. Video joins only when a human interpreter escalates. Deliberate scope cut to keep the bedside footprint tiny.
10. **English is the clinician language for v1.** Other clinician-language combos are post-MVP — combinatorial complexity not justified yet.

---

## 7. What's Deliberately Not Designed Yet

- **Admin console** for hospital IT — user provisioning, retention policy, language-pack management.
- **Discharge / med-rec flow** — high stakes; deserves its own pass with pharmacist input.
- **Telehealth 3-way overlay** — covered in [`RESEARCH.md` §5C](RESEARCH.md); DeepL/Voyce already in this space, less novel.
- **Onboarding for first-time clinicians** — assumed they've done a 5-minute training video.
- **Multi-tenant white-labeling** — hospitals will want this; system anticipates but not specced.

---

## 8. Open Questions for the Stakeholder

1. **Patient consent: tap or signature?** Tap is faster; signature more legally defensible. Likely state-by-state.
2. **Clarity threshold: clinician setting or admin setting?** Lean admin (consistency); clinicians will want override.
3. **Audit log retention?** Default 6 years (HIPAA minimum), configurable per facility.
4. **Human escalation cost visible to clinician?** Hidden cost may create over-use; visible cost creates reluctance. Recommend silent.
5. **Offline behavior on IV-cart iPad?** Verified phrases only, or verified + on-device small model? Speed vs accuracy tradeoff.

---

## 9. Next Iterations

| Pass | Goal |
|---|---|
| **Mobbin reference** | Pull 10–20 real bedside / kiosk / consent screens once `mcp__mobbin__*` is in-session (after restart). Validate this flow against known anti-patterns. |
| **Clinician validation** | Walk the flow with one ED nurse + one registration clerk. Test: pre-flight time, consent comprehension, hand-off moment. |
| **Hi-fi mockups** | Translate ASCII wireframes to Figma. Apply trust-signal chrome from [`RESEARCH.md` §4](RESEARCH.md) consistently. |
| **Prototype** | Clickable prototype of Screen 4 with simulated mic states and a forced Clarity flag — the moment that sells the differentiator. |
| **Pilot scope** | One ED, Spanish, 30 days. Measure: time-to-first-word, # Clarity flags resolved, # human escalations, transcript-save rate. |
