mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 20:42:43 +00:00
The insights alert cards computed medication compliance with the naive `schedules.length × days` denominator, so a fully-adherent weekly injectable read ~14% and fired a false low-compliance alert (and a paused medication mis-fired the same way). Route the alert path through the canonical `calculateCompliance` engine like every other compliance surface — pause eras, schedule revisions and dose windows honoured. Document confirm: committing a numeric observation against an existing biomarker silently replaced the stated unit with the catalog's, with no conversion — a stated "6.1 mmol/L" against a mg/dL marker committed "6.1 mg/dL". Reject on a unit mismatch (fail closed) so the user reconciles on the review screen, the same posture as the unit-required guard. Wire grip strength, waist (with waist-to-height) and pain into the briefing feature set and the grounding allow-set so the clinical-depth signals reach the daily narrative; the mental-health screeners stay excluded by construction. Biomarker detail: fall back to a generic description for catalog-less markers, and keep the heading + description with a retry on the error state. Collapse the medication External-API and Lifecycle groups by default. Re-enable the insights scroll-to-top regression and assert the shipped main-content reset. Align the EN haemoglobin/haematocrit display names to British spelling. Drop the redundant `(userId, deletedAt)` index on inbound documents — a strict prefix of the new three-column index. Trim the dead MedicalDisclaimer variants to the one live `dataPosture`. Move the crisis-resources card off the retired amber tint to a calm destructive-subtle border. Add a registry invariant asserting every biomarker signal key resolves to a real catalog slug.