Model/tests/harness
Khalim Conn-Kowlessar 008c1922c4 feat(epc-prediction): anonymised Tier-1 fixture + builder (ADR-0030)
The committed gate needs frozen, reproducible data without dumping real UK
addresses into the repo. Add:
- harness anonymise_payload + stable_hash: hash street address + cert number
  into opaque, dedup-stable tokens; blank secondary address lines + post_town;
  keep postcode + all component/lodged fields (gov data is OGL). Unit-tested.
- scripts/build_epc_prediction_fixture.py: curate qualifying postcodes (>=1
  SAP 10.2 target + >=2 distinct addresses) from the local scratch corpus,
  anonymise, freeze under tests/fixtures/epc_prediction/.
- The frozen fixture: 15 postcodes / 280 certs / 36 SAP-10.2 targets.
  Verified no plaintext address_line_1 and post_town all blank.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 09:17:27 +00:00
..
__init__.py feat(modelling): sense-check table for a Plan in the DB-less harness 2026-06-04 08:06:53 +00:00
test_cohort.py feat(modelling): turnkey offline cohort script (tables + CSV) 2026-06-04 09:30:53 +00:00
test_console.py feat(modelling): wire secondary-heating-removal into the pipeline (ADR-0028) 2026-06-11 16:04:07 +00:00
test_epc_bulk.py feat(modelling): read the gov EPC bulk export via HTTP range requests 2026-06-04 12:16:18 +00:00
test_epc_prediction_corpus.py feat(epc-prediction): anonymised Tier-1 fixture + builder (ADR-0030) 2026-06-14 09:17:27 +00:00
test_plan_table.py refactor(modelling): type measure_type fields as MeasureType 2026-06-08 20:13:31 +00:00
test_report.py feat(modelling): wire secondary-heating-removal into the pipeline (ADR-0028) 2026-06-11 16:04:07 +00:00