Patrick Schurig 2d615e6bcc docs(design §10): réconcilié avec le délestage livré, et plan en quatre étapes
Ce design précédait le lot délestage. Trois de ses sections décrivaient du
code désormais livré (le plafond comme objet, le délestage, DRAW_CAP), et
une proposait une forme depuis refusée. Le lire tel quel faisait
reconstruire l'existant.

La correction qui compte : PlanDraw n'a qu'un champ. L'absence
d'authorisedW/remainingW a été défendue en prose puis épinglée par un test,
au motif qu'un authorisedW forgé afficherait un plafond qui n'existe pas.
Ce motif est TOMBÉ — le plafond existe maintenant, et le champ serait une
lecture. C'est une décision à reprendre, pas une règle à appliquer : une
décision juste dont le motif a disparu et dont seule la formulation survit.

Plan de travail réécrit sur la stratégie qui a marché au délestage : trois
étapes à comportement constant, une seule qui change.

  A — le split décider/émettre, sans ajouter de fonction. Aujourd'hui
      buildSetpointAction() décide, écrête, comptabilise et motive dans le
      même geste, et décrémente le budget en émettant : une seconde passe y
      est littéralement inexprimable. Piège nommé : l'arrondi et l'écrêtage
      de verrou doivent migrer SANS changer d'ordre relatif, ECS-306 et
      ECS-309 en dépendent — les déplacer ferait publier des motifs faux
      sans qu'aucun nombre ne bouge.
  B — draw complété (binding, perPhaseBound, authorisedW, remainingW),
      publication seule.
  C — l'avancement branché EN LECTURE SEULE : sessionWh alimenté, progress
      publié avec son régime. C'est là que R5 devient vraie et que R6
      devient testable AVANT d'être nécessaire — on sépare publier le
      régime de décider avec, comme measurement l'a été de l'arbitrage.
  D — la passe éco, seule étape qui change le comportement.

Quatre décisions posées, dont la centrale : comment une obligation en
ÉNERGIE devient une cible en WATTS. minEnergyWhPerDay est transporté et lu
par aucune décision ; sessionWh est déclaré et rempli nulle part. Les deux
moitiés de l'obligation éco sont de la plomberie inerte.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015F7G5VeaPVSMeVNjiGj36p
2026-08-30 22:34:44 +02:00
..