mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
Closes the mapper-coverage gaps surfaced by the modelling_e2e prediction-cohort failures (portfolio 796): - built_form (SAP-16.0): derive from dwelling_type in _normalize_sap_schema_16_x (Mid-terrace->4, End-terrace->3, Semi-detached->2, Detached->1; flats->modal 4). ML-only field (SAP calc never reads it) so SAP- and gate-neutral. 5 flat certs that omitted built_form now map. - photovoltaic_supply as a measured-array LIST: routed all pre-21 RdSAP mappers (17.0/17.1/18.0/19.0/20.0.0) through _map_schema_21_pv, whose list branch is now dict-tolerant (_pv_array_field reads dict OR dataclass). They capture the PV arrays like 21.0.x instead of raising "'list' object has no attribute none_or_no_details" and sinking the whole cohort. - windows-as-dict (16.x): handled in the normalizer (not just windows-as-list). Genuinely-sparse certs (omit door_count/habitable/glazed_area) remain fail-loud; the gate-regressing multiple_glazed_proportion default and the recursive RdSAP-21.0.0 ADR-0028 alignment are left fail-loud + flagged for review (worklist). +5 regression tests; component-accuracy gate 26/26; 0 new pyright errors. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| epc | ||
| __init__.py | ||
| datatypes.py | ||
| enums.py | ||