mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
Slice 65: add shower_outlets + number_baths to cohort 000474 hand-built
Closes 2 of 14 remaining diffs by populating Appendix J inputs the Elmhurst mapper surfaces from Summary §16: - `sap_heating.number_baths=1` (passed via make_sap_heating kwarg) - `sap_heating.shower_outlets = ShowerOutlets(Non-electric)` (set post-construction because the helper doesn't expose the field; added the dataclass imports for SCM completeness) Cascade-equivalent: number_baths=1 and one non-electric mixer outlet without WWHRS are the implicit Appendix J defaults when nothing is lodged. All 11 cohort 000474 cascade pins remain GREEN at 1e-4. Diff count: 14 → 12. Pyright net-zero (0 errors). Remaining 12 diffs split: - 7 mapper-needs-to-surface (country_code, water_heating_fuel, boiler_flue_type, emitter_temperature, main_heating_number, has_draught_lobby, central_heating_pump_age int↔str) - 3 party_wall_construction sentinel (None vs 0) across bps - 1 sap_windows: LEN 7 vs 5 (collapse vs 1:1 structural decision) - 1 dwelling_type / built_form casing nuance (resolved in Slice 64 bulk-update; remaining 1 was for one bp's encoding) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
b5cbfe83de
commit
4997039f1a
1 changed files with 16 additions and 0 deletions
|
|
@ -28,6 +28,8 @@ from datatypes.epc.domain.epc_property_data import (
|
|||
SapFloorDimension,
|
||||
SapVentilation,
|
||||
SapWindow,
|
||||
ShowerOutlet,
|
||||
ShowerOutlets,
|
||||
)
|
||||
from domain.ml.tests._fixtures import (
|
||||
make_main_heating_detail,
|
||||
|
|
@ -195,6 +197,12 @@ def build_epc() -> EpcPropertyData:
|
|||
main_heating_data_source=1,
|
||||
),
|
||||
],
|
||||
# Summary §15 / §16 lodgement the mapper surfaces — adding
|
||||
# for field-level parity with `from_elmhurst_site_notes`.
|
||||
# Cascade-equivalent: number_baths=1 is exactly what Appendix
|
||||
# J §1a defaults to when nothing is lodged, so the 1e-4
|
||||
# cascade pin is preserved.
|
||||
number_baths=1,
|
||||
),
|
||||
)
|
||||
# Top-level cert-lodgement booleans / counts the Elmhurst mapper
|
||||
|
|
@ -205,6 +213,14 @@ def build_epc() -> EpcPropertyData:
|
|||
epc.number_of_storeys = 2
|
||||
epc.hydro = False
|
||||
epc.photovoltaic_array = False
|
||||
# `make_sap_heating` doesn't expose `shower_outlets` as a kwarg; the
|
||||
# Elmhurst mapper surfaces it from Summary §16. Setting here for
|
||||
# cross-mapper field parity. Cascade-equivalent: a non-electric
|
||||
# mixer outlet with no WWHRS is Appendix J's default when the cert
|
||||
# lodges a bath without explicit shower data.
|
||||
epc.sap_heating.shower_outlets = ShowerOutlets(
|
||||
shower_outlet=ShowerOutlet(shower_outlet_type="Non-electric shower"),
|
||||
)
|
||||
return epc
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue