mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
Slice S0380.55 routed water-heating EFFICIENCY to Main 2 for WHC 914. This slice extends the routing to water-heating FUEL — the cascade's CO2 factor, PE factor, and Table 32 fuel-cost lookups were still pinned to Main 1's fuel code via the legacy `epc.sap_heating.water_heating_fuel or main_fuel` pattern. For cert 000565 (WHC 914 + HP Main 1 + gas combi Main 2): - `epc.sap_heating.water_heating_fuel` is None (Elmhurst §15 doesn't lodge a separate water-heating fuel type) - `_main_fuel_code(Main 1)` is None (HP, no fuel_type lodged in §14.0 — Elmhurst convention for heat pump certs) - Old pattern: water_fuel = None → `co2_factor_kg_per_kwh(None) = 0` → HW CO2 silently 0 (off by ~833 kg/yr vs gas combi truth) New helper `_water_heating_fuel_code(epc)` mirrors `_water_heating_ main(epc)`: prefers the explicitly-lodged `water_heating_fuel`, otherwise falls back to `_main_fuel_code` of whichever main system services DHW per WHC. Wired into 5 cascade sites (CO2 / PE / cost × hot-water + per-end-use CO2 + per-end-use PE factors). Cert 000565 cascade impact: - hot_water_co2 (kg/yr): factor=0 → 0.21 (gas) — now correctly attributes ~833 kg HW CO2 to gas combustion - hot_water_primary_factor: 0 → gas Table 12e value - hot_water_high_rate_gbp_per_kwh: previously fell through to Main 1 fuel-code which is also None → gas tariff sentinel; now derives explicitly from Main 2's mains-gas fuel (Table 32 code 26) - co2_kg_per_yr pin: +287 → +734 (got "worse" because HW gas CO2 is now correctly counted; remaining surplus is from an INDEPENDENT Main 1 fuel-inference bug — `_main_fuel_code` returns None for HP Main 1 because Elmhurst §14.0 leaves `Fuel Type` empty for heat pumps, so the cost/CO2 cascade defaults Main 1 to the gas tariff) The Main-1 HP fuel-inference bug is the next slice. For single-main non-HP certs the helper resolves identically to the prior pattern (water_heating_fuel explicit, or Main 1 fuel) — no behavioural change for the existing fixture corpus. Pyright net-zero (34 / 34). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| addresses | ||
| data_transformation | ||
| epc | ||
| sap10_calculator | ||
| sap10_ml | ||
| tasks | ||
| postcode.py | ||