Full client-mapped plan_type pipeline: complete header alias set (bare 'plan'/'plan_name' stay payer aliases), value canonicalization map (Medicare Part B / FFS / MA / Part C / private / employer etc), unrecognized values grade Plan Type Needed with a hashed once-per-value warning. Once-per-batch deprecation fence when records lack plan_type (timing guesses from payer, legacy; readiness never does). CSVImport mapping review gains Plan Type. All 66 demo/drift fixture CSVs authored with plan_type columns (variant headers + variant values on the drift corpus); corpus sweep: 66/66 map, 100% typed. Echo paths canonicalize through the same value map (audit Low fixed). _normalize_payer and the default config entry remain untouched (Phase 2c, Kisa-gated). Independent audit: SHIP. 169 tests green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
457 B
457 B
| 1 | patient_id | device_type | shipment_date | quantity | payer | component | plan_type |
|---|---|---|---|---|---|---|---|
| 2 | PT-1131 | dexcom_g6 | 2025-09-06 | 2 | Cigna | sensor | commercial |
| 3 | PT-1132 | dexcom_g6 | 2025-09-06 | 6 | Cigna | sensor | commercial |
| 4 | PT-1133 | dexcom_g6 | 2025-09-02 | 1 | Cigna | sensor | commercial |
| 5 | PT-1134 | dexcom_g6 | 2025-08-31 | 6 | Cigna | sensor | commercial |
| 6 | PT-1135 | dexcom_g6 | 2025-09-04 | 6 | Cigna | sensor | commercial |
| 7 | PT-1136 | dexcom_g6 | 2025-09-05 | 6 | Cigna | sensor | commercial |
| 8 | PT-1137 | dexcom_g6 | 2025-08-30 | 1 | Cigna | sensor | commercial |