LifePlay-Revival/Docs/Migration/etat/OUTC/OUTC-T7-IMPL.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

60 lines
3.7 KiB
Markdown

# OUTC-T7-IMPL : CopieEtat.ps1, git sans verrou d'index facultatif (2026-10-11)
Fiche OUTC-T7 — Niveau N2 — Modèle prévu opus | utilisé claude-opus-5-5 — Agent orchestrateur (session OUTC) — Skills lp-lot, sk-change-safety
Origine : point d'incertitude 4 d'OUTC-T4a (`OUTC-VAL-A.md`). `CopieEtat.ps1` lançait `git status` sans
`--no-optional-locks`. Ce `status` pouvait donc prendre `index.lock` un instant et faire échouer un commit du gardien
lancé au même moment. `GitEtat.ps1` évite déjà ce cas.
## 1. Fichiers modifiés
`M Tools\CopieEtat.ps1` (dépôt jeu, fichier neuf du lot, pas encore commité), fonction `Invoke-LPGit` (l. 143-147) :
- `--no-optional-locks` est ajouté en tête des arguments de chaque appel git ;
- le commentaire de la fonction gagne une ligne.
Rien d'autre ne change. MD5 avant `4A83F321C9EBBA12FF0AB64DA85CD3D2` (livré par T1 et validé par T4a), après
`5E441FA06F05B1F1D91B91DCAC5B023F`. LF, 0 CR, 0 octet non ASCII, analyse syntaxique sans erreur.
Écriture : version préparée dans `…\scratchpad\OUTC-T7\` et testée là. `UnrealEditor-Cmd` était absent (0 à 07:13:01).
Je contrôle que le MD5 de `Tools\CopieEtat.ps1` vaut encore celui d'avant, puis j'écris en une seule copie.
## 2. Écarts à la SPEC
Aucun. Le script reste en lecture seule ; l'option empêche seulement les écritures facultatives d'index de `git status`.
## 3. Essais
| Commande | Code | Synthèse |
|---|---|---|
| version T1, `-Lot OUTC -Assets Content\BPs\GI.uasset,Content\BPs\GM.uasset -Json` | 1 | `proc=1 … git=0/9/0 hors_declares=9 … head=7bceea6/22dd7c3/c8661cd verrou=98:libre alertes=PROC,GIT` |
| version T7 (scratchpad, `-Copie` vers la copie 5.8), même appel | 1 | identique au champ `cpu` près |
| version T7 installée, `-Assets Content\BPs\GI.uasset` | 1 | `proc=0 … alertes=GIT` (l'éditeur `-game` PID 2620 venait de se fermer ; 9 fichiers addon non déclarés d'un autre lot) |
Limite constatée, sans lien avec T7 : `Win32_Processor.LoadPercentage` revient parfois vide. Sur 3 lancements, `cpu=?`
sort une fois. Le script affiche alors `?`, comme prévu à la l. 427.
Piège rencontré pendant l'essai : avec `pwsh -File`, une liste PowerShell passée en `-Assets $a` arrive en deux
arguments. Le second, refusé (`PositionalBinding=$false`), donne le code 2. Il faut écrire la liste dans un seul argument
`a,b`.
Code 0 réel avec la version T7 : P3 de la reprise de T4a l'a bloqué (`BLOCKED-PROC`), parce que l'éditeur PID 28332
tournait (essai MCP du lot MCPA, sous GO de Big Boss). L'orchestrateur l'a rejoué ensuite par
`…\scratchpad\OUTC-T7\code0.ps1`, en lecture seule. La sortie brute est copiée dans `OUTC-T7_code0.txt` et le JSON dans
`OUTC-T7_code0.json`.
| Heure | Commande | Code | Synthèse |
|---|---|---|---|
| 07:17:56 | `CopieEtat.ps1 -Lot OUTC -Assets 'Content\BPs\GI.uasset,Content\BPs\GM.uasset' -Sortie ref.json` | 1 | `proc=1 … git=0/11/0 hors_declares=11 … alertes=PROC,GIT` |
| 07:18:00 | `UeState.ps1 -Copie 'D:\Game\LifePlay-master 5.8' -WaitExit -TimeoutSeconds 3600` | 0 | `attente terminee apres 155 s : plus rien ne tourne` |
| 07:20:36 | même appel de CopieEtat avec `-Reference ref.json` | **0** | `COPIE OK … proc=0 assets=2 absents=0 modifies=0 git=0/11/0 hors_declares=0 parasites=0 … alertes=aucune` |
## 4. Points à confirmer en VAL
- P1 : diff `CopieEtat.avant.ps1` → `Tools\CopieEtat.ps1` réduit à `Invoke-LPGit` (2 lignes).
- P2 : `git status` lancé par CopieEtat ne touche plus la date de `.git\index` (date relevée avant et après).
- P3 : V3 et V5 rejoués rapidement sur la version installée : mêmes codes.
## 5. Fichiers à commiter
`A Tools/CopieEtat.ps1` (déjà au ticket, version T7) ; `A Docs/Migration/etat/OUTC/OUTC-T7-IMPL.md`.
Tours : sans objet (fiche de l'orchestrateur)