LifePlay-Revival/Docs/Migration/etat/sandbox/S6/S6-VAL.md

82 lines
3.7 KiB
Markdown
Raw Normal View History

# S6-VAL — Validation du lot S6 (stack Mesure sur liaison addon)
- **Date :** 2026-10-06
- **Fiche :** S6-T3 | **Rôle :** A-VAL
- **Modèle prévu :** `composer-2.5-fast` | **Modèle utilisé :** `composer-2.5-fast`
- **Pin addon :** `c1fdd29e2c1036c7d6365ba6389eff5d2f8c8c96` (`S3-INT.md`, inchangé depuis S5)
- **Références :** `S2-VAL.md` (module + bat Mesure), `S3-VAL.md` (plugin monté), `20_Chaine_Animations.md`, `09_Commandes_Utiles.md`
## Verdict : **PASS**
| # | Contrôle | Résultat |
|---|---|---|
| 1 | `LifePlayEditorTools.Build.cs` : `LPAnimMeasure` en `PublicDependencyModuleNames` | **PASS** (l. 22, commentaire lot S2) |
| 2 | Includes commandlets anim (`LPPoseMeasure.h`, `LPSkeletonProfile.h`, `LPAnimChecks.h`) sans `Source/LPAnimMeasure/` dans le jeu | **PASS** (module uniquement dans l'addon ; 0 fichier sous `Source/LPAnimMeasure/`) |
| 3 | `LifePlayEditor Win64 Development` | **PASS** (`Target is up to date`, 2026-10-06) |
| 4 | Commandlet court `-run=LPAnimEval` (addon chargé) | **PASS** (1 clip, 1 instant, ~1,3 s, code 0, `rapport.json` `valide: true`) |
| 5 | Bat Mesure sur liaison addon | **PASS** (déjà `S2-VAL.md` : 269 lignes `LogLPAnimMeasure`, sorties `Saved/Measurement/` ; non rejoué ici) |
## 1. S6-T1 — Build et linkage
`Source/LifePlayEditorTools/LifePlayEditorTools.Build.cs` :
```csharp
PublicDependencyModuleNames.AddRange(new string[]
{
// ...
"LifePlay",
"LPAnimMeasure"
});
```
Consommateurs vérifiés (includes inchangés, résolus via le module plugin) :
| Fichier | Headers `LPAnimMeasure` |
|---|---|
| `LPAnimEvalCommandlet.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h`, `LPAnimChecks.h` |
| `LPAnimCatalogCommandlet.cpp` | `LPPoseMeasure.h` |
| `LPAnimTwistCommandlet.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h` |
| `LPAnimChecks.cpp` | `LPPoseMeasure.h`, `LPSkeletonProfile.h` |
`Source/LifePlay/LifePlay.Build.cs` : `PublicDependencyModuleNames.Add("LPAnimMeasure")` (commentaire S2/S3).
Binaires (jeu + plugin sibling) :
| DLL | Horodatage |
|---|---|
| `UnrealEditor-LPAnimMeasure.dll` | 2026-10-06 20:37:07 |
| `UnrealEditor-LifePlayEditorTools.dll` | 2026-10-06 19:20:23 |
Aucune correction de sources nécessaire pour S6-T1.
## 2. S6-T2 — Documentation
Mises à jour : `Docs/Migration/20_Chaine_Animations.md` (§ 1 état actuel + écart pose T), `Docs/Migration/09_Commandes_Utiles.md` (§ 3 : bats `Tools/debug`, sorties `Saved/Measurement`, commandlets `LPAnimEval` / `LPAnimTwist` / `LPAnimCatalog`).
## 3. S6-T3 — Commandlet `LPAnimEval` (court)
```powershell
$UE = 'D:\Game\Launcher\Engine\UE_5.5\Engine\Binaries\Win64\UnrealEditor-Cmd.exe'
$Proj = 'D:\Game\LifePlay-master 5.5\LifePlay.uproject'
& $UE $Proj -run=LPAnimEval "-Clips=Idle_Loop" "-Instants=1" `
"-Out=D:\Game\LifePlay-master 5.5\Saved\AnimPipeline\S6-VAL" -unattended -nopause `
-abslog="D:\Game\LifePlay-master 5.5\Saved\Logs\S6-VAL-LPAnimEval.log"
```
| Constat | Valeur |
|---|---|
| Code de sortie | 0 |
| Durée commandlet | ~1,34 s |
| `rapport.json` | `"valide": true`, 1 clip, 2 corps, 0 échec |
| Pose T | `rapport_poseT_Bridget.json`, `rapport_poseT_Michael.json` (profil `genesis8`, symétrie 0,000°) |
| Évaluation | `eval_Bridget.csv`, `eval_Michael.csv` ; pire formule ≈ 10⁻⁷ %, pire clip ≈ 3×10⁻⁵ % |
| Journal | `LogLPAnimMeasure` (POSET) actif — module addon bien lié |
Artefacts locaux (non versionnés) : `Saved/AnimPipeline/S6-VAL/`, `Saved/Logs/S6-VAL-LPAnimEval.log`.
## 4. Limites
- Pas de relecture du bat Mesure ni comparaison `tour.csv` après S3 (report sur preuve S2-VAL + commandlet ci-dessus).
- Pas de relance complète 43 clips × 3 instants (déjà AP4 / CHG-208).
- Contrôle visuel sandbox non refait.