You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per 0008 — First representative vertical slice: build Caregiver/Emergency Contacts as the first full Phase 1 vertical slice — data model through a shipped, tested, accessible screen. Fields: name, relationship, phone, email. Add/edit/delete list.
Build the generic repeatable-entry CRUD component alongside this slice, not after it — Health Care Providers, Allergies, Chronic Conditions, Hospitalizations, Family History, and others are all variants of the same add/edit/delete list shape, and building Contacts without generalizing the pattern first would mean redoing the work on the next list screen.
Scope: Caregiver/Emergency Contacts screen plus the generic CRUD component it's built on. Does not cover Your Information or Medical Portals — those carry sensitive-field exclusion logic (0006) that's intentionally out of scope for this simplest-case slice. Does not include building the "Keep with me" emergency screen itself, though this data feeds into it later.
Acceptance Criteria
Generic repeatable-entry CRUD component built as a reusable pattern, not a one-off screen implementation
Caregiver/Emergency Contacts screen built on that component: fields = name, relationship, phone, email
Add, edit, and delete all work end-to-end against the encrypted local database
Screen sits behind the existing biometric-unlock app shell like the rest of Phase 1
Meets WCAG-aligned accessibility requirements (screen reader support, no reliance on color alone, adequate touch targets)
Screen follows the reduce-cognitive-load principle — one task per screen, next step obvious
The feature/s being implemented are covered by unit tests - If not, create tests for them on this ticket
This is intended as the first ticket handed to a new contributor — a "start here" onboarding story. Keep scope small and the CRUD pattern clean, since later Phase 1 screens will copy it directly.
No sensitive-field exclusion logic belongs in this ticket (contrast 0006, which governs Your Information and Medical Portals) — this slice is intentionally the lowest-complexity case.
Output feeds into the "Keep with me" emergency screen (0005) — not built here, but keep that downstream use in mind for the data shape.
QA
Add, edit, and delete a contact; confirm changes persist correctly in the encrypted local database
Confirm the CRUD component is genuinely reusable (not hardcoded to Contacts' specific fields)
Run the full add/edit/delete flow with a screen reader (VoiceOver/TalkBack)
Confirm the screen is only reachable behind biometric unlock
Description
Per 0008 — First representative vertical slice: build Caregiver/Emergency Contacts as the first full Phase 1 vertical slice — data model through a shipped, tested, accessible screen. Fields: name, relationship, phone, email. Add/edit/delete list.
Build the generic repeatable-entry CRUD component alongside this slice, not after it — Health Care Providers, Allergies, Chronic Conditions, Hospitalizations, Family History, and others are all variants of the same add/edit/delete list shape, and building Contacts without generalizing the pattern first would mean redoing the work on the next list screen.
Scope: Caregiver/Emergency Contacts screen plus the generic CRUD component it's built on. Does not cover Your Information or Medical Portals — those carry sensitive-field exclusion logic (0006) that's intentionally out of scope for this simplest-case slice. Does not include building the "Keep with me" emergency screen itself, though this data feeds into it later.
Acceptance Criteria
Additional Info and Resources
QA