mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
Electric boiler and CPSU overrides drag the conservative Group 1 control (2101) 🟩
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
afa781719d
commit
077dcf6bac
1 changed files with 14 additions and 2 deletions
|
|
@ -137,6 +137,15 @@ _ELECTRIC_BOILER_CODES = frozenset({191, 192})
|
|||
# HHRSH pathway, and an inherited 7 (storage) made the Table 12a resolver bill
|
||||
# direct-acting heat wholly at the off-peak low rate (ADR-0052, #1444).
|
||||
_ELECTRIC_BOILER_CATEGORY = 2
|
||||
# SAP Table 4e Group 1 boiler control: 2101 ("no time or thermostatic control
|
||||
# of room temperature", +0.6 C) is the conservative default when the landlord
|
||||
# named only the system — the largest Group 1 mean-internal-temperature
|
||||
# adjustment, so an unobserved control is never over-credited (the boiler
|
||||
# mirror of storage 2401 / room-heater 2601 / underfloor 2701). Deliberately
|
||||
# NOT the gas boilers' modern 2106: the gas archetypes assume a whole modern
|
||||
# condensing install; the electric-boiler archetypes describe an existing
|
||||
# system of unknown vintage (ADR-0052).
|
||||
_CONSERVATIVE_BOILER_CONTROL = 2101
|
||||
# Electric underfloor — SAP Table 4a 421/422 (off-peak) and 424 (screed) — also
|
||||
# unambiguously electric (ADR-0046).
|
||||
_ELECTRIC_UNDERFLOOR_CODES = frozenset({421, 422, 424})
|
||||
|
|
@ -281,8 +290,9 @@ def _meter_for(code: int) -> Optional[str]:
|
|||
def _control_for(code: int) -> Optional[int]:
|
||||
"""The control to assume when the landlord named only the system: a
|
||||
conservative manual charge control for storage heaters, full modern controls
|
||||
for a gas boiler, None for systems that take neither (direct-acting electric).
|
||||
Overwrites a stale control inherited from the system being replaced."""
|
||||
for a gas boiler, the conservative in-group default for the other mapped
|
||||
families (room heaters, underfloor, electric boilers). Overwrites a stale
|
||||
control inherited from the system being replaced."""
|
||||
if code == _HHR_STORAGE_CODE:
|
||||
return _HHR_CHARGE_CONTROL
|
||||
if code in _STORAGE_HEATER_CODES:
|
||||
|
|
@ -293,6 +303,8 @@ def _control_for(code: int) -> Optional[int]:
|
|||
return _ROOM_HEATER_CONTROL
|
||||
if code in _ELECTRIC_UNDERFLOOR_CODES:
|
||||
return _UNDERFLOOR_CONTROL
|
||||
if code in _ELECTRIC_BOILER_CODES:
|
||||
return _CONSERVATIVE_BOILER_CONTROL
|
||||
return None
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue