12 KiB
Fiche EVAL-T11 — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 — Agent lp-validator — Skills sk-protocol, sk-recount, debug-verification, lp-validate
EVAL-T11-VAL : validation statique du doc 33 « Évaluation de l'organisation multi-agents sur 72 h » (2026-10-11)
Copie D:\Game\LifePlay-master 5.8, branche ue5.8 (relevée par git branch --show-current), HEAD ae5d5e4. Lecture seule : seul ce
livrable est écrit. Aucune compilation ni exécution de jeu (sans objet : doc).
1. Fiches amont relues
| Fichier | Rôle | Relu |
|---|---|---|
Docs/Migration/etat/EVAL/EVAL-TACHES.md |
registre du lot (T10 : brouillon puis déplacement ; T11 : cette VAL) | en entier |
Docs/Migration/etat/EVAL/EVAL-STATS.md |
source des chiffres (§ 0 à 9) | en entier |
Docs/Migration/etat/EVAL/EVAL-RAPPORT.md |
source des chiffres et des recommandations (§ 1 à 9) | en entier |
Docs/33_Eval_Organisation_72h.md |
objet validé (114 lignes, 8 073 octets) | en entier |
Docs/31_Eval_Methode_Orchestration.md |
référence de forme | en-tête (l. 1-25) et § 7 repéré (l. 123) |
Docs/Migration/etat/REPO/NUMEROS.md |
réservations CHG-327 et DOC 33 | diff et 4 dernières lignes |
IMPL amont : aucune (le doc 33 est une synthèse de l'orchestrateur, T10 « orchestrateur » dans EVAL-TACHES.md:29 ; aucun
fichier EVAL-T10-IMPL.md). EVAL-DOC33-BROUILLON.md (brouillon de T10) existe mais n'a pas été relu : le fichier validé est
le doc 33 final (modifié 06:40:59, après STATS 05:59 et RAPPORT 06:02).
2. Points à confirmer des IMPL
Aucun point amont : EVAL-TACHES.md (fiche T11 : « Points amont à reprendre : aucun ») et absence de livrable IMPL dans le lot
(Glob/ls de etat/EVAL/ : pas de *-IMPL.md). Sans objet.
3. Critères rejoués
| # | Critère | Commande / méthode | Résultat | Verdict |
|---|---|---|---|---|
| V1 | chaque nombre des § 1 à 5 (et 6, 7) = EVAL-STATS.md ou EVAL-RAPPORT.md |
relecture croisée valeur par valeur (tableaux § 1, § 2, § 3, § 4, § 5 du doc 33) | 0 valeur discordante ; 4 écarts de forme, aucun numérique (détail ci-dessous) | PASS avec réserves |
| V2 | chaque chemin cité existe | Python (extraction des chemins entre accents graves) + [ -e ] depuis la racine et depuis Docs/Migration/ |
tout existe sauf Tools/CopieEtat.ps1 (doc 33:98) |
PASS avec réserve |
| V3 | en-tête comme le doc 31 | lecture 33:1-18 contre 31:1-15 |
Date, Lot, Entrée journal = CHG-327, Décisions, Modèle, Période mesurée, Sources, Scripts, Biais : tous présents, dans l'ordre du doc 31 | PASS |
| V4 | LF pur, UTF-8 sans BOM, pas de caractère de contrôle | python -I -c sur les octets |
taille 8 073 ; BOM False ; CRLF 0, CR 0, LF 114 ; octets < 32 hors LF : 0 ; 0x7F : 0 ; décodage UTF-8 ok ; C1 (U+0080-009F) : 0 ; espaces de fin de ligne : 0 ; finit par un seul LF. git ls-files --eol du doc 31 : i/lf w/lf (même convention) |
PASS |
| V5 | aucun contenu personnel, aucun chemin personnel hors D:\Game\… |
Grep -i @|C:\\|C:/|Users|<utilisateur>|olivier|sylva|googlemail|password|token|secret|E:\\|F:\\ sur le doc 33 |
0 correspondance. Le doc ne cite que des chemins relatifs (etat/…, Docs/…, Tools/…, Saved/…) |
PASS |
| V6 | rien d'attribuable à EVAL hors périmètre | git status --short + git status --short -uall -- Docs/Migration/etat/EVAL Docs/33_… |
voir ci-dessous | PASS |
V1 : détail
Rapprochements faits (doc 33 → source) :
- § 1 (l. 24-29) : bornes P0/P1/P2, heures actives 3,7 / 26,0 / 11,7, sessions 4 / 21 / 12, parallélisme 2,5
=
EVAL-STATS.md:12-19(3,70 ; 25,95 ; 11,68 ; arrondi cohérent). - § 2 (l. 35-48) : CHG/h 2,4 / 1,2 / 1,81 / 2,40 (STATS:44) ; commits/h 3,1 / 4,0 (STATS:42) ; erreurs 3,9 / 3,6 / 3,3 / 1,6 % (STATS:91) ; tours 17 / 40 / 37,7 / 19,6 (STATS:84) ; hors budget 26 % / 17 % (STATS:86) ; jetons/h 31,7 / 47,6 / 56,2 / 130,2 (STATS:53) ; principales/h 26,0 / 22,7 / 34,6 / 108,4 (STATS:54) ; jetons par CHG 31 / 54 (STATS:56) ; contexte médian 344 / 216 / 245 / 323 k (STATS:59) ; part sous-agents 51 / 72 / 65 / 57 % (STATS:80) ; messages humains 7,8 / 6,1 / 7,3 / 10,0 (STATS:139) ; messages entre sessions 5,7 / 36 (STATS:141). Totaux l. 50-51 : 132 / 79 / 45 / 260 / 414 = STATS:29, 31, 32, 33, 36 ; ERR-087 = STATS:32.
- § 3 (l. 55-68) : 38 GO pour 6 lots, 0,4 min, 62 / 33 / 6 %, 32 BUILD-FIN, 0 MD5, 692 min / 268 min (STATS:115-123) ; réserve
« mesure » 4 créneaux, 41 min (STATS:119, RAPPORT:178) ; jeton 14 / 0,3 min (STATS:124) ; 14 / 12 / 9 / 18 (STATS:125) ;
gardien 48 / 0,7 M / 63 / 82 / 0 commit sans ticket (STATS:128-129) ; Big Boss 8 h / 679 tours / 272 M / 18 % (STATS:127).
« 18 h » (l. 66) :
data/sessions.csv:53(10-10 10:45:20 → 10-11 05:29:36 = 18,7 h), établi. - § 4 (l. 71-80) : 1 800 contrôles, 1 070 MCP, 300 k (RAPPORT:124) ; builder 52 / 10 %, gardien 48 / 0 %, validator 19 % et 221-329 k, writer 174-242 k, cart 55 % / 40 %, escalades 4, general-purpose 14 → 0 (STATS:98-106, RAPPORT:125-133) ; OBB 4 sur 4, U8 2 (RAPPORT:105, 53).
- § 5 (l. 87-92) : 538 / 60, 452 / 161 (STATS:172-173) ; 1 794, 1 085, 996, 684, 543, 455, 272, 252 (STATS:168-175) ;
129 lancements / 103 min (STATS:70) ; CHG-324 = commit
06dfb55. - § 6 (l. 96-108) : gains −35 à −45 % (RAPPORT:281), 0,4-0,5 G (RAPPORT:282), R7-R12 (RAPPORT:287-292), E1-E7 (RAPPORT:303-309).
- § 7 (l. 112-114) : < 200 k, > 70 %, ≈ 30 M, 15 (STATS:145, RAPPORT:281-284, 294).
Écarts de forme relevés (aucun numérique) :
33:37(CHG/h, colonne « Doc 31 avant » = 2,4) :EVAL-STATS.md:44ajoute que ce 2,4 vient d'une période où la règle « un CHG par lot » n'était pas appliquée (59 CHG). Le doc 33 reprend le nombre sans cette réserve : lu seul, il suggère que P2 (2,40) égale « avant » (2,4). Réserve de lecture, pas d'erreur.33:67-68(incidents) : STATS:126 en compte 8 types ; le doc 33 en liste 6. Omis : « plantage de l'éditeur pendant un GO : 1 ».33:67« 5 jeux lancés pendant un GO » : STATS:126 dit « processus étranger 5 » ; RAPPORT:266 précise « jeux de l'utilisateur … (5 processus étrangers au total) ». Reformulation acceptée (RAPPORT).33:62« protection d'assets » : RAPPORT:186 dit « protection de MainMenu » ; généralisation acceptée.33:62« CHG écrit seulement au commit » = RAPPORT:182.
V2 : détail
Existent ([ -e ]) : Docs/Journal_Modifications.md, Docs/Registre_Erreurs.md, Saved/Logs/portage/, Tools/FileCheck.ps1,
Tools/UeState.ps1, Tools/GitEtat.ps1, Tools/Verrou.ps1, etat/BOSS/BOSS-JOURNAL.md, etat/REPO/, etat/REPO/NUMEROS.md,
etat/EVAL/EVAL-RAPPORT.md, EVAL-STATS.md, EVAL-T1a-INV.md à EVAL-T6-INV.md (T1a, T1b, T2, T3, T4, T5, T6 : 7 fichiers),
etat/EVAL/data/ (23 fichiers dont 14 .csv), etat/EVAL/scripts/ avec les 7 scripts nommés en l. 14 (eval_sessions.py,
eval_subagents.py, EvalT2_Commits.py, eval_journal.py, eval_boss.py, eval_fiches.py, eval_commandes.py),
OBB-EVAL.md (etat/OB/OBB/), U8-EVAL.md (etat/U58/U8/), DOCMV-EVAL.md (etat/DOC/DOCMV/), STB-EVAL.md
(etat/ST/STB/).
Absent : Tools/CopieEtat.ps1 (33:98), livrable de OUTC-T1 (statut « envoyée », OUTC/OUTC-TACHES.md:11). Le doc 33
le présente comme outil à produire par le lot OUTC : cohérent, mais le chemin ne se résout pas tant que OUTC-T1 n'est pas
fait.
Assertion « scripts ignorés par git » (33:14) : git check-ignore -v …/scripts/eval_boss.py → .gitignore:75
(/Docs/Migration/etat/**, négations seulement pour *.md et *.csv l. 77-78) ; confirmé. Les *.csv et *.md de data/
sont suivables (cohérent avec 33:13).
V6 : détail
git status --short (HEAD ae5d5e4) :
- Attribuables à EVAL (dans le périmètre autorisé) :
Docs/33_Eval_Organisation_72h.md(??) ; toutDocs/Migration/etat/EVAL/(??: 11EVAL-*.mddontEVAL-DOC33-BROUILLON.mdetEVAL-TACHES.md, 14 fichiersdata/suivables) ;Docs/Migration/etat/REPO/NUMEROS.md(M, +3 lignes, 0 suppression). - NUMEROS.md : CRLF uniforme (45 CRLF, 45 LF au total, donc 0 LF seul, 0 CR seul ;
git ls-files --eol:i/crlf w/crlf). Les 3 lignes ajoutées : CHG-326 (lot STE, pas EVAL), CHG-327 (EVAL, « réservé »), DOC 33 (EVAL, « réservé »). Les 2 réservations EVAL sont bien les deux dernières lignes ; CHG-326 est l'ajout d'un autre lot. - Non attribuables à EVAL (listés, non jugés) :
Content/BPs/GI.uasset,Docs/Migration/etat/ST/STE/STE-TACHES.md,STE-VAL.mdet fichiersSTE-H*/fiches/STE-H*(lot STE) ;Docs/Migration/etat/U58/U8P/U8P-TACHES.md(U8P) ;Tools/EtatDir.ps1,Tools/GitEtat.ps1,Tools/Numero.ps1,Tools/Verrou.ps1,Docs/Migration/etat/OUTC/(lot OUTC) ;etat/AG/MCPA/,etat/AG/ORGA1/,etat/AG/brouillons/agents/lp-mcp*.md(MCPA, ORGA1) ;etat/ARCH427/,etat/REPO/tickets/ARCH427-R1.md(ARCH427) ;etat/CAM/(CAM). Docs/Migration/etat/BOSS/BOSS-JOURNAL.md(M, +107 lignes) : 11 lignes contiennent « EVAL » (par exemple les entrées « EVAL [92b3a5] » livrables prêts, approbation E1-E7, 3 sessions lancées) ; ce sont des entrées de Big Boss sur EVAL, fichier de Big Boss. Auteur de l'écriture : incertain (l'essai qui trancherait : demander à Big Boss ou lire le ticket du gardien). Non jugé.- Rien d'autre dans le périmètre EVAL qu'un fichier attendu. Pas de fichier EVAL hors
etat/EVAL/, doc 33, NUMEROS.
4. Diff lu en entier
- Doc 33 : fichier non suivi (
??), donc pas de diff contre un tag ; lu en entier (114 lignes,Readsans troncature). Aucune commande<lot>-avant: pas de tag d'entrée pour EVAL (non cherché ; sans objet pour un fichier neuf). git diff -- Docs/Migration/etat/REPO/NUMEROS.md: 3 insertions, 0 suppression, lu en entier (voir V6).- Fichiers modifiés par EVAL : 2 suivis ou à suivre hors
etat/EVAL/(doc 33 neuf, NUMEROS +3 lignes). Fins de ligne : doc 33 LF (V4) ; NUMEROS CRLF conservé. Tools/FileCheck.ps1non lancé : le contrôle V4 a été fait en Python sur les octets comme demandé par la fiche.
5. Verdict
PASS-STATIC (lecture seule, forme « PASS avec réserves » de la fiche) : 0 écart numérique entre le doc 33 et
EVAL-STATS.md / EVAL-RAPPORT.md ; format conforme (LF, UTF-8 sans BOM, 0 octet de contrôle) ; en-tête conforme au doc 31 ;
aucun contenu personnel ; périmètre git respecté. Les contrôles V4 et V6 ont été rejoués à neuf ; V1 et V2 sont des relectures
et un [ -e ], pas une recompilation des comptes bruts.
Réserves (aucune ne bloque la validation, T12 peut commiter) :
- R-a :
Tools/CopieEtat.ps1(33:98) n'existe pas encore (OUTC-T1 en cours). - R-b :
33:37omet la réserve deEVAL-STATS.md:44sur le « 2,4 » du doc 31 « avant ». - R-c :
33:67-68omet le plantage de l'éditeur pendant un GO (STATS:126) ; reformulations « 5 jeux » et « protection d'assets » acceptées (RAPPORT:266, 186). - R-d : non vérifié par moi : l'exactitude des comptes de
EVAL-STATS.mdeux-mêmes par rapport aux transcriptions (périmètre de la fiche = doc 33 contre STATS et RAPPORT ; l'orchestrateur a recompté les 7 relevés,EVAL-STATS.md§ 9). Établi ici : uniquement le recoupement des valeurs desessions.csv:53pour Big Boss (679 tours, 8,04 h, 18,7 h de présence).
6. Points à confirmer par l'utilisateur
- R-b : ajouter dans le doc 33 la précision « règle d'avant : un CHG par lot non appliquée » à côté du 2,4 (
33:37) ? - R-c : mentionner le plantage de l'éditeur pendant un GO dans les incidents (
33:67-68) ? - R-a : accepter de citer
Tools/CopieEtat.ps1avant sa création (lot OUTC), ou attendre OUTC-T1 ? - Confirmer que les modifications de
BOSS-JOURNAL.md(11 lignes « EVAL ») viennent de Big Boss et non d'EVAL (non attribuable avec les éléments lus).
Tours : 10 / 30
Constats
- Aucune correction faite sur le doc 33 ni sur un autre fichier ; seul ce livrable est écrit.
- Fichiers écrits :
D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL\EVAL-T11-VAL.md(A,etat/EVAL/, à commiter avec le lot EVAL, ticketEVAL-R1). - La ligne
Tours : 10 / 30est un décompte déclaré ;python -I Tools/FicheStats.py --lot EVALfait foi (sk-protocol§ 8).