From e8ef252c900cc7b49798a0013cfed4f81b651844 Mon Sep 17 00:00:00 2001 From: Tallagrand Thierry Date: Fri, 18 Sep 2026 02:15:53 +0200 Subject: [PATCH] =?UTF-8?q?Le=20trou=20de=20couverture=20M4=20est=20bouche?= =?UTF-8?q?=20=E2=80=94=20la=20fenetre=20creuse=20n=20est=20pas=20forcemen?= =?UTF-8?q?t=20la=20nuit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit J avais declare le quatrieme mutant incouvrable : remettre le terme batterie dans le plancher nuage ne faisait echouer aucun test, et je pensais qu aucun scenario ne pouvait le distinguer, parce qu il faudrait faire coexister une descente de credit solaire (donc du soleil) avec un manque batterie en fenetre creuse (donc la nuit). L erreur etait dans le « donc la nuit ». Il y a DEUX fenetres creuses, et celle de midi (12:24-14:24) admet simultanement le soleil fort, les chargeurs brides et le manque batterie. Rien ne s exclut. Et le vrai discriminant n est pas l heure, c est un DVCC HAUT. A 30 A le terme batterie plafonne sous le budget de surtension et les deux variantes rendent la meme chose ; a 180 A — le profil de boost de journee de l ACM — il vaut 6639 W et le plancher pollue bloque la descente. Scenario ajoute, forme reelle de l episode du 17/09 (force_grid pose a midi, soleil, aucune voiture) avec en plus un manque batterie : formule correcte : 4219 W mutant M4 : 7309 W 3090 W d ecart. Avec le terme batterie dans le plancher, la consigne reste trop haute et evince le solaire : c est le defaut du 11/09 reintroduit par la porte de derriere. Le scenario ne teste donc pas une bizarrerie de forme, il protege contre le retour d un incident connu. Les deux valeurs ont ete obtenues independamment sur deux implementations distinctes et concordent au watt. Golden 104 -> 105. ⚠️ RIEN N EST POUSSE VERS n8n. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01GwpFpy2aQ2rJok6tNQSbVj --- tests/golden/scenarios.mjs | 42 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/tests/golden/scenarios.mjs b/tests/golden/scenarios.mjs index 59bb140..3c9fb58 100644 --- a/tests/golden/scenarios.mjs +++ b/tests/golden/scenarios.mjs @@ -2403,6 +2403,48 @@ export const scenarios = [ gridSetpointW: 5437, }, }, + { + id: 'consigne-bilan-plancher-nuage-exclut-la-batterie', + label: 'CONSIGNE 18/09 — midi, soleil bride, manque batterie, PAS de voiture : le terme batterie ne doit PAS remonter le plancher nuage', + time: MIDDAY, + overrides: { + // ⚠️ LA FENETRE CREUSE N'EST PAS FORCEMENT LA NUIT. Celle de midi + // (12:24-14:24) admet simultanement ce qu'on croyait incompatible : du + // soleil fort, des chargeurs brides, et un manque batterie. C'est la + // seule configuration qui distingue un plancher nuage correct d'un + // plancher pollue par le terme batterie — et le discriminant n'est pas + // l'heure, c'est un DVCC HAUT. A 30 A le terme batterie plafonnerait sous + // le budget de surtension et les deux variantes rendraient la meme chose. + // + // Forme reelle : c'est l'episode du 17/09 — force_grid pose a midi, + // soleil, aucune voiture — avec en plus un manque batterie et l'ACM en + // boost de journee (180 A, son profil de 07:30). + victron_evcs_strategy: 'force_grid_now', + evcs_vehicle_connected: 'off', evcs_device_connected: 'on', + grid_state: 'on', victron_acin1_available: '1', + soc_percent: '35', battery_current_a: '20', + pv_power_w: '7000', pv_power_10m_avg_w: '6500', pv_trend_w: '0', + mppt_operation_modes: 'voltage_current_limited,voltage_current_limited,mppt_active,mppt_active,mppt_active,mppt_active,mppt_active', + house_ac_power_w: '900', vebus_ac_out_l1_power_w: '900', + evcs_ac_power_w: '0', + grid_setpoint_w: '8000', + dvcc_max_charge_current_a: '180', + // 35 % -> 90 % entierement au-dessus du genou : 55 points x 0,169 = 9,295 kWh. + balance_required_soc: '90', balance_grid_energy_needed_kwh: '9.295', + balance_energy_to_cover_kwh: '9.295', + balance_status: 'ok', balance_last_run: '08/08 12:30', + }, + expect: { + // Des chargeurs brides prouvent qu'il reste de la ressource : la consigne + // DESCEND. Le plancher qui borne cette descente vaut maison + voiture, + // soit 900 W ici. Si le terme batterie y entrait, le plancher remonterait + // de plusieurs kW et BLOQUERAIT la descente — la consigne resterait haute + // et evincerait le solaire, c'est-a-dire le defaut du 11/09 reintroduit + // par la porte de derriere. Ce scenario ne teste donc pas une bizarrerie + // de forme, il teste le retour d'un incident connu. + gridSetpointW: 4219, + }, + }, { id: 'nuit-sans-vehicule-batterie-couverte', label: "CONTREFACTUEL — meme nuit sans vehicule mais SOC 70 au-dessus des 59,1 % requis : aucune session, la batterie passe la nuit seule",