From 478f459e6c622eeefba6b9ce4e8104ed7b2b7f5a Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Tue, 30 Jun 2026 20:16:15 +0000 Subject: [PATCH] =?UTF-8?q?Recognise=20community=20CHP=20and=20boilers=20a?= =?UTF-8?q?s=20a=20heat-network=20system=20=F0=9F=9F=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Covers the 10 audited "community CHP and boilers" properties (302) alongside the 2,210 "community boilers" (301) — both were mis-bucketed to Gas CPSU. Co-Authored-By: Claude Opus 4.8 (1M context) --- domain/epc/property_overlays/main_heating_system_overlay.py | 2 ++ domain/epc/property_overrides/main_heating_system_type.py | 1 + 2 files changed, 3 insertions(+) diff --git a/domain/epc/property_overlays/main_heating_system_overlay.py b/domain/epc/property_overlays/main_heating_system_overlay.py index 89b62ea46..6069b7a49 100644 --- a/domain/epc/property_overlays/main_heating_system_overlay.py +++ b/domain/epc/property_overlays/main_heating_system_overlay.py @@ -174,6 +174,8 @@ _MAIN_HEATING_CODES: dict[str, int] = { # from the code (cert_to_inputs). A generic "Community heating" with no named # source stays unmapped (-> None) — the source can't be assumed (ADR-0041). "Community heating, boilers": 301, + # Community CHP + boilers — SAP Table 4a 302 (heat network, category 6). + "Community heating, CHP and boilers": 302, # Modern standalone oil room heater — SAP Table 4a 623 ("Oil room heater, # 2000 or later", no boiler). Natural fuel heating oil (ADR-0041). "Oil room heater, 2000 or later": 623, diff --git a/domain/epc/property_overrides/main_heating_system_type.py b/domain/epc/property_overrides/main_heating_system_type.py index eb4658b84..d79fec1d1 100644 --- a/domain/epc/property_overrides/main_heating_system_type.py +++ b/domain/epc/property_overrides/main_heating_system_type.py @@ -28,6 +28,7 @@ class MainHeatingSystemType(Enum): SOLID_FUEL_ROOM_HEATER_CLOSED = "Solid fuel room heater, closed" AIR_SOURCE_HEAT_PUMP = "Air source heat pump" COMMUNITY_BOILERS = "Community heating, boilers" + COMMUNITY_CHP_AND_BOILERS = "Community heating, CHP and boilers" OIL_ROOM_HEATER_POST_2000 = "Oil room heater, 2000 or later" GAS_FIRE_CONDENSING = "Gas room heater, condensing fire" GAS_FIRE_DECORATIVE = "Gas room heater, decorative fuel-effect"