LifePlay-Revival/Docs/Migration/etat/REF/REF1/REF1-CART-02.csv
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

22 KiB

1idenoncedoc_lignecategoriestatut
2C2-001Une coiffure doit etre un SkeletalMesh dont les os portent les noms Genesis 8, avec poids repartis sur tete/cou/clavicules/poitrine, materiaux enfants de DazHair, nom unique et declaration dans un .lphair sous Modules13 §1 l.11-20PRODen vigueur
3C2-002Convertir une coiffure statique en suivant l'ordre HairImportFbx.py, commandlet LPHairFromStaticMesh (toujours un essai -DryRun avant, refus d'ecraser un asset), HairMaterials.py, deplacement du dossier _Work vers la sauvegarde, puis .lphair et BuildCollections.py13 §3 l.63-143OPEen vigueur
4C2-003Controler le journal LogLPHairFromStatic a l'essai a blanc: echelle entre 0,8 et 1,5, os head sans correction, largeur de coiffure 25 a 32 cm, sinon ajuster -Scale/-OffsetZ/-OffsetY/-Margin13 §3 l.81-103OPEen vigueur
5C2-004Avant d'importer une coiffure verifier la licence et ne retenir que les licences redistribuables (CC BY, CC0), la licence standard Fab est exclue, et ajouter l'attribution dans Licenses/Free_3D_Models_Credits.txt13 §3 l.51-52 et §7 l.237-238PRODen vigueur
6C2-005Telecharger une archive seulement avec l'accord de l'utilisateur, la copier dans la sauvegarde du lot et travailler sur des copies aux noms sans espaces (arguments Python separes par espaces)13 §3 l.52-55OPEen vigueur
7C2-006Ne rien supprimer sans copie: les dossiers de travail et assets retires sont deplaces vers D:\Game\LifePlay_Backup_5.5\<lot>, le retour arriere d'une coiffure consiste a retirer le .lphair puis deplacer les assets13 §3 l.122-123 et §6 l.242-243OPEen vigueur
8C2-007Apres ajout d'une coiffure faire un build Development dans un nouveau dossier d'archive (la mise en place avec -iterate ne retire pas les fichiers supprimes) et verifier la ligne de journal Coiffures : <Nom> ajoutee13 §3 l.146-151OPEen vigueur
9C2-008Le controle en jeu d'une coiffure est fait par l'utilisateur (liste du bon sexe, face, profil, couleur/epaisseur, mouvement, nouvelle partie et Continue) avant validation13 §3 l.153-162PRODen vigueur
10C2-009Le lot de coiffure se cloture par entree CHG, commit et tags <lot>-avant / <lot>-apres / <lot>-valide faits par l'agent13 §3 l.60 et l.164DOCremplacée par skill sk-repo (commits et tags par le seul gardien lp-gardien)
11C2-010Pour un lot de coiffures utiliser Tools/HairPipeline.ps1 -Config Tools/hairs/<lot>.json en deux temps (-Step Inspect puis lecture du rapport puis -Step Apply), champs auto recalcules mais valeurs manuelles jamais ecrasees, coiffure sautee si echelle hors 0,6-1,8, relancable apres interruption13 §7 l.191-230OPEen vigueur
12C2-011Les scripts de coiffure, ModSources et AnimSources vivent dans le depot addon LifePlay-Sandbox et se lancent depuis l'addon13 en-tete l.3OPEen vigueur
13C2-012La version affichee suit annee.mois.majeur.mineur (depuis la V1.5) lue dans ProjectVersion de Config/DefaultGame.ini par LPVersionSubsystem, traitee comme du texte (jamais comparee numeriquement) et mise a jour a chaque publication14 §2 l.22-29PRODcontradictoire avec README racine (CHG-361, version alpha 2026.10.2.1a avec suffixe non decrit)
14C2-013Modifier un widget via la commandlet LPEditWidget pilotee par une spec JSON versionnee (Tools/ui/*.json) avec valeur attendue avant, essai a blanc puis compilation avant sauvegarde14 §2 l.30-35OPEen vigueur
15C2-014Sauvegarder les assets modifies dans D:\Game\LifePlay_Backup_5.5\<lot> et revenir en arriere par Tools\Restore.ps1 -Lot <lot>14 §3 l.46OPEen vigueur
16C2-015Build Shipping V1.4: ne garder que vin_Base, lp_Revival et vin_VanillaRealistic et livrer les autres modules dans une archive Optional_Modules via Tools/SplitModules.ps1 -Config Tools/modules/V1.4.json15 §1 l.6-14 et §3 l.33-39PRODremplacée par 15 §5 l.46-65 (lp_Revival retire du jeu de base par 16 §8 l.196)
17C2-016Les Blueprints ne lisent aucun fichier de module optionnel: ils testent seulement GI.IsModEnabled(id) et un module absent de GI.ModEnableds est inactif, removeDeletedMods retire les modules sans dossier15 §2 l.20-27PRODen vigueur
18C2-017SplitModules.ps1 ne supprime rien (deplace vers <build>_modules_optionnels), ajoute une notice LISEZMOI_README, cree l'archive, la teste avec 7-Zip et compare son contenu aux fichiers deplaces15 §3 l.37-39OPEen vigueur
19C2-018Depuis la publication suivant la V1.4 le build ne garde que vin_Base et vin_VanillaRealistic en texte, chaque autre mod a son zip <module>-for-LifePlay-<version>.zip avec README bilingue, et INDEX.txt (nom, archive, taille, SHA-256) alimente le message de diffusion15 §5 l.46-54PRODen vigueur
20C2-019Les modules vin_* optionnels forment un seul zip vin_Modules-for-LifePlay-<version>.zip (groupes dans Tools/modules/next.json), les autres mods gardent chacun leur zip15 §5 l.60-66PRODen vigueur
21C2-020Les modules sont diffuses sur Discord dans un premier temps, sans annonce sur GitHub15 §5 l.55PRODen vigueur
22C2-021SplitModules.ps1 refuse un build contenant un mod d'assets installe (LifePlay/Mods/<mod>): utiliser un build neuf15 §5 l.56-58OPEen vigueur
23C2-022Dans un jeu empaque le moteur lit toujours <jeu>/Mods: chaque Mods/<Nom>/<Nom>.uplugin devient un plugin Mod active par defaut, ses paks IoStore sont montes au demarrage (assets sous /<Nom>/), non signes, avec le registre d'assets du mod16 §1 l.13-19PRODen vigueur
24C2-023Un mod d'assets a deux moities au meme identifiant: plugin de contenu Mods/<Nom> (assets cuits) et module texte Content/Modules/<Nom>/<Nom>.lpmod, distribue en une archive a extraire dans le dossier du jeu16 §2 l.25-35PRODen vigueur
25C2-024Cuire un mod seul en DLC contre la version de reference (RunUAT BuildCookRun avec -dlcname et -basedonreleaseversion), avec le meme moteur que le jeu publie16 §2 l.37-43 et §5 l.88-89OPEen vigueur
26C2-025Chaque publication produit Releases/<version>/Windows (-createreleaseversion, environ 1,3 Go, hors git) livree avec les sources, et aucun build destine a la publication ne se fait sans recreer cette reference16 §2 l.49-51 et §7 l.166-170PRODen vigueur
27C2-026Les assets de base references par les mods (squelettes Genesis, materiau DazHair) ne sont plus renommes ni deplaces, un mod declare la version du jeu visee16 §3 l.60PRODen vigueur
28C2-027Depuis PowerShell passer -createreleaseversion=<version> par cmd /c (sinon la version est coupee a chaque point) et ecrire les commandes aux guillemets imbriques dans un fichier .cmd16 §5 l.94-96 et §6 l.153-154OPEen vigueur
29C2-028Le dossier <projet>/Mods reste vide: Tools/ModSource.ps1 y deplace un mod le temps d'un travail puis le remet dans ModSources, et ne jamais builder ni commiter avec Mods non vide16 §6 l.125-127 et 24 l.229OPEen vigueur
30C2-029Fabriquer un mod de coiffures par HairPipeline.ps1 -Config Tools\mods\<Nom>.json (Inspect puis Apply) puis Tools\BuildMod.ps1 -Name <Nom> -Version <jeu>, qui controle plugin, module, reference, absence d'autre plugin dans Mods, conteneur et teste l'archive16 §6 l.129-141OPEen vigueur
31C2-030Le jeu lit les .lpmod par position pour les lignes 1 a 3 (MODULE_UNIQUEID, NAME, AUTHOR), les cles ajoutees apres sont sans risque, ULPModInfoSubsystem avertit si MODULE_GAME_VERSION differe de ProjectVersion, BuildMod refuse un mod payant a licence non commerciale16 §8 l.176-188PRODen vigueur
32C2-031Le guide des moddeurs (Creating_Asset_Mods.md, explanation.lphair) et les outils NewMod.ps1 / EditMod.ps1 sont decrits dans Docs/Modding du jeu16 §7 l.158-165DOCremplacée par 24 §Points ouverts l.69 (guide deplace dans LifePlay-Sandbox\Docs)
33C2-032Le gestionnaire de mods accessible depuis l'ecran titre s'ajoute par la commandlet LPTitleModManager (essai -DryRun puis application, Blueprint deja traite saute), sans modifier le Blueprint GI17 §2 l.19-38PRODremplacée par 27_Plan_Migration_UE58 (17 declare l'historique 4.27 non mis a jour, l.3)
34C2-033La fermeture du gestionnaire depuis l'ecran titre n'enregistre que ModEnableds dans GameSettings.sav via ULPModSettingsLibrary::SaveModSelection, jamais GI.SaveSettings(slot) hors partie17 §2 l.30-33 et §3 l.45-46PRODen vigueur
35C2-034Deux builds de mesure: Development pour les chiffres comparables (baseline, non-regression) et DebugGame pour la plongee (ratios, piles), a ne reconstruire que si checks, PDB ou outil l'exigent18 §1 l.8-17OPEen vigueur
36C2-035Compiler sans l'addon est possible (avertissement AdditionalPluginDirectory not found) mais UBT reutilise alors un Makefile.bin sans les modules de l'addon: deplacer (pas supprimer) ces Makefile.bin avant de recompiler avec l'addon18 §1 l.19OPEen vigueur
37C2-036Empaqueter avec Tools\BuildDebug.ps1 [-Config DebugGame|Development] sans jamais -nodebuginfo, cuisson -pak -iostore -compressed, PDB recopie et lanceurs Tools/debug/*.bat copies a cote de l'exe, journal sous Saved\Logs\portage18 §2 l.23-36OPEen vigueur
38C2-037Sessions de capture: A (DebugGame, Insights, a-coups), B (DebugGame, memoire/physique), C (Development, CSV+LLM, non-regression), lancees par les bat Tools/debug sur un scenario unique d'environ 15 min18 §3 l.38-64OPEen vigueur
39C2-038Ne jamais passer -csvCaptureFrames (plantage RHI): demarrer le CSV par -ExecCmds, et mesurer un jeu empaquete et non UnrealEditor -game18 §3 l.66-69OPEen vigueur
40C2-039Collecter les preuves par Tools\CollectDebugArtifacts.ps1 -Lot -BuildDir -Session vers LifePlay_Backup_5.5\<lot>\Session<X> (echoue si rien copie) et resumer le CSV par SummarizeDebugCsv.ps118 §4 l.71-87OPEen vigueur
41C2-040Options runtime non-Shipping de ULPDebugSubsystem: -LPHitchLog, -LPHitchMs, -LPCollisionLog et commandes console LifePlay.Bookmark/MemSnapshot/CollisionDump/HitchSummary, tout derriere #if !UE_BUILD_SHIPPING (cout nul en Shipping)18 §5 l.89-103 et 19 §2 l.86OPEen vigueur
42C2-041Gates de la session C: au moins 9000 images, LLM, mediane <= 17 ms (plus ou moins 1) ou ecart explique, jouer sans -LPHitchLog18 §6 l.118-128OPEen vigueur
43C2-042Priorite d'outils: Unreal Insights, CSV/LLM, ChaosVD puis RenderDoc/PIX/Radeon, et Tracy, Optick, Superluminal, ASAN sont ecartes18 §7 l.144-145 et 19 §2 l.152-153OPEcontradictoire avec skill lp-perf (recettes PresentMon, CSV Profiler, Gauntlet et Tracy a la demande)
44C2-043Le skill agent de la mesure est .cursor/skills/lifeplay-debug-build, a lire avant tout code et a ne pas contredire sans mise a jour du skill et du plan18 l.5 et 19 §3 l.167-174DOCremplacée par skill lp-perf et skill lp-build (skills lp-* du projet)
45C2-044Ne pas ouvrir de lot d'optimisation tant que les mesures de a-coups (I4) et de memoire (I5) n'ont pas leurs gates verts, et ne pas melanger correction et mesure dans le meme lot19 §1 l.47 et l.29-37ORGen vigueur
46C2-045Regle de sortie d'iteration: on ne passe a l'etape suivante que si tous les criteres mesurables sont verts, code sans artefact = rouge, puis corriger et re-mesurer sans sauter d'etape19 §4 l.180-184ORGen vigueur
47C2-046Go/No-Go a chaque gate avec criteres verts, un sous-lot = un objectif mesure, commit seulement si demande19 §1 l.74-77ORGremplacée par skill sk-repo (commit uniquement par le gardien sur ticket)
48C2-047Identifier le squelette d'un pack d'animations par LPAnimIdentify contre Tools/anim/profiles/*.json (un seul profil, au moins 95 pour cent des os obligatoires), a egalite le profil le plus complet l'emporte, methode ue4/ue5/genesis_direct choisie par -Methode=<id ou auto>20 §1 l.17 et §2 l.61 et §3 l.76OPEen vigueur
49C2-048AnimPipeline.ps1 (appele par BuildMod.ps1 -Anim <pack>) enchaine inventaire, import, identification, pose T, conversion, evaluation, catalogue, livraison, ecrit un rapport JSON par etape, s'arrete au premier controle en echec, reprend par -From et deplace l'ancien resultat vers precedent_<date>20 §3 l.67-83OPEen vigueur
50C2-049Un pack d'animations se declare dans AnimSources/<pack>/pack.json (origine, licence compatible, fichiers, SHA-256) avant tout import20 §3 l.74PRODen vigueur
51C2-050Chaque clip est classe accepte / a revoir / rejete selon les seuils de controle (ecart formule 1 pour cent, penetration 1 cm, sol 3 cm, continuite 10 degres...), un clip rejete bloque la livraison sauf exclusion dans pack.json20 §3 l.79 et §4 l.95-103PRODen vigueur
52C2-051Les clips livres sont renommes <cle>_F / <cle>_M sous /<Mod>/Anims (cle en minuscules prefixee, coupure au dernier _), appeles par ANIMATION: <cle> ou Actor.animate(<cle>) via Room.Dailies et ULPModDailiesSubsystem, avec essai de chargement en jeu20 §1 l.23 et §3 l.81-85PRODen vigueur
53C2-052Le catalogue d'animations (catalogue.json, catalogue.html, vignettes) est regenere a chaque passage et le pilote refuse de livrer un mod dont le catalogue n'a pas ete produit dans le meme passage20 §5 l.111-149PRODen vigueur
54C2-053Chaque lot d'animations suit le protocole 10: instantane, entree CHG, retour arriere par Restore.ps120 §6 l.165DOCen vigueur
55C2-054Tous les chemins d'assets et fichiers du sandbox passent par Config/LPSandbox.ini lu par FLPSandboxConfig::Get avec repli sur le litteral historique, le fichier vivant dans l'addon depuis DC321 §Contrat l.57-69PRODen vigueur
56C2-055LPAnimMeasure ne dépend ni de LifePlay ni de LifePlayEditorTools (graphe acyclique), la configuration lui est poussee par un setter, jamais l'inverse21 §Module l.98 et l.109PRODen vigueur
57C2-056Le jeu et l'addon sont deux depots siblings relies par AdditionalPluginDirectories dans LifePlay.uproject, sans submodule, et le jeu consomme un commit precis de l'addon21 §Strategie git l.117-127OPEen vigueur
58C2-057Le pin addon est consigne a la main dans le doc 21 et le README de l'addon a chaque evolution (pin 5.5 f73e017)21 §Strategie git l.127DOCremplacée par 21 §Strategie git l.136 (copie 5.8, branche ue5.8) et skill lp-repo (pin tenu par le gardien)
59C2-058La copie 5.8 suit la branche ue5.8 de l'addon via un worktree D:\Game\LifePlay-Sandbox-5.8 declare dans son LifePlay.uproject21 §Strategie git l.136OPEen vigueur
60C2-059Tout changement de geometrie du couple se fait dans LPCoupleSim cote addon puis bump du pin et le jeu ne reintroduit pas de copie locale21 §CoupleBox l.157PRODcontradictoire avec 21 §Module l.79 et 24 l.57 (LPCoupleSim rapatrie dans le plugin du jeu LPAnimCore par DC1)
61C2-060LPSandbox est limite a l'editeur (TargetAllowList Editor) pour que l'addon prive ne finisse jamais dans un Shipping publie21 §Acceptation l.226PRODen vigueur
62C2-061Cuire sans -iterate tout build de reference ou de publication (cuisson complete), un build de test ne s'ecrit jamais dans un dossier d'archive existant, et compiler avec -NoUBA si erreurs internes C1001/C220621 §Acceptation l.212 et l.214OPEen vigueur
63C2-062Archiver les PDB du Shipping dans un dossier par numero de build a cote de Releases, avec BUILD-ID.txt (SHA-256 de l'exe)21 §Acceptation l.224OPEen vigueur
64C2-063Content/Modules/.git reste hors de l'arbre (D:\Game\LifePlay_ModulesGit) et chaque build candidat passe Tools\CheckPackage.ps1 (0 ligne Modules/.git au manifeste NonUFS)21 §Acceptation l.227OPEen vigueur
65C2-064Une copie de sauvegarde de test comprend Saved\SaveGames et Content\Saves, et le Shipping utilise %LOCALAPPDATA%\LifePlay\Saved (decision D4 de l'utilisateur)21 §Acceptation l.213 et l.225PRODen vigueur
66C2-065Les scripts d'etat ecrivent leurs livrables par Tools/EtatDir.ps1 dans etat/<projet>/<lot>, et chaque reste a faire entre dans la liste unique des reports du doc 21 avec un lot proprietaire21 §Acceptation l.215 et 24 l.198DOCen vigueur
67C2-066Politique de modeles par palier (M0 composer-2.5-fast, M2 sonnet-5-5-high, M3 opus thinking, M4 opus medium): palier bas pour VAL a checklist, M2 pour toute operation destructive ou inter-depots, M3 pour IMPL qui change un comportement, traçabilite Modele prevu | utilise (sinon FAIL-TRACE)22 §9 l.202-208ORGremplacée par skill sk-orchestrate (niveaux N0-N5) et contradictoire avec 24 §Matrice l.124-131 (haiku/sonnet/opus)
68C2-067Cloture git par lot avec un proprietaire: la fiche IMPL finit par un build vert, gate A-INT avec commit addon, bump du pin, commit jeu et identite git identique dans les deux depots22 §9 l.209-213ORGremplacée par skill sk-repo (gardien unique)
69C2-068Separer VAL et DOC (la VAL est en lecture seule sur les docs d'acceptation), passer par une SPEC avant toute decision d'architecture et tenir un registre unique des reports22 §9 l.214-217 et 24 l.197-198ORGen vigueur
70C2-069Mode multi-agents: GO conditionnel pour migrations a risque (extraction de code, refonte partagee), NO-GO pour lots simples (au plus un fichier de config ou doc, sans C++): un agent plus une VAL basse22 §8 l.193-196ORGen vigueur
71C2-070Un mod est un module texte plus un plugin de contenu au meme identifiant (MODULE_UNIQUEID = nom du plugin = point de montage /<id>/), desinstalle en supprimant Content/Modules/<id> et Mods/<id>23 §1 l.17-30 et §2.2 l.67-69PRODen vigueur
72C2-071Chaine de fabrication d'un mod: Tools/NewMod.ps1, EditMod.ps1 / ModSource.ps1, HairPipeline.ps1 ou anim/AnimPipeline.ps1, puis BuildMod.ps1 -Name <id> -Version <jeu> qui refuse un autre plugin dans Mods, une entree hors Mods/<id>/ ou une licence non commerciale sur un mod payant23 §2.1 l.50-57OPEen vigueur
73C2-072Un mod est cuit contre une version de reference precise du jeu et ne doit referencer aucun contenu /Engine/ non cuit par le jeu23 §2.1 l.59-63PRODen vigueur
74C2-073La case du gestionnaire n'agit que sur les textes (non lus par PopulateRaws), les coiffures (filtrees) et l'avertissement de version: les animations sont toujours ajoutees a Room.Dailies et le plugin Unreal reste monte (ecart E1)23 §2.4 l.93-101PRODen vigueur
75C2-074Pour les fichiers texte le premier lu gagne par nom de fichier, donc le module le plus bas dans la liste affichee l'emporte, ordre sans effet sur animations et assets, vin_Base verrouille en dur dans UI/ModuleTick23 §2.4 l.111-124PRODen vigueur
76C2-075Ne jamais declarer de dependance obligatoire entre mods dans le .uplugin (le jeu ne demarrerait pas), CanContainContent est indispensable, un mod Shipping n'apporte aucun code, et MODULE_REQUIREMENTS n'est pas verifie23 §3.1 l.326-330 et §3.3 l.364-365PRODen vigueur
77C2-076Les trois premieres lignes du .lpmod sont lues par position, les autres cles (VERSION, LICENSE, PRICE, PACKAGED, GAME_VERSION) ne sont qu'affichees, et NewMod.ps1 / BuildMod.ps1 les ecrivent23 §3.2 l.337-352PRODen vigueur
78C2-077Les descripteurs .uplugin, .lpmod, pack.json et README dupliquent titre, auteur et licence sans source de verite designee: BuildMod recopie version et lien auteur, DeliverAnims ne cree les descripteurs qu'une fois23 §3.4 l.367-392DOCen vigueur
79C2-078Ordre de priorite des evolutions de mod: E1 (animations selon la case) puis E2+E3 (prerequis et coherence des deux moities) puis E14 (descripteur unique)23 §6 l.449-450ORGen vigueur
80C2-079La separation physique de la sandbox en plugins a ete abandonnee a la porte G-SB3 et tout lancement automatise (tournee, test, pilote) ne doit jamais modifier l'etat persistant du joueur (Open non memorise)23 §7.2 l.487 et §7.3 l.503ORGen vigueur
81C2-080Le jeu doit compiler, se lancer et se cuire sans le depot prive LifePlay-Sandbox, l'atelier de mods (BuildMod, NewMod, HairPipeline, commandlets LPAnim*, ModSources) vit dans la sandbox, tandis que le chargement des mods, SplitModules et Releases restent dans le jeu24 §Decisions l.56-61ORGen vigueur
82C2-081Strategie git des lots DC: un commit par lot, aucun push sans accord, addon d'abord puis jeu, deplacement entre depots par copie plus SHA-256 identique puis git rm, jamais de suppression avant commit dans l'addon24 §Strategie git l.101-114ORGremplacée par skill sk-repo (gardien unique, tickets)
83C2-082Instantane avant toute modification par .\Tools\Snapshot.ps1 -Lot <lot> -Path ... (option -ProjectRoot pour l'addon) et retour arriere propose par .\Tools\Restore.ps1 -Lot24 §Strategie git l.109-112OPEen vigueur
84C2-083Matrice de modeles M0 a M4 (haiku, sonnet, opus), sous-classer une fiche haute complexite est interdit, surclasser exige un motif ecrit, reprise en fable apres deux echecs de M324 §Matrice l.118-136ORGremplacée par skill sk-orchestrate (niveaux N0-N5, agents lp-*) et contradictoire avec 22 §9 l.202
85C2-084Un niveau rapide peut reecrire un script fourni malgre l'interdit ou rendre un resultat vide presente comme un succes: la fiche doit dire n'ecris ni ne modifie aucun script, recopier l'erreur et s'arreter, 0 resultat = echec probable24 §Matrice l.134-136ORGen vigueur
86C2-085Toute sous-tache est une fiche DC#-Tn (ID, agent, modele prevu | utilise, dependance, consigne, livrable, critere Done, handoff) et l'agent ne demarre que si le livrable amont existe et n'est pas vide24 §Protocole l.170-176DOCremplacée par skill sk-orchestrate (fiche a 9 rubriques)
87C2-086Regles d'orchestration: hors perimetre stop et signaler, FAIL de VAL = pas de DOC de cloture mais fiche -fix, la compilation appartient a l'IMPL et la VAL ne recompile pas, lot coupe = commit du valide24 §Regles l.191-199ORGen vigueur
88C2-087Roles A-CART, A-ARCH, A-IMPL-H/L, A-BUILD, A-INT, A-VAL, A-DOC associes aux paliers de modeles24 §Roles l.201-212ORGremplacée par agents lp-cart, lp-impl, lp-builder, lp-gardien, lp-validator, lp-writer (skill sk-orchestrate)
89C2-088Les livrables de lot vont dans etat\sandbox\DC#\ de la copie 5.5 (DC#-CART, SPEC, IMPL, BUILD, VAL) et les journaux de commandlets en .txt non suivis24 §Livrables l.185-189DOCremplacée par doc 29 (livrables sous Docs\Migration\etat\<projet>\<lot>\ de la copie 5.8)
90C2-089Avant de compiler fermer l'editeur et ne lancer qu'une compilation a la fois, verifier que les DLL des Binaries de l'addon et de LPAnimCore ne sont pas plus anciennes que celles du jeu, prouver le chargement par une ligne de journal du nouveau code24 §Pieges l.216-221OPEen vigueur
91C2-090La commande de compilation de reference est Build.bat LifePlayEditor Win64 Development avec -WaitMutex sur le chemin UE_5.5 et la copie 5.524 §Pieges l.216-218OPEremplacée par skill lp-build (Tools/Build.ps1, moteur 5.8)
92C2-091Pieges de lancement: lanceurs sandbox jamais derriere un tuyau (Start-Process cmd.exe), -run=pythonscript avec -FullStdOutLogOutput et scan_paths_synchronous avant does_asset_exist, toute recuisson par RetargetPack.py defait LPAnimTwist24 §Pieges l.223-228OPEen vigueur
93C2-092Le test jeu seul consiste a deplacer (pas supprimer) le dossier de l'addon sous un nom temporaire puis a le remettre, sans editeur ouvert24 §Pieges l.230-231OPEen vigueur
94C2-093Acceptation du decouplage: un clone propre sans addon compile (editeur et Development) et se lance, aucun Build.cs ni script du jeu ne reference LPAnimMeasure ou LPModTools, CHG par lot et pin a jour24 §Criteres l.380-387PRODen vigueur