diff --git a/domain/sap10_calculator/docs/HANDOVER_MAPPER_BUGS.md b/domain/sap10_calculator/docs/HANDOVER_MAPPER_BUGS.md index f735dfc1..eb8a96a1 100644 --- a/domain/sap10_calculator/docs/HANDOVER_MAPPER_BUGS.md +++ b/domain/sap10_calculator/docs/HANDOVER_MAPPER_BUGS.md @@ -11,8 +11,8 @@ API-mapper/cascade bugs the audit surfaced. ALSO run `domain/sap10_ml/tests/` when touching `rdsap_uvalues.py` — 2 PRE-EXISTING stone-formula failures there, see Thread 1. - **Next slice number:** **S0380.212**. -- **Open:** Thread 2 (community 9390) — needs a **code-301 boiler + mains-gas** worksheet - (case 13 is code-302 CHP-gas, close but not 9390's scheme). Threads 1 + 3 **CLOSED**. +- **Open:** Thread 2 (community 9390) — UNBLOCKED: **case 14** (code-301 boiler + mains + gas) is on disk, target `(386)` heat-network CO2 = 0.2640. Threads 1 + 3 **CLOSED**. --- @@ -100,11 +100,22 @@ formula 3.7408 vs Table-6 1.7 cap, granite + sandstone band A) — they fail at --- -## OPEN THREAD 2 — Community fuel-code collision (cert 9390), needs a **9390 worksheet** +## OPEN THREAD 2 — Community fuel-code collision (cert 9390) — UNBLOCKED, **case 14 in hand** -Cert **9390-2722-3520**: SAP +4 (calc 71 / lodged 67), PE ≈ matches (204 vs 205), but -**CO2 0.44 t vs lodged 2.8 t**. Community scheme (`sap_main_heating_code=301`, -`main_fuel_type=20`). +Cert **9390-2722-3520** (TFA 75.17): SAP +4 (calc 71 / lodged 67), PE ≈ matches +(204 vs 205), but **CO2 5.86 kg/m² vs lodged 38** (0.44 t vs 2.8 t — 6.5× low). +Community scheme (`sap_main_heating_code=301`, `main_fuel_type=20`). + +**Arbitrating worksheet (case 14, `simulated case 14/`):** community **Boilers** +(`(303a)`=1.0, no CHP) + **Mains Gas** + **SAP code 301** — 9390's exact scheme. +Key targets: `(386)` **Overall heat-network CO2 factor = 0.2640**, `(306)` +distribution loss factor (Table 12c) = **1.49**, `(385)` EI rating 69. So a +community mains-gas BOILER scheme should drive CO2 at the heat-network factor +**0.2640** (≈ base mains-gas 0.210 × 1.257 source/loss scaling), NOT the biomass +0.028 the collision currently returns. **API `main_fuel_type=20` = community mains +gas → Table 12 code 51** (base CO2 0.210, PEF 1.130). Cases 12 (CHP coal, 302) + +13 (CHP gas, 302) also on disk — useful for the CHP `(303a/303b)` split but NOT +9390's boiler scheme. **Root cause:** `co2_factor_kg_per_kwh` / `unit_price_p_per_kwh` / `primary_energy_factor` in `tables/table_12.py` + `table_32.py` use an