From 35e577ce6caebdba6af4a29621a06256270e359f Mon Sep 17 00:00:00 2001 From: Patrick Schurig Date: Fri, 28 Aug 2026 14:54:40 +0200 Subject: [PATCH] =?UTF-8?q?docs(=C2=A711):=20la=20r=C3=A8gle=20d'affichage?= =?UTF-8?q?=20du=20compteur=20se=20lit=20sur=20source,=20jamais=20sur=20ad?= =?UTF-8?q?apter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signalé en relayant +etm26 : « masqué dès que la charge mesure, sauf SG-Ready » formule la règle PAR MÉCANISME. La conclusion est bonne, la clé est fausse, et le contrat ne l'interdisait pas explicitement. L'exception SG-Ready est déjà DANS LA DONNÉE : un sg-ready publie `none`, donc « masquer quand source == device » ne le masque pas, sans qu'aucun client ait à connaître le mécanisme. Et brancher sur `adapter` se trompe sur un cas qui n'a rien de théorique : un relay-router à topologie MIXTE publie lui aussi `none` (LM-1105-a). Un client qui déciderait au mécanisme masquerait le champ sur un ECS qui ne peut être mesuré QUE par un compteur dédié. Un mécanisme est un mauvais indice de mesurabilité ; la source EST la mesurabilité. C'est LM-1106 pris par l'autre bout : le régime est publié POUR qu'il ne soit pas déduit. Le redéduire du mécanisme côté client remettrait dans l'app la déduction qu'on vient de retirer du moteur — et il faudrait la maintenir à chaque mécanisme ajouté. Aucun code, aucune sémantique déplacée : le contrat dit désormais ce qu'il laissait deviner. Pas de release. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_015F7G5VeaPVSMeVNjiGj36p --- specs/spec_loadmodel.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/specs/spec_loadmodel.md b/specs/spec_loadmodel.md index aee17b1..170ce07 100644 --- a/specs/spec_loadmodel.md +++ b/specs/spec_loadmodel.md @@ -1026,6 +1026,22 @@ dédié » se **masque par défaut** là où `source` vaut `device`, et se propo Il ne doit pas être *interdit* : ce serait fermer le cas ci-dessus, et casser le compteur de tableau divisionnaire couvrant plusieurs charges (LM-1104). +> **La règle de présentation se lit sur `source`, JAMAIS sur `adapter`.** La tentation est +> d'écrire « masqué sauf pour `sg-ready` », puisque LM-1105-b fait de ce mécanisme une +> exception. Mais l'exception est déjà **dans la donnée** : un `sg-ready` publie `none`, donc la +> règle « masquer quand `source == "device"` » ne le masque pas — sans qu'aucun client ait à +> connaître le mécanisme. +> +> Et brancher sur `adapter` se **trompe** sur un cas qui n'a rien de théorique : un +> `relay-router` à topologie **mixte** publie lui aussi `none` (LM-1105-a). Un client qui ne +> déciderait qu'au mécanisme masquerait le champ sur un ECS qui, précisément, ne peut être +> mesuré que par un compteur dédié. Un mécanisme est un mauvais indice de mesurabilité ; la +> source EST la mesurabilité. +> +> C'est LM-1106 pris par l'autre bout — le régime est publié **pour** qu'il ne soit pas déduit, +> et le déduire du mécanisme côté client remettrait dans l'app la déduction qu'on vient de +> retirer du moteur. + --- ## §12 — Le plancher de modulation