Controleur : trois ecritures jamais relayees (budget, verrou P12, reset borne) + garde-fou ; verrou P12 leve en fin de session
This commit is contained in:
@@ -127,6 +127,34 @@ pushAction(
|
||||
!!calls.helper_evcs_no_demand_filter_eval_at?.execute
|
||||
);
|
||||
|
||||
// =====================================================
|
||||
// ECRITURES CONDITIONNELLES OUBLIEES (01/10/2026)
|
||||
// Produites par HA_SERVICE_CALLS_OUTPUT mais jamais relayees jusqu'ici :
|
||||
// - verrou P12 (`night_battery_done`, une seule passe sur batterie) depuis
|
||||
// le 15/09 ;
|
||||
// - acquittement du bouton reset borne (momentane) depuis le 19/09 ;
|
||||
// - budget voiture de la nuit fige (30/09) : la nuit du 30/09 la JEEP a pris
|
||||
// 7,5 kWh sur la batterie au lieu du budget.
|
||||
// Garde-fou : tests/golden/run.mjs verifie que tout appel produit est nomme ici.
|
||||
// =====================================================
|
||||
pushAction(
|
||||
'helper_night_battery_done',
|
||||
calls.helper_night_battery_done,
|
||||
!!calls.helper_night_battery_done?.execute
|
||||
);
|
||||
|
||||
pushAction(
|
||||
'helper_reset_borne_ack',
|
||||
calls.helper_reset_borne_ack,
|
||||
!!calls.helper_reset_borne_ack?.execute
|
||||
);
|
||||
|
||||
pushAction(
|
||||
'helper_night_budget',
|
||||
calls.helper_night_budget,
|
||||
!!calls.helper_night_budget?.execute
|
||||
);
|
||||
|
||||
// =====================================================
|
||||
// DEMANDE RÉSEAU EDF SI SOURCE GRID
|
||||
// =====================================================
|
||||
|
||||
@@ -659,10 +659,16 @@ const nightBudgetReached =
|
||||
nightBudgetDeliveredKwh >= nightBudget.budgetKwh - 0.05;
|
||||
const nightChargeComplete = params.nightChargeMode === 'complete';
|
||||
|
||||
// Le verrou ne vaut QUE pendant la session de nuit (01/10/2026). Ecrit sous la
|
||||
// forme `prev || …`, il restait vrai pour toujours une fois pose ; invisible
|
||||
// tant que son ecriture n'atteignait pas HA (jamais relayee du 15/09 au 01/10).
|
||||
// Fin de session (debranchement ou fin de fenetre HC) = verrou leve.
|
||||
const nightBatterySurplusExhausted =
|
||||
params.nightBatteryDonePrev ||
|
||||
(nightSessionActive && parsed.soc <= nightBatterySurplusFloorPct) ||
|
||||
(nightSessionActive && nightBudgetReached);
|
||||
nightSessionActive && (
|
||||
params.nightBatteryDonePrev ||
|
||||
parsed.soc <= nightBatterySurplusFloorPct ||
|
||||
nightBudgetReached
|
||||
);
|
||||
|
||||
const nightBatterySurplusAvailable =
|
||||
nightSessionActive &&
|
||||
|
||||
Reference in New Issue
Block a user