docs: protocole du relevé du 2026-09-08, écrit avant la mesure

Même raison que le critère de tri du §6 : un protocole rédigé après coup se plie à
ce qu'on a vu.

TROIS OBSERVATIONS. (1) progress.regime de la V2C — première bascule observable sur
du réel, et la dérogation en dépend entièrement puisque sa fin measurementLost se
déclenche sur ce signal. Les trois issues possibles sont écrites d'avance, et
AUCUNE n'est un échec : chacune décide de ce qu'on peut promettre. (2)
command.divergent — les premières traces qui passent le critère du §6, maintenant
qu'une borne charge vraiment et qu'un compteur suit ; regarder d'abord les épisodes
COURTS, ce sont eux qui décident si l'étape 4 vaut le risque de rejouer une
commande. (3) Min+PV sur la borne, où le tirage est dix fois celui du chauffe-eau.

Et le biais de comptage est rappelé : contrairement à « error limit reached », les
lignes [Divergence] DÉBUT/FIN sont émises aux transitions seulement — c'est le
comptage juste.

CE QUI INVALIDERAIT LE RELEVÉ est écrit aussi : tout redémarrage de nymead pendant
la fenêtre repose la base d'avancement. Ne rien déployer pendant l'observation.
This commit is contained in:
Patrick Schurig 2026-09-08 06:22:01 +02:00
parent ee67b21c2d
commit 06e728415f

View File

@ -345,3 +345,51 @@ une borne hors arbitrage, et des compteurs qui ne mesurent pas.
**Précondition pour la prochaine fenêtre** : un compteur RÉEL sur une charge pilotée
(`TEST_TERRAIN.md` §12), et une borne effectivement dans le waterfall — à vérifier au journal
avant d'ouvrir, pas après.
---
## 8. PROTOCOLE DU RELEVÉ DU 2026-09-08 — écrit avant, comme le critère
> La voiture revient vers 9 h. Ce qui suit est écrit **avant** de mesurer, pour la même raison que
> le critère de tri du §6 : un protocole rédigé après coup se plie à ce qu'on a vu.
### Ce qu'on observe, et ce qui serait un résultat
**1. `progress.regime` de la V2C — première bascule observable sur du réel.**
`sessionEnergy` est construit par le plugin, donc le régime devrait sortir `measured`. Mais sur un
lien qui perd 40 % de ses trames, il **basculera**. C'est l'observation qui compte le plus, parce
que **la dérogation en dépend entièrement** : sa fin par `measurementLost` se déclenche sur ce
signal, et on ne l'a jamais vu changer ailleurs qu'en test.
| ce qu'on voit | ce que ça dit |
|---|---|
| `measured` en continu | le lien tient assez pour que la cible soit vérifiable — la dérogation par cible est utilisable |
| bascules `measured` ↔ `unmeasurable` | **le cas nominal** de cette borne : la fin par perte de mesure va se déclencher souvent, et il faudra savoir à quelle fréquence avant de promettre une dérogation par cible |
| `unmeasurable` en continu | la cible en énergie n'est pas servable ici, et seule la durée reste |
**Aucune de ces trois n'est un échec** — chacune décide de ce qu'on peut promettre.
**2. `command.divergent` — les premières traces qui passent le critère du §6.**
Jusqu'ici, aucune trace n'était exploitable : compteurs constants des deux côtés (§7). Avec une
borne qui charge vraiment et un compteur qui suit, le critère est enfin satisfait —
`measurement.source ≠ none` et un compteur qui **a varié**.
**Regarder d'abord les épisodes COURTS.** Ce sont eux qui décident si l'étape 4 vaut le risque de
rejouer une commande : un écart de trois minutes qui se referme seul ne justifie pas de commander
du matériel sur une consigne ancienne ; un écart qui dure et ne se referme jamais, si.
> Et se souvenir du biais du journal : `grep -c` compte des **lignes**, pas des transitions
> (`PORTING_STATUS.md`). Ici la ligne `[Divergence] DÉBUT` / `FIN` est émise **aux transitions
> seulement** — c'est le comptage juste, contrairement à `error limit reached`.
**3. Min+PV lui-même** : palier éco au minimum avec `boundBy: minimum`, palier confort alimenté
par le surplus, et le recrédit visible dans `recreditedW`. Vérifié sur le chauffe-eau le
2026-09-07 ; reste à le voir sur la borne, où le tirage est dix fois plus grand.
### Ce qui invaliderait le relevé
- Un redémarrage de `nymead` pendant la fenêtre : la base d'avancement se repose et
`measuredSince` repart. **Ne rien déployer pendant l'observation.**
- Une bascule de fuseau : aucune n'est prévue, et il n'y en aura pas.