Normalize a program name for the (facility_id, name) identity: trim surrounding whitespace only
(no case-folding — distinct casings are a tolerated edge case). App-owned single source of truth —
names are stored trimmed and the same fn keys the name -> id resolution map, so the DB-enforced
identity and the in-memory lookup can't drift. EMR program ids churn, so name is the stable key.
Normalize a program name for the
(facility_id, name)identity: trim surrounding whitespace only (no case-folding — distinct casings are a tolerated edge case). App-owned single source of truth — names are stored trimmed and the same fn keys thename -> idresolution map, so the DB-enforced identity and the in-memory lookup can't drift. EMR program ids churn, so name is the stable key.