diff --git a/debian-qt5/changelog b/debian-qt5/changelog index b488fa5..36b7bde 100644 --- a/debian-qt5/changelog +++ b/debian-qt5/changelog @@ -1,3 +1,42 @@ +powersync-energy-plugin-nymea (1.15.2+etm26) trixie; urgency=medium + + * LA MESURE D'UNE CHARGE SE LIT SUR L'APPAREIL PILOTÉ (LM-1105). Il fallait jusqu'ici désigner + une borne comme SON PROPRE compteur dans meterThingId pour qu'elle publie ce qu'elle mesure + déjà. Ce n'est devinable par personne — c'est de la configuration demandée à l'installateur + pour compenser ce que le moteur peut déduire. Quand le Thing piloté porte lui-même l'état de + puissance, le moteur le lit, sans configuration. + * La règle porte sur le THING, pas sur le mécanisme : certains powerswitch portent currentPower + et RelayRouter sait déjà les sommer. Et le test se pose sur la CLASSE, sur TOUS les Things + déclarés — jugé sur les relais actifs, il répondrait « non mesurable » au palier 0, et le bloc + de mesure apparaîtrait et disparaîtrait au rythme du thermostat. + * Le compteur explicite reste PRIORITAIRE, et pas d'abord parce qu'il mesure mieux : un réglage + sans effet est pire que pas de réglage. La priorité porte sur la SOURCE, pas sur la valeur — + compteur déclaré injoignable, on retombe sur l'appareil plutôt que de taire une mesure qu'on a. + * measuredW DISPARAÎT au profit de measurement {source: meter|device|none, o:powerW} (LM-1106). + Le moteur portait déjà trois régimes sous un seul nom et jetait la distinction : evcharger + rend une mesure, relay-router une mesure OU le palier nominal — le booléen `metered` était + calculé puis jeté — et sg-ready une puissance DÉCLARÉE, jamais mesurée. Le régime se PUBLIE, + il ne se déduit pas d'une valeur. + * `none` est un état POSITIF, et powerW y est OMIS : la puissance nominale reste lisible dans + mechanism.*, elle ne se fait pas passer pour une mesure. Un écart commandé↔mesuré fabriqué + depuis un nominal serait identiquement nul à tous les cycles — un « tout concorde » permanent, + corollaire LM-104. + * Deux affinements trouvés en implantant. LM-1105-a : une mesure PARTIELLE n'est pas une mesure + — trois relais dont un seul mesure annonceraient 500 W là où 1 500 W coulent. LM-1105-b : la + règle présuppose que le Thing piloté est TRAVERSÉ par la puissance ; un contact SG-Ready est + un contact de SIGNAL, et sg-ready est donc `none` par CONSTRUCTION, même sur des relais qui + mesurent. C'est le seul mécanisme où meterThingId reste la seule voie. + * ILoadAdapter::deviceMeasurement() est PURE VIRTUELLE, comme runtimeView() : un mécanisme + ajouté qui hériterait d'un « non mesurable » par défaut sortirait de la mesure sans bruit. + * Ne touche PAS ce que l'arbitre lit : LM-1101 tient, LoadTelemetry::currentPowerW est inchangé, + et le recrédit anti-clignotement n'a jamais transité par meterThingId. + * Éprouvé par testMeasurementSourceIsPublished — trois sources, palier 0, PAC en `none`, et les + deux règles de priorité ; la règle « capacité jugée sur la classe » vérifiée échouant quand on + la juge sur les relais actifs. Suite complète : simulation 30/30, charging 16/16, loadmodel + 18/18, spotmarket 7/7. amd64 0 erreur / 0 avertissement. + + -- Patrick Schurig Fri, 28 Aug 2026 16:05:00 +0200 + powersync-energy-plugin-nymea (1.15.2+etm25) trixie; urgency=medium * UNE BORNE SANS VOITURE ASSIGNÉE RESTE ARBITRÉE (LM-1208-b). Le cas de l'invité : au banc le