rubyforgood / rubyforgood/alongwithyou

Allergies — add/edit/delete list

Open
#40 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

phase:1 RFG Conference type:feature
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. assertWellFormed requires
    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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.