P10: mémoire 'véhicule plein' en journée (collant jusqu'au débranchement)
- WINDOWS: dayVehicleFullIdle (statut 3 ou VDF, héritages jour<->nuit), sourceMode blocked même face au solaire - DECISION: branche collante day_vehicle_full_idle au-dessus des gardes - échappatoires force_charge_now/force_grid_now (golden) - golden 33->36, validé live 10:04:30 (latch en 16 s sur la VW pleine) - HANDOFF §22 + MANUEL états collants
This commit is contained in:
@@ -363,6 +363,7 @@ const vehicleChargeCompleted =
|
||||
prevSurplusState === 'vehicle_full_or_paused' ||
|
||||
prevSurplusState === 'night_session_done_idle' ||
|
||||
prevSurplusState === 'night_recovery_done_idle' ||
|
||||
prevSurplusState === 'day_vehicle_full_idle' ||
|
||||
evcsStatusCharged
|
||||
);
|
||||
|
||||
@@ -420,6 +421,37 @@ const departureUrgentActive =
|
||||
departureWindowActive &&
|
||||
!departureChargeDone;
|
||||
|
||||
// =====================================================
|
||||
// P10 (09/08/2026) : MÉMOIRE "VÉHICULE PLEIN" EN JOURNÉE.
|
||||
// Observé le 09/08 09:49 : VW pleine branchée depuis 07:00, le surplus
|
||||
// solaire retentait une charge (statut "Charged", 0 W) toutes les ~15 min
|
||||
// toute la journée (usure relais, bruit). Les états collants P8/P9 étaient
|
||||
// scopés nuit/fenêtre départ. Ici : une fois le véhicule vu plein (statut 3
|
||||
// ou VDF), état collant 'day_vehicle_full_idle' jusqu'au DÉBRANCHEMENT.
|
||||
// - hérite des états "done" de la nuit (07:24 → pas de re-tentative) ;
|
||||
// - la nuit hérite en retour (vehicleChargeCompleted inclut day_*) ;
|
||||
// - échappatoires : force_charge_now / force_grid_now / débrancher-rebrancher.
|
||||
// =====================================================
|
||||
const dayVehicleFullPrev =
|
||||
prevSurplusState === 'day_vehicle_full_idle' ||
|
||||
(
|
||||
!inNightHcWindow &&
|
||||
(
|
||||
prevSurplusState === 'vehicle_full_or_paused' ||
|
||||
prevSurplusState === 'night_recovery_done_idle' ||
|
||||
prevSurplusState === 'night_session_done_idle' ||
|
||||
prevSurplusState === 'departure_done_idle'
|
||||
)
|
||||
);
|
||||
|
||||
const dayVehicleFullIdle =
|
||||
parsed.evcsVehicleConnected &&
|
||||
!inNightHcWindow &&
|
||||
!isStopMode &&
|
||||
!forceGridRequested &&
|
||||
!forceChargeRequested &&
|
||||
(dayVehicleFullPrev || evcsStatusCharged);
|
||||
|
||||
// P8 : correction du fix 04/08 (logique inversée : "|| vehicleChargeCompleted"
|
||||
// GARDAIT le latch après la charge au lieu de le libérer).
|
||||
const nightTakeoverLatched =
|
||||
@@ -693,6 +725,12 @@ if (departureChargeDone && profile !== 'night_hc' && !isStopMode && !forceGridRe
|
||||
sourceMode = 'blocked';
|
||||
}
|
||||
|
||||
// P10 : véhicule plein en journée (mémoire collante) → aucune source,
|
||||
// y compris solaire (charger un véhicule plein ne sert à rien).
|
||||
if (dayVehicleFullIdle && profile !== 'night_hc') {
|
||||
sourceMode = 'blocked';
|
||||
}
|
||||
|
||||
const operatingMode = profile;
|
||||
|
||||
// =====================================================
|
||||
@@ -810,6 +848,9 @@ return [{
|
||||
// P9
|
||||
departureUrgentActive,
|
||||
departureChargeDone,
|
||||
|
||||
// P10
|
||||
dayVehicleFullIdle,
|
||||
}
|
||||
}
|
||||
}];
|
||||
|
||||
Reference in New Issue
Block a user