8.1 KiB
SB1-VAL — Validation automatique du registre de mods (SB1-T5, partie automatique)
Fiche SB1-T5 — A-VAL — Modèle prévu sonnet | utilisé sonnet
- Date : 2026-10-07. Build testé : celui de SB1-T4 (compilation code 0).
- Journaux copiés :
D:\Game\LifePlay-master 5.5\Saved\Logs\portage\SB1_VAL_E1.log,_E2,_E3,_E4,_E4b,_E5. - Procédure : lancement par
LifePlay_pair_sandbox.bat, attente des lignesLogLPSandboxMods+Ouvert :, copie du journal, arrêt du seulUnrealEditorlancé (E5 : le pilote lance et ferme lui-même).
Tableau des essais
| Essai | Attendu | Observé | Verdict |
|---|---|---|---|
| E1 démarrage (g, i) | 7 modules sandbox ; ordre système puis mods ; aucun refus ni prérequis manquant ; .lpmod du jeu lus ; mod ouvert ; sandbox_mods.ini créé |
Modules : 7 sandbox, 16 jeu ; ordre : lps_system_core, lps_system_animmeasure, lps_lib_scene, lps_lib_actors, lps_asset_integration, lps_couple, lps_interaction ; les 7 en pret ; aucun Warning de lecture (LogLifePlay: Modules : 16 .lpmod lu(s), 0 avec MODULE_GAME_VERSION) ; Ouvert : lps_couple. sandbox_mods.ini : Order=lps_asset_integration,lps_couple,lps_interaction, Open=lps_couple, 3 cases true |
PASS |
| E2 mod requérant un mod (d) | lps_test_bad refusé, 3 mods prêts |
Modules : 8 sandbox …, lps_test_bad ; lps_test_bad [mod] refuse : un mod ne peut pas requerir un autre mod (lps_couple) : partager le composant dans une bibliotheque (Display + Warning) ; les 3 mods pret ; Ouvert : lps_couple |
PASS |
| E3 prérequis absent (e) | couple et interaction « prérequis manquant », asset_integration prêt | Modules : 6 sandbox ; lps_couple [mod] prerequis manquant : prerequis absent : lps_lib_scene ; idem lps_interaction ; lps_asset_integration [mod] pret. Le Open=lps_couple persisté est tenté puis refusé : Ouverture refusee : lps_couple (prerequis absent : lps_lib_scene) puis Ouvert : lps_asset_integration (repli sur le premier mod prêt, § 6.4 de la SPEC) |
PASS |
| E4 persistance (f) | ordre du fichier, lps_couple désactivé, Ouvert : lps_interaction |
ordre …, lps_asset_integration, lps_couple, lps_interaction ; lps_couple [mod] desactive ; Ouvert : lps_interaction |
PASS (*) |
| E4b (essai ajouté) ordre non alphabétique | l'ordre du fichier prime | avec Order=lps_interaction,lps_asset_integration,lps_couple : ordre : …, lps_lib_actors, lps_interaction, lps_asset_integration, lps_couple |
PASS |
| E5 non-régression Mesure (h) | tournée identique, mêmes fichiers, Ouvert : lps_asset_integration |
AnimPipeline.ps1 -Pack freeanims -From 5 -To 5 : verdict : ok (435 s), Chaine terminee, code de sortie 0 ; journal SB1_VAL_E5.log : Ouvert : lps_asset_integration (ordre lps_couple, lps_interaction, lps_asset_integration) ; 32 fichiers de même noms (10 vignettes\*.png, 10 planches\*.jpg, 10 planches\*.json, 2 retarget_pose_*.txt) ; 10 planches\*.json identiques ; eval_Bridget.csv / eval_Michael.csv identiques (SHA-256) ; 20 images (10 png, 10 jpg) d'empreinte différente |
PASS pour les fichiers et JSON ; images : voir ci-dessous |
(*) L'ordre demandé en E4 (lps_asset_integration, lps_couple, lps_interaction) est aussi l'ordre alphabétique par défaut : il ne prouve pas à lui seul la lecture du fichier ; E4b le prouve.
E5 — images dont l'empreinte diffère (tailles en octets, référence → nouveau)
Tous les noms et les .json sont identiques ; écarts de taille faibles (rendu non déterministe attendu), à juger par l'utilisateur.
| Fichier | Référence → nouveau |
|---|---|
| planches\AS_AirKiss.jpg | 148582 → 148574 |
| planches\AS_AttackInLevitation2.jpg | 139248 → 139244 |
| planches\AS_ChillDriving.jpg | 187677 → 187692 |
| planches\AS_ComboHands.jpg | 159898 → 159913 |
| planches\AS_EatingOnParty.jpg | 141183 → 141291 |
| planches\AS_FlyingUp.jpg | 119016 → 119041 |
| planches\AS_GoForward.jpg | 150693 → 150742 |
| planches\AS_Rest.jpg | 138519 → 138633 |
| planches\AS_RightLegKick2.jpg | 88070 → 88116 |
| planches\AS_Talk.jpg | 144361 → 144274 |
| vignettes\AS_AirKiss.png | 261580 → 261353 |
| vignettes\AS_AttackInLevitation2.png | 253439 → 253838 |
| vignettes\AS_ChillDriving.png | 289382 → 289345 |
| vignettes\AS_ComboHands.png | 268915 → 270145 |
| vignettes\AS_EatingOnParty.png | 263792 → 263826 |
| vignettes\AS_FlyingUp.png | 263466 → 263846 |
| vignettes\AS_GoForward.png | 256944 → 256957 |
| vignettes\AS_Rest.png | 242586 → 242608 |
| vignettes\AS_RightLegKick2.png | 265358 → 265512 |
| vignettes\AS_Talk.png | 260640 → 259551 |
Référence : D:\Game\LifePlay_Backup_5.5\SB1-VAL\reference_freeanims\ (+ eval_*.csv avant). Nouveau : D:\Game\LifePlay-master 5.5\Saved\AnimPipeline\freeanims\sandbox\.
Observations
- Le fichier
sandbox_mods.inin'existait pas avant E1 (créé au premier lancement avec l'ordre alphabétique, conforme à la SPEC § 4). - E2 a inscrit
lps_test_baddans l'ini (Order et Enabled) ; E3 et E5 ont modifiéOpen(le mod ouvert est mémorisé à chaque ouverture, dont celle de la tournée Mesure :Open=lps_asset_integrationaprès E5). Le fichier a été remis à l'état demandé. - Le pilote (étape 5) lance
LifePlay_interaction_sandbox.batet nonLifePlay_pair_sandbox.bat. - Aucun avertissement de lecture sur les 16
.lpmoddu jeu (le registre ne journalise pas les modules du jeu un par un ; seul le total est donné).
État final des fichiers remis en place
Test-Path ...\Modules\Mods\lps_test_bad: False (dossier supprimé).Test-Path ...\Modules\System\0010_lps_lib_scene\lps_lib_scene.lpmod: True ;D:\Game\LifePlay_Backup_5.5\SB1-VAL\0010_lps_lib_scene: absent (déplacé retour).- Aucun processus
UnrealEditoractif à la fin. D:\Game\LifePlay-master 5.5\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
Saved\sandbox_mode.txt:Pair(remis par le pilote).git statusde l'addon : aucun fichier parasite sousModules\.- Aucun source,
.lpmodexistant ni script modifié ; aucun commit.
À contrôler visuellement par l'utilisateur
- (a) Chaque mod (Couple, Interaction, Asset integration) s'ouvre depuis la barre latérale et se comporte comme l'ancien mode.
- (b) Enchaînement couple → interaction → asset integration → couple sans résidu (caméra, vue libre, animation automatique).
- (c) Un mod décoché n'est pas ouvrable (▶ inactif) ; décocher le mod ouvert ramène la scène neutre.
- Aspect de la barre latérale : sections Mods, Système (case « modules masqués »), Jeu (16 modules, repliée), bouton ◀ / ▶, ⚠ avec infobulle.
- Images E5 qui diffèrent : les 20 fichiers du tableau ci-dessus (comparer vignettes et planches avec la référence).
Verdict partiel
PASS de la partie automatique (E1 à E5 : critères d, e, f, g, h, i satisfaits ; images E5 : écarts de pixels à juger visuellement). Critères a, b, c restent à contrôler par l'utilisateur.
Contrôle visuel utilisateur (2026-10-07)
| Critère | Verdict |
|---|---|
| (a) chaque mod s'ouvre depuis la barre latérale et se comporte comme l'ancien mode | PASS (« pas de défauts constatés ») |
| (b) enchaînement couple, interaction, asset integration, couple sans résidu | PASS (« pas de défauts constatés ») |
| (c) mod décoché non ouvrable ; décocher le mod ouvert ramène la scène neutre | PASS (« pas de défauts constatés ») |
| Aspect de la barre latérale | PASS (« pas de défauts constatés ») |
| Images E5 (20 fichiers qui diffèrent) | PASS (« pas de défauts constatés ») |
Verdict global du lot SB1
PASS (partie automatique E1 à E5 + contrôle visuel utilisateur). Commits addon : 82dae58380b76c45f60541fd7cb5a0a409700e10 (code) puis commit de pin README ; tag lot-SB1-valide.
Modèles par fiche
| Fiche | Modèle prévu | Modèle utilisé |
|---|---|---|
| SB1-T1 | opus | opus |
| SB1-T2 | opus | opus |
| SB1-T3 | sonnet | sonnet |
| SB1-T4 | haiku | haiku |
| SB1-T5 | sonnet | sonnet |
| SB1-T6 | sonnet | sonnet |