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

20 KiB
Raw Blame History

1idenoncedoc_lignecategoriestatut
2C3-001Une seule commande visible par variable de scalabilité : quand un réglage LPVideo* reprend un curseur Blueprint (ShadowQuality, PostProcessQuality, PostProcessAAQuality), le widget Blueprint est masqué (TabHidden dans LPSettingsSubsystem::CategoryOf) et jamais doublé25 §2 l.27 et §2.1 l.42PRODen vigueur
3C3-002Ordre d'initialisation du menu Video : LPSettingsSubsystem::EnsureTabs, puis LPVideoQualitySubsystem::EnsureControls (insertion avant le premier enfant LPColor*), puis LPColorGradeSubsystem en queue et laissé inchangé25 §2 l.29-33PRODen vigueur
4C3-003"Les réglages Video ne touchent pas l'ancrage de rendu L7c (GI dynamique 0, reflets SSR, Virtual Shadow Maps 0, D3D12, TAA verrouillé dans Config/DefaultEngine.ini) ; tout changement exige une campagne de validation jour/nuit type L7c/L7d"25 §3 l.54-63PRODen vigueur
5C3-004Qualité vidéo appliquée par Scalability::SetQualityLevels sur 4 groupes seulement (ombres, textures, effets, anti-aliasing) : Overall se décline par FromOverall, un curseur individuel par Normalize (Custom = -1), persistance dans Saved/Config/Windows/LPVideoQuality.ini sans écrire GameUserSettings.ini25 §2.1 l.43-45PRODen vigueur
6C3-005Hypothèse « sans INI ni action du joueur l'état moteur est conservé » : infirmée, au niveau Epic le projet change déjà cascades d'ombre, DetailMode et RefractionQuality par rapport à BaseScalability.ini (lot VQ1b : aligner ou valider visuellement l'écart)25 §2.1 l.45PRODcontradictoire avec 26 §1 l.14
7C3-006"Chaque point à confirmer d'une IMPL est reporté jusqu'à une case de VAL (PASS, BLOCKED ou reporté avec identifiant) et la VAL relit les IMPL amont, pas seulement la SPEC ; une hypothèse moteur n'est écrite comme acquise qu'après lecture du fichier moteur"26 §3 l.41-42 et §6 l.84ORGen vigueur
8C3-007Les renvois entre docs suivent la numérotation courante : le doc 26 cite « doc 23 » pour la Video Quality alors que c'est le doc 25 (le 23 est le cycle de vie des mods) et le § 6 « Prochaines fiches » du doc 25 est périmé26 §3 l.45 et §6 l.84DOCcontradictoire avec 25 l.1
9C3-008Les orchestrateurs sont des sessions Opus high (N2) qui délèguent vers le bas et vers le haut selon les niveaux N0 haiku, N1 sonnet, N3 opus-xhigh, N4 opus-max, N5 fable-top27 §Orchestration l.101-111ORGen vigueur
10C3-009"Grille de complexité à six critères notés 0 à 2 (étendue, couplage, incertitude, coût d'erreur, vérification, jugement), ajustement d'un niveau avec motif écrit, escalade d'un niveau sur échec ; sk-orchestrate l'applique"27 §Orchestration l.113-115ORGcontradictoire avec 34 §9 l.231
11C3-010"Taille de fiche : un seul résultat vérifiable ; budget par niveau N0-N2 environ 40 tours, pic 150 k, 20 min et N3-N5 environ 60 tours, pic 250 k, 30 min ; budget atteint = arrêt avec état de reprise (rubrique 9)"27 §Orchestration l.117-124ORGen vigueur
12C3-011Règle de taille SEQ1 uniforme (environ 40 tours, pic 150 k, 20 min pour toute fiche)31 §8 l.142ORGremplacée par 27 §Orchestration l.119-121
13C3-012Plafond dur maxTurns de 40 (N0-N2) et 60 (N3-N5) posé dans le frontmatter de chaque agent32 §6.1 l.199-202ORGcontradictoire avec 34 §2 l.47
14C3-013"Mesures de performance uniquement sur build empaqueté Development ; tests d'empaquetage avec nouvelle partie (liste des villes) puis Continuer ; une preuve par l'échec n'est jamais confiée à un agent N0"27 §Orchestration l.136-138OPEen vigueur
15C3-014Chaque projet épingle son toolset MSVC par CompilerVersion dans [/Script/WindowsTargetPlatform.WindowsTargetSettings] (ToolchainVersion ne sert qu'à Clang) : copie 5.5 sur 14.38.33130 (VS 2022), copie 5.8 sur 14.50.35717 (VS 2026)27 §Décisions l.78 et §U0 l.174-179OPEen vigueur
16C3-015Exigence « MSVC au moins 14.50.35723, plage 14.50.0-14.50.35722 bannie par 5.8 »27 §Décisions l.78OPEremplacée par 28 §7 l.347
17C3-016Un seul point de configuration du moteur : Tools/Engine.ps1 lu par tous les scripts (version lue dans EngineAssociation, surcharge LP_ENGINE_ROOT, dossiers de build LifePlay_Build_<ver>)27 §U2 l.199 et l.214-215 + 28 §6 l.297OPEen vigueur
18C3-017"Compilation et recomptage par Tools/Build.ps1 (option -FromLog) avec le skill lp-validate ; porte G-U3 = 0 erreur et LPTestStringCompat à 3120/0/60"27 §U3 l.166 et l.230-231OPEen vigueur
19C3-018Si UBA fait échouer la compilation (C1001/C2206, mémoire engagée élevée), recompiler sans UBA avec Tools/BuildDebug.ps1 -NoUBA (à porter dans le skill lp-build)27 §U6 l.278 et l.284 + 29 l.81OPEen vigueur
20C3-019"Resave de masse limité à LPResavePackages hors Heavy ; le filet est le tag U5-avant plus Tools/Snapshot.ps1 car git ne suit que 292 des 590 paquets (« réversible par git checkout » était inexact)"28 §3 l.198-200 + 27 §U5 l.257-259OPEen vigueur
21C3-020"Un mod d'assets cuit pour un autre moteur ne se charge pas : recuire contre la référence de version ; garde D2 à trois contrôles (moteur par en-tête de conteneur, version minimale 2026.10.2.0, maximale = ProjectVersion), mod refusé démonté avec fenêtre de raison, mod sans MODULE_GAME_VERSION chargé avec avertissement"27 §U7 l.94-97 et l.296-298PRODen vigueur
22C3-021Garde C++ MODULE_GAME_VERSION « décidée après le test T4 » (en attente)28 §4 l.211PRODremplacée par 27 §U7 l.296-298
23C3-022"Contrat des mods figé : .lpmod (lignes 1-3 par position), Content/Modules/<mod>/, plugins Mods/<mod>/ cuits en DLC, ModdingExtra, GI.ModEnableds, gestionnaire, avertissement de version ; seule une décision dédiée de l'utilisateur le touche"27 §Décisions l.69 + 29 §Périmètre l.30PRODen vigueur
24C3-023"Référence de release : Shipping 5.8 avec -createreleaseversion=2026.10.2.0 vers Releases/2026.10.2.0 ; une cuisson sans version prend celle du moteur ; recréer la référence si le code cuit change ensuite"27 §U7 l.299-300 et §U8 l.305-306 + 28 §2.3 l.61PRODen vigueur
25C3-024Archive des PDB de chaque build distribué dans un dossier séparé avec BUILD-ID.txt et numéro de build en tête du journal, car un minidump n'est exploitable qu'avec les PDB du même build27 §U8 l.350 + 29 §Méthode l.115-118OPEen vigueur
26C3-025"Règles de publication PUB1/PUB2 : GitHub sans contenu de jeu ni contenu sexuel, rien poussé sans accord ; V2.0 reste une version de migration non publiée, livraison au prochain cycle (porte T11 close, CHG-325)"27 §Décisions l.70 et §U8 l.371-375PRODen vigueur
27C3-026La V2.0 est publiée par U8 après la sortie de ST et d'OB (porte utilisateur)29 §Décisions S5 l.74PRODremplacée par 27 §U8 l.371-375
28C3-027"Versionnement : LifePlay 2026.10.2.0 correspond à UE 5.8 (changement de moteur = mods recuits) ; alpha 2026.10.2.1a livrée en Shipping seule, lettre finale acceptée par LPModGuard, release et tag v2026.10.2.1a gardés en local, rien poussé"27 §Décisions l.77 + 29 l.38 et l.363 + 35 §5 l.182PRODen vigueur
29C3-028bUseZenStore=False écrit explicitement pour toute la migration (Zen en lot dédié après V2.0), Fab et Bridge en Optional, McpAutomationBridge désactivé28 §4 l.212, l.215 et l.224PRODen vigueur
30C3-029"Correctifs de sémantique UE4 (LPStringCompat, LPMeshCompat, LPNavigationHelpers) gardés ; la voie UE5 native (lot U9, interrupteur par correctif, défaut = UE4) est préparée mais non activée sans décision de l'utilisateur"27 §Décisions l.74 et §U9 l.392-401PRODen vigueur
31C3-030"Smoke Shipping avec sauvegardes isolées par -UserDir (le Shipping écrivait sinon dans %LOCALAPPDATA%\LifePlay\Saved) ; le Shipping n'écrit pas de journal"27 §U8 l.352-354PRODremplacée par 29 §Défauts l.38
32C3-031"Dossier de sauvegarde LifePlay-Revival : garde LPSaveRelaunch avant WinMain (relance avec -UserDir, Shipping toujours, Development avec LPSaveLocation.ini et SaveDir=), aucune reprise automatique des anciennes sauvegardes ; les personnages restent écrits dans <installation>\LifePlay\Content\Saves"29 §Défauts l.38PRODen vigueur
33C3-032Parcours de mesure S2 fixes (nouvelle partie plus Continuer sur sauvegarde de référence, éditeur de personnage, une scène de couple) sur build Development empaqueté, avec Tools/LogStats.ps1 avant et après chaque lot29 §Décisions S2 l.71 + §Méthode l.91-92OPEen vigueur
34C3-033"Accessed None : regrouper par (Blueprint, nœud), chercher pourquoi la référence est vide ; garde IsValid seulement si « vide » est un état normal et le noter au CHG ; un AND/OR évalue toutes ses entrées, préférer des branches IsValid en cascade ; comportement inchangé"29 §Méthode l.93-97 et §MCP règle 4 l.187-188OPEen vigueur
35C3-034Un lot de stabilisation traite une famille de causes classée par impact (visible ou plantage, erreur, AccessedNone, avertissements) sans fonctionnalité nouvelle ; sortie = parcours S2 sans erreur inexpliquée29 §Décisions S3-S4 l.72-73 + §Méthode l.127-128ORGen vigueur
36C3-035Choix de l'outil de preuve par famille de défaut (Blueprint Debugger, Visual Logger, Rewind Debugger, stat unit/DumpHitches/Insights, memreport, minidump avec PDB, Gauntlet/Automation, Data Validation) : PIE pour trouver, build empaqueté pour confirmer29 §Méthode l.132-144OPEen vigueur
37C3-036"MCP : HyperAIStudio lit et vérifie, seuls les outils Epic (editor_toolset) modifient ; lecture d'un Blueprint par AssetTools.load_asset puis find_nodes, get_connected_subgraph et get_node_infos"29 §MCP règles 1-2 l.177-182OPEen vigueur
38C3-037"Écriture Blueprint par MCP : Tools/Snapshot.ps1 d'abord, puis create_node, connect_pins, break_pins, delete_node, relecture par get_node_infos, compile_blueprint, save_assets, CompileAllBlueprints éditeur fermé ; retour arrière à l'octet par instantané ou git"29 §MCP règle 3 l.183-186OPEen vigueur
39C3-038La PIE pilotée par MCP ne déroule pas un parcours d'interface : la preuve qu'un Accessed None disparaît reste le build empaqueté plus LogStats sur S229 §MCP règle 5 l.189-190 et règle 10 l.203OPEen vigueur
40C3-039Garde-fous MCP : copie 5.8 seulement, instantané avant toute écriture et trace (fiche, CHG), plugin MCP jamais dans un paquet, .mcp.json et .claude jamais commités, seul unreal-mcp d'Epic utilisé (aucun serveur MCP supplémentaire), partie gratuite d'HyperAIStudio seule29 §MCP règles 8-9 l.197-202 + garde-fous l.222-225OPEen vigueur
41C3-040"Livrables de lot sous Docs\Migration\etat\<projet>\<lot>\ ; journal, registre, index README, docs numérotés et correctifs sous Docs\ (lot DOCMV, CHG-300) ; l'etat\ de la copie 5.5 est une archive figée sauf etat\REPO"29 §Dépôts l.82-85 et §Point d'étape l.337-343DOCen vigueur
42C3-041Fiches UA et SK stockées dans Docs/Migration/etat/ local et hors git28 §1 l.13DOCremplacée par 29 §Point d'étape l.337-339
43C3-042Gabarits TPL1 : fiche d'entrée au gabarit de sk-orchestrate § 3, livrables aux gabarits de lp-doc/gabarits.md, registre <LOT>-TACHES.md, mesures par python -I Tools/FicheStats.py --lot29 §Lot d'essai TPL1 l.299-303DOCen vigueur
44C3-043"Skills en couches : sk- dans %USERPROFILE%\.claude\skills (hors dépôt), lp- dans l'addon (Tools/claude/skills) exposé par jonction vers .claude/skills, /.claude/ ignoré par git ; skill tiers = revue intégrale, licence MIT ou Apache-2.0, SHA épinglé, SKILL.md d'au plus 120 lignes, en français"28 §5.3 l.264-272ORGen vigueur
45C3-044Agent lp-integrator chargé des commits, pins et simulation de publication28 §5.2 l.255ORGremplacée par 32 §5 l.171
46C3-045Audit OB en lecture seule en parallèle de ST, retraits seulement après la sortie de ST, chaque action mesurée en A/B (LogStats, démarrage, taille du paquet, durée de cuisson) contre la base stabilisée30 §Décisions O1 et O4 l.35 et l.38ORGen vigueur
47C3-046"Preuve d'usage d'un plugin ou module par références Build.cs, assets et config ; « aucune référence trouvée » n'est pas un verdict, confirmer par désactivation, build et parcours ; retrait par groupe cohérent"30 §Méthode l.53-58OPEen vigueur
48C3-047Scripts de mesure STAT1 (Saved\STAT1\sessions.py, fiches.py…) à réutiliser pour mesurer les sessions31 en-tête l.11-13OPEremplacée par 35 en-tête l.30
49C3-048"Big Boss tient la file de la copie UE : BUILD-DEMANDE, puis BUILD-ATTENTE ou BUILD-GO, puis BUILD-FIN ; un BUILD-GO par fiche, jamais deux sessions ensemble sur la copie, seul Big Boss prolonge un GO"32 §15.2 l.426-430ORGen vigueur
50C3-049"Chaque BUILD-FIN est contre-vérifié avant le GO suivant (processus Unreal par Tools\UeState.ps1, MD5 des assets par Tools\FileCheck.ps1, git status de tout l'arbre, pas de dossier parasite sous etat\) ; un processus étranger entraîne l'arrêt et la fermeture par l'utilisateur seul"32 §15.2 l.428-436OPEen vigueur
51C3-050Tools\CopieEtat.ps1 « à venir » (lot OUTC)32 §15.2 l.436OPEremplacée par 35 §4 l.115
52C3-051"Jeton du journal : JOURNAL-DEMANDE, jeton accordé par Big Boss, entrée, commit, JOURNAL-LIBRE <hash> ; une entrée CHG ne s'écrit que quand son commit est imminent et la plage de l'index Docs/README.md part dans le même commit"32 §15.3 l.443-447DOCen vigueur
53C3-052"Seul lp-gardien écrit dans git : ticket dans etat/REPO/tickets, commit par chemins explicites sur index privé (GIT_INDEX_FILE), verrou, push fait par l'utilisateur ; pas de règles de refus git dans settings.local.json"32 §10 l.320-324 et §15.1 l.421ORGen vigueur
54C3-053"Traces du gardien (R-REPO1) : statut fait du ticket et ligne de REPO-JOURNAL.md dans le même commit, sans hash ; NUMEROS.md et REPO-JOURNAL.md partent entiers avec le premier commit du jeu qui les trouve modifiés"32 §15.4 l.451-455DOCen vigueur
55C3-054Pas de git commit --amend sans accord de l'utilisateur : corriger par un nouveau commit ou git revert (ERR-087)32 §15.5 l.459-461ORGen vigueur
56C3-055Un refus du système d'autorisations se signale à l'utilisateur et à Big Boss et ne se contourne jamais : aucune autre session n'écrit à la place32 §15.7 l.472-476ORGen vigueur
57C3-056"Rotation : toute session principale passe la main à chaque FIN-LOT ou dès 250 k de contexte avec passation écrite (jamais avec BUILD-GO, jeton ou verrou ouvert) ; Big Boss repart chaque jour d'une session neuve qui lit BOSS-ETAT.md"32 §15.9 l.494-507ORGen vigueur
58C3-057Rotation des sessions principales à 250 k de contexte médian33 §6 l.97ORGremplacée par 32 §15.9 l.503-506
59C3-058Règles de fiche : ne jamais recopier un critère d'une fiche précédente, nommer la copie visée par chemin absolu, vérifier la faisabilité d'un test utilisateur, VAL de lot découpée par famille, un diagnostic lp-cart par hypothèse, EVAL de lot en N2 au moins32 §15.10 l.513-515ORGen vigueur
60C3-059"Au plus 4 tentatives par fiche et une prolongation par niveau ; un échec est classé budget (prolonger), capacité (escalader) ou consigne (abandonner) puis verdict ÉCHEC au quatrième"32 §6.2 l.217-225ORGen vigueur
61C3-060Chaînes d'escalade par agent (lp-cart vers lp-cart-max puis fable-top, etc.)32 §6.3 l.229-237ORGremplacée par 34 §9 l.233
62C3-061Chef de projet, orchestrateur général unique, planificateur et 6 managers lp-mgr-* (messages ORDRE, DÉCISION, VERDICT)32 §2 l.71-75ORGremplacée par 32 §15.1 l.421-422
63C3-062Traces périssables : un résumé court dans <LOT>-TRACES.csv à la FIN-LOT, passage mensuel vers TRACES-INDEX.csv, envoi à la corbeille sur accord (Tools\Traces.ps1 et Tools\Corbeille.ps1, à blanc d'abord), jamais rm, del ni Remove-Item32 §15.12 l.527-533DOCen vigueur
64C3-063Big Boss recentré (file, arbitrages, jetons, ordre des tickets, copie du journal du jeu), fiche de tests et bilan confiés à un lp-writer (gabarits FIT, BILAN, ENTREE), BOSS-JOURNAL horodaté, session réutilisée renommée au lot servi, chaîne de build de plus de 50 étapes = VAL séparée32 §15.13 l.549-561ORGen vigueur
65C3-064Numéros CHG, ERR et doc réservés par Repo.ps1 -Reserve sous verrou32 §10 l.325DOCremplacée par 36 §1 l.12
66C3-065Tickets du gardien nommés etat/REPO/tickets/<LOT>-R<n>.md32 §9 l.286 et §10 l.321DOCremplacée par 36 §2 l.25
67C3-066Clause d'arrêt par mécanisme (D-P7.8) : Big Boss réduit à la file de compilation si son coût reste au-dessus de 15 % après E1 et E2, demi-niveaux retirés si lp-cart reste hors budget à 30 % ou plus sur 20 fiches, crochet retiré s'il refuse plus à tort qu'à raison33 §7 l.117-120ORGen vigueur
68C3-067"Demi-niveaux N1+ (sonnet high), N2+ (sonnet xhigh) et N3− (opus medium) comme variantes d'agents (lp-cart en sonnet, lp-cart-max, lp-diag en opus medium) ; l'escalade monte d'un barreau, la numérotation N0-N5 reste inchangée"34 §4.1 l.121-124 et §9 l.233ORGen vigueur
69C3-068"Compte rendu : section Mesuré faite de sorties brutes collées et non reformulées ; chaque trace archivée porte une note de contexte (commande, environnement, attendu écrit avant, obtenu, piège) ; ligne À verser obligatoire reprise par la DOC de clôture"34 §3.2 l.69-75 et §3.4 l.86-91DOCen vigueur
70C3-069RELAIS_APRES_ETUDE : à la moitié des tours sans sortie brute nouvelle, l'agent cherche dehors puis passe la main avec le champ Options, seuil lu comme maxTurns divisé par 234 §3.3 l.82ORGremplacée par 34 §9 l.242
71C3-070Hook PreToolUse ecriture-gardien (agent_type, liste blanche des rédacteurs lp-impl, lp-impl-max, lp-writer, lp-gardien, lp-tooling, lp-content) refusant redirections, tee, sed -i et python -c : il empêche l'accidentel sans rien garantir34 §3.5 l.92-101ORGen vigueur
72C3-071Hook ecriture-gardien installé pour la copie 5.8 seulement34 §9 l.230ORGremplacée par 35 §7 l.241-243
73C3-072"Accord de l'utilisateur requis seulement pour push, restore, réécriture d'histoire et branche gelée, jamais avant chaque commit (point G5b écarté) ; une session principale par lot plus Big Boss, rapporteur distinct seulement pour la chaîne MCP"34 §5 l.165, §7 l.201 et §3-4 l.145-146ORGen vigueur
74C3-073Crochet v2 installé dans le profil (MD5 e03d4332, rejeu 417 sur 417) ; après un refus utile l'orchestrateur de lot s'arrête et rend compte à Big Boss, l'écriture refusée n'a lieu que sur décision explicite avec instantané et MD535 en-tête l.9-11 + §5 l.191 + §7 l.241-243ORGen vigueur
75C3-074"Mesure d'une période par l'outil unique python -I -X utf8 Tools\Indicateurs.py --debut --fin ; fenêtre de 72 h de calendrier ou 30 h actives avec au moins 5 builds et 1 essai commun, VAL par un lp-validator indépendant ; en cas d'écart l'outil fait foi"35 §6 l.196-202 et l.223OPEen vigueur
76C3-075Cibles de la mesure P4 : Big Boss au plus 15 % des jetons et 20 % des heures, contexte médian sous 200 k, refus à tort du crochet au plus 10 %, lp-cart hors budget au plus 40 %, ERR en rattrapage au plus 10 %, part des sous-agents au-dessus de 70 %35 §6 l.207-221 et §5 l.190ORGen vigueur
77C3-076"Livrables etat\<projet>\<lot>\<LOT>-<fiche>-<TYPE>.md au gabarit de lp-doc/gabarits.md ; numéros CHG, ERR et DOC réservés par Tools\Numero.ps1 dans etat\REPO\NUMEROS.md, jamais « dernier plus 1 »"36 §1 l.11-12DOCen vigueur
78C3-077Fiche nommée <LOT>-<TYPE>-<nn> avec TYPE dans CART, SPEC, IMPL, BUILD, VAL, DOC, RECH, PERF, INV (type hors liste = accord préalable de l'utilisateur)36 §2 l.24DOCcontradictoire avec 32 §9 l.283
79C3-078"Tickets du gardien en <LOT>-T<n> (AMEL2-T4) et la lettre R n'est plus réutilisée ; T<n> désignait pourtant les fiches dans les docs 27, 29 et 32"36 §2 l.25DOCcontradictoire avec 27 §U1-U9 l.144
80C3-079Bases durables hors des lots sous etat\BASES\<BASE>\, citées sans être copiées (BC, DOC et REFAC d'OPT restent en place sur décision « Laisser en place »)36 §2 l.26 et §3 l.33DOCen vigueur
81C3-080"Outils nouveaux nommés Verbe-Objet en français (Mesurer-Cadence.ps1) ; aucune rétroactivité : fiches, tickets, CHG, renvois et références d'assets existants gardent leur nom et l'ancien nom d'un outil remplacé reste indexé dans Tools\LISEZMOI.md"36 §2 l.27-28 et §3 l.32-34DOCen vigueur