chore(release): 1.15.2+etm29
ECS-111 défini et corrigé — le premier défaut réel exhumé par l'index des règles. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015F7G5VeaPVSMeVNjiGj36p
This commit is contained in:
parent
227960a5fd
commit
8fe7e19382
@ -1,3 +1,47 @@
|
|||||||
|
powersync-energy-plugin-nymea (1.15.2+etm29) trixie; urgency=medium
|
||||||
|
|
||||||
|
* ECS-111 DÉFINI ET CORRIGÉ — un relais déclaré qui manque au registre nymea rend la charge
|
||||||
|
INDISPONIBLE. Le comportement était « non défini » depuis l'écriture de la spec :
|
||||||
|
findConfiguredThing rendait nullptr, writeRelay loguait et continuait, telemetry() SAUTAIT le
|
||||||
|
relais. Deux issues, toutes deux fausses — ou bien plus aucun relais actif ne mesurait et
|
||||||
|
l'on retombait sur le nominal du PALIER ENTIER, part du relais fantôme comprise ; ou bien des
|
||||||
|
survivants mesuraient et l'on publiait une somme SOUS-ÉVALUÉE.
|
||||||
|
* Ce n'était pas un défaut d'affichage. telemetry().currentPowerW alimente le recrédit
|
||||||
|
anti-clignotement, donc le BUDGET : l'arbitre se trompait sur le surplus disponible pendant
|
||||||
|
qu'available restait vrai. Un mensonge qui décide, pas un mensonge qui s'affiche.
|
||||||
|
* La règle retenue est celle de la famille : available faux, faultCode THING_MISSING, et le
|
||||||
|
traitement d'ECS-410 — sortie de l'ARBITRAGE, maintien dans la COMPTABILITÉ, figée à la
|
||||||
|
puissance crue engagée. La puissance est donc RETIRÉE du budget des charges suivantes au lieu
|
||||||
|
de leur être recréditée. Aucune somme partielle n'est jamais publiée.
|
||||||
|
* Écartée : « compter 0 W et servir le reste ». Un relais absent du registre est un Thing
|
||||||
|
supprimé ou un plugin qui ne le voit plus — on ne sait pas dans quel état est le contact, et
|
||||||
|
servir le reste reviendrait à commander une charge dont on ne connaît plus la configuration
|
||||||
|
matérielle.
|
||||||
|
* Jugé sur TOUS les relais déclarés, jamais sur ceux du palier courant : au palier 0 aucun n'est
|
||||||
|
fermé, et juger là-dessus ferait basculer la disponibilité au rythme du thermostat. Même règle
|
||||||
|
que deviceMeasurement(), qui traitait DÉJÀ le cas correctement en rendant source: "none" —
|
||||||
|
aligner l'ancien sur le neuf, pas inventer une politique.
|
||||||
|
* THING_MISSING prime sur WRITE_FAILED dans runtimeView() : un relais absent EXPLIQUE les
|
||||||
|
écritures qui échouent, et annoncer WRITE_FAILED enverrait l'opérateur au bus quand la cause
|
||||||
|
est dans la configuration. Corollaire écrit : ClearLoadFault lève le défaut d'ÉCRITURE mais ne
|
||||||
|
fait pas exister un Thing — les deux causes se lisent séparément.
|
||||||
|
* testEcsPartialFailure a dû être ajusté, et c'est instructif : il se servait d'un relais JAMAIS
|
||||||
|
CONFIGURÉ comme raccourci pour forcer un échec d'écriture. Le raccourci a désormais un sens
|
||||||
|
propre. Le test distingue maintenant les deux — le défaut collant se lève, le câblage
|
||||||
|
manquant non.
|
||||||
|
* Éprouvé par testVanishedRelayFreezesTheLoad, vérifié échouant sans le correctif, dont la
|
||||||
|
troisième assertion est celle qui compte : ce que le fantôme laissait aux charges SUIVANTES.
|
||||||
|
* TROUVÉ PAR LA LECTURE D'UNE RÈGLE, ni par un test ni par le banc. ECS-111 dormait dans une
|
||||||
|
table de statut supprimée depuis, et est ressortie dans les quatorze règles « spécifiées
|
||||||
|
seules en territoire livré » que tools/gen-rules.py a listées. Premier défaut réel exhumé par
|
||||||
|
le chantier de documentation.
|
||||||
|
* Passe aussi : trois citations de règles ajoutées (LM-400, LM-301-b, LM-600), quatre règles
|
||||||
|
passées en cadrage, et la classe « cadrage » elle-même — 70 « spécifiée seule » au départ,
|
||||||
|
33 aujourd'hui. Suite complète : simulation 33/33, charging 16/16, loadmodel 20/20,
|
||||||
|
spotmarket 7/7. amd64 0 erreur / 0 avertissement, doxygen 0 avertissement.
|
||||||
|
|
||||||
|
-- Patrick Schurig <etm.schurig@gmail.com> Sat, 29 Aug 2026 15:05:00 +0200
|
||||||
|
|
||||||
powersync-energy-plugin-nymea (1.15.2+etm28) trixie; urgency=medium
|
powersync-energy-plugin-nymea (1.15.2+etm28) trixie; urgency=medium
|
||||||
|
|
||||||
* LE RATTRAPAGE DE CONFIGURATION EST CYCLIQUE (LM-1209-e). provisionEvChargerConfig() vivait
|
* LE RATTRAPAGE DE CONFIGURATION EST CYCLIQUE (LM-1209-e). provisionEvChargerConfig() vivait
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user