From 60ec922430bc33c62fd013cc244654149c9af4d4 Mon Sep 17 00:00:00 2001 From: Jun-te Kim Date: Tue, 23 Jun 2026 13:17:23 +0000 Subject: [PATCH] fix regression tests --- .../skills/expand-sap-accuracy-corpus/worklist.md | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/.claude/skills/expand-sap-accuracy-corpus/worklist.md b/.claude/skills/expand-sap-accuracy-corpus/worklist.md index e5c6b8fa..310582bc 100644 --- a/.claude/skills/expand-sap-accuracy-corpus/worklist.md +++ b/.claude/skills/expand-sap-accuracy-corpus/worklist.md @@ -67,10 +67,19 @@ prediction, and the skipped certs surface for follow-up: cert numbers, so the gaps can be closed deliberately. +3 tests; 0 new pyright. Live-verified on BN11 4EP: cohort now builds 35 + records the 1 skip. -**✅ DONE — 2 safe generic mapper fixes (+regression tests, 0 new pyright):** +**✅ DONE — generic mapper fixes (+regression tests, 0 new pyright):** - `_normalize_sap_schema_16_x`: `setdefault("insulated_door_count", 0)` (the - original prod crash) AND `setdefault("multiple_glazed_proportion", 100)` (16.3 - cert 0418-3986-7250-2884-7970; ML-only field the SAP calc ignores; modal 100). + original prod crash). +- ⚠️ REVERTED `setdefault("multiple_glazed_proportion", 100)` — it made an + otherwise-unmappable 16.3 cert (0418-3986-7250-2884-7970) join the EPC-prediction + **frozen-fixture donor pool** and tipped near-tie similarity matches, regressing + the component-accuracy gate (`has_hot_water_cylinder` 30→29/36; `door_count` + residual 23→25/36 — both ≫ the gate's 1e-3 float tolerance). The field is ML-only + (SAP calc never reads it) and the cohort skip-and-report path handles the cert, + so we leave it fail-loud instead of synthesising a value. Re-baselining the gate + was rejected (loosens a tighten-only gate for a real regression). For Khalim: if + 16.x certs missing `multiple_glazed_proportion` should map, derive it (single→0 / + double→100) rather than a flat default, and re-measure the gate. - `_with_recorded_performance` co2/consumption/rating: `float(co2)` → crashed on certs lodging `co2_emissions_current` as a Measurement dict `{'value':3.5, 'quantity':'tonnes per year'}` (16.x cert 2308-4997-7262-0137-9930, surfaced as