LifePlay-Revival/Docs/Migration/etat/sandbox/DC1/DC1-VAL.md
edujiro5972 d8a0f859ce DC1 : plugin LPAnimCore (LPAnimRedirect, LPCoupleSim) ; LifePlay ne depend plus de LPAnimMeasure (CHG-234)
Plugins/LPAnimCore (Runtime, PreDefault, toutes configurations) recoit la partie runtime
de l'ancien LPAnimMeasure de l'addon. LifePlay.Build.cs : LPAnimMeasure -> LPAnimCore.
LifePlayEditorTools depend encore de LPAnimMeasure jusqu'a DC2. Pin addon 3e9c32f.
Validation : DC1-BUILD code 0, DC1-VAL PASS (tournees Mesure identiques a SB2-REF,
controle visuel utilisateur marche et ShowCouple).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 18:31:01 +02:00

124 lines
9.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# DC1-VAL — Validation automatique du lot DC1 (DC1-T3, partie automatique)
**Fiche DC1-T3 — Modèle prévu sonnet | utilisé sonnet**
- Date : 2026-10-07. Build testé : celui de `DC1-BUILD.md` (code 0, non recompilé). Lot DC1 : LPAnimRedirect et LPCoupleSim déplacés dans le plugin du jeu `Plugins\LPAnimCore`.
- Journaux copiés dans `D:\Game\LifePlay_Backup_5.5\DC1-VAL\` : `F1.log`, `F2_quaternius_sandbox.log`, `F2_quaternius_console.txt`, `F2_freeanims_sandbox.log`, `F2_freeanims_console.txt` (+ `F2_*_result.txt` : code et durée).
- Procédure : méthode de `SB4-VAL.md` / `SB2-VAL.md` (lanceur `LifePlay_pair_sandbox.bat` lancé depuis PowerShell, attente de `Ouvert :`, copie du journal, arrêt du seul `UnrealEditor` lancé ; tournées par `AnimPipeline.ps1 -Pack <pack> -From 5 -To 5`, aucun éditeur avant chaque lancement). Aucun git (hors `status`), aucune modification de source, script ou ini.
- Incident sans effet : une première tentative freeanims, lancée par erreur dans Windows PowerShell 5.1 (`Start-Process powershell`), a échoué immédiatement : `ECHEC : Impossible de trouver un paramètre correspondant au nom « AsHashtable ».` (cmdlet PowerShell 7 ; erreur de mon lancement, pas du build ; aucun éditeur lancé). Relancée dans pwsh 7 (comme le quaternius) ; seul ce second lancement est retenu.
## Tableau des essais
| Essai | Attendu | Constaté (lignes recopiées) | Verdict |
|---|---|---|---|
| F1 démarrage | 7 modules, ordre, aucun refus, `Ouvert : lps_couple`, aucun Error/Ensure/Fatal LPSandbox/LPAnimCore/LPAnimMeasure | `LogLPSandboxMods: Display: Modules : 7 sandbox, 16 jeu ; ordre : lps_system_core, lps_system_animmeasure, lps_lib_scene, lps_lib_actors, lps_couple, lps_interaction, lps_asset_integration` ; les 7 en `pret` ; `LogLPSandboxMods: Display: Ouvert : lps_couple`. Lignes citant LPAnimCore : `LogPluginManager: Mounting Project plugin LPAnimCore` et `LogConfig: Branch 'LPAnimCore' had been unloaded. Reloading on-demand took 0.10ms` (aucune erreur de chargement du module). Aucune ligne de refus de module (le mot « refus » n'apparaît que dans `UTS: Unable to launch the Unreal Trace Server ... Accès refusé`, avertissement d'environnement). Seul `Error` : `LogLifePlay: Error: Coiffures : GI.HairstyleTable ou GI.MorphableHairs introuvable sur GameInstance_0, table laissee telle quelle` (connu, préexistant, hors LPSandbox). Aucun `Ensure`/`Fatal`. Corps, boîte AgMakeout et poses chargés comme à SB2. | PASS |
| F2 quaternius : avant | `Open=lps_couple` | `Saved\sandbox_mods.ini:3:Open=lps_couple` | PASS |
| F2 quaternius : journal | `Ouvert : lps_asset_integration (declencheur, non memorise)` + `TOURNEE fermeture demandee` | `LogLPSandbox: Warning: TOURNEE debut 43 clips, 129 etapes` ; `LogLPSandboxMods: Display: Ouvert : lps_asset_integration (declencheur, non memorise)` ; tournée 43 clips ; fermeture demandée. Code 0, 1139 s, verdict `avertissement`. Seul Error : Coiffures. | PASS |
| F2 quaternius : après | `Open=lps_couple` | `Saved\sandbox_mods.ini:3:Open=lps_couple` | PASS |
| F2 freeanims : avant | `Open=lps_couple` | `Saved\sandbox_mods.ini:3:Open=lps_couple` | PASS |
| F2 freeanims : journal | idem | `LogLPSandbox: Warning: TOURNEE debut 10 clips, 30 etapes` ; `LogLPSandboxMods: Display: Ouvert : lps_asset_integration (declencheur, non memorise)` ; `TOURNEE debut 10 clips, 697 etapes` ; `LogLPSandbox: Warning: TOURNEE fermeture demandee`. Code 0, 458 s, verdict `ok`. Seul Error : Coiffures. | PASS |
| F2 freeanims : après | `Open=lps_couple` | `Saved\sandbox_mods.ini:3:Open=lps_couple` | PASS |
| F3 quaternius | fichiers identiques, verdict `avertissement`, 8 mêmes avertissements | voir détail | PASS |
| F3 freeanims | fichiers de données identiques, verdict `ok` | voir détail (20 images diffèrent, les mêmes qu'à SB2/SB4) | PASS (images : à juger) |
| F4 état final | ini standard, aucun éditeur, git recopié | voir ci-dessous | PASS |
## Détail F3
Référence : `D:\Game\LifePlay_Backup_5.5\SB2-REF\<pack>\` ; nouveau : `Saved\AnimPipeline\<pack>\`. Comparaison par SHA-256 de chaque fichier commun.
### quaternius (verdict `avertissement`)
- Liste de fichiers : 44 / 44, identique ; 44 fichiers comparés (critère > 40 : OK).
- Seuls fichiers dont le SHA-256 diffère : `etapes\5_evaluation.json` (champs `debut`, `fin`, `duree_s` 1136 → 1139), `etat.json` (`fin`, `maj`) et `rapport.html` (seule ligne différente : « Généré le » 07/10/2026 12:10:18 → 16:21:02). Tous les autres `.json`, `.csv`, `.txt` (dont `rapport.json`, `eval_*.csv`, `controles_*.csv`, `retarget_pose_*.txt`) sont identiques : 41 fichiers identiques sur 44.
- Verdict `5_evaluation.json` : `avertissement` dans la référence et dans le nouveau ; 8 avertissements dans chacun, listes identiques (comparées en JSON).
- Images : aucune dans ce pack.
### freeanims (verdict `ok`, 0 avertissement)
- Liste de fichiers : 73 / 73, identique ; 73 fichiers comparés (critère > 70 : OK).
- Mêmes exclusions : `etapes\5_evaluation.json` (`debut`, `fin`, `duree_s` 435 → 458), `etat.json` (`fin`, `maj`) et `rapport.html` (« Généré le » 12:31:18 → 17:08:32 uniquement) diffèrent ; tous les `.json`/`.csv`/`.txt` hors ces fichiers sont identiques.
- Verdict `ok` des deux côtés, 0 avertissement des deux côtés.
- Images qui diffèrent : 20 fichiers, exactement les mêmes noms que dans SB4-VAL (rendu non déterministe déjà constaté à SB1/SB2/SB4), octets réf → nouveau :
| Fichier (sous `sandbox\`) | Réf → nouveau |
|---|---|
| planches\AS_AirKiss.jpg | 148577 → 148509 |
| planches\AS_AttackInLevitation2.jpg | 139248 → 139290 |
| planches\AS_ChillDriving.jpg | 187537 → 187639 |
| planches\AS_ComboHands.jpg | 159892 → 160037 |
| planches\AS_EatingOnParty.jpg | 141254 → 141301 |
| planches\AS_FlyingUp.jpg | 119045 → 118961 |
| planches\AS_GoForward.jpg | 150812 → 150701 |
| planches\AS_Rest.jpg | 138425 → 138540 |
| planches\AS_RightLegKick2.jpg | 88121 → 88080 |
| planches\AS_Talk.jpg | 144201 → 144319 |
| vignettes\AS_AirKiss.png | 261470 → 261921 |
| vignettes\AS_AttackInLevitation2.png | 252870 → 253271 |
| vignettes\AS_ChillDriving.png | 289192 → 289225 |
| vignettes\AS_ComboHands.png | 269493 → 269106 |
| vignettes\AS_EatingOnParty.png | 263747 → 263738 |
| vignettes\AS_FlyingUp.png | 263615 → 263387 |
| vignettes\AS_GoForward.png | 257039 → 256829 |
| vignettes\AS_Rest.png | 242540 → 242649 |
| vignettes\AS_RightLegKick2.png | 265941 → 265478 |
| vignettes\AS_Talk.png | 260083 → 260572 |
Écarts de taille inférieurs à 0,2 %. Soit 73 − 3 (fichiers exclus) − 20 (images) = 50 fichiers de données strictement identiques.
## État final (F4)
- `Saved\sandbox_mods.ini` :
```
[Mods]
Order=lps_couple,lps_interaction,lps_asset_integration
Open=lps_couple
[Enabled]
lps_couple=true
lps_interaction=true
lps_asset_integration=true
```
- Processus `UnrealEditor` : 0.
- `git -C D:\Game\LifePlay-Sandbox status --short` (changements DC1 non commités, attendu ; code de l'addon retiré vers le jeu) :
```
M LPSandbox.uproject
M Plugins/LPSandbox/LPSandbox.uplugin
M Plugins/LPSandbox/Source/LPAnimMeasure/LPAnimMeasure.Build.cs
M Plugins/LPSandbox/Source/LPAnimMeasure/LPAnimMeasure.h
D Plugins/LPSandbox/Source/LPAnimMeasure/LPAnimRedirect.cpp
D Plugins/LPSandbox/Source/LPAnimMeasure/LPAnimRedirect.h
D Plugins/LPSandbox/Source/LPAnimMeasure/LPCoupleSim.h
D Plugins/LPSandbox/Source/LPAnimMeasure/LPCoupleSimCore.cpp
M Plugins/LPSandbox/Source/LPSandbox/LPSandbox.Build.cs
```
## Anomalies
- Aucune nouvelle. `Error` Coiffures (LogLifePlay) présent à chaque lancement, préexistant. Avertissement `UTS: Unable to launch the Unreal Trace Server ... Accès refusé` : environnement, sans lien.
- 20 images freeanims différentes (rendu non déterministe, mêmes fichiers qu'à SB2 et SB4) : à juger visuellement si souhaité.
- Durées légèrement plus longues que la référence (quaternius 1139 s contre 1136 s ; freeanims 458 s contre 435 s) : sans signification (charge machine), dans l'ordre de grandeur.
- Tentative freeanims ratée par mon mauvais interpréteur (voir en-tête) : sans conséquence.
## Verdict global de la partie automatique
**PASS** : F1 (7 modules, ordre inchangé, plugin LPAnimCore monté, aucun refus ni Error du module), F2 (ouverture par déclencheur non mémorisée, `Open=lps_couple` intact après les deux tournées), F3 (quaternius `avertissement` avec les 8 mêmes avertissements, 44 fichiers ; freeanims `ok`, 73 fichiers ; tous fichiers de données identiques, seules différences : dates, « Généré le » et 20 images non déterministes) et F4 satisfaits. Le déplacement de LPAnimRedirect et LPCoupleSim n'a rien changé aux résultats des commandlets AP.
## Reste à valider par l'utilisateur
(a) Marche du jeu avec clips convertis (`LPAnimTarget.ini` = game).
(b) ShowCouple.
## Modèles par fiche
| Fiche | Modèle prévu | Modèle utilisé |
|---|---|---|
| DC1-T2 | haiku | haiku |
| DC1-T3 | sonnet | sonnet |
## Contrôle visuel utilisateur (2026-10-07)
(a) marche du jeu avec clips convertis (`LPAnimTarget.ini` = `game`, jeu lancé depuis l'éditeur compilé DC1) et
(b) ShowCouple : **confirmés** par l'utilisateur (« oui, je confirme »). `LPAnimTarget.ini` remis à son état d'avant le
test (`Target=sandbox`). Remarque utilisateur : l'intégration des déplacements dans le jeu reste à améliorer (hors
périmètre DC, inscrit au registre des reports de `21`).
**Verdict DC1-T3 : PASS.**