État vérifié avant d'écrire : +etm53 sur la box, aucune clé de fuseau dans
`GetLoadConfig`, rien à câbler.
La distinction du moteur change ce qu'il faut PERSISTER, pas seulement afficher.
Le fuseau est une propriété du champ :
- une échéance client suit la maison — « 07:00 » nu est le bon stockage, et le
réinterpréter dans le nouveau fuseau est le comportement juste : l'habitude
suit le client ;
- une plage d'heures creuses est définie par le fournisseur — la réinterpréter
parce que la box a bougé est un défaut silencieux, et rien dans la donnée ne
permet de s'en apercevoir. Elle doit donc porter son fuseau de référence.
Et une demande : ne pas nous laisser coder `Europe/Paris` en dur. Un fournisseur
allemand définit ses plages en `Europe/Berlin` ; l'app choisirait une horloge à
la place de quelqu'un — le défaut d'aujourd'hui reproduit un cran plus haut.
L'avertissement de saisie compare deux choses différentes selon le champ :
installation vs appareil pour l'échéance, fournisseur vs installation pour la
plage tarifaire. Seul le second peut faire acheter au mauvais moment, et c'est
aussi le seul qu'un installateur ne peut pas deviner.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GKM8FDNHZWogAsjjfB8pSw