Model/docs
Khalim Conn-Kowlessar de7fb94ff7 docs(adr): record nearby-postcode broadening (0034) + share HTTP retry primitive
Closes out the cohort-broadening work with its decision record and consolidates
the retry plumbing.

ADR-0034 documents broadening the EPC-Prediction cohort to the real unit
postcodes nearest the target (via postcodes.io) when its own postcode holds no
same-type comparable — extending ADR-0031 decision 5. Records why postcodes.io
was chosen over council[] (whole-LA, no property_type in rows), a bulk Code-Point
Open / ONSPD dataset, and the OS Places radius API, and the lazy / nearest-first
early-stop / soft-fail policy. Broadening-specific docstrings now cite 0034.

Retry consolidation: extract the EPC client's call_with_retry into a shared
infrastructure/http_retry.py keyed off a generic TransientHttpError marker, so
the mechanism (exponential backoff, Retry-After) is shared while each client
keeps its own transient policy. EpcRateLimitError now subclasses TransientHttpError
(still an EpcApiError); PostcodesIoClient routes through the same helper, raising
TransientHttpError on 429/5xx and soft-failing to the seed once exhausted (the EPC
client propagates instead). Direct tests for the shared helper; EPC + postcodes.io
suites repointed at the shared sleep.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 16:54:06 +00:00
..
adr docs(adr): record nearby-postcode broadening (0034) + share HTTP retry primitive 2026-06-23 16:54:06 +00:00
backlog move spreadsheet population logic to domain 2026-06-09 14:43:24 +00:00
grill-sessions scripts? 2026-06-11 07:07:27 +00:00
migrations Merge remote-tracking branch 'origin/main' into feature/bill-derivation 2026-06-05 11:09:00 +00:00
HANDOVER_API_ACCURACY_S2.md docs: session-2 API-accuracy handover (fabric+tariff fixes, worksheet path) 2026-06-06 19:13:21 +00:00
HANDOVER_API_FETCH_AND_REPORT.md docs(modelling): handover — EPC API fetch + property inspection report 2026-06-04 10:46:31 +00:00
HANDOVER_API_PROFILING.md docs: session-9 close-out + session-10 handover (summary-report-based audit) 2026-06-09 14:54:08 +00:00
HANDOVER_ARA_NEXT.md docs: correct SAP calculator path in CONTEXT (domain/sap → domain/sap10_calculator) 2026-06-04 15:40:26 +00:00
HANDOVER_EPC_PREDICTION.md docs(epc-prediction): handover for the accuracy backlog + geo work 2026-06-15 15:12:00 +00:00
HANDOVER_EPC_PREDICTION_WIRING.md feat(epc-prediction): thread prediction injection points through the composition root 2026-06-16 13:53:54 +00:00
HANDOVER_MODELLING.md docs(modelling): next-phase handover — depth + scale e2e + grilling prompt 2026-06-03 23:09:08 +00:00
HANDOVER_NEXT_PHASE_PROMPT.md docs(modelling): next-phase handover — depth + scale e2e + grilling prompt 2026-06-03 23:09:08 +00:00
HANDOVER_REAL_LIFE_CERT_ACCURACY.md docs: handoff for expanding the real-life cert SAP-accuracy corpus 2026-06-15 15:28:40 +00:00
HANDOVER_SUMMARY_AUDIT.md docs: session-9 close-out + session-10 handover (summary-report-based audit) 2026-06-09 14:54:08 +00:00
MIGRATION_NOTE_predicted_epc_source.md feat(epc-prediction): slice-5c predicted-EPC persistence slot 2026-06-16 03:50:19 +00:00
PR_NOTE_system_built_basement_1177.md docs: PR note for #1177 — system_build property vs field merge collision 2026-06-04 19:51:29 +00:00