LifePlay-Revival/Docs/Migration/etat/DOC/README/README-VAL.md
edujiro5972 8084622450 LifePlay UE 5.8 : état de développement au 2026-10-19
Tickets : REP1-T4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 22:57:42 +02:00

206 lines
21 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Fiche README-T5 — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 — Agent lp-validator — Skills sk-protocol, lp-validate, sk-recount
# README-VAL : validation statique de l'index réécrit `Docs/README.md` (2026-10-10)
Copie `D:\Game\LifePlay-master 5.8`, branche `ue5.8`, HEAD `e3df8ca` (relu par `git rev-parse --short HEAD` et `git branch --show-current`).
Lecture seule : aucune modification hors ce livrable, aucune commande git qui écrit, aucune compilation. Commandes lancées sous
Git Bash depuis `Docs/` (sauf mention). Les lignes citées `NN:l` sont des lignes du doc `NN_*.md` ; `README:l` = `Docs/README.md`.
## 1. Fiches amont relues
| Fiche | Fichier | Relue |
|---|---|---|
| README-T1 (INV) | `etat/DOC/README/README-T1-INV.md` | en entier |
| README-T2 (SPEC) | `etat/DOC/README/README-SPEC.md` (§ 3 structure et textes, § 7 critères V1-V8, § 8 décisions du 2026-10-10) | en entier |
| README-T4 (IMPL) | `etat/DOC/README/README-IMPL.md` (§ 2 écarts, § 5 points à confirmer) | en entier |
| README-TACHES | `etat/DOC/README/README-TACHES.md` | présent (ls) ; non relu : hors périmètre de la fiche |
| Ancien index | `git show e3df8ca:Docs/README.md` (82 lignes) | en entier |
| Gabarit VAL | `D:\Game\LifePlay-Sandbox\Tools\claude\skills\lp-doc\gabarits.md` | en entier |
Aucune IMPL n'a de fichier de code : seule la IMPL README-T4 (un fichier, `Docs/README.md`) existe dans le lot ; pas de BUILD.
## 2. Points à confirmer des IMPL (README-IMPL § 5, plus chiffres de § 1 et § 5)
| Point | Résultat | Preuve (§ 3) |
|---|---|---|
| V1 aucune doc oubliée | PASS | V1 : 32 / 32, 0 manquant |
| V2 liens relatifs valides | PASS | V2 : 36 cibles distinctes, 0 cassée |
| V3 plage du journal | PASS | V3 : max 312, CHG-048 seul trou |
| V4 plage du registre | PASS | V4 : max 088, 88 lignes, 0 trou |
| V5 statut de chaque doc retrouvé dans son fichier | PASS (32 / 32), avec réserve sur 4 qualificatifs « référence » (O1) | V5 : table de 32 lignes |
| V6 faits de l'ancien index conservés dans « Historique » | PASS | V6 : 9 faits sur 9 |
| V7 périmètre | PASS | V7 |
| V8 fins de ligne | PASS | V8 : i/lf, 0 CR |
| IMPL § 1 : 82 → 114 lignes ; 94 insertions / 62 suppressions ; MD5 `290e19a3…` | PASS (recompté) | `git show e3df8ca:Docs/README.md \| wc -l` = 82 ; `wc -l README.md` = 114 ; `git diff --stat -- README.md` = 94 insertions, 62 suppressions ; `md5sum README.md` = `290e19a371147dcc33a411b2a622a8fe` |
| IMPL § 5 auto-contrôle : 36 cibles, 32 liens `NN_*.md`, 0 CR | PASS (recompté) | V1, V2, V8 |
| IMPL § 5 auto-contrôle : « 0 marqueur `@` restant » | reporté : non rejoué (hors V1-V8) | — |
| IMPL § 3 instantané `Backup_5.5\README-T4\manifest.csv` | reporté : non rejoué (hors périmètre statique) | — |
| IMPL § 2 écarts 1 à 6 | PASS : chacun retrouvé dans le fichier (lignes citées en § 3 « Écarts à la SPEC ») | § 3 |
## 3. Critères rejoués (commande → résultat)
### V1 aucune doc oubliée : PASS
- `ls [0-3][0-9]_*.md | wc -l` → **32**.
- `grep -oE '\]\([0-3][0-9]_[^)]*\.md\)' README.md | sort -u | wc -l` → **32**.
- Boucle `for f in [0-3][0-9]_*.md; do grep -qF "]($f)" README.md || echo "MANQUE $f"; done` → aucune sortie (0 manquant).
- Aucun lien vers un fichier absent : voir V2 (0 cassé).
### V2 liens relatifs valides : PASS
- Extraction `grep -oE '\]\([^)]*\)' README.md | sed … | sort -u` → **36** cibles distinctes (32 docs + `Journal_Modifications.md`,
`Registre_Erreurs.md`, `correctifs/`, `Migration/etat/` : 36 = 32 + 4, cohérent).
- Boucle `[ -e "$t" ] || echo "CASSE $t"` depuis `Docs/` → aucune sortie : **0 cassé**. Les deux dossiers (`correctifs/`, `Migration/etat/`) existent.
### V3 plage du journal : PASS
- `grep -oE '^\| CHG-[0-9]+' Journal_Modifications.md | grep -oE '[0-9]+' | sort -n | tail -1` → **312** ; borne écrite README:71 `CHG-001` à `CHG-312` : égalité.
- `grep -c '^| CHG-' …` → 311 lignes, 311 numéros distincts ; boucle 1..312 : seul `manque CHG 48`. 312 − 1 = 311 : cohérent.
- CHG-048 absent : `grep -n 'CHG-048' Journal_Modifications.md` → aucune ligne ; `git log --oneline --all -S'CHG-048' | wc -l` → 0. La note « (CHG-048 absent) » (README:71) est exacte.
- Le journal n'est pas modifié (`git status --porcelain Docs/Journal_Modifications.md` vide) : la borne 312 est celle du HEAD. Elle sera à reporter au CHG du lot (README-IMPL § 1, T6, risque R2 de la SPEC).
### V4 plage du registre : PASS
- `grep -oE '^\| ERR-[0-9]+' Registre_Erreurs.md | grep -oE '[0-9]+' | sort -n | tail -1` → **088** ; borne écrite README:72 `ERR-001` à `ERR-088` : égalité.
- 88 lignes, 88 numéros distincts, boucle 1..88 : 0 trou.
### V5 statuts : PASS (32 / 32), une ligne par doc
Renvois CHG, relus au journal (`grep -E "^\| CHG-<n> " Journal_Modifications.md`, 3e colonne = lot) : CHG-220 → **S8** ; CHG-271 → **STAT1** ;
CHG-299 → **AG** ; CHG-302 → **AG** ; CHG-311 → **STE** ; CHG-312 → **OBP**. Les six existent avec le lot annoncé.
Dernier CHG « ST » : CHG-311 est le plus grand numéro du journal après CHG-312 (OBP), donc aucun CHG ST plus récent. Dernier CHG « OB » : 312 = maximum du journal.
| Doc | Statut écrit dans l'index | Retrouvé dans le fichier | Verdict |
|---|---|---|---|
| 01 | historique 4.27 (bandeau) | 01:3 bandeau « Historique 4.27 » | PASS |
| 02 | historique 4.27 (bandeau) | 02:3 | PASS |
| 03 | historique 4.27 (bandeau) | 03:3 | PASS |
| 04 | historique 4.27 (bandeau) | 04:3 | PASS |
| 05 | historique 4.27 (bandeau) | 05:3 | PASS |
| 06 | historique 4.27 (bandeau) ; V1 validée, `v1.0` | 06:3 bandeau ; 06:5 « V1 validée le 2026-09-30, tag `v1.0` » | PASS |
| 07 | historique 4.27 (bandeau) | 07:3 | PASS |
| 08 | référence, rédigée pour 5.5 (chaîne 5.8 : renvoi au 27) | 08:4 « build 5.5 validé » ; 08:15 « chaîne 5.8 : voir `27_Plan_Migration_UE58.md` » ; le mot « référence » comme statut n'y est pas déclaré (08:17 : « Référence de comportement » désigne le build) | PASS avec réserve (O1) |
| 09 | référence ; atelier de mods dans l'addon (DC3) | 09:6 « Atelier de mods (DC3, 2026-10-07) … dans l'addon » ; « référence » non déclaré | PASS avec réserve (O1) |
| 10 | référence (règles et leçons, V1) ; méthode actuelle : skill `lp-lot` et doc 32 | 10:5 « Règles appliquées du 2026-09-29 au 2026-10-02 … leçons tirées des erreurs » ; 10:3 bandeau DC3 ; décision Q3(b) de la SPEC § 8 ; skill `lp-lot` présent dans `.claude/skills/` | PASS (voir O2) |
| 11 | historique 4.27 (bandeau) | 11:3 | PASS |
| 12 | historique 4.27 (bandeau) | 12:3 | PASS |
| 13 | protocole (établi en O7e) ; scripts dans l'addon (DC3) | 13:5-7 « établi sur *Pocolov Hair 17* (lot O7e) » ; 13:3 bandeau DC3 | PASS |
| 14 | lot UI14 (avant la V1.4) | 14:1 « (lot UI14, avant la V1.4) » | PASS |
| 15 | V1.4 | 15:1 « (V1.4) » | PASS |
| 16 | étude et prototype H3a à H3d ; scripts dans l'addon (DC3) | 16:1 « (étude, 2026-10-03) » ; 16:3 bandeau DC3 ; `grep -c 'H3d\|prototype'` = 6 occurrences | PASS |
| 17 | historique 4.27 (bandeau) | 17:3 | PASS |
| 18 | référence (mesure) | 18:1 « Build debug (mesure, pas optimisation) » ; « référence » non déclaré | PASS avec réserve (O1) |
| 19 | plan de lot ; gates I0 à I6 mesurés | 19:3 « Plan de lot révisé » ; 19:8 « gates I0–I6 mesurés » | PASS |
| 20 | étude, lots AP1 à AP7 ; scripts dans l'addon (DC3) | 20:1 « (étude, 2026-10-06) » ; 20:3 bandeau DC3 ; `grep -c 'AP1\|AP7'` = 10 lignes | PASS |
| 21 | titre « ébauche, 2026-10-06 » ; lots S0 à S8 clos (CHG-220) | 21:1 « (ébauche, 2026-10-06) » ; 21:165-176 S0 à S8 cochés `[x]` ; CHG-220 lot S8 | PASS |
| 22 | évaluation (S8, CHG-220) | 22:3 « Fiche : S8-T1 … Entrée journal : CHG-220 » | PASS |
| 23 | référence ; scripts dans l'addon (DC3) | 23:5 « Référence pour les développeurs du jeu » ; 23:3 bandeau DC3 | PASS |
| 24 | plan clos : DC0 à DC4 `completed` | 24:6-19 (5 `completed`) ; 24:25 « terminé » | PASS |
| 25 | référence ; V1 du chantier close (VQ4) | 25:3 « V1 close — VQ4, 2026-10-07 » ; « référence » non déclaré comme statut | PASS avec réserve (O1) |
| 26 | évaluation (VQ5) | 26:3 « VQ5-T1 … Évaluation du déroulé multi-agents » | PASS |
| 27 | plan en cours : UA à U7b `completed`, U8 et U9 `pending` | 27:6-44 : UA, G-U, U0 à U7b `completed` ; U8 (l. 40) et U9 (l. 44) `pending` | PASS |
| 28 | synthèse ; journal des lots U0 à U7b | 28:288 « Journal des lots U0 à U9 » ; 28:295-303 U0 à U7b renseignés, U8 et U9 « — » (l. 304-305) | PASS (voir O5) |
| 29 | projet en cours ; frontmatter « phase 0 `in_progress` », point d'étape du 2026-10-10 ; dernier CHG ST : CHG-311 (STE) | 29:7-8 `phase0` `in_progress` ; 29:288 « Point d'étape du 2026-10-10 » ; CHG-311 lot STE, dernier ST (cf. ci-dessus) | PASS |
| 30 | projet en cours ; frontmatter « phase 0 `in_progress` » ; dernier CHG OB : CHG-312 (OBP) | 30:5-7 `phase0` `in_progress` ; CHG-312 lot OBP, maximum du journal | PASS |
| 31 | évaluation (STAT1, CHG-271) | 31:1-3 « Lot : STAT1 … CHG-271 » | PASS |
| 32 | en-tête « proposition (phase 0) » ; D-AG10 décidé, lot AG appliqué (CHG-299, CHG-302) | 32:3 « Statut : proposition (phase 0) » ; 32:374 D-AG10 « décidé par l'utilisateur (2026-10-10) » ; CHG-299 et CHG-302 lot AG | PASS |
Colonne Public : non soumise à V5 ; relue contre la SPEC § 3.4 et § 8 : conforme, sauf doc 10 « développeurs, agents » et doc 32 « agents, pilotage » (déclarés, IMPL § 2 point 2).
### V6 historique conservé : PASS (9 faits sur 9)
Ancien index (`git show e3df8ca:Docs/README.md`) → nouvel index, section « Historique » (README:102-114) ou bandeau :
| Fait de l'ancien index | Nouvel index | Verdict |
|---|---|---|
| reprise le 2026-09-29, après l'échec d'un premier portage (ancien l. 9) | README:104 | PASS |
| V1 publiée `v1.0` 2026-09-30, V1.1 `v1.1` 2026-10-01 (l. 12) | README:107 (+ publications `v1.2` à `v1.5`, ajout prévu par la SPEC § 3.7) | PASS |
| lots post-V1 L7a à L7l clos (l. 13) | README:108 | PASS |
| 8 563 paquets UE5, 0 erreur de compilation ni de cuisson, données et villes identiques à 4.27 (l. 14) | README:109 | PASS |
| liste « historique 4.27 » : 01-07, 11, 12, 17 + 2 fichiers `Docs/Architecture/` (l. 57-58) | README:111-112 (une seule fois, doublon l. 62-63 supprimé comme prévu) | PASS |
| moteur et outils actuels : `27_Plan_Migration_UE58.md` et `Tools/Engine.ps1` (l. 59) | README:113 | PASS |
| commandlets `LPFix*` et `LPConvertAtmosphericFog` retirés en U2 (l. 60-61) | README:113-114 | PASS |
| « historique git, tag `U2-avant` » (l. 61) | README:114 ; `git tag --list 'U2-avant'` → présent | PASS |
| bandeaux DOCMV (CHG-300) et DC3 (ancien l. 3-5, 7) | README:3-7 | PASS |
### V7 périmètre : PASS
- `git status --porcelain` (8 lignes) : ` M Content/UI/CharGen.uasset`, ` M Docs/Migration/etat/BOSS/BOSS-JOURNAL.md`, ` M Docs/Migration/etat/ST/STE/STE-INT.md`,
` M Docs/Migration/etat/ST/STF/STF-TACHES.md`, ` M Docs/README.md`, `?? Docs/Migration/etat/DOC/README/`, `?? Docs/Migration/etat/REPO/tickets/OBB-R11.md`,
`?? Docs/Migration/etat/REPO/tickets/STF-R5.md`. Seuls `Docs/README.md` et `etat/DOC/README/` relèvent du lot ; les cinq autres sont d'autres sessions (listés, non jugés).
- `git diff --stat -- 'Docs/[0-3][0-9]_*.md'` et `git diff --cached --stat -- …` : vides → aucun doc 01-32 modifié.
- `git diff --stat -- README.md` et `--cached` (racine) : vides, `README.md` racine absent de `git status` → inchangé.
- `Docs/Journal_Modifications.md`, `Docs/Registre_Erreurs.md`, `etat/REPO/NUMEROS.md` : absents de `git status` → inchangés (entrée CHG et réservation = T6, annoncé par README-IMPL § 4).
- `etat/DOC/README/` contient `README-IMPL.md`, `README-SPEC.md`, `README-T1-INV.md`, `README-TACHES.md` ; `README-VAL.md` s'y ajoute avec ce livrable.
### V8 fins de ligne : PASS
- `git ls-files --eol Docs/README.md` → `i/lf w/lf attr/-text` ; l'index git (HEAD, `e3df8ca`) est `i/lf` : identique à l'avant.
- `tr -cd '\r' < Docs/README.md | wc -c` → **0** ; `git show HEAD:Docs/README.md | tr -cd '\r' | wc -c` → **0**. Attendu 0 : atteint.
### Chaque affirmation de « État au 2026-10-10 » et « Organisation du travail » : PASS (sources relues)
| Affirmation (README:l) | Source relue | Verdict |
|---|---|---|
| audit UA, porte G-U, lots U0 à U7b clos (11-12) | 27:6-37 (UA, G-U, U0 à U7b `completed`) ; 28:295-303 (U0 à U7b renseignés) | établi |
| U8 (Shipping, V2.0) différé après stabilisation et optimisation, décision du 2026-10-09 (12-13) | 27:38-40 (U8 `pending`, « différé après la stabilisation, doc 29, et l'optimisation, doc 30 ») ; 29:3 (« décision utilisateur du 2026-10-09 ») | établi |
| U9 (voie UE5 native) après la V2.0 (13) | 27:41-44 (« après V2.0, D9 », `pending`) | établi |
| projet ST (doc 29) : lots STA, STB, STC, STD, STE, STF, STM ; registres dans `etat/ST/<lot>/` (14-15) | `ls Migration/etat/ST` = STA STB STC STD STE STF STM ; `*-TACHES.md` présent dans STA à STF (STM : pas de `STM-TACHES.md` relevé par le glob, registre sous un autre nom ou absent : non bloquant, voir O4) ; 29:240, 274, 288 | établi, réserve O4 |
| projet OB (doc 30) : lots OBA, OBB, OBP ; registres dans `etat/OB/<lot>/` (16-17) | `ls Migration/etat/OB` = OBA OBB OBP ; `OBA-TACHES.md`, `OBB-TACHES.md`, `OBP-TACHES.md` présents ; le doc 30 ne nomme que OBA (0 occurrence de OBB / OBP) : OBB et OBP sont établis par `etat/OB/` et le journal (CHG-312 lot OBP), pas par le doc 30 | établi, réserve O4 |
| dernière version publiée : tag `v1.5` (UE 5.5) ; aucune version 5.8 publiée (18) | `git tag --list 'v*'` = v1.0 à v1.5 (aucun `v2*`) ; 27:38-44 U8 (publication) `pending` | établi |
| doc 32 : chef de projet, orchestrateur, managers ; Big Boss, D-AG10 ; gardien du dépôt § 10 (22-23) | 32:64 (Big Boss), 32:305 (« ## 10. Gestion du dépôt : un seul gardien »), 32:374 (D-AG10) | établi |
| Big Boss : file de compilation (gels annoncés) et arbitrage des conflits (fichiers, numéros, priorités entre lots) (24-25) | 32:64 mot pour mot ; 32:80 | établi |
| journal des arbitrages `etat/BOSS/BOSS-JOURNAL.md` (26) | fichier présent (`ls Migration/etat/BOSS`) ; 32:80 | établi |
| gardien (agent `lp-gardien`) seul à écrire dans git, sur ticket `etat/REPO/tickets/`, verrou `etat/REPO/VERROU` (27-28) | `.claude/skills/lp-repo/SKILL.md:3` (« gardien du dépôt (lp-gardien) ») ; l. 40 (tickets), l. 44 (`VERROU\`) ; `ls etat/REPO` : `tickets`, `VERROU` | établi |
| R-REPO1 : statut du ticket et ligne de `REPO-JOURNAL.md` dans le même commit (28-29) | `lp-repo/SKILL.md:42` | établi |
| numéros CHG, ERR et doc réservés sous verrou dans `etat/REPO/NUMEROS.md` (30) | `NUMEROS.md:1` (« réservations des numéros CHG, ERR et doc (sous verrou) ») ; `lp-repo/SKILL.md:43-44` | établi |
| jeton du journal accordé par Big Boss ; consigné dans `BOSS-JOURNAL.md` et les tickets ; pas encore décrit dans le doc 32 (31-32) | `BOSS-JOURNAL.md:125` (« jeton du journal → OBB ») ; `grep -ci 'jeton' 32_…` = 5 lignes, toutes des jetons de modèle (32:100, 199, 200, 248, 278), aucune sur le jeton du journal ; tickets : citation du T1-INV § 2 non rejouée fichier par fichier (échantillon : `BOSS-JOURNAL.md`) | établi (échantillon) |
| méthode d'un lot : skills `lp-lot`, `lp-doc` (`gabarits.md`), `lp-repo` ; livrables `etat/<projet>/<lot>/` (33) | `lp-lot`, `lp-doc`, `lp-repo` présents dans `.claude/skills/` ; `gabarits.md` lu (Sandbox) ; `lp-validate` : § 6 emplacement des livrables | établi |
| « Autres dossiers de `Docs/` » (76-79) : `Architecture/` (rapport du 2026-09-28, VictoryPlugin, `streetmap_5.5.csv`), `Modding/`, `Project_Intro.txt`, `FAQ.txt`, `Game_Controls.txt`, `Change_Logs.txt`, `Turn Photo Into LP Character.pdf` | `ls Architecture Modding` et `git ls-files` : les 5 fichiers et les 3 fichiers d'`Architecture/` suivis ; `DemoTrailerVideoLinks.Txt` ignoré (`!!`), omis comme déclaré (IMPL § 2 point 6) | établi |
| « Démarrer une session » : `Tools/Engine.ps1`, `CheckIntegrity.ps1 -Modules -Env`, `AssetHeaders.ps1` (90-97) | trois scripts présents ; `CheckIntegrity.ps1` documente `-Modules` et `-Env` ; `Engine.ps1` : `LPEngineRoot` (9 occurrences), `LPBuildRoot` (2) ; `git tag --list '*-valide'` = 0 (retiré à raison) | établi |
### Écarts à la SPEC non déclarés dans README-IMPL § 2 (relevés par comparaison de README:1-114 à SPEC § 3)
Tous mineurs, aucun ne contredit un fait ; à l'orchestrateur de les accepter ou de les corriger.
1. README:6-7 : le bandeau garde « (lancer depuis l'addon, `D:\Game\LifePlay-Sandbox`) » (texte de l'ancien index) ; SPEC § 3.1 s'arrête à « dépôt addon `LifePlay-Sandbox` ».
2. README:22-23 : « D-AG10 » sans « décidé le 2026-10-10 » ; SPEC § 3.3 : « D-AG10, décidé le 2026-10-10 ».
3. README:74 (ligne `Migration/etat/`) : l'ancien texte « (sauf `etat\REPO\`, réservations et tickets du gardien) ; le contenu utile est repris dans les docs de synthèse numérotés » est réduit à « (sauf `etat\REPO\`) » ; SPEC § 3.4 : « texte actuel, plus `BOSS/` et `REPO/` ».
4. README:54 (doc 16) : « validés » après « §6 outillage H3b (…) » supprimé ; SPEC § 3.4 : contenu conservé « sauf corrections notées » (aucune notée pour le doc 16).
5. README:64 (doc 26) : « (VQ5) » retiré de la colonne Contenu et déplacé dans Statut ; non noté en IMPL § 2 point 3 (qui cite 20, 29, 32).
## 4. Diff lu en entier
| Fichier | Compte | Lecture |
|---|---|---|
| `Docs/README.md` | 82 → 114 lignes ; 94 insertions, 62 suppressions (`git diff --stat -- README.md`, recompté) | nouvelle version lue en entier (114 lignes) et ancienne version `e3df8ca:Docs/README.md` lue en entier (82 lignes), comparées section par section à la SPEC § 3 |
Sections du nouvel index dans l'ordre de la SPEC § 3 : titre (l. 1), bandeau (3-7), État au 2026-10-10 (9-18), Organisation du travail (20-33),
Documents (35-79 : table de 36 lignes + paragraphe « Autres dossiers »), Ordre de lecture conseillé (81-86), Démarrer une session de travail (88-100),
Historique : migration 4.27 → 5.5 (102-114) : conforme. Colonnes `Document | Statut | Public | Contenu` conformes à Q1(a). Aucune écriture par script
n'est à signaler (le livrable IMPL ne déclare aucun script ; non vérifiable autrement qu'à la déclaration).
## 5. Verdict
**PASS-STATIC** (lot documentaire, vérification par lecture et comptes rejoués ; rien à exécuter ni à compiler).
V1 à V8 : 8 sur 8 PASS ; V5 : 32 docs sur 32, dont 4 avec réserve sur le seul qualificatif « référence » (O1). Aucun défaut bloquant ; aucun FAIL.
Défauts et réserves (fichier:ligne), du plus utile au moins utile :
- O1 `README:46, 47, 56, 63` (docs 08, 09, 18, 25) : le mot « référence » dans la colonne Statut est une classification de l'index, que le doc ne déclare pas
(docs : 08:4, 09:6, 18:1, 25:3). Texte approuvé tel quel par la SPEC § 3.4 ; signalé car la SPEC annonce « statut déclaré par le doc ».
- O2 `README:48` (doc 10) contre `08_Guide_Developpeur.md:5` et `09_Commandes_Utiles.md:4` : ces deux docs appellent encore le doc 10 « Méthode de travail obligatoire » / « Méthode »,
alors que l'index le classe « référence (règles et leçons, V1) ». Choix Q3(b) de l'utilisateur ; non un défaut de l'index. Suite possible : mise à jour des docs 08 et 09 par un lot propriétaire.
- O3 écarts non déclarés 1 à 5 de la section 3 ci-dessus.
- O4 `README:14-17` : le doc 30 ne décrit que le lot OBA (OBB et OBP établis par `etat/OB/` et le journal) ; pas de `STM-TACHES.md` trouvé par `ls Migration/etat/ST/*/*-TACHES.md`
alors que README:15 dit « registres dans `etat/ST/<lot>/` » (STM a probablement un registre sous un autre nom : non vérifié, incertain ; essai : `ls Migration/etat/ST/STM`).
- O5 `README:66` (doc 28) : le statut « journal des lots U0 à U7b » est exact pour les lignes renseignées, mais le titre du doc 28 § 6 et la colonne Contenu disent « U0–U9 » (U8 et U9 « — ») : lecture cohérente, pas une contradiction.
- Plage `CHG-312` (README:71) : exacte au HEAD ; périmée dès qu'un autre CHG est écrit (T6 doit la porter au CHG du lot, sous jeton).
## 6. Points à confirmer par l'utilisateur (cases)
- [ ] Accepter les écarts non déclarés 1 à 5 (§ 3, fin) ou demander leur correction (l'orchestrateur peut les trancher sans l'utilisateur : formulation seulement).
- [ ] Accepter le qualificatif « référence » des lignes 08, 09, 18, 25 (O1), ou le remplacer par ce que déclare le doc.
- [ ] Décider du suivi des docs 08 et 09 (« obligatoire » renvoyant au doc 10, O2), avec les docs 21, 29, 30, 32 déjà proposés à Big Boss (SPEC § 8, Q2).
Tours : 12 / 40
## Constats
- Niveau de preuve : tous les comptes (V1 à V8, MD5, lignes, tags) sont **établis** (commandes rejouées ce jour). Les statuts de V5 sont établis par lecture des 6 à 90 premières lignes de chaque doc ;
le contenu complet des 32 docs n'a pas été relu (hors périmètre : seul le statut compte). **Incertain** : STM-TACHES (O4), « 0 marqueur `@` » et instantané IMPL § 3 (non rejoués).
- Valeur de `Tours` : déclarée par l'agent (12) ; `python -I Tools/FicheStats.py --lot README` fait foi (`sk-protocol` § 8).
- Fichiers écrits par ce lot de validation : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\DOC\README\README-VAL.md` (seul).
- Fichiers à commiter : A `Docs/Migration/etat/DOC/README/README-VAL.md` (dépôt jeu, branche `ue5.8`, à joindre au ticket README-R1).