Model/scripts
Jun-te Kim c380377948 test(accuracy): ratchet 74.2% -> 75.5% via 'insulated (assumed)' roof Table-18 fix
RdSAP 10 §5.11.4: a pitched roof lodging thickness "NI" with description
"...insulated (assumed)" was billed at the §5.11.4 observed-retrofit
50 mm row (U 0.68) while the SAME description lodged with "ND" fell
through to the Table 18 age-band default (0.40 for bands A-G). The
ND-vs-NI sentinel is lodging-software noise; "(assumed)" means the
insulation PRESENCE is an age-band assumption, not an observed
retrofit, so Table 18's "thickness cannot be determined" clause
governs both forms. The bare "insulated" description (observed
retrofit, no qualifier) keeps the 50 mm row.

Evidence: the 27-cert loc4+NI corpus cohort was systematically
under-rated (~-1 SAP; zero positive movers among "(assumed)" certs),
vs the 102-cert loc4+ND cohort already on Table 18 at ~0 bias.

Gauge: within-0.5 74.2% -> 75.5%, SAP MAE 0.721 -> 0.708, CO2 MAE
0.09 -> 0.074, PE MAE 3.5 -> 3.2 (floors ratcheted). Unit-pinned in
test_rdsap_uvalues (assumed -> Table 18; bare-insulated -> 0.68
regression guard); integration pin in test_heat_transmission updated;
RealCertExpectation pinned for 10094975827 (66 = lodged, was -1.87).

Ledger: C002 103001004 deferred pending Elmhurst arbitration
(single-immersion off-peak pricing + declared cylinder loss vs
Table-2); C006 quadruplet marked ⚠ (LIG-21.0 software honours lodged
0 extract fans literally vs the Elmhurst-validated 0=unknown->default
convention, worksheet case 46).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 19:06:26 +00:00
..
audit Audit check: lodged cylinder with unresolvable insulation drops storage loss 2026-07-02 15:27:15 +00:00
corpus_1000 test(accuracy): ratchet 74.2% -> 75.5% via 'insulated (assumed)' roof Table-18 fix 2026-07-02 19:06:26 +00:00
eon added floats helper 2026-06-12 14:28:41 +00:00
hyde docs: full-SAP baseline-downgrade follow-ups + Case A population sweep tool 2026-06-25 21:45:44 +00:00
lisasrequest Backfill uniform secondary-glazing overrides misfiled as Single glazing 2026-07-02 11:12:25 +00:00
analyse_api_sap_clusters.py scripts: promote the API SAP-accuracy toolkit from /tmp 2026-06-04 16:52:09 +00:00
build_epc_prediction_fixture.py feat(epc-prediction): geo-proximity weighting, per-component (#1227) 2026-06-15 14:58:42 +00:00
compare_epc_paths.py Validate SAP calculator vs Elmhurst; fix reduced-field window U; add accuracy harness 2026-06-15 15:26:11 +00:00
data_exports.py Add scripts/data_exports.py: principal-pitch export on the new DDD model 2026-06-30 17:39:46 +00:00
decompose_api_cost_error.py feat(diag): per-component cost decomposition for API SAP errors 2026-06-06 17:37:05 +00:00
decompose_co2_pe_error.py fix(heat-network): apply Table 4c(3) flat-rate charging factor to demand 2026-06-14 01:54:51 +00:00
dive_cert.py chore(scripts): triage PE/CO2 on the demand cascade in the corpus profilers 2026-06-18 14:21:00 +00:00
download_cotality_evidence.py new methods for downloading all core files for pashub URL. Download currently not being authorised 2026-03-24 08:47:59 +00:00
e2e_common.py feat(scripts): add full AraFirstRunPipeline local runner 2026-06-16 23:45:23 +00:00
elmhurst_input_sheet.py rename mains_gas to gas_connection_available 2026-07-01 10:50:58 +00:00
eval_api_sap_accuracy.py scripts: promote the API SAP-accuracy toolkit from /tmp 2026-06-04 16:52:09 +00:00
failed_modelling_e2e.md missing files 2026-06-23 12:25:52 +00:00
fetch_2026_epc_sample.py scripts: promote the API SAP-accuracy toolkit from /tmp 2026-06-04 16:52:09 +00:00
fetch_cohort2_api_jsons.py Move sap10_calculator tests to tests/domain/sap10_calculator/ for CI 2026-06-02 16:58:00 +00:00
fetch_corpus_coordinates.py feat(epc-prediction): thread coordinates onto Comparable + target (#1227) 2026-06-15 14:46:01 +00:00
fetch_epc_bulk_sample.py feat(modelling): sample a year from the EPC bulk export, offline-ready 2026-06-04 12:20:57 +00:00
fetch_epc_dump.py feat(modelling): CLI to fetch an EPC dump + build the inspection report 2026-06-04 11:26:17 +00:00
fetch_epc_prediction_corpus.py refactor(epc-prediction): PR review — rename ComparableProperty, relocate PredictionTarget 2026-06-16 13:34:44 +00:00
fetch_epc_prediction_dense_corpus.py chore(epc-prediction): dense-corpus fetcher + cross-postcode geo no-go 2026-06-16 03:03:15 +00:00
fetch_real_life_epc_sample.py Validate SAP calculator vs Elmhurst; fix reduced-field window U; add accuracy harness 2026-06-15 15:26:11 +00:00
fill_domna_addresses.py Resolve a landlord mains-gas override to the primary fuel code 🟩 2026-06-19 12:15:54 +00:00
finalise_to_property_table.py Resolve a landlord mains-gas override to the primary fuel code 🟩 2026-06-19 12:15:54 +00:00
historic_epc_demo.py added type hinting to uprn 2026-05-12 09:40:12 +00:00
hyde_epc_schema_versions.py Resolve a landlord mains-gas override to the primary fuel code 🟩 2026-06-19 12:15:54 +00:00
init_db.py init db 2026-03-31 11:45:59 +00:00
inspect_overlay.py move overlas to its own thing 2026-06-18 10:04:14 +00:00
list_properties_by_postcode.py tweak script to use provided input. track output in md file 2026-06-23 10:27:39 +00:00
north_northamptonshire_properties_by_postcode_812.txt allow for multiple scenarios for 1 portfolio without ignoring all properties in second scenario 2026-06-26 11:24:26 +00:00
null_predicted_lodged_performance.py Backfill the phantom Lodged Performance on predicted Properties to NULL 🟩 2026-06-30 22:17:57 +00:00
profile_api_error.py feat(diag): profile API SAP error against raw-API characteristics 2026-06-07 20:38:19 +00:00
profile_case34.py docs(profile-case34): mark the space-demand residual closed (450e33e1) 2026-06-11 09:01:41 +00:00
profile_corpus_error.py chore(tooling): add median column to corpus profiler; document shutter non-implementation 2026-06-23 08:46:00 +00:00
properties_by_postcode_796.txt tweak script to use provided input. track output in md file 2026-06-23 10:27:39 +00:00
query_failed_modelling_e2e.py solar + more logs 2026-06-23 18:07:10 +00:00
reclassify_flat_roof_thickness.py Re-classify flat-roof overrides with a known depth onto their thickness member 🟩 2026-07-01 10:19:09 +00:00
reclassify_heating_overrides.py One-time script to re-classify stale heating overrides 2026-06-30 20:30:59 +00:00
reclassify_main_heating.py Reclassify electric-underfloor overrides via the generalized main-heating reclassify 🟩 2026-07-01 16:51:22 +00:00
reclassify_mixed_glazing.py Re-classify aggregate-mix glazing overrides flattened to Double onto MIXED 🟩 2026-07-01 11:09:42 +00:00
reclassify_party_ceiling_roofs.py Re-classify party-ceiling roof overrides mis-read as external roofs 🟩 2026-07-01 09:46:01 +00:00
reclassify_water_heating.py Re-map house-coal water-heating overrides onto faithful biomass and immersion archetypes 🟩 2026-07-01 13:59:44 +00:00
resolve_uprns_for_finaliser.py Resolve a landlord mains-gas override to the primary fuel code 🟩 2026-06-19 12:15:54 +00:00
run_audit_generator_local.py empty commit to trigger workflows 2026-06-11 09:32:14 +00:00
run_first_run_e2e.py feat(scripts): add full AraFirstRunPipeline local runner 2026-06-16 23:45:23 +00:00
run_modelling_cohort.py feat(modelling): turnkey offline cohort script (tables + CSV) 2026-06-04 09:30:53 +00:00
run_modelling_e2e.py docs(adr): record nearby-postcode broadening (0034) + share HTTP retry primitive 2026-06-23 16:54:06 +00:00
run_property_report.py feat(modelling): CLI to fetch an EPC dump + build the inspection report 2026-06-04 11:26:17 +00:00
summary_to_sap.py chore(debug): summary_to_sap.py — Elmhurst Summary PDF -> our SAP + trail 🟪 2026-06-28 21:26:30 +00:00
trigger_modelling_e2e_sqs.py decrease lambda concurrency from 32 to 12 2026-06-29 13:32:53 +00:00
validate_epc_prediction.py refactor(epc-prediction): PR review — rename ComparableProperty, relocate PredictionTarget 2026-06-16 13:34:44 +00:00