Commit graph

2 commits

Author SHA1 Message Date
Khalim Conn-Kowlessar
a9faaddc1d docs: handover for Table 3a no-keep-hot continuation + SAP 10 spec PDFs
Adds the next-agent handover and the BRE technical papers referenced
by the cohort-2 negative-band investigation:

  - `HANDOVER_TABLE_3A_NO_KEEP_HOT.md` — picks up from Slice S0380.20.
    Covers cohort distribution at HEAD `4879e8c3`, the verified
    Table 3a Row 1 spec formula `(61)m = 600 × fu × nm / 365`, the
    dispatch recipe for `pcdb_combi_loss_override`, watch-outs (cert
    0360 / cohort-1 cert 000490 behaviour after the slice lands), the
    diagnostic probe script, test baselines, and the open-thread
    priority list (Ext1 roof, HP-COP, big-gap 2102, API path, parity).

  - `specs/STP09-B04_Combi_boiler_tests.pdf` — 2009 BRE methodology
    paper (Alan Shiret, BRE) defining the combi-loss test programme
    that produced the SAP Table 3a 600/900 kWh/yr keep-hot assumptions.
    Source: https://bregroup.com/documents/d/bre-group/stp09-b04_combi
    _boiler_tests.

  - `specs/sap10 technical papers/S10TP-{02..13}.pdf` — full SAP 10
    supporting technical paper set (Issue 1.2 / 1.3 / 1.4 across the
    eight papers). S10TP-12 §9.4 confirms: "No changes to the SEDBUK
    calculation method for water heating efficiency were considered
    necessary" — so the STP09-B04 (SAP 2009) Table 3a methodology
    carries through to SAP 10 unchanged.

These docs replace web-fetched references with locally-tracked copies
so the slice S0380.21 implementor can grep / pdftotext them directly.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 08:29:12 +00:00
Khalim Conn-Kowlessar
a7b08a4e8f refactor: move docs/sap-spec/ contents into domain/sap10_calculator/
Locality of reference — SAP-specific docs, specs, and runtime data
now live alongside the calculator that consumes them, mirroring the
prior packages→domain layout moves.

Move targets:

- Narrative MDs → domain/sap10_calculator/docs/
    NEXT_AGENT_PROMPT.md, HANDOVER_NEXT.md, SAP_CALCULATOR.md
- Spec PDFs → domain/sap10_calculator/docs/specs/
    RdSAP 10 Specification 10-06-2025.pdf
    PCDF_Spec_Rev-06b_12_May_2021.pdf
    sap-10-2-full-specification-2025-03-14.pdf
    sap-10-3-full-specification-2026-01-13.pdf
- PCDB runtime data → domain/sap10_calculator/tables/pcdb/data/
    pcdb10.dat (8.3MB) + 7× pcdb_table_*.jsonl (18MB total)

Path code rewrites (load-bearing):

- tables/pcdb/__init__.py: replaced parents[4]/'docs'/'sap-spec' with
  Path(__file__).resolve().parent/'data' for Table 105 JSONL loading.
- tables/pcdb/postcode_weather.py: same rebase for the pcdb10.dat path
  read by _postcode_climate_table().
- tables/pcdb/etl.py __main__: same rebase for the manual ETL invocation
  (source + output_dir both now point inside the package).
- tests/test_pcdb_etl.py: _PCDB_DAT_PATH now derives from
  parents[1]/'tables'/'pcdb'/'data' (was parents[3]/'docs'/'sap-spec').

Citation rewrites:

- 12 .py docstrings and 4 .md docs (ADRs + READMEs + narrative docs)
  had `docs/sap-spec/<file>` strings rewritten to their new locations.
- Two cases where the catch-all sed misfired (an ADR-0009 line about a
  PCDB extract; the pcdb __init__.py docstring about ETL output) were
  hand-corrected to point at tables/pcdb/data/ rather than docs/specs/.

docs/sap-spec/ is now empty (will be removed in a follow-up sweep or
left as a vestigial empty dir for future repurposing). ADRs 0009 and
0010 remain at docs/adr/ — they're part of the chronological
cross-cutting decision log, not calculator-specific narrative.

Verified:

- Calculator's 1e-4 production gate
  (test_api_001479_full_chain_sap_matches_worksheet_pdf_exactly) GREEN.
- Wider sweep (domain/sap10_calculator/ + domain/sap10_ml/): 1654
  passed / 20 failed — exact pre-move baseline. All 20 failures
  pre-existing (10 hand-built skeleton + 4 cohort chain + 6 cohort
  diff).
- Pyright net-zero on the 4 touched runtime/test files (0 errors)
  and unchanged on heat_transmission.py (13) / cert_to_inputs.py (35) /
  mapper.py (33).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 13:17:18 +00:00