From e21064dc7acbf96960f6ff63b7ba580e07f13180 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Thu, 16 Jul 2026 16:23:57 +0000 Subject: [PATCH] =?UTF-8?q?Bill=20loose-jacket=20cylinders=20their=20Table?= =?UTF-8?q?=202=20Note=201=20storage-loss=20factor=20=F0=9F=9F=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Follow-on surfaced by #1626: fixture 500796646644 progressed past the 2404 conflict onto cylinder insulation 'Loose jacket' → code 2 (gov-API coding, Elmhurst 'Jacket' sibling). Wythenshawe 161→162 computed (32.6 vs pre 34); ratchets hold at 75.3%/0.744. Co-Authored-By: Claude Fable 5 --- datatypes/epc/domain/mapper.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/datatypes/epc/domain/mapper.py b/datatypes/epc/domain/mapper.py index dfe7a75d8..b4dbd9634 100644 --- a/datatypes/epc/domain/mapper.py +++ b/datatypes/epc/domain/mapper.py @@ -6718,6 +6718,9 @@ def _pashub_secondary_heating_type_code( # cylinder is billed ZERO storage loss. _PASHUB_CYLINDER_INSULATION_TO_SAP10: Dict[str, int] = { "Factory fitted": 1, # factory-applied foam + # Loose jacket → 2 (gov-API coding; Elmhurst "Jacket" sibling). Table 2 + # Note 1 gives it its own ~2× higher storage-loss factor. + "Loose jacket": 2, }