5.5 KiB
5.5 KiB
REF-OPERATIONNEL : comment faire (builds, outils, commandes, copie UE, MCP)
Statut : projet (non adopté ; l'utilisateur décide). Produit par REF1-SPEC-01, 2026-10-15. Source : etat\REF\REF1\REF1-CART-0{1,2,3}.csv (98 règles OPE extraites ; 193 « en vigueur » sur 253 lignes au total). Une règle par ligne ; la colonne ids renvoie aux CSV. Skill « — » = règle orpheline (aucun skill ne la porte).
| Règle (reformulée) | Source (doc §) | Skill | ids |
|---|---|---|---|
Moteur, projet et dossiers de sortie viennent d'un seul point, Tools\Engine.ps1 (surcharge LP_ENGINE_ROOT) |
08 §1 ; 27 §U2 ; 28 §6 | lp-env | C1-035, C3-016 |
MSVC épinglé par CompilerVersion : 5.5 sur 14.38 (VS 2022), 5.8 sur 14.50.35717 (VS 2026) |
27 §U0 | lp-env, ue-cpp-build | C3-014 |
Compiler par Tools\Build.ps1, recompter avec -FromLog ; critère 0 erreur, 0 nouvel avertissement ; porte G-U3 = LPTestStringCompat 3120/0/60 |
03 §3.2 ; 27 §U3 | lp-build, lp-validate | C1-011, C3-017 |
| Fermer l'éditeur avant de compiler (Live Coding), une seule compilation à la fois, DLL de l'addon pas plus anciennes que celles du jeu | 08 §3 ; 24 §Pièges | lp-build | C1-041, C2-089 |
Si UBA échoue (C1001/C2206) : recompiler sans UBA (BuildDebug.ps1 -NoUBA) |
27 §U6 ; 29 | lp-build | C3-018, C2-061 |
Sans l'addon, UBT réutilise un Makefile.bin obsolète : le déplacer (jamais le supprimer) avant de recompiler avec l'addon |
09 §2 ; 18 §1 | lp-build | C1-052, C2-035 |
Argument PowerShell avec virgule ou point après = : le mettre entre guillemets ; -createreleaseversion via cmd /c ou .cmd |
09 ; 16 §5 | sk-windows-shell | C1-051, C2-027 |
Commandlet : UnrealEditor-Cmd -run=… -unattended -nopause ou Tools\RunCommandlet.ps1 (journal archivé) ; éditeur fermé si elle écrit |
08 §5 | lp-commandlets | C1-043 |
Les 16 commandlets de correction LPFix* sont retirés depuis U2 (tag U2-avant) |
08 §5.2 | lp-commandlets | C1-044 |
Correctif de rebranchement : -DryRun (compte attendu), valeurs avant/après, diff indépendant, rien sauvegardé si écart |
05 §3 ; 08 §6.2 | lp-commandlets | C1-024, C1-046 |
| Forme d'un correctif : préférer un sous-système C++ (aucun asset touché, retour arrière = retirer deux fichiers) | 08 §6.1 | lp-ue-compat | C1-045 |
| Montée de moteur : mesurer les appels Blueprint dont la signature change sans erreur de compilation | 01 §6 ; 07 §4 | lp-ue-compat | C1-003, C1-033 |
Mesurer uniquement sur build empaquetée Development (jamais -game), normaliser, recouper tout écart |
02 §6 ; 03 §2 ; 27 | lp-perf | C1-005, C1-009, C3-013 |
CSV Profiler : jamais -csvCaptureFrames ; démarrer par -ExecCmds=csvprofile … |
09 §4 ; 18 §3 | lp-perf | C1-054, C2-038 |
Build de plongée par Tools\BuildDebug.ps1, jamais -nodebuginfo ; PDB archivés avec BUILD-ID.txt |
18 §2 ; 21 ; 27 §U8 | lp-perf, lp-build | C2-036, C2-062, C3-024 |
A/B : Tools\LogStats.ps1 -Compare sur parcours identique (S2 : nouvelle partie + Continuer) |
03 §3.5 ; 29 | lp-perf, lp-validate | C1-014, C3-032 |
| Un test de packaging couvre tous les chemins de lecture de fichiers (nouvelle partie, mods, sauvegarde, images externes), pas seulement Continuer | 10 §4 ; 27 | lp-validate | C1-066 |
Tout changement sous instantané : Tools\Snapshot.ps1 -Lot puis Restore.ps1 ; déplacer, jamais supprimer |
03 §5 ; 09 §6 ; 24 | sk-change-safety, lp-lot | C1-016, C1-055, C2-082 |
Intermediate, Binaries, Saved\Cooked… régénérables ; .claude\, .mcp.json, SaveGames, Saved\Logs\portage, D:\DDC à conserver |
02 §8 ; 10 §1 | lp-paths | C1-006, C1-059 |
Jamais versionnés : Content\Heavy, .mcp.json, .claude\, plugin MCP, Saved\Logs\portage |
08 §2 | lp-paths, lp-repo | C1-038 |
MCP : unreal-mcp d'Epic modifie, HyperAIStudio lit ; lecture par find_nodes, get_connected_subgraph, get_node_infos |
29 §MCP 1-2 | lp-mcp | C3-036 |
| Écriture Blueprint par MCP : instantané d'abord, puis create/connect/break, relecture, compile, save ; copie 5.8 seule | 29 §MCP 3, 8-9 | lp-mcp | C3-037, C3-039 |
| La PIE pilotée par MCP ne prouve rien sur l'interface : la preuve reste build empaquetée + LogStats | 29 §MCP 5, 10 | lp-mcp | C3-038 |
Accessed None : grouper par (Blueprint, nœud), chercher pourquoi la référence est vide ; garde IsValid seulement si « vide » est normal, noté au CHG |
29 §Méthode | lp-mcp | C3-033 |
| Preuve d'usage d'un plugin/module : « aucune référence » n'est pas un verdict ; confirmer par désactivation, build, parcours | 30 §Méthode | — | C3-046 |
| Outil de preuve par famille de défaut (Debugger, Insights, memreport, minidump+PDB, Gauntlet…) | 29 §Méthode | lp-perf (partiel) | C3-035 |
Contre-vérifier chaque BUILD-FIN (Tools\UeState.ps1, FileCheck.ps1, git status) ; processus Unreal étranger = arrêt |
32 §15.2 | lp-lot | C3-049 |
Indicateurs d'une période : python -I -X utf8 Tools\Indicateurs.py --debut --fin ; l'outil fait foi |
35 §6 | — | C3-074 |
Scripts de coiffure : HairPipeline.ps1 -Step Inspect puis Apply ; toujours un -DryRun avant une commandlet d'écriture |
13 §3, §7 | — | C2-002, C2-010 |
Pièges de lancement sandbox : lanceurs jamais derrière un tuyau, -FullStdOutLogOutput ; une recuisson RetargetPack.py défait LPAnimTwist |
24 §Pièges | — | C2-091 |
À écarter de ce référentiel (périmé, voir REF1-HOMOGENEITE) : tableau des 24 commandlets (03/05/07), McpAutomationBridge port 3000 (08 §7), commande de build UE_5.5 (24).