rubyforgood / rubyforgood/alongwithyou
Allergies — add/edit/delete list
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 9
- Forks
- 4
- Avg merge
- 9h 34m
- Merged PRs (30d)
- 16
Description
Description
What the patient is allergic to and what happens when they are exposed.
Repeatable-entry list — explicitly a plain list rather than a dated log, which
0011 cites as the precedent for
its own profile half.
Food allergies also appear in Section 8 (Dietary & Nutrition) per 0011. Whether
that duplicates this screen or reads from it is not settled anywhere — flag it,
do not silently pick.
Fields — need confirming, not sourced from any ADR
- Allergen
- Reaction
- Severity
- Notes
Severity as free text or a fixed set is a real question: a fixed set is better
for the "Keep with me" screen and for the PDF export, but a wrong set is worse
than free text.
Acceptance Criteria
- Add, edit, delete against the encrypted local database
- Built on the #49 component
- Ships its migration
- Field list and severity representation confirmed before merge
- Relationship to Section 8's food allergies raised in the PR, even if not resolved
- WCAG-aligned — severity must not be communicated by colour alone
- Covered by unit tests
Additional Info and Resources
- Not blocked on #118 finishing — only on its props contract. The repository
config, the migration and their tests can be written first against the
in-memory SQLite harness; the screen fills in behind once #118 publishes the
component's shape. - Coordinate your migration id before you start.
assertWellFormedrequires
them contiguous from 1, so parallel PRs each adding "migration 1" all conflict
after the first one merges. Renumbering an unmerged entry is fine — the "never
edit a merged entry" rule only applies once it has shipped. - Likely feeds the "Keep with me" screen (#48) and the PDF export (0002)
- The phone's own Medical ID also holds allergies (0005) — this does not replace it, and onboarding still nudges users to set that up
QA
- Add several allergies of differing severity, relaunch, confirm persistence
- Confirm severity is distinguishable without colour
- VoiceOver/TalkBack through add, edit and delete
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the #49 component contract and the repository migration configuration, then inspect the in-memory SQLite harness and decision records 0011, 0002, and 0005. Confirm the field list, severity representation, and relationship to Section 8 before implementation. Done means encrypted add/edit/delete persistence, a coordinated migration, unit tests, and non-colour severity plus VoiceOver/TalkBack coverage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- sqlite, typescript
- Domain
- accessibility, databases, mobile, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100