diff --git a/actes/2026-11-03-m7b-lecteur-mineurs.md b/actes/2026-11-03-m7b-lecteur-mineurs.md index 96e7f81..61c406c 100644 --- a/actes/2026-11-03-m7b-lecteur-mineurs.md +++ b/actes/2026-11-03-m7b-lecteur-mineurs.md @@ -1,9 +1,9 @@ # Acte — Mise en ligne M7b (les mineurs du lecteur, lot U2) Classe : déploie Projet : libreDecision Date : 2026-11-03 -**État : EN PRÉPARATION** sur `6f6197c` (`6f6197cc231837df55d6b3e1986f61be5d708a1f`) — préparé par -l'intégrateur libredecision-d4 ; exécuté par orch (dev-63) sous son mandat (« déploie » et « pousse », du -03/11 au 08/11). Relecture indépendante : en cours (lancée le 03/11 à 11 h 51). +**État : FIGÉ** sur `6f6197c` (`6f6197cc231837df55d6b3e1986f61be5d708a1f`) le 03/11 à 12 h 07 — préparé +par l'intégrateur libredecision-d4 ; exécuté par orch (dev-63) sous son mandat (« déploie » et « pousse », +du 03/11 au 08/11). Relecture indépendante : « 6f6197c : ok » (prémisse 3). ## Intention @@ -58,15 +58,21 @@ scratchpad de l'intégrateur). Deux démarrages. téléphone (Pixel 7), `fr-FR`, vue membre et vue administrateur. Scripts `m7b/recette.mjs` et `m7b/probe.mjs` ; rapport `m7b/shots/rapport.json` ; captures dans `/tmp/claude-1001/-home-yvv-Documents-PROD-DEV-libreDecision/d0a7108b-7f2f-484a-bcb0-de339238199d/scratchpad/m7b/shots/`, -regardées. +regardées. `recette.mjs` : 12 étapes, **4 en échec** par délai dépassé (« 2 les trois lectures » et +« 1-4b » sur bureau et téléphone) : mes sélecteurs, pas l'interface (les lectures sont des `radio`, pas +des `button` ; une ligne à deux versions s'ouvre d'abord sur ses variantes). Ces mesures ont été refaites +par `probe.mjs` (sortie dans le transcript de l'intégrateur, non conservée en fichier) : téléphone, rangée +des lectures 370 / 370, « Tout déplier » 44 px, vote de la variante 1.0.0 sans « Autres versions » ni +0.4.0, gestes du vote 44 px ; bureau, rangée 412 / 412, « Tout déplier » 36 px. Le relecteur les a +refaites de son côté, vraies (prémisse 3). | Point | Mesuré sur les données de production | Captures | |---|---|---| | 1 | Téléphone : « Tout déplier » 44 px ; dans le vote déplié, Pour, Contre, « Réglages de la formule », « Coquilles… » 44 px ; « Proposer cet ordre » 44 px ; administrateur : « Fixer ce quorum » 44 px, le champ 44 px. (Bureau : 36 à 39 px, la règle vaut pour le téléphone.) | `telephone-1c-admin-quorum`, `telephone-4b-deux-versions`, `telephone-3-ordre-inchange` | -| 2 | Téléphone : la rangée des lectures tient (370 px de contenu pour 370 visibles ; avant M7b, 412 pour 370), « Si tout passe » entier sur sa ligne ; la page ne déborde pas. | `telephone-5-entete` | +| 2 | Téléphone : la rangée des lectures tient (370 px de contenu pour 370 visibles ; avant M7b, 412 pour 370 selon la relecture de M7, non remesuré ici), « Si tout passe » entier sur sa ligne ; la page ne déborde pas. | `telephone-5-entete` | | 3 | « Proposer cet ordre » éteint, et la phrase « C'est l'ordre en vigueur : déplace au moins un article. » visible (bureau et téléphone). | `*-3-ordre-inchange` | | 4 | Vote déplié de Raison d'être : « Inertie · ▮▮▯▯▯ 2 / 5 · basse » une fois (l'autre « 2 / 5 » est la ligne d'historique) ; la ligne « 0 pour · 0 contre · 9 oui sur 12 » n'est plus redite au-dessus. Rencontre physique (deux variantes) : le vote de la variante 1.0.0 ne redit pas l'autre (0 « Autres versions », 0 mention de 0.4.0). | `*-4a-seed-deplie`, `*-4b-deux-versions` | -| 5 | « 0 article en vigueur · 3 Propositions seed · 32 propositions en cours » (avant : « 35 propositions en cours », ordres compris). | `*-5-entete` | +| 5 | « 0 article en vigueur · 3 Propositions seed · 32 propositions en cours » dans la lecture « En vigueur » (avant : « 35 propositions en cours » ; la production n'a aucun ordre proposé ouvert, l'écart de 35 à 32 est celui des 3 Propositions seed, comptées à part). | `*-5-entete` | | 6 | Aucun changement d'inertie de module ouvert en production : prouvé par C38 sur une base de test, pas vu sur ces données. | — | Vu en passant, **pas du lot U2, déjà en ligne, en liste d'attente** : @@ -74,8 +80,8 @@ Vu en passant, **pas du lot U2, déjà en ligne, en liste d'attente** : quand le nom affiché est long (« Recette U2 bur… » : la quatrième pastille et « Se déconnecter » coupés ; « Sonde bur… » : tout tient) ; - sur téléphone, le sceau fixe chevauche « Réordonner » en bas à droite. -Aussi : la carte du document sur la page du groupe compte toujours le total du serveur (35, ordres -compris) ; changer ce compte toucherait le serveur (rapport de U2). +Aussi : la carte du document sur la page du groupe compte toujours le total du serveur (35, Propositions +seed comprises) ; changer ce compte toucherait le serveur (rapport de U2). ## Effet attendu @@ -91,6 +97,30 @@ Irréversibilité : **aucune** côté données ; le code se remet en arrière. 2. `git diff 84f015a 6f6197c -- crates/ld-server crates/trustin-access seeds docker .woodpecker .env data` → vide. 3. La relecture indépendante de `6f6197c`, inscrite « ok » dans `~/harness/etat/relectures.json`. + **Faite** : sous-agent neuf, sans le contexte de l'intégrateur, sur `84f015a..6f6197c`, lancée à + 11 h 51, rendue à 12 h 05, inscrite à 12 h 06 (transcript + `~/.claude/projects/-home-yvv-Documents-PROD-DEV-libreDecision/d0a7108b-7f2f-484a-bcb0-de339238199d/subagents/agent-afbf95d4047008567.jsonl`, + dernière ligne « 6f6197c : ok »). Aucun bloquant, aucun « à reprendre ». Ce qu'elle a exécuté : le diff + entier ; e2e 42 / 42 du premier coup (11 h 58 à 12 h 01, binaire identique octet pour octet) ; vitest + 78 / 78 ; tests du moteur ; sondes Playwright sur deux copies de la copie de 11 h 40 (bureau, Pixel 7, + 360 et 320 px ; membre et administrateur ; fr, en, es ; écritures dans le groupe d'essai pour voir la + pastille d'un changement d'inertie de module) : les neuf points tenus, rien de cassé (vote simulé, + objections, panier) ; sa propre répétition (seules les `next_at` de la file) ; le retour. + Mineurs, **liste d'attente** : + - le vote d'un changement d'inertie de module (ouvert par la nouvelle pastille) ne dit pas le cran + visé : seulement « inertie 2 / 5 · basse », le cran où il se vote ; « vers 3 / 5 » n'est que dans + l'étiquette pour lecteur d'écran (`VoteFold.svelte:167`, `:177` ; `OrderLine.svelte:58-61`, + `TitleBar.svelte:53-56`). Défaut déjà là dans `84f015a`, plus accessible depuis U2 ; aucun + changement de ce type ouvert en production ; + - l'en-tête ne suit la liste qu'en lecture « En vigueur » (`+page.svelte:159-160`) : nuancer + `UX-lecteur.md` ou suivre la lecture ; + - le commentaire du test moteur (`threshold.rs`, « 85 % of the quorum ») parle des paramètres de + référence, pas du cran 2 ; + - trois inexactitudes de ce dossier (4 étapes de recette en échec non dites, « 35, ordres compris », + la phrase de la vérification après) : **corrigées** ; + - les copies de production de l'intégrateur : à retirer après l'acte (prévu). + Non vérifié par elle : sonic (image, témoin `deploying`, santé), la mesure « avant » sur `84f015a`, + les ambiances sombres, un vrai lecteur d'écran. Ses copies de la base de production sont supprimées. 4. Boucle verte sur `6f6197c`, le 03/11 de 11 h 39 à 11 h 43, du premier coup (journal `m7b/loop.log`) : fmt, clippy `-D warnings`, 302 tests Rust, svelte-check 0 / 0, 78 vitest, build, e2e 42 / 42 (11 h 40 à 11 h 43). Image de production construite de 11 h 43 à 11 h 45, sortie 0 (302 tests Rust « ok », @@ -108,8 +138,8 @@ git push prod 6f6197cc231837df55d6b3e1986f61be5d708a1f:main - [ ] Santé vue de l'extérieur → `"build":"6f6197cc"`. - [ ] Journaux : « publication suspended … waiting=10 », aucune ligne ERROR ni WARN, aucun amendement. -- [ ] Le paquet JS servi, vu de l'extérieur, contient « déplace au moins un article » (la phrase de - « Proposer cet ordre » éteint) et « au-delà du quorum ». +- [ ] Le paquet JS servi, vu de l'extérieur, contient « changement d'inertie proposé » et « au-delà du + quorum » (nouveaux dans `6f6197c` ; « déplace au moins un article » existait déjà dans `84f015a`). - [ ] Sur une copie fraîche : comptes de `counts.sh` identiques à la copie d'avant ; `integrity_check` ok. - [ ] Le dépôt des textes reste à `9e0f45a`.