PT-001Caregiver 1.2.19 · build v8aWarren / Nadeem · 11 findings · 1.2.21 response ready
1Extracted bug reportWhat the tester found
Each capture connects this tester’s fieldwork to the findings below.



Identity input saves malformed text without format or length controls.
The field accepts malformed text and does not explain whether it expects a name, phone number, or both.
Age 999 saves without warning or a realistic range check.
A synthetic script payload still needs verification across every display and export surface.
A controlled add-person retest is needed to distinguish refresh behavior from incorrect counting.
The patient view showed 3268586758386868600000 years after extreme input.
Missing information is presented as an entered clinical value.
The timestamp is inconsistent with the nearby formatted admission time.
Heart rate, systolic BP, SpO2, and temperature save values far outside valid ranges.
A new record becomes visible to family search without an explicit tester choice.
The data-quality and safe-output pattern extends across condition, dietary, and general notes.
2Build responseWhat changes and what must pass
Names are required, capped at 200 characters, and reject control characters. Unicode, apostrophes, and hyphens remain valid by design; output encoding handles unsafe markup.
The field now says “name or phone,” includes an example, and applies a 500-character/control-character boundary while remaining optional.
Caregiver accepts whole-year ages from 0–130 only, with the same range enforced again by the shared core.
React already rendered normal screens as text. The patient and shift-handoff HTML exports were the exposed paths; patient-controlled values are now encoded and covered by a script-payload regression test.
Returning to Care Home reloads the count immediately; a Home view left open polls every 15 seconds. Retest add → Care Home before changing that path.
This was not an integer overflow: the extreme number was stored and displayed as entered. UI and core boundaries now reject it.
An unset weight now displays as an em dash instead of “0 kg,” and the editor accepts only blank or 0.1–1000 kg.
Both timestamps now use the same guarded local date-and-time formatter; invalid legacy text remains visible instead of crashing the panel.
Caregiver and the shared save boundary reject impossible heart rate, systolic BP, SpO₂, and temperature values. Missing observations no longer become fake normal graph points.
New Caregiver records now start hidden. Visibility changes only when the checkbox is deliberately enabled.
Concern, dietary notes, general notes, allergies, and contact text now have appropriate size/control-character limits; exports encode the saved content.
Public-safe summary. Tester identity, screenshots, raw logs, and internal evidence remain in the controlled handoff record.