120 lines
12 KiB
Markdown
120 lines
12 KiB
Markdown
|
|
Fiche DOCSTAT-T5 — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 — Agent lp-validator — Skills sk-protocol, sk-recount, debug-verification, lp-validate
|
|||
|
|
# DOCSTAT-VAL : validation statique des docs 08, 09, 21, 29, 30, 32 (2026-10-10)
|
|||
|
|
|
|||
|
|
Copie `D:\Game\LifePlay-master 5.8`, branche `ue5.8`, HEAD `71511a24ba4d` (`git rev-parse HEAD`). Lecture seule : aucune
|
|||
|
|
écriture hors ce livrable, aucune commande git qui écrit. Aucun code ni réglage moteur : pas de build, pas de
|
|||
|
|
`LPTestStringCompat`, pas de G-U3 (sans objet).
|
|||
|
|
|
|||
|
|
## 1. Fiches amont relues
|
|||
|
|
- `etat/DOC/DOCSTAT/DOCSTAT-SPEC.md` (§ 2, § 4 Q1-Q4, § 7 V1-V8, § 8 décisions) : lue en entier.
|
|||
|
|
- `etat/DOC/DOCSTAT/DOCSTAT-IMPL.md` (§ 1 à § 6) : lue en entier. Seule IMPL du lot (le dossier contient `DOCSTAT-TACHES.md`,
|
|||
|
|
`-SPEC.md`, `-IMPL.md` ; aucun autre `DOCSTAT-T*-IMPL.md`).
|
|||
|
|
- `etat/BOSS/BOSS-JOURNAL.md` : relu en entier (196 lignes) pour V6.
|
|||
|
|
- Registres cités : `STA-TACHES.md`, `OBA-TACHES.md`, `OBB-TACHES.md`, `OBB-EVAL.md`.
|
|||
|
|
|
|||
|
|
## 2. Points à confirmer des IMPL (DOCSTAT-IMPL § 5)
|
|||
|
|
| # | Point | Verdict | Preuve |
|
|||
|
|
|---|---|---|---|
|
|||
|
|
| 1 | Chaque « BOSS l. N » du § 15 du doc 32 pointe la ligne source | **PASS** (0 décalée) | § 3 V6 : 27 citations (25 lignes de tableau) relues une à une |
|
|||
|
|
| 2 | Sources citées existent (commits, ERR-087, lp-repo § 4/§ 10, sk-repo § 9, absence de `lp-mgr-*` / `lp-planificateur`) | **PASS** | § 3 V7 |
|
|||
|
|
| 3 | Statuts 29 et 30 conformes aux registres | **PASS** (une réserve d'information, § 6 case 1) | § 3 V7 |
|
|||
|
|
| 4 | Aucune autre ligne des 6 docs modifiée ; LF, sans BOM | **PASS** | § 3 V1-V3, V5 |
|
|||
|
|
|
|||
|
|
## 3. Critères rejoués (commande → résultat)
|
|||
|
|
| Critère | Commande | Attendu | Résultat | Verdict |
|
|||
|
|
|---|---|---|---|---|
|
|||
|
|
| V1 | `git diff --numstat -- Docs/08… Docs/09… Docs/21…` | `1 1` ×3 | 08 `1 1`, 09 `1 1`, 21 `1 1` | PASS |
|
|||
|
|
| V2 | `git diff --numstat -- Docs/29… Docs/30…` | `3 3` ×2, l. 7, 10, 13 | 29 `3 3`, 30 `3 3` ; diff lu : valeurs `status` des l. 7, 10, 13 seulement ; 29 : `completed` ×3 ; 30 : `completed`, `completed`, `in_progress` | PASS |
|
|||
|
|
| V3 | `git diff -- Docs/32_Organisation_Agents.md` (lu en entier) | l. 3-4 remplacées, 2 lignes après l. 17, § 15 en fin | numstat `77 2` ; 2 lignes retirées (l. 3-4 d'origine) ; 3 lignes d'en-tête ajoutées (écart déclaré IMPL § 2) ; 2 lignes de puce de révision ajoutées après la puce « Big Boss » ; § 15 (`---` l. 406, titre l. 408, fin l. 476) ajouté après l. 401 ; aucun autre changement de l'existant (`git show HEAD:… \| wc -l` = 401, fichier = 476) | PASS (écart déclaré E1 accepté) |
|
|||
|
|
| V3b | Texte mot pour mot (§ 2.1, 2.2, 2.3, § 8) | identique à la SPEC | 08 l. 5 et 09 l. 4 : texte de la SPEC § 2.1 identique ; 21 l. 1 : § 2.2 identique ; en-tête 32 : mêmes mots que § 2.3 point 1, coupe en 3 lignes ; puce de révision : identique à § 2.3 point 2 ; décisions § 8 (Q1/Q2 tout `completed`, `gate-gob` `in_progress`, Q3 « appliqué en partie ») appliquées | PASS |
|
|||
|
|
| V4 | `git status --short -- Docs` ; `git diff --cached --name-only` | 6 docs + DOCSTAT ; autres = fichiers d'autres sessions | ` M` : les 6 docs ; ` M` d'autres sessions : `BOSS-JOURNAL.md` (+105), `REPO-JOURNAL.md` (+2), `STE-H3b-SPEC.md` (+14), `STE-INT.md` (+14) ; `??` : `etat/DOC/DOCSTAT/`, `REPO/tickets/LISIB-R1.md`, `STE-R4.md`, `etat/ST/LISIB/` ; `Docs/README.md` et `Journal_Modifications.md` non modifiés ; rien d'indexé | PASS |
|
|||
|
|
| V5 | `git ls-files --eol` ; `tr -cd '\r' < f \| wc -c` ; `head -c3` ; `git diff --check` | `w/lf`, 0 CR, pas de BOM | 6 fichiers `i/lf w/lf attr/-text`, CR = 0 pour chacun, 3 premiers octets `# 0`, `# 0`, `# 2`, `---`, `---`, `# 3` (pas de `ef bb bf`), `git diff --check` vide | PASS |
|
|||
|
|
| V6 | relecture de chaque « BOSS l. N » dans `BOSS-JOURNAL.md` (état actuel, 196 lignes) | chaque n° = ligne source | voir détail : 27 citations, 0 décalée | PASS |
|
|||
|
|
| V7 | voir détail | tout existe | tout existe | PASS |
|
|||
|
|
| V8 | sans objet | | Journal et index pas encore écrits (T6) : `Docs/README.md` et `Journal_Modifications.md` non modifiés (V4) ; V8 reste à jouer après T6 | sans objet |
|
|||
|
|
|
|||
|
|
### V6 : détail des références « BOSS l. N » du § 15 (doc 32)
|
|||
|
|
| § | l. citée | Fait cité | Ligne réelle | OK |
|
|||
|
|
|---|---|---|---|---|
|
|||
|
|
| 15.1 | 51 | création du rôle Big Boss | l. 51 | oui |
|
|||
|
|
| 15.1 | 67 | « aucune session orchestrateur dédiée », LOT STF lance lui-même `lp-gardien` | l. 67 | oui |
|
|||
|
|
| 15.1 | 9-10 | livrables et traces uniquement sous `etat\` (copie 5.8) | l. 9-10 | oui |
|
|||
|
|
| 15.2 | 4-5 | règle de la file, BUILD-DEMANDE/GO/ATTENTE/FIN | l. 4-5 | oui |
|
|||
|
|
| 15.2 | 34-35 | un BUILD-GO par fiche, jamais deux sessions, hors copie UE libre | l. 34-35 | oui |
|
|||
|
|
| 15.2 | 65 | contre-vérification BUILD-FIN (MD5, `git status`, 0 UnrealEditor) | l. 65 | oui |
|
|||
|
|
| 15.2 | 99 | prolongation d'un BUILD-GO en cours accordée | l. 99 | oui |
|
|||
|
|
| 15.2 | 108 | idem, STE-D2 étendu « dans le même BUILD-GO » | l. 108 | oui |
|
|||
|
|
| 15.3 | 83 | ordre du journal, une fiche à la fois sur le journal | l. 83 | oui |
|
|||
|
|
| 15.3 | 107 | file du journal, ordre de disponibilité, qui n'est pas prêt cède, JOURNAL-LIBRE `<hash>` | l. 107 | oui |
|
|||
|
|
| 15.3 | 117 | règle : entrée CHG seulement quand son commit est imminent | l. 117 | oui |
|
|||
|
|
| 15.3 | 186 | JOURNAL-DEMANDE, jeton, plage de l'index dans le même commit | l. 186 | oui |
|
|||
|
|
| 15.4 | 63 | ARBITRAGE R-REPO1 | l. 63 | oui |
|
|||
|
|
| 15.4 | 82 | précision : traces d'un ticket sans commit, prochain commit quel que soit le lot | l. 82 | oui |
|
|||
|
|
| 15.4 | 83 | `NUMEROS.md` et `REPO-JOURNAL.md` partent entiers | l. 83 | oui |
|
|||
|
|
| 15.4 | 98 | règle générale confirmée (premier commit jeu qui les trouve modifiés) | l. 98 | oui |
|
|||
|
|
| 15.5 | 122 | `sk-repo` § 9 aligné par Big Boss | l. 122 | oui |
|
|||
|
|
| 15.5 | 103 | décision de l'utilisateur (ERR `--amend`, jamais sans accord) | l. 103 | oui |
|
|||
|
|
| 15.6 | 92-93 | GEL-GO et GEL DOCUMENTAIRE DOCMV | l. 92 (GEL-GO), l. 93 (périmètre, levée à FIN-LOT) | oui |
|
|||
|
|
| 15.6 | 100 | gel levé (FIN-LOT DOCMV acceptée) | l. 100 | oui |
|
|||
|
|
| 15.6 | 161, 168, 192 | fichiers réservés à un lot sur déclaration jusqu'à son commit (OBP, OBP-T2, DOCSTAT) | l. 161, 168, 192 | oui |
|
|||
|
|
| 15.7 | 145 | refus du système d'autorisations, pas de contournement, Big Boss n'écrit pas à la place | l. 145 | oui |
|
|||
|
|
| 15.7 | 147 | réponse : refus levé par ordre de l'utilisateur ; Big Boss ne change aucune règle | l. 147 | oui |
|
|||
|
|
| 15.7 | 151 | ordre direct de l'utilisateur après refus | l. 151 | oui |
|
|||
|
|
| 15.7 | 156 | 7 règles `permissions.allow` (journal, registre, README, TACHES, NUMEROS, REPO-JOURNAL, BOSS-JOURNAL) | l. 156 | oui |
|
|||
|
|
|
|||
|
|
Liste des « décalées » : aucune. Réserve R2 de la SPEC : Big Boss écrit toujours dans le fichier (196 lignes à la relecture) ;
|
|||
|
|
il n'ajoute qu'en fin de tableau, donc les n° cités restent stables sauf modification de l'en-tête ou d'une ligne
|
|||
|
|
antérieure. Relire juste avant le ticket.
|
|||
|
|
|
|||
|
|
### V7 : détail
|
|||
|
|
| Élément | Commande / lecture | Résultat |
|
|||
|
|
|---|---|---|
|
|||
|
|
| `bdb8f6b` | `git cat-file -t` + `git log -1` dans `D:\Game\LifePlay-Sandbox-5.8` | commit « AG + ETAT3 : skills lp-repo… (CHG-299…) » |
|
|||
|
|
| `a8dea6d` | idem dans `D:\Game\LifePlay-Sandbox` | commit, même message (AG + ETAT3) |
|
|||
|
|
| `ee9dce2`, `2cca224` | idem dans le jeu | commits « AG : doc 32… (CHG-299) » et « AG : registre AG-TACHES, clôture… (CHG-299) » |
|
|||
|
|
| ERR-087 « corrigé (CHG-302) » | Grep `Docs/Registre_Erreurs.md` l. 94 | « corrigé (CHG-302 ; règle dans `lp-repo` § 10, tickets AG-R7, AG-R8) » |
|
|||
|
|
| `lp-repo` § 4 / R-REPO1 | Grep `.claude/skills/lp-repo/SKILL.md` | `## 4.` l. 38, R-REPO1 l. 42 |
|
|||
|
|
| `lp-repo` § 10 / `--amend` | idem | `## 10.` l. 87, « `--amend` seulement avec l'accord de l'utilisateur » l. 95 |
|
|||
|
|
| `sk-repo` § 9 | Grep `~/.claude/skills/sk-repo/SKILL.md` | `## 9. Interdits` l. 84, `--amend` (sauf accord…) l. 85 |
|
|||
|
|
| absence `lp-mgr-*`, `lp-planificateur` | `ls ~/.claude/agents` (12 agents) + filtre | 0 ; aucun `sk-manage`/`sk-plan`/`sk-chef` dans `~/.claude/skills` |
|
|||
|
|
| doc 29 `lot-sta`/`gate-gst` | `STA-TACHES.md` l. 17 « Porte G-ST validée », l. 37 STA-T4 « à faire » | conforme (réserve, § 6 case 1) |
|
|||
|
|
| doc 30 `lot-oba` | `OBA-TACHES.md` : 7 fiches (T1, T23 ×4, T4, T5) toutes « acceptée » | conforme |
|
|||
|
|
| doc 30 `gate-gob` | `OBB-TACHES.md` l. 5-7 « OK pour traitement » B1, B3, G-OB-6 ; `OBB-EVAL.md` l. 186 « GO conditionnel » | conforme (`in_progress`) |
|
|||
|
|
| doc 21 titre | `21_Sandbox_Addon.md` l. 176 (S8-VAL.md), l. 136 (« Copie 5.8 ») ; `Journal_Modifications.md` l. 1228 CHG-220 (S8) | conforme |
|
|||
|
|
| renvois internes | `ls` de `Docs/10_Protocole_Operations.md`, `Docs/32_Organisation_Agents.md`, `.claude/skills/lp-lot/SKILL.md`, `etat/BOSS/BOSS-JOURNAL.md`, `Docs/Registre_Erreurs.md` | tous présents ; doc 32 contient § 9 (l. 273), § 11 (l. 332), § 13 (l. 365), D-AG10 |
|
|||
|
|
| liens Markdown | Grep `](…)` non http dans les 6 docs | 1 lien : `08_Guide_Developpeur.md:78` → `13_Protocole_Coiffure.md`, **présent**, ligne non modifiée ; 0 lien ajouté par DOCSTAT |
|
|||
|
|
|
|||
|
|
## 4. Diff lu en entier
|
|||
|
|
6 fichiers, 86 lignes ajoutées, 11 retirées (`git diff --stat`) : 08 (1/1), 09 (1/1), 21 (1/1), 29 (3/3), 30 (3/3), 32 (77/2).
|
|||
|
|
Les deux diffs (cinq premiers docs, puis doc 32) ont été lus intégralement ; recompte par `--numstat` et `--stat`,
|
|||
|
|
concordant avec `DOCSTAT-IMPL.md` § 1. Rien d'ajouté en dehors du § 2 de la SPEC, hormis les précisions du § 15 listées
|
|||
|
|
en Constats (E3). Doc 32 : § 1 à § 14 intacts.
|
|||
|
|
|
|||
|
|
## 5. Verdict
|
|||
|
|
**PASS-STATIC** : tous les critères V1-V7 rejoués conformes, aucun FAIL ; V8 sans objet (T6 non faite). Pas d'exécution
|
|||
|
|
(docs seuls). Aucune référence « BOSS l. N » à corriger.
|
|||
|
|
|
|||
|
|
## 6. Points à confirmer par l'utilisateur (cases)
|
|||
|
|
- [ ] 1. `lot-sta` `completed` (doc 29) alors que `STA-TACHES.md` l. 37 porte toujours STA-T4 « à faire » : conforme à la
|
|||
|
|
décision Q2 (« Tout completed »), signalé pour mémoire ; ni FAIL ni écart de DOCSTAT.
|
|||
|
|
- [ ] 2. `phase0` `completed` des docs 29 et 30 : aucune trace écrite de la validation (Q1, décision de fait) ; acquis.
|
|||
|
|
- [ ] 3. Relire les n° « BOSS l. N » juste avant le ticket si Big Boss modifie l'en-tête de `BOSS-JOURNAL.md` (R2).
|
|||
|
|
- [ ] 4. T6 : jouer V8 (CHG, plage README, cellules Q4 l. 59, 67, 68, 70, `NUMEROS.md`) et re-contrôler les 6 docs au
|
|||
|
|
moment du commit.
|
|||
|
|
|
|||
|
|
Tours : 17 / 40 (estimation ; `python -I Tools/FicheStats.py --lot DOCSTAT` fait foi)
|
|||
|
|
|
|||
|
|
## Constats
|
|||
|
|
- E1 (déclaré, accepté) : en-tête du doc 32 sur 3 lignes au lieu de 2 (IMPL § 2).
|
|||
|
|
- E2 (déclaré) : § 15.4, la « précision » R-REPO1 n'est pas dans `lp-repo` (seulement la règle de base, § 4) ; le § 15.4 cite
|
|||
|
|
BOSS l. 82, 83, 98 et `lp-repo` § 4, conforme à `lp-repo` (R-REPO1 l. 42, sans la précision).
|
|||
|
|
- E3 (mineur, non déclaré, sans conséquence) : le § 15 ajoute un paragraphe d'introduction (« BOSS l. N : numéro de ligne au
|
|||
|
|
commit du lot DOCSTAT ») et, en 15.6, la mention « CHG-300 » ainsi que la liste « journal, registre, index, docs, skills,
|
|||
|
|
`CLAUDE.md` » (tirée de BOSS l. 93) ; 15.7 détaille la liste `permissions.allow`. Contenu exact vis-à-vis des sources,
|
|||
|
|
hors du plan littéral du § 2.3 mais dans son esprit (« plan de section »).
|
|||
|
|
- E4 (mineur) : IMPL § 1 dit « § 15 ajouté, l. 405-476 » ; la ligne 405 est vide, `---` l. 406, titre l. 408. Sans effet.
|
|||
|
|
- E5 (information) : les lignes ajoutées aux docs 08 et 09 dépassent 120 colonnes (texte SPEC mot pour mot). Pas d'écart.
|
|||
|
|
|
|||
|
|
Fichiers écrits par cette fiche : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\DOC\DOCSTAT\DOCSTAT-VAL.md` (A, déjà
|
|||
|
|
prévu à `DOCSTAT-IMPL.md` § 6). Aucun autre fichier modifié.
|