LifePlay-Revival/Docs/Migration/etat/BOSS/COMMUN-27/COMMUN-27-BUILD.md

120 lines
12 KiB
Markdown
Raw Normal View History

Fiche BUILD-COM27 — Niveau N0 — Modèle prévu non précisé dans la fiche | utilisé claude-haiku-5-5 (Haiku 5.5) — Agent lp-builder — Skills sk-protocol, sk-windows-shell, lp-build
# COMMUN-27-BUILD : build Development d'essai COMMUN-27 (pack Paris 1.3.0, code STM1 carte classique 3D ; sous-système des prénoms LOC1-T2, jamais compilé) (2026-10-21)
Préconditions (établies, sorties brutes) :
- `pwsh -NoProfile -File "D:/Game/LifePlay-master 5.8/Tools/UeState.ps1"` : `processus=0 editeur=0 compilation=0 shaders=0 jeu=0` (CODE=0).
- Archive `D:\Game\LifePlay_Build_5.8_Development_COM27` absente : `Test-Path -LiteralPath` = `False`. (Un Glob sur `D:\Game` a expiré après 20 s, sans valeur ; le test de chemin fait foi.)
- Dossier `Docs\Migration\etat\BOSS\COMMUN-27` absent avant le lot (`Test-Path` = `False`) ; il est créé par `Build.ps1` (résumés écrits dedans).
- Outils présents : `Tools\Build.ps1` et `Tools\BuildDebug.ps1` (`Test-Path` = `True` chacun).
- MD5 d'entrée (`certutil -hashfile … MD5`, sorties brutes, 8 premiers caractères) :
- `Source/LifePlay/LPAssetRegistryHelpers.h` : 8e3b725a609cc8e5e23d2f0cec309c1a (attendu 8e3b725a) ;
- `Source/LifePlay/LPAssetRegistryHelpers.cpp` : 7b44f5fa7a1cb33ea8e96c9ecc1c7bde (attendu 7b44f5fa) ;
- `Source/LifePlay/LPCityNamesSubsystem.h` : 1063948323e856860350f143296d8611 (attendu 10639483) ;
- `Source/LifePlay/LPCityNamesSubsystem.cpp` : f378333812efd901c72f252131f28e47 (attendu f3783338) ;
- `Source/LifePlay/LPCityWaterSubsystem.h` : d7a3de7150af00becddcf53c78517459 (attendu d7a3de71) ;
- `Source/LifePlay/LPCityWaterSubsystem.cpp` : 392d659702289058fbfa646b68ba3545 (attendu 392d6597) ;
- `Config/DefaultGame.ini` : 8d7f4bdf45e4f36620ccfe043b380c66 (attendu 8d7f4bdf).
Sept sur sept conformes, aucun écart : la compilation est lancée.
## 1. Commande exacte
1. Éditeur (arrière-plan, tâche bxfe4ll73, 41 s) : `pwsh -NoProfile -File "D:/Game/LifePlay-master 5.8/Tools/Build.ps1" -Lot COMMUN-27 -EtatDir "D:/Game/LifePlay-master 5.8/Docs/Migration/etat/BOSS/COMMUN-27" -ExtraArgs '-NoUBA'` (cible par défaut `LifePlayEditor`, Win64, Development).
2. Jeu (arrière-plan, tâche bf27yoe85, 54 s) : `pwsh -NoProfile -File "D:/Game/LifePlay-master 5.8/Tools/Build.ps1" -Lot COMMUN-27 -Target LifePlay -Config Development -EtatDir "D:/Game/LifePlay-master 5.8/Docs/Migration/etat/BOSS/COMMUN-27" -ExtraArgs '-NoUBA'`.
3. Empaquetage (arrière-plan, tâche by6kgm3yl, 122 s) : `pwsh -NoProfile -File "D:/Game/LifePlay-master 5.8/Tools/BuildDebug.ps1" -Config Development -SkipBuild -ArchiveDir "D:/Game/LifePlay_Build_5.8_Development_COM27"`. Commande UAT écrite par le script (journal, ligne 1) : `RunUAT.bat BuildCookRun -project="D:\Game\LifePlay-master 5.8\LifePlay.uproject" -platform=Win64 -clientconfig=Development -cook -iterate -stage -pak -iostore -compressed -archive -archivedirectory="D:/Game/LifePlay_Build_5.8_Development_COM27" -unattended -utf8output -nop4`.
4. Contrôle : `pwsh -NoProfile -Command "& '…\Tools\UeState.ps1' -Kind Editeur,Compilation -WaitExit -TimeoutSeconds 540"` (attentes des deux compilations, 29 s et 51 s).
Écart à la fiche sur la commande : `-NoUBA` passé aux deux cibles (éditeur et jeu) ; la fiche le demande sans préciser la cible. Voir § Écarts.
## 2. Code de sortie
- Éditeur : `code=0 duree=41s erreurs=0 avertissements=0 autres=20 unites=6` (sortie de `Build.ps1`). Résumé `COMMUN-27_Build_20261021-170406.txt` l. 5 : `code de sortie : 0`.
- Jeu : `code=0 duree=54s erreurs=0 avertissements=0 autres=0 unites=6` (sortie de `Build.ps1`). Résumé `COMMUN-27_Build_20261021-170457.txt` l. 5 : `code de sortie : 0`.
- Empaquetage : `UAT code=0 duree=122s` (sortie de `BuildDebug.ps1`) ; journal `BuildDebug_Development_20261021-170601.log` l. 780 : `AutomationTool exiting with ExitCode=0 (Success)` ; l. 777 : `BuildCookRun time: 121.32 s`.
- CheckPackage (sortie brute, `BuildDebug.ps1`) : `Resultat : PASS (code 0)`, contrôles `[1]` à `[4]` `PASS 0`.
## 3. Modules recompilés
Établi, cible éditeur (résumé `COMMUN-27_Build_20261021-170406.txt` l. 38 à 47, journal `COMMUN-27_Build_20261021-170406.log`) :
- `=== Unites compilees : 6` : `LPAssetRegistryHelpers.cpp`, `LPCityNamesSubsystem.cpp`, `LPCityWaterSubsystem.cpp`, `Module.LifePlay.1.cpp`, `Module.LifePlay.2.cpp`, `Module.LifePlay.3.cpp` (toutes `[NoUba]`).
- `=== DLL liees : 1` : `UnrealEditor-LifePlay.dll`.
Établi, cible jeu (résumé `COMMUN-27_Build_20261021-170457.txt` l. 18 à 26) :
- `=== Unites compilees : 6` : mêmes six unités, dont `LPCityNamesSubsystem.cpp` (ligne de module recompilé citant LPCityNamesSubsystem : présente).
- `=== DLL liees : 0` : la cible jeu lie `LifePlay.exe` et non une DLL (compte du résumé, pas une absence de liaison). Exe : `D:\Game\LifePlay-master 5.8\Binaries\Win64\LifePlay.exe`, 2026-10-21 17:05:49, 335 911 936 o (CheckPackage).
Estimé : le code 0 n'est pas un cache périmé, car six unités ont été compilées et l'exe a une date postérieure au lancement du lot.
## 4. Erreurs et avertissements nouveaux
- Éditeur : 0 erreur, 0 avertissement compilateur (`Erreurs du compilateur : 0`, `Avertissements du compilateur : 0`).
- Éditeur, « autres lignes » : 20, toutes `Warning: Plugin 'HyperAIStudio' does not list plugin '…' as a dependency` (résumé l. 17 à 36). C'est le compte connu pour LifePlayEditor (`lp-build` § 7) : 20 attendues, 20 comptées.
- Éditeur, ligne hors compte et hors liste connue : `D:\Game\LifePlay-master 5.8\LifePlay.uproject does not list plugin 'GeometryProcessing' as a dependency, but module 'LifePlayEditorTools' depends on 'GeometryAlgorithms'.` (journal `COMMUN-27_Build_20261021-170406.log` l. 29, mêmes termes que COMMUN-25 l. 28). Le filtre du résumé ne la retient pas. Non comparée à COMMUN-24 : à confirmer.
- Jeu : 0 erreur, 0 avertissement, 0 autre ligne.
- Cuisson : `LogInit: Display: Success - 0 error(s), 1 warning(s)` (journal `BuildDebug_Development_20261021-170601.log` l. 520). Le seul avertissement est `CookIncremental` sans ZenStore (`LegacyIterative`, connu, `lp-build` § 4). Les lignes 253 et 518 sont omises à l'affichage par le Grep (lignes longues) ; leur contenu n'a pas été relu (incertain).
- Erreurs de cuisson : aucune ligne `Error:` ou `Fatal` relevée (Grep sur le journal de cuisson).
- Comptes par code C et fichier:ligne : sans objet, aucune erreur ni avertissement du compilateur.
## 5. Toolchain
Établi (résumés l. 7 des deux builds, journaux l. 35) : `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 (C:\Program Files (x86)\Windows Kits\10).` Le MSVC 14.50.35717 est celui épinglé de la copie 5.8 (`lp-build` § 1).
## 6. Preuve de chargement (addon)
sans objet : la fiche ne demande pas de preuve d'addon ; le jeu packagé n'a pas été lancé, et le code de LOC1-T2 est dans le module LifePlay (`LPCityNamesSubsystem`) et non dans l'addon.
## 7. Journal archivé et empreintes
- Journal éditeur : `D:\Game\LifePlay-master 5.8\Saved\Logs\portage\COMMUN-27_Build_20261021-170406.log`.
- Résumé éditeur : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\BOSS\COMMUN-27\COMMUN-27_Build_20261021-170406.txt`.
- Journal jeu : `D:\Game\LifePlay-master 5.8\Saved\Logs\portage\COMMUN-27_Build_20261021-170457.log`.
- Résumé jeu : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\BOSS\COMMUN-27\COMMUN-27_Build_20261021-170457.txt`.
- Journal de cuisson : `D:\Game\LifePlay-master 5.8\Saved\Logs\portage\BuildDebug_Development_20261021-170601.log`.
- Archive : `D:\Game\LifePlay_Build_5.8_Development_COM27` (dossier neuf créé par cette build ; `bats staged=7`, `pdb copies=0`).
- Cuisson : `Packages Cooked: 165, Packages Incrementally Skipped: 8756, Packages Skipped by Platform: 8, Total Packages: 8929` (journal l. 296). Le compte est identique à celui de COMMUN-25 (165 / 8756) : observé, non expliqué (estimé : le lot ne change pas les paquets de contenu du jeu). Les paquets recuits ne sont pas listés.
- Paquet : `Created pak file: D:/Game/LifePlay-master 5.8/Saved/StagedBuilds/Windows/LifePlay/Content/Paks/LifePlay-Windows.pak` (journal l. 621).
- Exe archive : `D:\Game\LifePlay_Build_5.8_Development_COM27\Windows\LifePlay\Binaries\Win64\LifePlay.exe`, MD5 `23B4EA431DCB013EBA10041008EABFD6` (`certutil`, sortie brute), 335 911 936 o, 2026-10-21 17:05:49.
- Exe du projet : `D:\Game\LifePlay-master 5.8\Binaries\Win64\LifePlay.exe`, MD5 `23B4EA431DCB013EBA10041008EABFD6`, même taille et même date. Identiques.
- Chaînes UTF-16 dans l'exe archive (`Select-String -LiteralPath <exe> -Encoding unicode -CaseSensitive -SimpleMatch -Quiet`, sortie brute) : `PRENOMS` = `True` ; `CLASSIQUE` = `True`. Présence établie ; nombre d'occurrences et usage à l'exécution non établis.
- Trace :
Trace : D:\Game\LifePlay-master 5.8\Docs\Migration\etat\BOSS\COMMUN-27\COMMUN-27_Build_20261021-170457.txt — Fiche BUILD-COM27 — 2026-10-21 17:05:51
Commande : section 1 (3 commandes) ; copie 5.8 `D:\Game\LifePlay-master 5.8`, moteur `D:\Game\Launcher\Engine\UE_5.8\Engine`.
Environnement: branche ue5.8, machine calme avant le lot (UeState 0), aucun autre build pendant le lot.
Attendu : code 0 aux trois étapes ; 0 erreur ; LPCityNamesSubsystem recompilé ; CheckPackage PASS 4/4 ; PRENOMS et CLASSIQUE présents dans l'exe.
Obtenu : code 0 (éditeur, jeu, UAT) ; 0 erreur ; 6 unités dont LPCityNamesSubsystem.cpp ; PASS 4/4 ; PRENOMS True, CLASSIQUE True.
Lecture : une ligne plugin GeometryProcessing hors compte du résumé ; `-NoUBA` sur l'éditeur aussi ; cuisson incrémentale (165 paquets).
## Écarts à la fiche
1. `-NoUBA` passé à la cible éditeur comme à la cible jeu (la fiche ne précise pas la cible ; décision de l'agent, à confirmer).
2. Le dossier `Docs\Migration\etat\BOSS\COMMUN-27` n'existait pas avant le lot ; créé par `Build.ps1`.
3. Aucune correction, aucune commande git en écriture, aucune suppression ni déplacement, aucune installation de mod, pack Paris non reconstruit ici (hors fiche).
## Fichiers à commiter
- `Docs/Migration/etat/BOSS/COMMUN-27/COMMUN-27-BUILD.md` (A, nouveau).
- `Docs/Migration/etat/BOSS/COMMUN-27/COMMUN-27_Build_20261021-170406.txt` (A, généré par `Build.ps1`).
- `Docs/Migration/etat/BOSS/COMMUN-27/COMMUN-27_Build_20261021-170457.txt` (A, généré par `Build.ps1`).
Journaux (`Saved\Logs\portage`), archive `D:\Game\LifePlay_Build_5.8_Development_COM27` et `Saved\StagedBuilds` : hors dépôt suivi, non commités. Aucune commande git en écriture.
## À verser
- `À verser : lp-build § 8 — Build.ps1 avec -ExtraArgs '-NoUBA' sur la cible éditeur : le résumé affiche « Using Unreal Build Accelerator local executor » malgré -NoUBA (les unités portent [NoUba] dans le journal) ; libellé du résumé à lire avec prudence.`
- `À verser : lp-build § 8 — Ligne « does not list plugin 'GeometryProcessing' » (LifePlayEditorTools) hors compte du résumé Build.ps1 : à ajouter à la liste connue si elle est confirmée (COMMUN-24 à comparer).`
## Constats
1. Établi : code 0 aux trois étapes (éditeur, jeu, empaquetage), 0 erreur de compilation, 0 avertissement de compilateur, CheckPackage PASS 4/4.
2. Établi : le module modifié (LPCityNamesSubsystem.cpp, avec LPAssetRegistryHelpers.cpp et LPCityWaterSubsystem.cpp) est recompilé dans les deux cibles.
3. Établi : exe archive et exe du projet identiques (MD5 23B4EA43…).
4. Établi : chaînes UTF-16 PRENOMS et CLASSIQUE présentes dans l'exe archivé.
5. Non mesuré : le comportement à l'exécution (prénoms, carte classique 3D) ; aucun jeu lancé, aucun test en jeu.
6. Non mesuré : le pack Paris 1.3.0 (données et archive) ; ce lot ne fait que la compilation et la cuisson du jeu.
7. Point à confirmer : ligne GeometryProcessing (journal éditeur l. 29), hors compte du résumé.
Tours : ≈ 24 / 40 (estimé par l'agent ; `python -I -X utf8 Tools/FicheStats.py --lot BUILD-COM27` fait foi)
## État de reprise
sans objet : la fiche est menée à son terme (pas d'arrêt au budget). UeState final : `processus=0 editeur=0 compilation=0 shaders=0 jeu=0` (CODE=0) ; aucune tâche de fond.