From e7a0c9885e34fccc264694c4ba34294debbc3618 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Wed, 3 Jun 2026 09:46:56 +0000 Subject: [PATCH] S0380.194: pin sim case 3 (near-exact 6035 replica) e2e at 1e-4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds the user-simulated case-3 worksheet as e2e fixture `001431_rr8` — Main + Extension + Simplified room-in-roof with 8 windows (≈14.15 m², reproducing golden cert 6035's glazing) and Main ground-floor HLP 15.99. All 11 Block-1 line refs pin at abs=1e-4 against the worksheet (SAP 68, cost 951.3425, CO2 4767.4862, space 16086.3557, main fuel 19150.4235, HW 3307.2639, lighting 262.0885). This is the third independent 1e-4 confirmation that the cascade reproduces the spec engine for the 6035 archetype (after S0380.192 Simplified-RR + S0380.193 suspended-floor). It differs from 6035 in one input only — the Main first-floor HLP (15.99 here vs 6035's 8.32) — so 6035's +19 PE vs the lodged register is lodged-register divergence, not a calculator gap. A byte-identical 6035 replica (first-floor HLP 8.32) would let 6035 itself be pinned directly to close that out. 2330 passed (+11), 0 failed; pyright net-zero. Co-Authored-By: Claude Opus 4.8 --- .../tests/fixtures/Summary_001431_rr8w.pdf | Bin 0 -> 80854 bytes ...60-0001-001431 - 2026-06-03T104009.792.pdf | Bin 0 -> 46054 bytes .../simulated case 3/Summary_001431 (1).pdf | Bin 0 -> 80854 bytes .../_elmhurst_worksheet_001431_rr8.py | 112 ++++++++++++++++++ .../worksheet/test_e2e_elmhurst_sap_score.py | 19 +++ 5 files changed, 131 insertions(+) create mode 100644 backend/documents_parser/tests/fixtures/Summary_001431_rr8w.pdf create mode 100644 sap worksheets/golden fixture debugging/simulated case 3/P960-0001-001431 - 2026-06-03T104009.792.pdf create mode 100644 sap worksheets/golden fixture debugging/simulated case 3/Summary_001431 (1).pdf create mode 100644 tests/domain/sap10_calculator/worksheet/_elmhurst_worksheet_001431_rr8.py diff --git a/backend/documents_parser/tests/fixtures/Summary_001431_rr8w.pdf b/backend/documents_parser/tests/fixtures/Summary_001431_rr8w.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d806f5b04ace9b0b1e76c63f693249526b371046 GIT binary patch literal 80854 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 z z>j9$LdFBaQzBY05^lT5*k+9GfiuwYY2`2V&N&|R}MaiarB;4!X!4?gEI)~cdVTIdb z^x3Fj`ci+;pnZ);Z_>k9tN<1FnB#|}Nxa_QgzBZq z9Nl|%E}kz`J(8^6U|2oYdnJ}{;OM@#{otuwz^fn zRU4#cQ!WQHDFDU<%|&_ZhroXL{dWnc_s6H?^?A*>b2bFK9D@cA?Woe z;QH;`8ND4>@C_7@;vawk<5;0sO7{N}uDbYCb%XM8;8)za#)z$TK>4*F7Va5p3CDCy zu>wT2oU8W-(}HpYO>`ulM`W7VQhn<9Hh9g2fEHl6f5#Va{Xl!hovj;9HkaO(y<;8k zAXg>l9ovQlLZ5p}1*MfMoI;@2l5*m*_~cr!RWaZ2UtsSqsgnN$d;h}Ee+PTHL4W>Z zg%X=I4+#2~<$oLh20{PFk-v59|McWPOxkd&~?4bjUFEEi{7T9QRoQn=Y~>V2@3E2LmV<9!!@Iqviir&fFJ7=2Ci&=F8&>0@$pr2AV9CC!l=x6a@ng=jsPWLC z_Nz|6W`(uy(MPkzO0N4RboqJofiul=l@E(S2|-7WSEE&0lqP~Aq$b^nS;e?z7PP0q zo&~I2OMFqQ)x9z*PV&l%grz-X!gh(RCxX3he8RrW810o$*89Gl) z6bSmvPi)NDKK@g$T6D~G8K>)5%`7$$2SP~G^B1{;dSo3nV`UV63ED3n(%?GOu zAfx67oOA++O^6Q(%KU(ByTF7ar=4$aJ!R&4;m2U^?)$cQPkE)UeJjok;+l<&oZr9L zTZ6lUeLbY}7|UMK8@$vLNV*p4kSF!7Fs*3292HZ>-b{gseXyD565JYOqsjeN>7Sg7 zsb+0DZWY)^UZ8M?C3j}e3x@7VP(Y6JXe{811LHj}dN-3FeG5~sWXN1|>B|UpP*13H za{Z&0P!>PDCK%B(*XqG*2I^e7mPdm#4(Lg;k8lVX=q(w$Onopr7xoZIQQEvYV@+Z) zgG%w)EQ-VJYAD5AD|sfoy@`g&;X@#22}zaGbatwun@>yeG6WHe*ILo$%HcME9z&8hw#B^lqDzF4dGxfR?-(JU+YK-~OQqU`s$?L3N<}tO+4hRcxhDP# zcoOx5j|#n6=x$!@=X@O#|GY-*2Y0#rWJQdXU?8aUWqnl$fiq)k8NRp8Qk*Ji*~?0- z#dog|Th>5QrfW2$j)YtE=?`ygG~G@~wW0XR@&EzbQ(_~Wa`k=|alu1cjWDrS%1p?# zrN%yey%FR<=3CS;pg}Y0NfNbXP+C9X+pD2vOrP;Db(}(%)fweqUr*^_&$(%xT`wHb z5MU@;Sdtlq7+G&0%{Fd$7O4O#D(apBUDw`>mLC=Z&-y~{<=aT^4z0CKou9v#diI@0 znSnSj;(J+kZ^arjHBAYi&kJyf67;)8icg;sBI04q0jXi5K!z|4Yg9HVwxR|pJDvijJ z4sg`S-V(d!zR+A;d_G96LExF%Xk~1e=QqM5prG>-MWqkyH_b$ccH=gA7fBf|8vsTk!s=24jb_|2h{A2#n*`xo~hnZ=+d1x8;PvIc`Pn zPyO9Stzf_Q#|4LS{@Rv{8v^;YEf+WZxA}4L{1L4Dc?>Qd&f75N&owv%!u@*<%Khv5 z!6Dp#gt~s3GaSP6`*rL*zugBM28H~(F1ITH|E)g`p4&|BFJs(Z`0EY$3LG$ZU~f{ L8$d%NE-&$4lz;!M literal 0 HcmV?d00001 diff --git a/sap worksheets/golden fixture debugging/simulated case 3/P960-0001-001431 - 2026-06-03T104009.792.pdf b/sap worksheets/golden fixture debugging/simulated case 3/P960-0001-001431 - 2026-06-03T104009.792.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9e79a3469f246050694018c30d809376f203fa4f GIT binary patch literal 46054 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

CK7@$@Ah8Bo^>z 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�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 z z>j9$LdFBaQzBY05^lT5*k+9GfiuwYY2`2V&N&|R}MaiarB;4!X!4?gEI)~cdVTIdb z^x3Fj`ci+;pnZ);Z_>k9tN<1FnB#|}Nxa_QgzBZq z9Nl|%E}kz`J(8^6U|2oYdnJ}{;OM@#{otuwz^fn zRU4#cQ!WQHDFDU<%|&_ZhroXL{dWnc_s6H?^?A*>b2bFK9D@cA?Woe z;QH;`8ND4>@C_7@;vawk<5;0sO7{N}uDbYCb%XM8;8)za#)z$TK>4*F7Va5p3CDCy zu>wT2oU8W-(}HpYO>`ulM`W7VQhn<9Hh9g2fEHl6f5#Va{Xl!hovj;9HkaO(y<;8k zAXg>l9ovQlLZ5p}1*MfMoI;@2l5*m*_~cr!RWaZ2UtsSqsgnN$d;h}Ee+PTHL4W>Z zg%X=I4+#2~<$oLh20{PFk-v59|McWPOxkd&~?4bjUFEEi{7T9QRoQn=Y~>V2@3E2LmV<9!!@Iqviir&fFJ7=2Ci&=F8&>0@$pr2AV9CC!l=x6a@ng=jsPWLC z_Nz|6W`(uy(MPkzO0N4RboqJofiul=l@E(S2|-7WSEE&0lqP~Aq$b^nS;e?z7PP0q zo&~I2OMFqQ)x9z*PV&l%grz-X!gh(RCxX3he8RrW810o$*89Gl) z6bSmvPi)NDKK@g$T6D~G8K>)5%`7$$2SP~G^B1{;dSo3nV`UV63ED3n(%?GOu zAfx67oOA++O^6Q(%KU(ByTF7ar=4$aJ!R&4;m2U^?)$cQPkE)UeJjok;+l<&oZr9L zTZ6lUeLbY}7|UMK8@$vLNV*p4kSF!7Fs*3292HZ>-b{gseXyD565JYOqsjeN>7Sg7 zsb+0DZWY)^UZ8M?C3j}e3x@7VP(Y6JXe{811LHj}dN-3FeG5~sWXN1|>B|UpP*13H za{Z&0P!>PDCK%B(*XqG*2I^e7mPdm#4(Lg;k8lVX=q(w$Onopr7xoZIQQEvYV@+Z) zgG%w)EQ-VJYAD5AD|sfoy@`g&;X@#22}zaGbatwun@>yeG6WHe*ILo$%HcME9z&8hw#B^lqDzF4dGxfR?-(JU+YK-~OQqU`s$?L3N<}tO+4hRcxhDP# zcoOx5j|#n6=x$!@=X@O#|GY-*2Y0#rWJQdXU?8aUWqnl$fiq)k8NRp8Qk*Ji*~?0- z#dog|Th>5QrfW2$j)YtE=?`ygG~G@~wW0XR@&EzbQ(_~Wa`k=|alu1cjWDrS%1p?# zrN%yey%FR<=3CS;pg}Y0NfNbXP+C9X+pD2vOrP;Db(}(%)fweqUr*^_&$(%xT`wHb z5MU@;Sdtlq7+G&0%{Fd$7O4O#D(apBUDw`>mLC=Z&-y~{<=aT^4z0CKou9v#diI@0 znSnSj;(J+kZ^arjHBAYi&kJyf67;)8icg;sBI04q0jXi5K!z|4Yg9HVwxR|pJDvijJ z4sg`S-V(d!zR+A;d_G96LExF%Xk~1e=QqM5prG>-MWqkyH_b$ccH=gA7fBf|8vsTk!s=24jb_|2h{A2#n*`xo~hnZ=+d1x8;PvIc`Pn zPyO9Stzf_Q#|4LS{@Rv{8v^;YEf+WZxA}4L{1L4Dc?>Qd&f75N&owv%!u@*<%Khv5 z!6Dp#gt~s3GaSP6`*rL*zugBM28H~(F1ITH|E)g`p4&|BFJs(Z`0EY$3LG$ZU~f{ L8$d%NE-&$4lz;!M literal 0 HcmV?d00001 diff --git a/tests/domain/sap10_calculator/worksheet/_elmhurst_worksheet_001431_rr8.py b/tests/domain/sap10_calculator/worksheet/_elmhurst_worksheet_001431_rr8.py new file mode 100644 index 00000000..8011704e --- /dev/null +++ b/tests/domain/sap10_calculator/worksheet/_elmhurst_worksheet_001431_rr8.py @@ -0,0 +1,112 @@ +"""Mapper-driven cascade pin against the Elmhurst P960-0001-001431 +"simulated case 3" worksheet — a near-exact replica of golden cert +6035 (Main + Extension + Simplified room-in-roof, 8 windows). + +Like 000565 / sim case 1 / sim case 2, this fixture does NOT hand-build +the EpcPropertyData: it routes the Summary PDF through +ElmhurstSiteNotesExtractor + from_elmhurst_site_notes so the SAP-result +pin grid exercises the WHOLE extractor + mapper + calculator pipeline. + +Purpose: prove the calculator is spec-correct for the 6035 archetype +(after S0380.192 Simplified-RR + S0380.193 suspended-floor fixes). This +cert reproduces 6035's 8 windows (≈14.15 m²) and Main ground-floor +heat-loss perimeter (15.99 m). It still differs from 6035 in ONE input: +the Main FIRST-floor HLP is 15.99 here vs 6035's 8.32 (6035's upper +storey has less exposed perimeter), so it is not yet byte-identical to +6035. All 11 Block-1 line refs nonetheless pin at abs=1e-4 against this +cert's OWN worksheet, confirming the cascade reproduces the spec engine +exactly for this Main+Ext+RR+suspended-floor+gas-combi shape — so 6035's +residual +19 PE vs the lodged register is lodged-register divergence, +not a cascade gap. + +Cert shape: Main + Extension 1, both solid brick WITH internal +insulation (Main) / as-built (Ext1), 3 storeys, Simplified room-in-roof +on the Main (floor 29.75 m², exposed + party gables), suspended +uninsulated ground floors, gas-combi SAP code 104, 8 windows, no PV. + +Source: user-simulated PDFs at `sap worksheets/golden fixture +debugging/simulated case 3/`. The Summary is mirrored into the tracked +`backend/documents_parser/tests/fixtures/Summary_001431_rr8w.pdf` +(distinct name — the corpus reuses cert 001431). + +Worksheet pin targets (P960-0001-001431, Block 1 — energy rating): +- SAP rating 68 (line 258), ECF 2.3146 (line 257) +- Total fuel cost £951.3425 (line 255) +- CO2 4767.4862 kg/year (line 272) +- Space heating 16086.3557 kWh/year (Σ monthly (98)) +- Main 1 fuel 19150.4235 kWh/year (line 211) +- Secondary fuel 0.0 (line 215) +- Hot water fuel 3307.2639 kWh/year (line 219) +- Lighting 262.0885 kWh/year (line 232) +- Pumps/fans 86.0 kWh/year (line 231) + +Per [[feedback-zero-error-strict]] + [[feedback-e2e-validation- +philosophy]]: pins are abs=1e-4 against the worksheet PDF. +""" + +from __future__ import annotations + +import re +import subprocess +from pathlib import Path +from typing import Final + +from backend.documents_parser.elmhurst_extractor import ElmhurstSiteNotesExtractor +from datatypes.epc.domain.epc_property_data import EpcPropertyData +from datatypes.epc.domain.mapper import EpcPropertyDataMapper + + +# parents[0]=worksheet/, [1]=sap10_calculator/, [2]=domain/, [3]=tests/, +# [4]=repo root. +_SUMMARY_PDF: Final[Path] = ( + Path(__file__).resolve().parents[4] + / "backend" / "documents_parser" / "tests" / "fixtures" + / "Summary_001431_rr8w.pdf" +) + + +def _summary_pdf_to_textract_style_pages(pdf_path: Path) -> list[str]: + """Convert a Summary PDF into the per-page text format the + ElmhurstSiteNotesExtractor expects (label\\nvalue sequences). + + Mirror of the helper in `test_summary_pdf_mapper_chain.py` / + `_elmhurst_worksheet_000565.py`. + """ + info = subprocess.run( + ["pdfinfo", str(pdf_path)], capture_output=True, text=True, check=True, + ).stdout + m = re.search(r"Pages:\s+(\d+)", info) + if m is None: + raise RuntimeError(f"Could not parse page count from {pdf_path}") + page_count = int(m.group(1)) + + pages: list[str] = [] + for i in range(1, page_count + 1): + layout = subprocess.run( + [ + "pdftotext", "-layout", "-f", str(i), "-l", str(i), + str(pdf_path), "-", + ], + capture_output=True, text=True, check=True, + ).stdout + tokens: list[str] = [] + for line in layout.splitlines(): + if not line.strip(): + tokens.append("") + continue + parts = [p for p in re.split(r"\s{2,}", line.strip()) if p] + tokens.extend(parts) + pages.append("\n".join(tokens)) + return pages + + +def build_epc() -> EpcPropertyData: + """Route the simulated case-2 Summary through extractor + mapper. + + No hand-built EpcPropertyData — the extractor and mapper are part of + the test target. Exercises the S0380.192 Simplified-RR fix and the + S0380.193 suspended-floor sealed-rule fix. + """ + pages = _summary_pdf_to_textract_style_pages(_SUMMARY_PDF) + site_notes = ElmhurstSiteNotesExtractor(pages).extract() + return EpcPropertyDataMapper.from_elmhurst_site_notes(site_notes) diff --git a/tests/domain/sap10_calculator/worksheet/test_e2e_elmhurst_sap_score.py b/tests/domain/sap10_calculator/worksheet/test_e2e_elmhurst_sap_score.py index f2abc332..f121b0e6 100644 --- a/tests/domain/sap10_calculator/worksheet/test_e2e_elmhurst_sap_score.py +++ b/tests/domain/sap10_calculator/worksheet/test_e2e_elmhurst_sap_score.py @@ -39,6 +39,7 @@ from tests.domain.sap10_calculator.worksheet import ( _elmhurst_worksheet_000565 as _w000565, _elmhurst_worksheet_001431 as _w001431, _elmhurst_worksheet_001431_rr as _w001431_rr, + _elmhurst_worksheet_001431_rr8 as _w001431_rr8, ) from tests.domain.sap10_calculator.worksheet._elmhurst_fixtures import ( ALL_FIXTURES as _ELMHURST_FIXTURES, @@ -183,6 +184,23 @@ _FIXTURE_PINS: Final[dict[str, FixtureCascadePins]] = { lighting_kwh_per_yr=282.6414, pumps_fans_kwh_per_yr=86.0, ), + # Mapper-driven cohort entry — Summary_001431_rr8w.pdf → extractor → + # mapper → calculator. Near-exact 6035 replica: Main + Extension + + # Simplified room-in-roof, 8 windows (≈14.15 m², matching 6035), + # suspended uninsulated floors. Differs from 6035 only in the Main + # first-floor HLP (15.99 here vs 6035's 8.32). Pins at 1e-4 confirm + # the cascade is spec-correct for the archetype → 6035's +19 PE vs + # the lodged register is lodged-register divergence, not a calc gap. + "001431_rr8": FixtureCascadePins( + sap_score=68, sap_score_continuous=67.7118, ecf=2.3146, + total_fuel_cost_gbp=951.3425, co2_kg_per_yr=4767.4862, + space_heating_kwh_per_yr=16086.3557, + main_heating_fuel_kwh_per_yr=19150.4235, + secondary_heating_fuel_kwh_per_yr=0.0, + hot_water_kwh_per_yr=3307.2639, + lighting_kwh_per_yr=262.0885, + pumps_fans_kwh_per_yr=86.0, + ), } @@ -196,6 +214,7 @@ _FIXTURE_MODULES: Final[dict[str, ModuleType]] = { "000565": _w000565, "001431": _w001431, "001431_rr": _w001431_rr, + "001431_rr8": _w001431_rr8, }