mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-27 23:35:01 +00:00
A PasHub Manual-Entry electric boiler lodges "Direct acting" in its "Heating System (Boiler):" age-band cell. `_PASHUB_MANUAL_BOILER_AGE_BAND_TO_TABLE_4B` covers only gas/liquid Table 4b rows, so the descriptor resolved to None and the boiler stayed uncoded — taking the generic 0.80 gas-boiler seasonal efficiency AND, on a Dual meter, `_table_12a_system_for_main`'s None-fallback that bills the whole main-heating load at the off-peak LOW rate. The two errors pull opposite ways, so an identical mis-mapping over-rated one dwelling and under-rated another (fixture 497712825571 +9.5 on a Dual meter; 461386632387 -6.2 on a Single meter). A direct-acting electric "boiler with radiators" is SAP 10.2 Table 4a code 191 (direct-acting electric boiler, efficiency 1.00, §12 Rule 3 tariff). Code it directly in the manual-boiler resolver (gated on fuel Electricity + no PCDB product), so the single code value drives the efficiency table, the Table 12a pricing row and the tariff dispatch together. Both fixtures converge: 497712825571 → +0.6, 461386632387 → +0.4. LRHA within-0.5 52.4% → 53.4%, MAE 0.835. Renamed `_pashub_manual_boiler_table_4b_code` → `_pashub_manual_ boiler_code` (it now also returns the Table 4a electric code). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fixtures | ||
| __init__.py | ||
| test_elmhurst_end_to_end.py | ||
| test_elmhurst_extractor.py | ||
| test_end_to_end.py | ||
| test_extractor.py | ||
| test_heating_systems_corpus.py | ||
| test_pashub_sap_accuracy.py | ||
| test_pashub_sap_accuracy_lrha_wave3.py | ||
| test_pashub_sap_accuracy_wythenshawe.py | ||
| test_pdf.py | ||
| test_room_heater_worksheet_001431.py | ||
| test_summary_pdf_mapper_chain.py | ||