Patrick Schurig 78f7fa23a9 docs(§10): +etm49 — purchasedWh marche, et deux champs se contredisent
Sonde sur le banc (obligation déclarée puis retirée, restauration « 0 écart »).

Vérifié : les cinq symboles dans le binaire déployé, tous en UTF-16 ;
`progressMeasurable` bien dans `GetLoadConfig` en `r:` ;
`progressUnmeasurableCause` absent quand il n'y a pas de cause ; et
`purchasedWh` qui accumule SOUS `unmeasurable` — 0 → 43,12 Wh, ~648 W, cohérent
avec `gridW`, donc recoupable par l'écran.

Mais `progressMeasurable: true` et `regime: "unmeasurable"` sortent sur la MÊME
charge au même cycle, et le code dit pourquoi : `progressMesurable()` teste ce
que le MATÉRIEL permet (compteur désigné qui compte l'énergie), tandis que
`sessionMeasurable` — qui décide du régime — n'est posé que dans `evadapter.cpp`.
Sur toute charge non-VE, l'un dit oui et l'autre non.

Conséquence : l'avertissement de saisie, qui se déclenche sur
`progressMeasurable == false`, restera muet exactement sur les charges achetées à
l'aveugle. Nous ne le câblons pas sur ce champ, et l'app ne peut pas rattraper —
à la saisie la charge n'est pas dans `loads[]`, donc son régime n'existe pas.

Statut sans reproche : l'escalade est toujours là en +etm49 (`remainingWh` figé,
`gridW` 645 → 654). Le taux constant est retenu, pas déployé.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GKM8FDNHZWogAsjjfB8pSw
2026-09-03 06:54:45 +02:00
..