Repository navigation
v0.94.480
A battery above its Max SoC with terminal-value tiers set no longer loses the whole plan; two flex-signal fixes.
-
A battery's plan-consistent headroom never exceeds its physical headroom
(#1985). For a battery
already charging or discharging flat out, the flex signals'
available_up_ranging_kw/available_down_ranging_kwcould report room it
did not have, read from the solver's ranging of the limit itself. They are now
clamped to the physical figure. Dispatch is unchanged. -
A battery above its Max SoC no longer loses the whole plan when terminal-value
tiers are set (#1987).
A live reading over Max SoC that could not discharge back under it by the tier
period made every solve infeasible, so nothing was planned for any battery or
load. The tier row now takes the excess off, as it already did below Min SoC
(#328). Plans that end within Max SoC are unchanged. -
A load's shut period always reads as degenerate
(#1981). A period
outside an adequacy load's window has a zero band, but itsdegenerateflag in
the flex signals'load_signalsfollowed the solver's unclamped ranging, so
another load in the same solve could turn it off. It now follows the band.
Dispatch is unchanged. -
Devhub validation: confirmed live on devhub (HA 2026.10.2) at d74c74c
(release/0.94.480), installed via HACS and restarted at 08:06 AEST. The new
code is the one running: devhub's own log reports the departure-target warning
fromsolver/network.pyline 5213 (5192 in 0.94.479; #1987's tier change moved
it). Its 08:15 solve came back optimal in every phase, and the Forecaster
sensors refreshed by 08:20. No new NimbusERRORor traceback against the
pre-install log; the rest is devhub's known baseline. -
Consumer check: nothing changes for a plan that stays within Max SoC. An install
with terminal-value tiers set and a battery reading above Max SoC now gets a plan
instead of none. On the Flex tab, a battery charging or discharging flat out no
longer shows ranged headroom it does not have, and a load's shut periods always
read as degenerate.