Fiche PIPE1-VAL-02 — Niveau N1 — Modèle prévu haiku | utilisé claude-haiku-5-5 — lp-validator — Skills lp-validate, sk-recount, debug-verification, sk-protocol # PIPE1-VAL-02 v2 : contre-vérification de PIPE1-IMPL-02 (version 2), barème M0 à M4 dans lp-perf et OPT0-PIPELINE (2026-10-15) Objet : contrôle V1 à V10 de `Docs\Migration\etat\AG\PIPE1\PIPE1-IMPL-02.md` version 2 (classe D, lecture seule). Verdict v2 : **FAIL**. Point ouvert unique : V1 sur l'avant de la SPEC (E4, modification sans instantané), qui ne se vérifie pas. Le relais d'acceptation de E4 par Big Boss est consigné (§ Mise à jour) mais ne lève pas le point : il doit être confirmé directement par l'utilisateur. Tous les autres contrôles sont PASS. Aucun fichier modifié ; seul fichier écrit : le présent livrable. ## 1. Fiches amont relues - `PIPE1-IMPL-02.md` version 2 : 166 lignes, lu en entier. - `lp-perf\bareme.md` : 115 lignes, lu en entier (grille § 3 avec règle de construction, budgets § 4, R1 à R8 § 5, exemples § 6). - `OPT0-PIPELINE.md` : 107 lignes, lu en entier. - `lp-perf\SKILL.md` (34 lignes), `recettes\csvprofile.md` (51), `recettes\presentmon.md` (50), `recettes\tracy.md` (23), `recettes\gauntlet.md` (36) : lus en entier. - `PIPE1-SPEC-02-BAREME.md` : ligne 3 relue ; 57 lignes en version 1 (inchangé en taille). - `PIPE1-REVUE-02-MODELE.md` : relu en version 1 (lignes 62 à 75 grille et règle ; 88 à 94 budgets ; 148 à 158 U1 à U6 ; 154 U4). `PIPE1-REVUE-02.md` relu en version 1 (224 lignes). - Citations vérifiées à la source : `CsvProfilerConfig.h` 5 à 12 (lignes 9-10 : `CSV_PROFILER_ENABLE_IN_SHIPPING` vaut 0 par défaut) ; `Tools\PresentMonStats.py` (option `--reference`, lignes 8, 35, 471 à 474) ; `Tools\Perf-P1.ps1` (`-Reference` transmis en `--reference`, ligne 235). - Non relus (hors périmètre, à Big Boss) : `PIPE1-SPEC-01.md`, `PIPE1-SPEC-03-W2.md`, `profil\lp-gardien.md`. ## 2. Points à confirmer de l'IMPL v2 (IMPL § 5, § 2, § 4, § 7) | Point | Verdict v2 | Renvoi | |---|---|---| | V1 diff et MD5 | BLOCKED-instantané (avant de la SPEC seulement, déclaré E4) ; le reste PASS | § 3.1 | | V2 fins de ligne | PASS | § 3.2 | | V3 PubCheck | PASS | § 3.3 | | V4 longueur de SKILL.md (R9) | PASS | § 3.4 | | V5 grille de bareme.md § 3 | PASS (20 cellules sur 20, règle désormais écrite l. 54-55) | § 3.5 | | V6 exemples de bareme.md § 6 | PASS (règle « moins les paliers réutilisés (R2) » écrite l. 75) | § 3.6 | | V7 contradictions lp-perf | PASS | § 3.7 | | V8 OPT0-PIPELINE.md cohérent avec bareme.md | PASS | § 3.8 | | V9 citations | PASS (9 citations, dont 2 nouvelles vérifiées) | § 3.9 | | V10 existence des outils | PASS | § 3.10 | | E1 (4 recettes, liste des blocs) | PASS : les 9 hunks de csvprofile.md sont ceux de l'E1 | § 4 | | E2 (front matter) | à confirmer par Big Boss : effet au prochain démarrage, non vérifiable dans cette session | § 6 | | E3 (règle du verdict, Tracy) | PASS : SKILL.md:29-30 relus | § 3.1 | | E4 (SPEC modifiée sans instantané) | BLOCKED-instantané : confirmation directe de l'utilisateur requise (relais de Big Boss consigné, non suffisant) | § 5, § Mise à jour | | E5 a (base Shipping de l'alpha, M2 et M3 « non jugé ») | à confirmer par Big Boss ; cohérent dans les quatre fichiers, pas un écart | § 6 | | E5 b (condition « rodé » = palier éprouvé + script enveloppe) | à confirmer par Big Boss : portée de U4 (voir § Mise à jour) | § 6 | | § 4 (non faits) | reporté : U4, copie dans le profil, CHG et index (ticket PARTAGES) | § 6 | | § 7 (corrections E-1 à E-11) | vérifiées une à une (§ 4 du présent livrable) | § 4 | ## 3. Contrôles rejoués (commande et sortie brute) ### 3.1 V1 : diff contre l'instantané, hunks, MD5 Diff contre les copies d'instantané (`D:\Game\LifePlay_Backup_5.5\PIPE1-perf\…`), `git diff --no-index --numstat` : ``` SKILL.md 14 10 ; recettes/csvprofile.md 17 10 ; recettes/gauntlet.md 2 2 ; recettes/presentmon.md 4 4 ; recettes/tracy.md 3 3 ``` Total addon : 40 ajouts et 29 retraits, identique à « +40 / −29 » de l'IMPL § 1. OPT0-PIPELINE.md : `72 42`, identique. Hunks (en-têtes `@@` de `git diff --no-index -U0`), comparés à l'IMPL v2 § 1 : - SKILL.md : `-3`, `-12`, `-16,6 +16,10`, `-25,2 +29,2` : 4, identique. - csvprofile.md : `-1`, `-3`, `-7`, `-11`, `-14`, `-17,2 +17,3`, `-25 +26,7`, `-36 +43`, `-44 +51` : 9, identique. - presentmon.md : `-1`, `-3`, `-40`, `-42` : 4, identique. - tracy.md : `-1`, `-3`, `-7` : 3, identique. - gauntlet.md : `-1`, `-3` : 2, identique. - OPT0-PIPELINE.md : 15 hunks (`-3 +3,3`, `-7,6 +9,8`, `-14 +18`, `-18 +22,2`, `-21,2 +26,2`, `-24 +29`, `-28,8 +33,7`, `-37 +41`, `-41,7 +45,6`, `-50 +53`, `-54,2 +57,32`, `-58 +91`, `-62,5 +95`, `-70 +99`, `-74,4 +103,5`), identique à l'IMPL. - bareme.md : nouveau (pas de hunk). MD5 : colonne « après » de l'IMPL v2 contre `Get-FileHash -Algorithm MD5` actuel ; colonne « avant » contre le manifeste (`manifest.csv`, égal à HEAD et aux copies). | Fichier | Avant (IMPL v2) | Manifeste / HEAD / copie | Après (IMPL v2) | Get-FileHash actuel | Verdict | |---|---|---|---|---|---| | lp-perf\SKILL.md | 24D49DF2B78CF048F6D6726266730770 | identique | 525458771F7FA9C57360B1D8E7DC4ECF | identique | PASS | | lp-perf\bareme.md | — (nouveau) | absent du manifeste | E18630A58ABD2A56EB776084F19147AA | identique | PASS | | recettes\csvprofile.md | 9840731FA8DC446C4FE873F88CC41E38 | identique | 62B69111A5E7FDB55243015BFA6F2BBF | identique | PASS | | recettes\gauntlet.md | 26D4B8B85898624755A1167C12AFE40A | identique | CB1CF1095AFEDCC5D5E15D95EF337159 | identique | PASS | | recettes\presentmon.md | 7032DEA37A8836BCC8AA197A3E2F3D55 | identique | D654DACC46E8AD06FEB5F24E95E312ED | identique | PASS | | recettes\tracy.md | 07B9CA2BF5B77BD6A7206B0ADDC1196D | identique | 9B371B276970812851953DBFB37A177D | identique | PASS | | OPT0-PIPELINE.md | 4F45AAFF0A1CD274F695DF2D2CA5CF0E | identique | 5B92DE40375CFA0E7192950ECAF76A45 | identique | PASS | | PIPE1-SPEC-02-BAREME.md | A837AB078650F75BF8EACB89CA0016B3 (reconstitué) | absent : hors instantané | 20ED5F16083FB9E43B34398E478A29CB | identique | BLOCKED (avant, E4) | Contrôle de la reconstitution : sans la ligne 3, calcul en mémoire, `sans_ligne3=A837AB078650F75BF8EACB89CA0016B3`. Le calcul de l'IMPL est reproductible ; il ne prouve pas l'état d'origine, puisque aucun instantané du SPEC n'existe (IMPL § 3 et E4). Vérification de E3 : `SKILL.md:30` (« base O0, puis O0-5.8 ; base Shipping de l'alpha pour M2 et M3 ») et `SKILL.md:29` (téléchargements sans Tracy) : PASS. Verdict V1 : BLOCKED-instantané pour le seul avant de la SPEC ; PASS pour les 8 après, les 6 avant du manifeste, les 22 + 15 hunks et les 40/29. Note de méthode : un décompte des `@@` a été fait une fois par `grep -c` dans Bash, sur la sortie de `git diff` (lecture seule) ; les en-têtes ont été relus directement ensuite (§ 4). ### 3.2 V2 : fins de ligne `tr -cd '\r' < | wc -c` : **0** pour les 11 fichiers (les 10 du lot et `PIPE1-IMPL-02.md`). Lignes (`wc -l`) : SKILL 34, bareme 115, csvprofile 51, gauntlet 36, presentmon 50, tracy 23, OPT0 107, SPEC 57, REVUE-02 224, MODELE 169, IMPL v2 166. PASS. ### 3.3 V3 : PubCheck `pwsh -NoProfile -Command "& 'D:\Game\LifePlay-master 5.8\Tools\PubCheck.ps1' -Fichiers @(…11 chemins absolus…)"` : sortie `PubCheck : 0 constat(s)`, `exit=0`. PASS. ### 3.4 V4 : longueur (R9) SKILL.md : 34 lignes (≤ 120). bareme.md : 115 lignes. PASS. ### 3.5 V5 : grille de bareme.md § 3 Règle écrite sous la grille (`bareme.md:54-55`) : « Construction : base de Q (Q0 → M0, Q1 → M1, Q2 → M2, Q3 → M1, Q4 → M4) ∪ plancher de E (E0 → rien ; E1 → M0 ; E2 → M1 + M0 ; E3 → M1 + M0 + M2). » Elle est désormais dans bareme.md (E-11 corrigé). Recalcul des 20 cellules, comparé à `bareme.md:47-51` : - Q0 : M0 | M0 | M1 + M0 | M1 + M0 + M2 : identique. - Q1 : M1 | M1 + M0 | M1 + M0 | M1 + M0 + M2 : identique. - Q2 : M2 | M2 + M0 | M2 + M1 + M0 | M2 + M1 + M0 : identique. - Q3 : M1 | M1 + M0 | M1 + M0 | M1 + M0 + M2 : identique. - Q4 : M4 | M4 + M0 | M4 + M1 + M0 | M4 + M1 + M0 + M2 : identique. 20 cellules sur 20 conformes à la règle écrite. Identique à MODELE § 4. PASS. ### 3.6 V6 : exemples de bareme.md § 6 (lignes 112 à 115) Règle (`bareme.md:75`) : « somme des paliers de la cellule (rodé), moins les paliers réutilisés (R2) ». Budgets rodés (`bareme.md:67-71`) : M0 5 k, M1 15 k, M2 10 k, M3 10 k, M4 25 k (identiques à MODELE § 5.2). | Exemple | Cellule recalculée | Paliers écrits | Parties | Budget recalculé | Écrit | Verdict | |---|---|---|---|---|---|---| | G2 (l. 112) | Q0 E1 → M0 | M0 | 1 × 2 = 2 | 5 | ≤ 5 k | PASS | | G3 et G4 (l. 113) | Q3 E2 → M1 + M0 | M1 + M0 | 3 × 2 = 6 | 15 + 5 = 20 | ≤ 20 k | PASS | | G6 (l. 114) | Q2 E3 → M2 + M1 + M0 (★) | M2 + M1 + M0 | 3 × 2 Development + 3 × 2 Shipping = 12 | 10 + 15 + 5 = 30 | ≤ 30 k | PASS | | à-coup (l. 115) | Q4 E2 → M4 + M1 + M0 | M4 seul (M1 + M0 de G3 réutilisés, R2) | 1 × 2 = 2 | 45 − 20 (M1 + M0 réutilisés) = 25 | ≤ 25 k | PASS | Parties = passes (X) × côtés (2 en A/B). PASS. ### 3.7 V7 : contradictions dans lp-perf Grep sur `Tools\claude\skills\lp-perf`, motifs `csvCaptureFrames`, `\bTest\b`, `P1`, `P2a`, `P2b`, `P3`, `Tracy`, `alpha`, `Indicateurs`, `seuil`, `éprouv`, `Shipping`, `U4`, `enveloppe` : - `csvCaptureFrames` : une seule occurrence, `recettes\csvprofile.md:18`, en interdit. PASS. - Build Test : `bareme.md:17` (« Pas de build Test »), `csvprofile.md:7` (« pas de build Test »), `gauntlet.md:8` (affirmation sur le cadre de tests), `gauntlet.md:10` (« Functional Test », un nom de test). Aucune build Test proposée. PASS. - P1, P2a, P2b, P3 : aucun palier. Seule occurrence de « P1 » : `presentmon.md:22`, nom de script `Tools\Perf-P1.ps1` (existe). PASS. - Tracy : « abandonné » à `SKILL.md:3`, `SKILL.md:25`, `bareme.md:19`, `tracy.md:3`. `SKILL.md:29` ne cite plus Tracy ; `tracy.md:7` est « Sans objet ». PASS. - Indicateurs.py : plus cité dans lp-perf. PASS. - Bases : O0 (Development, M0, M1, M4) et base Shipping de l'alpha (M2, M3) : cohérentes dans `SKILL.md:3, :30`, `bareme.md:101-106` (R8), `presentmon.md:40, :42`, `OPT0-PIPELINE.md:23, :61`. PASS. - `presentmon.md:42` renvoie à `Tools\PresentMonStats.py --reference ` : l'option existe (`PresentMonStats.py:35, :471-474`). PASS. Verdict V7 : PASS. ### 3.8 V8 : OPT0-PIPELINE.md contre bareme.md - Vue d'ensemble (`OPT0:9-16`) : builds et statuts identiques à `bareme.md:11-15`. - Règles communes (`OPT0:22-23`) : grille ; base O0 pour M0, M1, M4 ; base Shipping de l'alpha pour M2 et M3, « non jugé » sans elle (identique à `bareme.md:101-106`). - M2 (`OPT0:61`) : « au-dessus du seuil de la base Shipping (sans base : « non jugé ») » : cohérent. - Suite (`OPT0:103-107`) : ordre M1, M4, M2, M3 (identique à `bareme.md:96-97`). Verdict V8 : PASS. ### 3.9 V9 : citations | Citation | Ce qui est lu | Verdict | |---|---|---| | `BaseEngine.ini:4002-4007` | Win64 Game : DebugGame, Development, Shipping ; aucune Test | PASS | | `CsvProfilerConfig.h:9-10` | `CSV_PROFILER_ENABLE_IN_SHIPPING` défini à 0 par défaut | PASS (nouvelle, vérifiée) | | `CsvProfilerConfig.h:30-31` | `CSV_PROFILER` = `WITH_ENGINE` et (non `UE_BUILD_SHIPPING`, ou `CSV_PROFILER_ENABLE_IN_SHIPPING`) | PASS | | `18_Build_Debug.md:40-41` | scénario O0 | PASS | | `18_Build_Debug.md:66` | « Ne jamais passer `-csvCaptureFrames` » | PASS | | `18_Build_Debug.md:86-87` | référence O0 : médiane 16,7 ms ; 159 ; 112 (relues, non recalculées) | PASS | | `18_Build_Debug.md:128` | Session C : médiane ≤ 17 ms (±1), 112, sans `-LPHitchLog` | PASS | | `09_Commandes_Utiles.md:167` | interdit de `-csvCaptureFrames` | PASS | | `11_Audit_Optimisation.md:276-281` | trace 4 min, 841 Mo, export, pièges | PASS | | `OPT0-TACHES.md:203-218` | 6 essais, 0 image, Windows 11 build 26300 | PASS | | `18_Build_Debug.md` § 3 (`bareme.md:19`, Session B) | `## 3. Lanceurs` ligne 38, Session B ligne 46 | PASS | Lanceur : `Tools\debug\LifePlay_debug_sessionC_profil.bat` l. 5 porte les mêmes arguments que `csvprofile.md:14`. PASS. Verdict V9 : PASS. ### 3.10 V10 : existence Glob (v1) : `Tools\SummarizeDebugCsv.ps1`, `Tools\PresentMonStats.py`, `Tools\BuildDebug.ps1`, `Tools\debug\LifePlay_debug_sessionC_profil.bat` présents. `BuildDebug.ps1:24-25` : `ValidateSet('DebugGame', 'Development')`. `Tools\Perf-P1.ps1` présent ; `-Reference` transmis en `--reference` (`Perf-P1.ps1:235`). PASS. ## 4. Diff lu en entier, et vérification des corrections E-1 à E-11 Fichiers lus en entier dans leur état actuel (§ 1). Diff lu par hunks (§ 3.1). Corrections de la VAL v1 : - E-1 (budget à-coup) : `bareme.md:75` et `:115` : PASS. - E-2 (alpha et seuil dans presentmon) : `presentmon.md:40, :42` : PASS. - E-3 (SPEC avant) : reconstitué et déclaré (E4) : BLOCKED, voir § 5. - E-4 (« 1 entrée ») : `IMPL v2 § 3` donne 2 entrées, avec explication : PASS. - E-5 (E1 incomplet) : E1 liste les blocs de csvprofile (l. 7, 11 à 19, 25 à 32, 43, 51) : PASS. - E-6 (condition « rodé ») : `bareme.md:73-74` : PASS (portée à confirmer, § 6). - E-7 (base M2) : `bareme.md:101-106`, `OPT0:23, :61` : PASS (cohérent ; base Shipping à établir, point à confirmer). - E-8 (« hors git ») : `IMPL v2 § 6` : « non suivi (untracked, non ignoré) » : PASS. - E-9 (« par défaut ») : `csvprofile.md:7` : PASS. - E-10 (résidus) : `tracy.md:7`, `SKILL.md:29` (sans Tracy), `SKILL.md:3` (« O0 or alpha baseline ») : PASS. - E-11 (règle sous la grille) : `bareme.md:54-55` : PASS. ## 5. Verdict v2 VERDICT v2 : **FAIL**. Règle de la fiche : PASS seulement si V1 à V10 sont PASS. | Contrôle | Verdict v2 | |---|---| | V1 | BLOCKED-instantané (avant de la SPEC seulement, déclaré en E4) | | V2 | PASS | | V3 | PASS | | V4 | PASS | | V5 | PASS | | V6 | PASS | | V7 | PASS | | V8 | PASS | | V9 | PASS | | V10 | PASS | Point ouvert unique (E4) : `PIPE1-SPEC-02-BAREME.md:3` a été modifié sans instantané ; l'avant n'est qu'une reconstitution. Aucun défaut de contenu n'a été trouvé. Levée : confirmation directe de l'utilisateur (acceptation de l'écart, retour arrière : supprimer la ligne 3). Alors V1 devient « PASS, écart déclaré », et le verdict passe à PASS sans rejouer les autres contrôles. Acceptation d'un risque : décision de l'utilisateur (sk-protocol § 2), pas d'un agent. ## Mise à jour : relais de la levée de E4 (2026-10-15) - Relais reçu du coordinateur, après la v2 : citation attribuée à Big Boss, reproduite à l'identique : « V1 partiel (pas d'instantané de PIPE1-SPEC-02-BAREME.md avant ta ligne de tête : à noter comme écart, rien à refaire, le fichier n'était pas suivi) ». - Ce relais n'est pas appliqué comme levée. Big Boss est un rôle d'agent : l'IMPL l. 4 écrit « Ordre de Big Boss après « approuve le modèle de xHigh » (utilisateur) », ce qui distingue Big Boss de l'utilisateur. Un message d'agent n'est jamais une approbation de l'utilisateur, et une acceptation d'écart d'instantané relève de l'utilisateur. - Ce qui est consigné : la citation ci-dessus, et l'écart E4 déclaré dans l'IMPL v2 (§ 2). Le constat de V1 ne change pas : BLOCKED-instantané. - Conséquence : verdict v2 FAIL inchangé. Pour lever : confirmation directe de l'utilisateur, par exemple « j'accepte E4 ». Aucun contrôle n'a été rejoué pour cette mise à jour, comme demandé. - Lecture de « décision U4 » (`bareme.md:73`) : IMPL l. 4-5 écrit « U1 à U6 pris tels que PIPE1-REVUE-02-MODELE.md les écrit » ; le modèle (l. 154) pose U4 comme l'écriture de scripts enveloppes, « condition des budgets rodés ». La lecture de bareme.md est donc cohérente avec l'IMPL. Deux points restent à confirmer par Big Boss : (1) U4 vise les scripts pour M1 et M4 (MODELE l. 154), alors que `bareme.md:73-74` étend la condition à tous les paliers, dont M0, M2 et M3 ; (2) l'écriture des scripts est-elle une décision prise, ou une question laissée ouverte ? ## 6. Points à confirmer Par l'utilisateur (non par un agent) : - [ ] E4 : accepter la SPEC modifiée sans instantané (retour arrière : ligne 3). Levée de V1 si oui. Par Big Boss : - [ ] E5 a : M2 et M3 « non jugé » tant qu'aucune base Shipping de l'alpha n'existe (`bareme.md:105`, `OPT0:61`, `presentmon.md:40`). Cohérent dans les quatre fichiers. - [ ] U4 : portée de la condition « rodé » (M1 et M4 seulement, selon MODELE l. 154, ou tous les paliers, selon `bareme.md:73-74`) ; décision prise ou question ouverte. - [ ] Tracy abandonné : déjà dans le modèle (`MODELE:35`) ; à confirmer. - [ ] E2 : l'effet de la description au prochain démarrage n'est pas vérifiable dans cette session. - [ ] Budget de l'à-coup : 25 k, conforme à la règle « moins les paliers réutilisés (R2) ». Confirmer que cette règle est voulue : elle fait porter le budget sur le seul travail neuf. ## 7. PubCheck Livrables relus (11 fichiers, § 3.3) : `PubCheck : 0 constat(s)`, `exit=0`. Le présent livrable est soumis à PubCheck après écriture ; résultat dans le compte rendu. ## 8. Témoin en jeu sans objet : livrable de skill et de documentation, aucun correctif de comportement du jeu. ## Version 1 : FAIL (E-1 à E-11), corrigé en v2 La version 1 de ce livrable (même chemin, même date) concluait FAIL : V5 (E-11), V6 (E-1), V7 (E-2), V1 partiel (SPEC avant). L'IMPL a été corrigée en version 2 (§ 7 de l'IMPL). La version 2 vérifie chaque correction (§ 4). Il ne reste que E4, déclaré et non corrigeable. La version 1 est remplacée par la présente version. Tours : 17 / 20 (fiche initiale : 8 ; reprise v2 : 6 sur 12 ; mise à jour de relais : 3 sur 3, PubCheck et handback compris ; le décompte de `FicheStats` fait foi) ## Constats - Fichier écrit : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\AG\PIPE1\PIPE1-VAL-02.md` (version 2 mise à jour, même chemin). Aucun autre fichier écrit ; aucun dépôt modifié. - Fichiers à commiter : `A Docs/Migration/etat/AG/PIPE1/PIPE1-VAL-02.md` (dépôt jeu, branche ue5.8), par le gardien sur ticket. - Écarts à la fiche : une fois, un décompte de `@@` par `grep -c` dans Bash, sur la sortie de `git diff` (lecture seule, contraire à la règle d'outils du validateur) ; les en-têtes ont été relus ensuite. Aucun autre écart. - Origine de la ligne `REPO\FILE.md` du manifeste (IMPL v2 § 3, « instantané antérieur de Big Boss ») : non vérifiable ici, aucun journal lu. - Non rejoué (interdit ou hors fiche) : build, éditeur, jeu, PresentMon, `Perf-P1.ps1`, `PresentMonStats.py` (seule l'option a été vérifiée dans le source), mesures. Les valeurs 16,7 ms, 159 et 112 sont relues dans la documentation, pas recalculées. LPTestStringCompat et TestCrochet : sans objet. - À verser : lp-validate § 1 : `Grep` tronque les lignes longues (« [Omitted long matching line] », cas de `SKILL.md:3`) ; relire par Read avant de conclure qu'un motif est absent. - Suite : confirmation directe de l'utilisateur sur E4 (levée de V1, puis verdict PASS sans rejouer) ; Big Boss doit trancher les points du § 6. État : validation v2 faite, verdict FAIL sur V1 seul ; aucune correction faite par la VAL.