You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 997fff3
Browse filesBrowse the repository at this point in the historyBrowse files
Stop the low-priority cascade flapping on broken-cloud days (v2.37.0)
Confirmed live 2026-09-10, a heavy broken-cloud day with an EV home far
below target: the miner, pool pump and boiler switched fully on and off
every 10-20 minutes all afternoon. Two amplifiers, fixed here:
1. Fictional modelled surplus on turn-on. "Überschuss" briefly read up to
+7 kW while the Tibber meter showed ~0.5 kW real feed-in — the wallbox
reservation was lagging a gross-PV upswing and the car was ramping up
to take the rest. The whole low-priority cascade switched on chasing
surplus that wasn't leaving the house, then shed a few cycles later.
Fix: a device may only be *switched on* via the modelled-surplus path
(`remaining_surplus > need`) while the export meter also shows a real
feed-in covering its own draw, minus what devices already turned on
this cycle have claimed from the same reading (cumulative_export_
committed). Only while an export sensor is configured and the sun is
up; an already-on device is never shed by this (its draw is already in
the meter), it only blocks a fresh turn-on. New decision-log reason
"Wartet — keine echte Einspeisung". Const EXPORT_CORROBORATION_MARGIN_KW.
2. The reservation's gross-PV gate releasing on brief cloud gaps. When
gross PV dipped under WALLBOX_MIN_PV_FOR_RESERVATION_KW (1.7 kW) the
whole ~deadline-pace wallbox reservation dropped to 0 the same cycle,
handing it to the cascade, then snapped back to full when the sun
returned — "Grundlast" toggling 0.3 <-> 10 kW. Fix: once armed, the
gate only releases after gross PV has stayed below the floor for
WALLBOX_PV_GATE_RELEASE_CYCLES (15 min) in a row. Arming stays instant.
New per-wallbox counter _wallbox_pv_gate_below_cycles.
Both are no-ops without an export sensor / a wallbox configured. The
underlying base_load desync spike (a fresh wallbox-power reading
subtracted from a stale house-load reading briefly inflating the honest
base load) is a separate, known issue left for a later pass.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
0 commit comments