Model/scripts
Jun-te Kim 66d70b6833 Add plan-stuck-in-low-band audit check + refresh weird-recs catalogue
`plan-stops-short-of-goal` fires on anything below the goal band — 322/338
on portfolio 814, mostly flats a single band short of B, which drowns the
real hits. Add a sharper, band-keyed check that isolates the genuinely-
stuck tail: a plan that leaves the dwelling still rated E/F/G with the band
UNCHANGED from baseline on an unlimited-budget scenario — the "E->E, no big
movement" worklist. On portfolio 814 / scenario 1271 it flags just 4 (pids
742121, 742210, 742265, 742347) vs 322. No SAP-points threshold; the
strictly-worse case is left to plan-below-baseline-band so the two
partition cleanly.

Also refresh the find-weird-recommendations skill's Phase 4 catalogue:
register the new check in Phase 1, correct the stale 742121 note (it is an
electric maisonette whose HHRSH IS offered but scores -6.3 SAP, so the
Optimiser correctly drops it — not the old mains-gas story), and add the
742265 community-flat findings (HHRSH/ASHP gated out by heat-network
topology; vaulted-ceiling roof with ND insulation).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-01 17:22:41 +00:00
..
audit Add plan-stuck-in-low-band audit check + refresh weird-recs catalogue 2026-07-01 17:22:41 +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 Resolve a landlord mains-gas override to the primary fuel code 🟩 2026-06-19 12:15:54 +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_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
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