Consigne app §G (décision Patrick du 2026-10-16) et motifs etm70 (§H). G — la carte « Héos pilote en ce moment » affichait des décisions inventées (HeosDecision.demo : voiture 3,6 kW, batterie en charge sur un banc sans batterie). Remplacée par EnCeMomentCard : une ligne par charge de GetLoadTelemetry — libellé de la configuration, decision.code + params rendus par decisionText, puissance MESURÉE seulement (jamais l'allocation à sa place). Titre en clé l10n. Rien sur « optimiseur actif » tant que l'objet de capacités n'existe pas. Marque retirée des identifiants (HeosDecisionCard, HeosDecision, HeosAction, _HeosChip, _HeosBadgeSmall, heosActive → pilotageActif…), des fichiers (heos_decision_card.dart, dashboard_models.dart supprimés), des textes affichés (hub du flux, écran A/C) et des commentaires : grep -ri héos/heos vide sur lib/, test/, assets/ et les .arb. H — contre INTERFACE.md local de la branche moteur, etm70 pas encore sur le banc : - motifs éco publiés à la racine (R7, part majoritaire) rendus en clair ; ventilation des niveaux affichée (« 83 W éco + 0 W confort », vu sur la trame réelle etm69) ; - ECO_FLOOR_MISSED retenu par charge (publié un seul cycle), y compris pour une charge sortie de loads[] ; « manque non chiffrable » quand missingWh est absent, jamais 0 Wh ; - PRICE_SLOT et OPTIMIZER_DECISION en FR / DE / EN (app_en.arb et app_de.arb créés pour ces seules clés ; le reste retombe sur le français, listé dans l10n_untranslated.json). Code inconnu : repli générique avec le code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
141 lines
2.7 KiB
JSON
141 lines
2.7 KiB
JSON
{
|
|
"_source": "dump réel banc hems 10.42.60.21, NymeaEnergy.GetLoadTelemetry, 2026-10-16, moteur 1.15.2+etm69",
|
|
"telemetry": {
|
|
"budget": {
|
|
"allocatedW": 1200,
|
|
"evReservedW": 0,
|
|
"recreditedW": 1200,
|
|
"remainingW": -949.3777465820312,
|
|
"surplusW": -949.3777465820312
|
|
},
|
|
"degradedMode": false,
|
|
"draw": {
|
|
"authorisedW": 6261.473164558411,
|
|
"binding": "connection",
|
|
"bindingPhase": "C",
|
|
"committedW": 83.33333333333333,
|
|
"perPhaseBound": true,
|
|
"remainingW": 6178.139831225078
|
|
},
|
|
"loads": [
|
|
{
|
|
"allocatedW": 83.33333333333333,
|
|
"available": true,
|
|
"decision": {
|
|
"code": "SURPLUS_INSUFFICIENT",
|
|
"level": "comfort",
|
|
"params": {
|
|
"budgetW": -949
|
|
}
|
|
},
|
|
"levels": [
|
|
{
|
|
"counts": {
|
|
"draw.committedW": 83.33333333333333
|
|
},
|
|
"decision": {
|
|
"code": "ECO_FLOOR_GRID",
|
|
"params": {
|
|
"atMaximum": false,
|
|
"gridW": 83,
|
|
"regime": "unmeasurable",
|
|
"remainingS": 53039,
|
|
"remainingWh": 2000,
|
|
"targetWh": 2000
|
|
}
|
|
},
|
|
"funding": "grid",
|
|
"level": "eco",
|
|
"progress": {
|
|
"purchasedWh": 764.9768518518601,
|
|
"regime": "unmeasurable",
|
|
"targetWh": 2000
|
|
},
|
|
"targetW": 83.33333333333333
|
|
},
|
|
{
|
|
"counts": {
|
|
"budget.allocatedW": 0
|
|
},
|
|
"decision": {
|
|
"code": "SURPLUS_INSUFFICIENT",
|
|
"params": {
|
|
"budgetW": -949
|
|
}
|
|
},
|
|
"funding": "surplus",
|
|
"level": "comfort",
|
|
"targetW": 0
|
|
}
|
|
],
|
|
"loadId": "chauffe-eau",
|
|
"measurement": {
|
|
"source": "none"
|
|
},
|
|
"mechanism": {
|
|
"kind": "relay",
|
|
"maxStageW": 3500,
|
|
"stageW": 0,
|
|
"stagesW": [
|
|
0,
|
|
500,
|
|
1000,
|
|
1500,
|
|
2000,
|
|
2500,
|
|
3000,
|
|
3500
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"allocatedW": 1200,
|
|
"available": true,
|
|
"command": {
|
|
"divergent": true,
|
|
"expectedW": 1200,
|
|
"observedW": 0,
|
|
"since": "2026-10-15T06:12:00Z"
|
|
},
|
|
"decision": {
|
|
"code": "BELOW_MIN_POWER",
|
|
"level": "comfort",
|
|
"params": {
|
|
"budgetW": 251,
|
|
"minPowerW": 1500,
|
|
"state": 3
|
|
}
|
|
},
|
|
"levels": [
|
|
{
|
|
"counts": {
|
|
"budget.allocatedW": 1200
|
|
},
|
|
"decision": {
|
|
"code": "BELOW_MIN_POWER",
|
|
"params": {
|
|
"budgetW": 251,
|
|
"minPowerW": 1500,
|
|
"state": 3
|
|
}
|
|
},
|
|
"funding": "surplus",
|
|
"level": "comfort",
|
|
"targetW": 1200
|
|
}
|
|
],
|
|
"loadId": "pac-terrain",
|
|
"measurement": {
|
|
"powerW": 0,
|
|
"source": "meter"
|
|
},
|
|
"mechanism": {
|
|
"estimatedPowerW": 1200,
|
|
"kind": "sgReady",
|
|
"state": 2
|
|
}
|
|
}
|
|
],
|
|
"timestamp": "2026-10-16T19:16:00Z"
|
|
}
|
|
} |