mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-30 13:10:47 +00:00
docs: session-5 handover — flat-roof fix + the unknown-insulation principle
Adds the flat-roof slice (52.1 → 53.1%) and records the unifying principle
("unknown insulation → as-built age default, not uninsulated") plus the
cross-element review confirming all element types now conform.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
58cff932e6
commit
d90b6f5643
1 changed files with 23 additions and 6 deletions
|
|
@ -13,16 +13,33 @@ deproven approaches + the meter/shower data-fidelity findings), and the earlier
|
|||
`energy_rating_current`. Headline gauge:
|
||||
`PYTHONPATH=/workspaces/model python scripts/eval_api_sap_accuracy.py`.
|
||||
|
||||
| metric | session-3 (`a8e5563a`) | session-4 (`faf29942`) | **session-5 (`2e466ed1`)** |
|
||||
| metric | session-3 (`a8e5563a`) | session-4 (`faf29942`) | **session-5 (`58cff932`)** |
|
||||
|--------|------------------|------------------|------------------|
|
||||
| **% \|err\| < 0.5** | 45.1% | 47.6% | **52.1%** |
|
||||
| % \|err\| < 1.0 | 59.4% | 62.6% | **67.2%** |
|
||||
| % \|err\| < 2.0 | 77.7% | 79.6% | **80.7%** |
|
||||
| mean \|err\| | 1.702 | 1.586 | **1.497** |
|
||||
| median \|err\| | — | — | **0.475** |
|
||||
| **% \|err\| < 0.5** | 45.1% | 47.6% | **53.1%** |
|
||||
| % \|err\| < 1.0 | 59.4% | 62.6% | **68.0%** |
|
||||
| % \|err\| < 2.0 | 77.7% | 79.6% | **~81%** |
|
||||
| mean \|err\| | 1.702 | 1.586 | **1.424** |
|
||||
| median \|err\| | — | — | **0.467** |
|
||||
| computed / raises | 909 / 0 | 909 / 0 | **909 / 0** |
|
||||
| unsupported_schema | 100 (deferred) | 100 (deferred) | 100 (deferred) |
|
||||
|
||||
### THE UNIFYING PRINCIPLE (user, load-bearing) — "unknown insulation → as-built, NOT uninsulated"
|
||||
An EPC insulation field that is UNDETERMINED (thickness `'ND'`/`'AB'`/absent → parsed None, or
|
||||
description "as built / (assumed)") must map to the **age-band default** ("as built"), which is
|
||||
INSULATED at newer bands — never to the uninsulated row. The recurring bug shape: a fixed
|
||||
uninsulated U (cavity Filled-row, roof Table-16 2.30) is MASKED at old bands (where the age
|
||||
default coincides with uninsulated) and only diverges (catastrophic under-rate) at newer bands.
|
||||
All three session-5 fixes are instances. Review status across elements (all now conform):
|
||||
- **Flat roofs** — FIXED `58cff932` (this slice). **Pitched roofs** — "unknown"→Table 18 (`a64e857b`);
|
||||
"no insulation" only appears at bands A/B where 2.30 IS the age default (verified, no new-band bug).
|
||||
- **Cavity walls** — FIXED `2e466ed1`. **System/timber/solid walls** — already on the as-built age
|
||||
row (verified: bidirectional scatter, not a one-cause under-rate). **Floors** — undetermined
|
||||
thickness already routes to the Table 19 age default (I=25/J=75/K=100 mm; verified).
|
||||
- CAVEAT: do NOT broadly reroute PITCHED `'ND'`/`'NI'`→Table 18 (the parsed-0 `'NI'` case) — that
|
||||
was empirically net-negative (pitched "no insulation" lodgements genuinely use 2.30 even at newer
|
||||
bands; the description is load-bearing for pitched lofts). The principle holds for flat roofs,
|
||||
cavity, floors; pitched lofts are the documented exception.
|
||||
|
||||
## SESSION-5 UPDATE (HEAD `2e466ed1`) — whc=903 immersion HW + as-built cavity-U both closed
|
||||
|
||||
**Shipped (47.6 → 52.1%, two spec-grounded fixes):**
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue