13 KiB
Fiche OBB-T3d — Niveau N1 — Modèle prévu modèle de l'agent lp-writer | utilisé Sonnet 5.5 (claude-sonnet-5-5) — Agent lp-writer — Skills sk-protocol, lp-doc, lp-lot, lp-repo (§ 7), sk-repo (§ 2 et § 6)
OBB-T3-DOC : réservation du numéro CHG d'OBB-T3 et entrée CHG-301 écrite au journal (2026-10-10)
Mise à jour (relance, 11:33-11:35) : le Big Boss a inversé l'ordre du journal (OBB avant AR). L'entrée CHG-301 est maintenant
écrite (voir « Entrée écrite » en fin de livrable) ; NUMEROS l. 16 est passé à utilisé. Les mentions « non écrite », « réservé » et
« critère 8 non rejoué » plus bas décrivent l'état du premier passage (on n'efface pas le passé) ; ce paragraphe et la section
« Entrée écrite » font foi.
Copie D:\Game\LifePlay-master 5.8, branche ue5.8, HEAD b63196a (= tag OBB-avant). Consigne de l'orchestrateur reçue en cours de
fiche (arbitrage Big Boss, ordre du journal : AR CHG-299, puis OBB, puis gel DOCMV) : réserver maintenant, ne pas écrire dans
Journal_Modifications.md, fournir le texte complet ici. Hors gabarit : la section « Entrée prête, non écrite » (consigne de
l'orchestrateur) s'ajoute au gabarit DOC ; l'entrée du journal n'est pas écrite, le critère 8 de la fiche (diff du journal) est
donc non rejoué : il le sera à la fiche d'écriture.
1. Fichiers écrits (chemins)
D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REPO\NUMEROS.md: une ligne ajoutée (CHG-301, statutréservé), l. 16 (Edit).D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REPO\VERROU\13\qui.txtet dossier13-libre(verrou pris puis rendu ; dossiers locaux, non suivis par git).D:\Game\LifePlay-master 5.8\Docs\Migration\etat\OB\OBB\OBB-T3-DOC.md(ce livrable).- Non écrit :
Journal_Modifications.md(consigne). Établi :git status --short -- Docs/Migration/Journal_Modifications.mdvide à l'entrée de la fiche (commande rejouée avant la réservation) ; aucun retrait à faire, je n'y ai rien écrit.
2. Numéros utilisés (CHG, ERR, doc) et commande de contrôle
- CHG-301, lot OBB, statut NUMEROS
réservé(à passer àutilisépar la fiche d'écriture, après l'entrée au journal). - ERR : aucun. Doc numéroté : aucun.
- Réservation sous verrou (
sk-repo§ 2) : plus grand numéro deVERROU= 12 (12et12-libreprésents, donc libre) ;mkdir VERROU/13réussi à 11:28 (qui.txtécrit),mkdir VERROU/13-librefait après l'écriture de la ligne : verrou rendu (ls VERROU | sort -n | tail→12-libre,13,13-libre). Lemkdir 13-librea été lancé dans le même tour que l'Edit de NUMEROS (même lot d'appels) ; la ligne est bien présente ensuite (grep -n 'CHG | 301' NUMEROS.md→ l. 16) [estimé : l'ordre d'exécution n'est pas garanti, sans effet vu]. - Maxima relevés sous verrou (commandes
grep -ohE '^\| CHG-[0-9]+' … | sort -n | tail -3) : journal 5.8 = 298 (CHG-296, 297, 298) ; journal 5.5 = 297 (294, 295, 297) ;NUMEROS.md= 300 (299 AG, 300 DOCMV, tous deuxréservé) ;grep -rohE 'CHG-[0-9]{3}' Docs/Migration(hors outil Grep, qui sauteetat/) : maximumCHG-299(aucune mention de CHG-300 ou plus). Maximum réel = 300, d'où 301. - Contrôle d'absence avant écriture :
grep -rn 'CHG-30[0-9]' Docs/Migration→ aucun résultat (CHG-301 absent du journal). - Contrôle à rejouer à l'écriture :
Grep '^\| CHG-301 ' Journal_Modifications.md→ 1 ligne ;NUMEROS.mdl. 16 →utilisé.
3. Index, plages et registre des reports mis à jour
sans objet : aucune doc numérotée créée, ni modifiée, ni plage du README touchée ; l'entrée du journal n'est pas écrite (la plage
CHG-001 à CHG-nnn du README n'est pas concernée par la consigne ; ni README.md ni docs numérotées modifiables par cette fiche).
4. Écarts à la fiche
- Entrée CHG non écrite (consigne de l'orchestrateur postérieure à la fiche) ; texte fourni ci-dessous. Critère d'acceptation
«
git diffdu journal ne montre que l'entrée CHG d'OBB-T3 » : non applicable à ce stade ; « NUMEROS porte la ligne au statututilisé» : non (statutréservé, voulu par la consigne) ; « verrou rendu » : oui. - Fins de ligne du journal relevées avant écriture (pour la fiche d'écriture) :
Journal_Modifications.md= CRLF sur les 1276 lignes (1276 lignes avec CR sur 1276), sans BOM (premiers octets# J). Edit garde CRLF ; l'entrée doit tenir sur une seule ligne (tableau Markdown). - Place prévue (à vérifier à l'écriture) : bloc des entrées récentes, l. 1134-1137 au moment du relevé, ordre non uniforme
(296, 298, 297, 295 de haut en bas). CHG-299 (AR) et CHG-300 (DOCMV) y seront ajoutés avant moi. Insertion proposée : juste au-dessus de
la ligne de plus haut numéro présente (aujourd'hui
| CHG-296 |, l. 1134 ; après AR, au-dessus de l'entrée CHG-299), sans déplacer ni modifier aucune autre entrée. Repérage :Grep '^\| CHG-29[5-9]|^\| CHG-30' Journal_Modifications.md. - La fiche de départ cite « 3 dernières entrées CHG-296 à CHG-298 » : format relu (colonnes
ID | Date | Lot | Fichiers | Raison | Avant → après | Retour arrière,Journal_Modifications.md:8).
5. Fichiers à commiter
Dépôt du jeu D:\Game\LifePlay-master 5.8, branche ue5.8 (le ticket suit au gardien ; ordre du journal : après le commit d'AR, voir OBB-TACHES.md l. 18) :
A Docs/Migration/etat/OB/OBB/OBB-T3-DOC.md(ce livrable)M Docs/Migration/etat/REPO/NUMEROS.md: fichier partagé ; son diff contient aussi les lignes CHG-299 (AG) et CHG-300 (DOCMV) et d'autres changements d'autres sessions (git diff --stat: 4 insertions, 1 suppression au relevé). Ma seule ligne : CHG-301 (l. 16). À ne commiter qu'avec l'accord des autres lots ou dans le ticket où l'orchestrateur le décide.- Journal : rien à commiter pour cette fiche (non écrit). Fiche d'écriture :
M Docs/Migration/Journal_Modifications.md,M Docs/Migration/etat/REPO/NUMEROS.md.
Entrée prête, non écrite
Ligne unique, à insérer telle quelle (fins de ligne CRLF du fichier, pas de barre verticale dans le texte). Dépendances connues à la date :
lot OBB, ticket suivant OBB-R2 (nom d'après OBB-TACHES.md l. 18 ; à corriger si l'orchestrateur le nomme autrement).
| CHG-301 | 2026-10-10 | OBB | `Tools/CheckPackage.ps1` (neuf, 228 lignes, ASCII, LF : 4 contrôles en lecture seule d'un dossier de build empaqueté, paramètres `-Build`, `-Config Shipping/Development/DebugGame` (déduit de l'exe archivé si absent), `-ProjectRoot` ; (1) `Modules/.git` au manifeste NonUFS et sur disque, (2) `LPSandbox` au manifeste UFS, (3) `LPAnimMeasure` au `.rsp`, (4) `LPSandbox` dans le seul tableau `BuildPlugins` du `.target` ; codes 0 = 4 PASS, 1 = au moins un FAIL, 2 = NON-CONCLUANT sans FAIL, 3 = contrôle impossible ; le `.rsp` et le `.target` du projet ne valent pour le build contrôlé que si l'exe du projet a la même taille et la même date (2 s) que l'exe archivé et que le fichier n'est pas postérieur à cet exe de plus de 10 min, sinon NON-CONCLUANT) ; `Tools/BuildDebug.ps1` (+6 lignes, après la copie des PDB et avant la ligne `archive=` : appel de `CheckPackage.ps1`, tout code différent de 0 arrête le script avec ce code) ; `Tools/SplitModules.ps1` (+7 lignes, avant tout déplacement : code 1 ou 3 = refus par `throw`, code 2 = avertissement et publication poursuivie) ; hors dépôt : instantané `D:\Game\LifePlay_Backup_5.5\OBB\manifest.csv`, livrables `etat/OB/OBB/` (`OBB-T3-IMPL.md`, `OBB-T3-VAL.md`, `OBB-T3-DOC.md`) | Exigence B3 / G-OB-7 (`etat/OB/OBA/OBA-T5-EVAL.md` l. 89-98) : le paquet Shipping U8 contenait le dépôt `.git` des modules (142 lignes au manifeste NonUFS) et l'addon `LPSandbox` (1 ligne au manifeste UFS) sans qu'aucun outil ne le signale avant publication. Preuves rejouées par la VAL (`OBB-T3-VAL.md`, verdict PASS) : `Shipping_U8` code 1 (`[1]` FAIL 142, `[2]` FAIL 1, `[3]` et `[4]` NON-CONCLUANT : exe du projet relié à 20:08:50 contre 17:56:48 à l'archive, même taille 164 823 552 o) ; `DC4` avec le projet 5.5 : 4 PASS, code 0 (sans `-ProjectRoot` : code 2, autre taille d'exe) ; `Shipping_AP7` avec le projet 5.5 : `[2]` FAIL 2, `[3]` FAIL 1, `[4]` FAIL 1, code 1 ; `STC_Development` : `[1]` FAIL 142, code 1 ; build inexistant : code 3 ; faux builds jetables : règle des 10 min (9 min PASS, 11 min NON-CONCLUANT), refus de `SplitModules.ps1` prouvé sans déplacement (arbre inchangé). Branchement de `BuildDebug.ps1` : PASS-STATIC (UAT non lancé), analyse syntaxique 0 erreur sur les 3 scripts | 3 fichiers de `Tools` : 1 créé (0 → 228 lignes), `BuildDebug.ps1` 90 → 96 lignes (CRLF gardé), `SplitModules.ps1` 160 → 167 lignes (LF gardé) ; `git diff --stat -- Tools` : 2 fichiers, 13 insertions, 0 suppression. Conséquence : `BuildDebug.ps1` sort en code 1 après l'archivage de tout build tant que `Content\Modules\.git` existe (levé par OBB-T1, suspendue). Limites : (a) les builds Shipping lancés par UAT directement (hors `BuildDebug.ps1`) doivent appeler `CheckPackage.ps1` aussitôt après l'archivage et avant toute recompilation (consigne de skill à venir, `OBB-T3-IMPL.md` Constats 4) ; (b) en publication `[3]` et `[4]` seront souvent NON-CONCLUANT (projet recompilé après l'empaquetage) et ne bloquent pas `SplitModules.ps1` ; (c) un `.git` de sous-module (`Modules/<module>/.git`) n'est pas relevé | `git revert` du commit du ticket `OBB-R2` (restitue `BuildDebug.ps1` et `SplitModules.ps1` et retire `Tools/CheckPackage.ps1` de l'arbre suivi) ; hors git : `.\Tools\Restore.ps1 -Lot OBB` (proposé seulement, avec l'accord de l'utilisateur) pour les deux scripts modifiés, et déplacer `Tools\CheckPackage.ps1` vers `D:\Game\LifePlay_Backup_5.5\OBB` (jamais supprimer) |
Contrôles de l'entrée avant écriture (faits ici, sources) : chiffres repris de OBB-T3-IMPL.md § 1 et § 3 et de OBB-T3-VAL.md § 2 à 5
(lus en entier) ; 90 → 96 lignes (CR = LF = 90 puis 96, IMPL § 1 et VAL P7) ; 160 → 167 (VAL P7). Aucun contenu de jeu, aucun nom
de mod ou de texte ; noms de modules d'outillage seulement (LPSandbox, LPAnimMeasure, code du projet).
Points que la fiche d'écriture doit vérifier avant d'insérer : (i) git status --short -- Docs/Migration/Journal_Modifications.md ne montre plus que
l'entrée d'AR (CHG-299) ou est vide après son commit ; (ii) ticket OBB-R2 bien le ticket du commit de Tools/ ; (iii) numéros CHG-301 toujours
réservé à OBB dans NUMEROS.md ; (iv) CheckPackage.ps1 toujours à 228 lignes (wc -l) et MD5 7173f917718c206dd6750064ac1a224f.
Entrée écrite (relance)
Vérifications avant écriture, rejouées à 11:33 : (i) git status --short -- Docs/Migration/Journal_Modifications.md vide ; (ii) ticket OBB-R2
confirmé par l'orchestrateur (aucun fichier OBB-R2.md encore sous etat/REPO/tickets/, seul OBB-R1.md) ; (iii) NUMEROS.md l. 16 = CHG-301 OBB
réservé, l. 15 = CHG-300 DOCMV, grep -c '^| CHG-301 ' du journal = 0 avant ; (iv) Tools/CheckPackage.ps1 = 228 lignes, MD5
7173f917718c206dd6750064ac1a224f (wc -l, md5sum).
Écriture (Edit) : verrou VERROU/14 pris à 11:33 (qui.txt), rendu par 14-libre après le rejeu des contrôles (ls VERROU | sort -n | tail -3 →
13-libre, 14, 14-libre). L'entrée du livrable (section « Entrée prête, non écrite ») est insérée telle quelle, ligne unique, au-dessus de
| CHG-296 | : CHG-299 (AR) n'était pas encore au journal ; autres entrées non touchées. Elle porte désormais la ligne 1134 (CHG-296, 298, 297, 295
suivent en 1135-1138). NUMEROS.md l. 16 : statut utilisé (entrée écrite au journal 5.8 à 11:34, … non commitée).
Critère 8 rejoué (commandes, résultats bruts) :
git diff --stat -- Docs/Migration/Journal_Modifications.md→1 file changed, 1 insertion(+); lignes ajoutées commençant par+|= 1 (+| CHG-301 | 2026-10-10 | OBB …) ; lignes supprimées (^-[^-]) = 0. Ajout seul, ma seule ligne.- Fins de ligne :
grep -c $'\r$'= 1277 lignes avec CR pour 1277 lignes (avant : 1276 / 1276) : CRLF gardé, nouvelle ligne comprise ; premiers octets# J: pas de BOM. (git diff | grep -c $'\r$'= 0 : les lignes du diff sont affichées sans CR, sans conséquence, le comptage du fichier fait foi.) grep -n '^| CHG-301 ' Journal_Modifications.md→ l. 1134 (1 occurrence) ;NUMEROS.mdl. 16 →utilisé.- Verrou rendu :
14-libreprésent.
Fichiers à commiter (mise à jour, le gardien commite aussitôt : fichier partagé ; ticket OBB-R2 pour Tools/, ordre arrêté par l'orchestrateur) :
M Docs/Migration/Journal_Modifications.md(une ligne : CHG-301 ; rien d'AR ni d'autre dans ce diff, établi ci-dessus)M Docs/Migration/etat/REPO/NUMEROS.md(ma ligne l. 16 ; le diff contient aussi les lignes 299 et 300 des autres sessions : même réserve qu'en § 5)A Docs/Migration/etat/OB/OBB/OBB-T3-DOC.md(ce livrable)
Tours : 8 / 40 (premier passage) ; relance : 5 / 31
Constats
- Écart de formulation de la fiche : « DC4 + projet 5.5 : 4 PASS » est établi seulement avec
-ProjectRootde la copie 5.5 ; l'entrée le dit. - Les trois points « à trancher » de la VAL § 6 (blocage sur code 2 en publication,
.gitde sous-module, limites de rattachement) sont consignés comme limites (b), (c) dans l'entrée, sans décision à la place de l'orchestrateur ; ils restent ouverts en case non cochée dansOBB-T3-VAL.md§ 6.