LifePlay-Revival/Docs/Migration/etat/ST/STB/STB-JEU-BUILD.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

79 lines
8.7 KiB
Markdown

Fiche STB-JEU-BUILD — Niveau N0 — Modèle prévu haiku-5.5 (modèle de l'agent, aucune surcharge) | utilisé haiku-5.5 — Agent lp-builder — Skills lp-build, sk-protocol, sk-windows-shell
# STB-JEU-BUILD : archive Development du HEAD 12d86d2, lot STB (2026-10-09)
Résultat : réussi avec réserves. Code 0 à la compilation et au cook, archive complète (exécutable et paks) dans un dossier neuf. Trois réserves : cuisson incrémentale (LegacyIterative), `.git` présent dans l'archive, compilation déplacée vers `Build.ps1` (écart à la fiche, § Écarts).
## 1. Commande exacte
Interpréteur `pwsh -NoProfile -File`, répertoire de travail `D:\Game\LifePlay-master 5.8`. La fiche prévoyait une seule commande `BuildDebug.ps1 -Config Development -ArchiveDir ...`. Cette commande compile le jeu elle-même (`-build`, `Tools\BuildDebug.ps1` ligne 47), hors de `Build.ps1` et sans `-NoUBA`. Elle a donc été remplacée par deux commandes, dans cet ordre :
1. Compilation du jeu, par la voie réservée à la copie 5.8 :
`pwsh -NoProfile -File 'D:\Game\LifePlay-master 5.8\Tools\Build.ps1' -Lot STB -Target LifePlay -Config Development -ExtraArgs '-NoUBA'`
2. Cuisson, staging et pak, sans recompilation :
`pwsh -NoProfile -File 'D:\Game\LifePlay-master 5.8\Tools\BuildDebug.ps1' -Config Development -ArchiveDir 'D:\Game\LifePlay_Build_5.8_STB-JEU_Development' -SkipBuild`
Commande UAT produite par `BuildDebug.ps1` (ligne 52, journal `BuildDebug_Development_20261009-220527.cmd`) : `RunUAT.bat BuildCookRun -project=... -platform=Win64 -clientconfig=Development -cook -iterate -stage -pak -iostore -compressed -archive -archivedirectory=... -unattended -utf8output -nop4`.
## 2. Code de sortie
- `Build.ps1` : code 0 (résumé `STB_Build_20261009-220409.txt`, ligne « code de sortie : 0 » ; sortie console « code=0 duree=52s erreurs=0 avertissements=0 »).
- `BuildDebug.ps1` : « UAT code=0 duree=152s » ; journal ligne 776 `BUILD SUCCESSFUL`, ligne 778 `AutomationTool exiting with ExitCode=0 (Success)`.
- Archive contrôlée : `Windows\LifePlay.exe` présent, 7 lanceurs `LifePlay_debug_*.bat` posés dans `Windows\`.
## 3. Modules recompilés
- Compilé : `Module.LifePlay.cpp [NoUba]`, une seule unité (unity). Estimé : le module de jeu, unité unique, contient les sources modifiées des CHG-281 à 292 ; `git status` propre donne un ensemble adaptatif vide, donc toute l'unité est recompilée si une source incluse a changé. Non vérifié par comparaison d'horodatage des `.obj`.
- Lié : `Binaries\Win64\LifePlay.exe` (`[2/3] Link [x64] LifePlay.exe`, journal ligne 21 et 26), `LifePlay.lib`, `LifePlay.exp`, `LifePlay.target`.
- « Makefile : Creating makefile for LifePlay (.uproject file is newer) » : makefile recréé (résumé ligne 8).
- DLL liées : 0 (cible monolithique, pas de DLL de module ; sans objet pour ce comptage).
- Exécutable dans l'archive : `Windows\LifePlay\Binaries\Win64\LifePlay.exe`, 330 195 456 octets, horodatage 2026-10-09 22:04:59.
## 4. Erreurs et avertissements nouveaux
- Compilation (`Build.ps1`) : 0 erreur, 0 avertissement, 0 autre ligne d'erreur (résumé, comptes bruts).
- Cuisson (`BuildDebug_Development_20261009-220527.log`) : 1 avertissement `LogCook: Warning: CookIncremental and UnversionedCookedContent were requested, but LegacyIterative is required…` (lignes 250 et 516, même texte, une fois dans la liste et une fois dans le résumé). Avertissement de l'UAT lui-même : une cuisson LegacyIterative « may fail to recook packages… cause runtime crashes ».
- Cuisson : 3 lignes `Package … has a dependency on package … which does not exist` (lignes 262 à 264, paquets `/Game/Heavy/Daz/...`, `/Engine/EngineMeshes/Humanoid`). Non comparées à la référence U8 : incertain si elles existent déjà là-bas.
- Chiffres de cuisson (lignes 294, 368) : `Packages Cooked: 164, Packages Incrementally Skipped: 8751, Total Packages: 8923`, `IsIterativeCook=true`.
## 5. Toolchain
`Using Visual Studio 14.50.35739 toolchain (C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.50.35717) and Windows 10.0.22621.0 SDK` (journal ligne 14). Le MSVC 14.50.35717 correspond à l'épinglage de la copie 5.8 (lp-build § 1).
## 6. Preuve de chargement si addon
sans objet : le jeu empaqueté ne charge pas l'addon en tant que DLL d'éditeur, et l'agent ne lance pas le jeu. Aucune DLL d'addon périmée : `Plugins\LPSandbox\Binaries` absent de la copie 5.8 (Glob) et `D:\Game\LifePlay-Sandbox-5.8\Plugins\LPSandbox\Binaries` sans `*.dll` (Glob). Aucune déplacement fait.
## 7. Journal archivé (chemin)
- Compilation : `D:\Game\LifePlay-master 5.8\Saved\Logs\portage\STB_Build_20261009-220409.log` ; résumé : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\ST\STB\STB_Build_20261009-220409.txt`.
- Empaquetage : `D:\Game\LifePlay-master 5.8\Saved\Logs\portage\BuildDebug_Development_20261009-220527.log` (et `.cmd`).
## Constats
- HEAD : `12d86d2` (branche `ue5.8`, `git log --oneline -1`). `git status --short` vide avant et après les deux commandes.
- Durées : compilation 52 s, UAT 152 s (hors attentes). Une grande partie du temps d'agent a été perdue en attentes (voir Écarts).
- Archive : `D:\Game\LifePlay_Build_5.8_STB-JEU_Development` (dossier neuf, absent avant le lancement, vérifié par Read).
- Exécutable à lancer : `D:\Game\LifePlay_Build_5.8_STB-JEU_Development\Windows\LifePlay.exe` (lanceur, 301 568 octets). Binaire réel : `...\Windows\LifePlay\Binaries\Win64\LifePlay.exe`.
- Paks : `Windows\LifePlay\Content\Paks\` : `LifePlay-Windows.pak`, `LifePlay-Windows.utoc`, `LifePlay-Windows.ucas`, `global.utoc`, `global.ucas`.
- Taille : 2 250 fichiers, 2 607 403 344 octets (environ 2,43 Gio), `Get-ChildItem -Recurse`.
- Dossier `Mods` : aucun (0 dossier, 0 fichier) dans l'archive.
- Journal du jeu attendu par LogStats : `D:\Game\LifePlay_Build_5.8_STB-JEU_Development\Windows\LifePlay\Saved\Logs\LifePlay.log`. Pas encore créé (le jeu n'a pas été lancé). Chemin établi par l'exemple de `Tools\LogStats.ps1` ligne 22 ; la création réelle reste à confirmer au premier lancement.
- Dossier `.git` présent dans l'archive : `D:\Game\LifePlay_Build_5.8_STB-JEU_Development\Windows\LifePlay\Content\Modules\.git` (142 fichiers). Signalé, rien supprimé.
- `pdb copies=0` : `BuildDebug.ps1` ne copie que `*Win64-Development.pdb` ; le jeu produit `LifePlay.pdb`. Sans effet sur le lancement.
## Écarts à la fiche
1. Compilation : la fiche prévoyait `BuildDebug.ps1 -build` (compilation du jeu hors `Build.ps1`, sans `-NoUBA`). La consigne de la copie 5.8 réserve la compilation à `Build.ps1 -Lot`, et lp-build § 2 prescrit `-NoUBA` pour le jeu. Choix : compilation par `Build.ps1` puis cuisson `-SkipBuild`. À confirmer par l'orchestrateur.
2. Dossier du livrable : la consigne système indique `etat\U58\<lot>\`, la fiche indique `etat\ST\STB\`. `Tools\EtatDir.ps1` ligne 21 range `STB` dans le projet `ST`. Livrable écrit dans `etat\ST\STB\`, conforme à la fiche et à EtatDir.
3. Cuisson incrémentale : `BuildDebug.ps1` impose `-iterate` (ligne 52) et n'a aucun paramètre pour une cuisson complète. Le journal montre `IsIterativeCook=true` et 8 751 paquets réutilisés (lignes 294, 368) ; lp-build § 4 demande une cuisson complète pour un build de référence. Cette archive n'est donc pas une référence équivalente à U8 (STA-T1). Corriger demande une modification de `BuildDebug.ps1`, non faite (interdit par la fiche).
4. Ambiguïté UBA : `Build.ps1` a été lancé avec `-NoUBA`, mais le journal dit « Using Unreal Build Accelerator local executor to run 3 action(s) » (ligne 16). Les trois actions sont marquées `[NoUba]`. Estimé : le compilateur n'a pas utilisé UBA ; incertain.
5. `UeState.ps1` ne détecte pas le processus UAT : il a renvoyé `processus=0` pendant que la cuisson tournait (journal en croissance). Ne pas s'y fier pour attendre une fin d'UAT.
6. Attentes : mes boucles d'attente filtraient sur `BuildCookRun` dans la ligne de commande et comptaient leurs propres processus. Environ 9 minutes perdues, sans effet sur le résultat : la fin a été confirmée par la notification et par le journal.
7. Budget : environ 50 appels d'outils au lieu d'environ 25 tours. Le budget de la rubrique 9 est dépassé. Le travail demandé est terminé, aucune action supplémentaire.
8. Non fait, faute de mandat : aucun lancement du jeu, aucune modification de code, d'asset, de doc ou de config, aucun commit, aucune suppression, aucun `-Clean`.
## Points à confirmer
- Le `.git` de `Content\Modules` doit-il rester dans l'archive pour l'U8 ? (décision utilisateur)
- L'archive incrémentale (`LegacyIterative`) est-elle acceptable pour le parcours U8, ou faut-il une cuisson complète (changement de `BuildDebug.ps1`) ?
- Le livrable doit-il aussi figurer sous `etat\U58\STB\` (consigne système) ?