docs: retour au moteur sur 3g-2 — deux vérifications, et une question sur la cible aveugle
Aller-retour neutre confirmé sur les quatre entrées, glissement sans cas particulier confirmé, correctif de description constaté en place. Deux choses à leur rendre : EV_GRID_START aurait cassé en silence la réconciliation posée hier (une ligne à funding grid dont la part surplus n'est pas nulle), et il n'existe aucun SOC de véhicule dans le contrat — donc targetPercentage est une cible sans mesure d'avancement, qu'aucun écran ne peut suivre. La question leur revient. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016vrTVifar2GN5rtUh89Wkq
This commit is contained in:
parent
f7fd91edde
commit
963ab98f13
@ -2,6 +2,71 @@
|
||||
|
||||
---
|
||||
|
||||
## 2026-08-27 (soir) — retour sur le brief 3g-2
|
||||
|
||||
Les quatre points sont traités. Deux vérifications que vous nous demandiez, et trois
|
||||
constats en retour.
|
||||
|
||||
### A. Vérifié sur `.75` en `+etm24`, comme demandé
|
||||
|
||||
- **Aller-retour neutre avec les entrées `evcharger`** : `loadconfig_roundtrip.dart` sur
|
||||
les quatre entrées → verdict `IDENTIQUE`. Aucun adaptateur reconstruit.
|
||||
- **Le glissement les traite sans cas particulier.** Il n'y avait rien à ajouter : le
|
||||
réaplatissage renumérote `1..N` sur toute la liste et ne touche que `priority`. Aucune
|
||||
branche ne regarde l'adaptateur, y compris à l'inversion borne / charge pilotée.
|
||||
- **Votre correctif de description est en place** : `SetChargingInfo` énumère désormais
|
||||
chaque défaut et conclut *« Read the object with GetChargingInfos, change what you need,
|
||||
and send it back complete. »* Le point A du retour précédent est clos.
|
||||
|
||||
### B. `EV_GRID_START` aurait cassé notre réconciliation en silence
|
||||
|
||||
C'est le paragraphe le plus utile de votre brief, et il est facile à lire de travers. Nous
|
||||
avions posé hier l'identité *somme des `allocatedW` financés au surplus ==
|
||||
`budget.allocatedW`*, en filtrant sur `funding`. Avec `funding: "grid"`, une ligne
|
||||
`EV_GRID_START` aurait compté **zéro** au lieu de `budgetW` — un trou de la taille de la
|
||||
part surplus, dans un contrôle dont l'échec ne dit jamais pourquoi.
|
||||
|
||||
Traité : la part réconciliable d'une charge n'est plus `allocatedW` filtré mais une part
|
||||
explicite, qui vaut `budgetW` sur ce motif et `allocatedW` partout ailleurs. Sans
|
||||
`budgetW`, elle rend zéro plutôt qu'une part devinée.
|
||||
|
||||
Le motif n'ayant jamais été vu sur machine, cette branche n'est **éprouvée que par test**.
|
||||
Signalez-nous la première occurrence réelle.
|
||||
|
||||
### C. Il n'existe aucun SOC de véhicule dans le contrat — et l'écran en promettait un
|
||||
|
||||
Notre carte de recharge affichait un état de charge codé en dur. En cherchant à le
|
||||
brancher, le relevé est net : sur les **58 classes** de `.75`, **aucune** classe portant
|
||||
l'interface `evcharger` ne déclare d'état de charge, **aucune** ne porte l'interface `car`,
|
||||
et les deux bornes du banc publient `pluggedIn`, `charging`, `maxChargingCurrent`,
|
||||
`phaseCount`, `sessionEnergy` — jamais un pourcentage.
|
||||
|
||||
Retiré côté app plutôt que remplacé : le seul `batteryLevel` de l'installation est celui de
|
||||
la batterie de la maison, et l'afficher en face d'une cible de recharge remplacerait un
|
||||
chiffre faux par un chiffre faux et crédible.
|
||||
|
||||
**La question qui vous revient** : `targetPercentage` est une cible sans mesure d'avancement.
|
||||
Tant que rien ne publie le SOC du véhicule, une échéance de départ ne peut être ni suivie ni
|
||||
vérifiée à l'écran — l'utilisateur pose une cible et n'apprend jamais si elle a été tenue.
|
||||
Est-ce que quelque chose est prévu de ce côté, ou faut-il considérer la cible comme
|
||||
définitivement aveugle ?
|
||||
|
||||
### D. Rang par défaut — pris comme non tranché
|
||||
|
||||
L'écran nomme désormais les égalités de rang au lieu de les présenter comme un classement,
|
||||
et la note disparaît d'elle-même au premier vrai réglage. Nous ne fixons rien de plus tant
|
||||
que le point n'est pas tranché chez vous.
|
||||
|
||||
### E. Méthode
|
||||
|
||||
La forge est toujours à terre (`192.168.1.113` refuse la connexion, front public en 503).
|
||||
Nos **34 commits** attendent en local, avec un bundle de secours en
|
||||
`~/bundles/etm-powersync-app_feature-beta-add-config_2026-08-27.bundle` (vérifié, historique
|
||||
complète). Votre brief 3g-2 n'ayant pas pu voyager non plus, nous l'avons rapatrié depuis
|
||||
`etm-powersync-energy-plugin-etm/docs/`.
|
||||
|
||||
---
|
||||
|
||||
## 2026-08-27 — retour sur le brief 3g-1 (`docs/BRIEF_depuis_plugin.md`)
|
||||
|
||||
Les quatre points sont traités côté app. Deux constats en retour, dont un actionnable chez
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user