25 KiB
Fiche TRACE1-T4v — Niveau N1 — Modèle prévu sonnet | utilisé claude-sonnet-5-5 (déclaré par l'environnement) — Agent lp-validator — Skills sk-protocol, sk-recount, debug-verification, lp-validate
TRACE1-T4v-VAL : Tools\Traces.ps1 et Tools\Corbeille.ps1 contre la SPEC § 3, § 4, § 7 (2026-10-13)
Copie D:\Game\LifePlay-master 5.8, branche ue5.8, HEAD f32df0d. Les deux scripts sont non suivis (??).
MD5 relevés en fin de VAL : Traces.ps1 C4CE7FFFDB081E6399ADDE4D8BFC9545 (mtime 08:35:41, 25 057 octets) ;
Corbeille.ps1 7D144C3C09AAEF06DEAD70DF01BF8203 (mtime 08:30:34, 22 280 octets). Leurs dates sont antérieures au début
de cette VAL (08:52) : rien n'a été modifié ici. Corbeille.ps1 n'a jamais été lancé avec -Envoyer.
Corbeille de Windows (Shell.Application.Namespace(10).Items().Count) : 2521 avant, 2521 après, relevé avant et
après chaque série d'essais (plus de 8 relevés, tous à 2521, dernier à 09:05:35). Aucun fichier de l'existant n'a disparu
(Test-Path et MD5 relus, § 3).
1. Fiches amont relues
| Fichier | Relu | Remarque |
|---|---|---|
fiches\TRACE1-T4v.md |
oui | fiche de cette VAL |
TRACE1-T3-SPEC.md |
oui | § 3 (Traces.ps1), § 4 (Corbeille.ps1), § 7 (critères 1 à 7) |
TRACE1-T4a-IMPL.md |
oui | E1 à E13, points à confirmer, Constats |
TRACE1-T4b-IMPL.md |
oui | E1 à E11, points à confirmer, « non exercé » |
Tools\Traces.ps1 (474 l.), Tools\Corbeille.ps1 (443 l.) |
lus en entier | voir § 4 |
TRACE1-T4b-essai.ps1, TRACE1-T4a-essais.ps1 |
lus | appels de Get-LPDateProduction et pilote des essais à blanc |
TRACE1-T1-INV.md § 1 n'a pas été relu : les racines ont été comparées entre les deux scripts, pas à T1 (voir § 3, R).
2. Points à confirmer des IMPL
T4a (TRACE1-T4a-IMPL.md § 5)
| Point | Résultat | Preuve |
|---|---|---|
| Critère 1, tolérance ± 2 % | PASS (décision de l'orchestrateur, réserve notée) | § 3, critère 1 : 3 310 fichiers contre 3 228 attendus = + 2,54 % ; écart réconcilié ; sans les 44 .ini de plantage : + 1,18 % |
E1 -Avant sans filtre par défaut |
PASS (jugé conforme à la décision de l'orchestrateur, § Constats) | Traces.ps1 l. 380-388 ; -Avant 2026-09-13 rejoué : 74 entrées |
E4 copies d'etat de LifePlay_Publication hors règle |
PASS | catégorie publication de l'inventaire rejoué : 23 entrées (T1 : 23), 0 chemin sous \Docs\ (Grep) |
E11 UnrealTrace (13 journaux) et UnrealHeaderTool gardés |
reporté (utilisateur / orchestrateur) | comportement confirmé (13 fichiers UnrealTrace de T1 « disparus » dans le recompte : tournants), mais Q4 ne les cite pas : décision de règle, pas de code |
E5 Backup_5.5\P7\T5 exclu en entier |
PASS pour Traces.ps1 ; voir R2 pour Corbeille.ps1 |
0 entrée sous P7\T5 et P7\T6a dans l'inventaire (Grep) |
E8 volume sans capacité = trop-gros |
PASS-STATIC | Traces.ps1 l. 408-409 ; cartes de capacité des 5 volumes égales au registre (§ 3) |
Doublons (Q8) : 138 copies, pas seulement Dbg-* |
PASS (constat confirmé) ; reporté à l'utilisateur pour T7 | groupes=527 copies=138 octets-copies=7855386094 rejoué |
Doublons : 395 groupes sans membre sous Backup_5.5, 56 copie-seule |
PASS pour les rôles (compte des rôles rejoué : copie 138, copie-seule 56, original 944 lignes) |
§ 3, critère 4 ; les 395 groupes n'ont pas été recomptés |
Dates : heure du nom des LifePlay-backup-*.log d'ARCH427 décalée de 2 h |
reporté | non rejoué (T4a l. 283-284) ; sans effet sur le jour sauf près de minuit |
Critère 7 : LF sans BOM comme les autres Tools\*.ps1 |
PASS | Traces.ps1, Corbeille.ps1, Numero.ps1, UeState.ps1 : CR=0, non-ASCII=0, BOM=False |
T4b (TRACE1-T4b-IMPL.md § 5)
| Point | Résultat | Preuve |
|---|---|---|
Racines de Corbeille.ps1 l. 79-104 identiques à celles de Traces.ps1 |
FAIL | 80 racines contre 83 : Corbeille.ps1 en a 3 de plus (R1) |
Critère 5 rejoué (TRACE1-T4b-essai.ps1) |
PASS | cas 1 à 5 REFUS attendus, code 2 ; cas 6 A-BLANC, code 0 ; liste témoin refuses=5 ; ETAT IDENTIQUE=True ; corbeille 2521 / 2521 |
| Critère 6 | PASS | § 3, critère 6 |
| Critère 7 | PASS | § 3, critère 7 |
| Écarts E1 à E11 | jugés un par un en § Constats | |
E1 la session d'envoi donne UserInteractive vrai |
reporté (T5) | vrai dans cette session (UserInteractive=True, sortie de TRACE1-T4b-essai.ps1) ; l'envoi n'a pas été essayé |
| E8 le contrôle après envoi retrouve l'élément (colonne 1) | reporté (T5) | aucun envoi permis ; code relu l. 401-417 seulement |
DeleteFile d'un fichier plus gros que la corbeille |
reporté | non vérifiable sans envoi ; le refus trop-gros (l. 344) et trop-gros-cumul (l. 370-374) l'évitent, lus mais non exercés |
3. Critères rejoués
Chaque critère est rejoué par une commande de cette VAL (fichiers TRACE1-T4v-*), pas recopié de T4a ou T4b.
| # | Critère SPEC § 7 | Commande rejouée | Résultat recompté | Verdict |
|---|---|---|---|---|
| 1 | Inventaire à ± 2 % de T1, 0 occurrence du nom du compte | pwsh -NoProfile -File "…\Tools\Traces.ps1" -Inventaire -Sortie "…\TRACE1-T4v-inventaire.txt" puis TRACE1-T4v-compare.ps1 (seconde méthode : tables par chemin, pas les motifs du script) |
TRACES entrees=3089 octets=37551676018 …, code 1 (index absent, attendu). Fichiers développés 3 310 ; attendu T1 3 228 (3 574 − 69 − 132 − 102 − 43). Réconciliation : 3 228 − 19 + 44 + 52 + 2 + 3 = 3 310. Nom du compte : 0 dans les 14 fichiers TRACE1-T4v-* (dont ce livrable, relevé à 09:05) |
PASS (tolérance appliquée aux fichiers développés, écart réconcilié : décision de l'orchestrateur) |
| 2 | Date de production, 6 noms types | TRACE1-T4v-essais.ps1 -Etape Dates (appel direct de Get-LPDateProduction, écriture fictive 2031-02-03) + relecture de 2 dossiers de plantage réels |
U5_Build_20261008-170000.log 2026-10-08 17:00:00 (nom) ; LifePlay-backup-2026.09.30-21.23.52.log 2026-09-30 21:23:52 (nom) ; L7i_partie1_20260930.log 2026-09-30 (nom) ; STE-J6.utrace et nom sans date : écriture ; dossier UECC-… : écriture, égale au max de LastWriteTime relu (2 dossiers, fichiers et octets égaux). Cas limites : X_20261399.log (date invalide) écriture ; Y_20261008-250000_20260101.log 2026-10-08 (3e motif) |
PASS |
| 3 | -Index sur un CSV témoin de 3 lignes |
-Inventaire -Index …TRACE1-T4a-index-temoin.csv et …-vide.csv, puis TRACE1-T4v-index-check.ps1 |
témoin : couvertes=31 (STE-J6 1 + L7i_*/V1rc_* 28 + SessionA 2), 0 couverte hors des 3 lignes, 0 fichier de portage hors motif couvert. Témoin vide : couvertes=29, SessionA.utrace et SessionA_cpu.utrace en sans-resume. Attendu recalculé par dossier parent et nom (28 L7i_/V1rc_ dans l'inventaire) |
PASS |
| 4 | -Doublons retrouve SessionA.utrace |
Traces.ps1 -Doublons -Sortie …TRACE1-T4v-doublons.txt ; certutil -hashfile … MD5 sur les deux fichiers |
DOUBLONS groupes=527 copies=138 octets-copies=7855386094. Groupe 467 : original LifePlay_Build_5.5_DebugGame\Windows\TraceArchive\SessionA.utrace, copie Backup_5.5\Dbg-I4\SessionA\Profiling\SessionA.utrace, MD5 44B6203349721CD88A804C190E573FD3 ; certutil : 44b6203349721cd88a804c190e573fd3 des deux côtés. Aussi SessionA_cpu (466), G6Dev (164), ChaosVD-… (131) |
PASS |
| 5 | Refus à blanc de Corbeille.ps1 |
TRACE1-T4b-essai.ps1 rejoué en entier ; en plus TRACE1-T4v-essais.ps1 -Etape Refus, TRACE1-T4v-essais2.ps1, TRACE1-T4v-essais3.ps1 |
absent, suivi par git, sous %USERPROFILE%\.claude, racine de build, manifest.csv : tous REFUS, code 2, envoyes=0. ETAT IDENTIQUE=True (MD5 et Test-Path des 6 chemins), corbeille 2521 / 2521. Refus non exercés par T4b, rejoués ci-dessous |
PASS |
| 6 | Pas de suppression hors SendToRecycleBin |
TRACE1-T4v-essais.ps1 -Etape Code (Select-String -SimpleMatch, 25 motifs, plus analyse AST des appels) |
Remove-Item, Move-Item, rm , del , Delete(, Rename-Item, Copy-Item, Set-Content, Out-File, New-Item, Invoke-Expression, Start-Process : 0 ligne dans les deux scripts. Corbeille.ps1 : seuls appels FileSystem::DeleteDirectory l. 426 et ::DeleteFile l. 428, tous deux avec 'OnlyErrorDialogs', 'SendToRecycleBin' (autres occurrences : texte d'aide l. 47, 50, 51, message l. 271). -Force : Traces.ps1 l. 161, 203 ; Corbeille.ps1 l. 141, 195, 214, 287, 327, tous sur Get-Item / Get-ChildItem, aucun sur un envoi. Traces.ps1 : une seule écriture, [IO.File]::WriteAllText l. 368 (option -Sortie) |
PASS |
| 7 | Fins de ligne, encodage, analyse, aide | TRACE1-T4v-essais.ps1 -Etape Code ; cd copie puis pwsh -NoProfile -Command "& { . .\Tools\Traces.ps1 -? }" (idem Corbeille.ps1) |
analyse : 0 erreur (les deux) ; aide -? : code 0, 86 lignes (les deux) ; Get-Help -Full code 0. Traces.ps1 25 057 o, CR=0, LF=474 ; Corbeille.ps1 22 280 o, CR=0, LF=443 ; non-ASCII=0, BOM=False, dernier octet LF ; mêmes valeurs de style que UeState.ps1 (6 964 o, CR=0) et Numero.ps1 |
PASS |
Refus non exercés par T4b, essayés à blanc (liste d'une ligne chacune)
| Cas | Chemin (liste d'une ligne) | Sortie | Code | Existence après |
|---|---|---|---|---|
| racine de copie | D:\Game\LifePlay-master 5.8 |
REFUS racine-copie, racine-depot, hors-racines, dossier-non-plantage, git-erreur |
2 | oui |
| racine de copie 5.5 | D:\Game\LifePlay-master 5.5 |
mêmes motifs | 2 | oui |
| racine de dépôt | D:\Game\LifePlay-Sandbox-5.8 |
REFUS racine-copie, racine-depot, … |
2 | oui |
| racine de sauvegarde de lot | D:\Game\LifePlay_Backup_5.5\TRACE1 |
REFUS racine-sauvegarde, dossier-non-plantage |
2 | oui |
| racine de sauvegarde | D:\Game\LifePlay_Backup_5.5 |
REFUS racine-sauvegarde, racine-autorisee, … |
2 | oui |
| racine autorisée | D:\Game\LifePlay-master 5.8\Saved |
REFUS racine-autorisee, hors-racines, dossier-non-plantage |
2 | oui |
dépôt des modules (--git-dir) |
premier fichier suivi lu par git --git-dir=D:\Game\LifePlay_ModulesGit\5.8.git --work-tree=…\Content\Modules ls-files (Clothes4.txt) |
REFUS hors-racines, suivi-git (la branche --git-dir répond) |
2 | oui |
dans .git |
D:\Game\LifePlay-master 5.8\.git\HEAD |
REFUS depot-git, hors-racines |
2 | oui |
décrit par un manifeste (avec Rel) |
Backup_5.5\AG-ERR087\Tools\claude\skills\lp-repo\SKILL.md |
REFUS manifest ; MD5 avant = après |
2 | oui |
| liste vide | fichier vide | REFUS liste-vide |
2 | — |
| chemin relatif, lecteur seul, variable inconnue | D:, %TRACE1_INCONNUE%\x.log |
REFUS chemin-relatif |
2 | — |
| chemin UNC | \\localhost\d$\Game\…\Build.ps1 |
REFUS hors-racines, git-erreur (« dubious ownership »), corbeille-inconnue |
2 | — |
.. dans le chemin, casse différente |
…\Saved\..\Tools\Build.ps1, D:\GAME\…\TOOLS\BUILD.PS1 |
REFUS suivi-git (chemin normalisé, icase) |
2 | oui |
jonction .claude\skills |
…\.claude\skills |
REFUS jonction, lien, hors-racines, dossier-non-plantage, suivi-git |
2 | oui |
TRACE1-T4b-cas7-supplement.txt rejoué |
5 lignes | chemin-relatif, jonction, hors-racines, suivi-git, doublon ; refuses=3 |
2 | oui |
Soit 15 listes d'une ligne nouvelles (ou rejouées) en plus de celles de T4b, toutes refusées avec le code 2.
Sorties TSV de Traces.ps1 lues par Corbeille.ps1 (colonne Chemin, %USERPROFILE% développé), à blanc :
-Inventaire -Avant 2026-09-13 : 74 lignes, A BLANC lignes=74 octets=60899824, 0 refus, code 0 ; liste des doublons de rôle
copie : 138 lignes, octets=7855386094, 0 refus, code 0 ; 3 dossiers de plantage réels (Crashes\<dossier>, dont un
sous %USERPROFILE%) : A-BLANC pour les 3, octets=4059402, dossiers intacts après (enfants 4, 4, 3). La chaîne
Traces.ps1 -Sortie puis Corbeille.ps1 -Liste fonctionne donc de bout en bout à blanc.
trop-gros : PASS-STATIC. Lecture de Corbeille.ps1 l. 344 ($rec.Octets -gt $cb.MaxOctets), l. 370-374
(trop-gros-cumul) et de Traces.ps1 l. 408-409. Aucune entrée réelle n'approche la capacité (plus grosse : 6 704 805 392
octets ; capacités C: 50 837 Mo, D: 197 398 Mo, E: 13 970 Mo, F: 192 817 Mo, G: 192 781 Mo, égales aux valeurs du registre
relues indépendamment, NukeOnDelete=0 partout). Branche non exercée par des données.
R. Racines des deux scripts
Les racines développées (80 pour Traces.ps1 via Get-LPRacines, 83 pour Corbeille.ps1 par évaluation de ses
l. 80-103 et construction des l. 192-205, comparées en minuscules) :
- dans
Traces.ps1seul : aucune ; - dans
Corbeille.ps1seul :%LOCALAPPDATA%\CrashReportClient,%LOCALAPPDATA%\UnrealBuildTool,%LOCALAPPDATA%\EpicGamesLauncher\Saved\Logs. Ce sont les journaux tournants que Q4 laisse hors règle et queTraces.ps1exclut (racines absentes deGet-LPRacines). Le commentaire deCorbeille.ps1l. 79 (« a tenir identique a Traces.ps1 ») n'est donc pas tenu, et la SPEC § 4 dit « hors des racines deTraces.ps1». Même défaut pourUnrealEngine\Common\Zen: exclu parTraces.ps1(l. 209), non exclu parCorbeille.ps1(estimé par lecture, non essayé à blanc).
4. Diff lu en entier
Les deux fichiers sont nouveaux et non suivis : le « diff » est la lecture complète des fichiers (Read, 474 + 443
lignes), comparés à la SPEC § 3 et § 4.
| Fichier | Lignes | Conforme à la SPEC | Constats |
|---|---|---|---|
Tools\Traces.ps1 |
474 | oui, avec les écarts E1 à E13 jugés en § Constats | seule écriture : WriteAllText l. 368 ; -Sortie remplace sans garde un fichier existant (documenté dans l'aide) ; codes 0 / 1 / 2 l. 469-473 ; . charge les fonctions sans rien lancer (l. 374) |
Tools\Corbeille.ps1 |
443 | oui pour § 4 ; deux écarts à corriger (R1, R2) | à blanc par défaut : exit 0 l. 394 avant tout appel Delete* ; envoi seulement l. 397-443 ; arrêt au premier échec (l. 433) ; refus de toute la liste avant envoi (l. 384-387) |
Modifications faites par cette VAL (inventaire) : aucune sur le dépôt ni sur l'existant. Fichiers créés, tous
TRACE1-T4v-* dans Docs\Migration\etat\AG\TRACE1\ : …-essais.ps1, …-essais2.ps1, …-essais3.ps1, …-compare.ps1,
…-index-check.ps1 (scripts de contrôle en lecture seule), …-inventaire.txt, …-avant.txt, …-doublons.txt,
…-index.txt, …-index-vide.txt, …-refus-ligne.txt, …-liste.txt, …-liste-copies.txt (sorties et listes d'essai,
à blanc), et ce livrable. git status --short -- Tools : ?? Tools/Corbeille.ps1, ?? Tools/Traces.ps1, inchangé. Les
fichiers de T4a et T4b ont des dates antérieures à 08:52 (non touchés).
5. Verdict
PASS pour les critères 1 à 7 de la SPEC § 7, chacun rejoué par cette VAL.
Global : PASS avec deux réserves à corriger avant T7 (premier envoi réel), non bloquantes pour T5 (envoi d'un fichier témoin choisi à la main) :
- R1 (racines de
Corbeille.ps1≠ celles deTraces.ps1, 3 racines de plus) : écart à corriger ; - R2 (
Corbeille.ps1ne lit que la colonneReldesmanifest.csv) : écart à corriger.
Arguments. Tous les refus essayés rendent le code 2 sans rien envoyer ; la corbeille vaut 2521 avant et après ; le code ne
contient aucune suppression hors SendToRecycleBin ; la chaîne de bout en bout fonctionne à blanc. L'écart R2 a été montré
à blanc : Corbeille.ps1 -Liste sur un fichier de Backup_5.5\P7\T5\agents\ (manifeste à colonnes Path,MD5,Existed), sur
un fichier de Backup_5.5\P7\T6a\addon55\ et sur un fichier désigné par la colonne chemin de P7\T6a\manifest.csv rend
A-BLANC, code 0, alors que Traces.ps1 traite ces dossiers comme des instantanés (0 entrée de l'inventaire sous P7\T5
et P7\T6a). Dans le flux prévu (liste issue de Traces.ps1), ces chemins n'arrivent pas ; le risque existe pour une liste
écrite à la main, ce que Corbeille.ps1 a pour rôle de refuser. Ces deux réserves relèvent de la correction, pas de la VAL.
Ce qui n'est pas prouvé : l'envoi réel (DeleteFile / DeleteDirectory, le contrôle Namespace(10), la ligne ENVOYE),
la branche trop-gros sur des données, lecture-seule, lien-interne, corbeille-desactivee, session-non-interactive,
illisible, manifest-illisible, git-erreur autre que le cas UNC et le cas racine de dépôt, -Doublons -Json, Windows
PowerShell 5.1, -Avant mois (code lu l. 380-381, essai de T4a seul).
6. Points à confirmer par l'utilisateur
- R1 : retirer de
Corbeille.ps1les 3 racines de journaux tournants (CrashReportClient,UnrealBuildTool,EpicGamesLauncher\Saved\Logs) et exclureUnrealEngine\Common\Zen, ou accepter queCorbeille.ps1soit plus large queTraces.ps1? Recommandation : corriger avant T7. - R2 : faire lire à
Corbeille.ps1la colonnecheminet le cas « manifeste sansRelnichemin» commeTraces.ps1(dossier du manifeste entier refusé) ? Recommandation : corriger avant T7. - E11 (T4a) : garder
UnrealEngine\Common\UnrealTrace(13 journaux tournants) etUnrealHeaderTooldans la règle, alors que Q4 ne les nomme pas ? - Doublons (Q8) : les 138 copies (7,86 Go) ne sont pas seulement sous
Dbg-*; la liste chiffrée de T7 doit les montrer. - Index : un dossier seul dans la colonne
fichiersne couvre pas son contenu (E7) ; à écrire dans la consigne de T6. - T5 : autoriser l'envoi réel du fichier témoin (GO séparé) ; contrôle
UserInteractiveet colonne 1 de la corbeille à voir ce jour-là.
Fichiers à commiter (dépôt du jeu, ue5.8) : A Docs/Migration/etat/AG/TRACE1/TRACE1-T4v-VAL.md. Les autres TRACE1-T4v-*
(scripts et .txt) suivent le motif /Docs/Migration/etat/** (ignoré, comme les fichiers de T4a et T4b) ; non vérifié par
git check-ignore.
Tours : 30 / 40
Constats
Écarts de T4a (E1 à E13), jugement
| # | Écart | Jugement | Motif |
|---|---|---|---|
| E1 | -Avant : aucun filtre par défaut ; -Avant mois donne le défaut de la SPEC |
conforme à la SPEC (décision de l'orchestrateur) | la SPEC se contredit (§ 3 contre § 7.1) ; décision déjà prise ligne T4a de TRACE1-TACHES.md |
| E2 | colonnes Fichiers, Index, Corbeille ajoutées après les 5 de la SPEC |
amélioration acceptable | l'ordre des 5 premières est tenu (en-tête relu), la SPEC ne dit pas où poser les marques |
| E3 | -Doublons sort des groupes (Groupe, Role, MD5), lignes DOUBLONS puis TRACES |
amélioration acceptable | lisible par Corbeille.ps1 (138 copies, à blanc, code 0) ; rôles original, copie, copie-seule |
| E4 | règle « ni .md ni .csv » limitée aux racines etat des copies ; .ini des dossiers de plantage inclus |
amélioration acceptable | recompte : T1 reproduit (3 209 communs) ; les 44 .ini sont l'écart de + 1,36 % |
| E5 | manifestes : Rel, chemin, ou dossier entier exclu |
amélioration acceptable pour Traces.ps1 |
conservateur (moins de fichiers listés) ; l'écart côté Corbeille.ps1 est R2 |
| E6 | motif backup-… avec heure ; date invalide ignorée |
amélioration acceptable | rejoué (cas limites, § 3 critère 2) |
| E7 | règles de format de l'index (dossier + noms, *, un dossier ne couvre pas son contenu) |
amélioration acceptable | la SPEC ne précise pas ; rejoué sur le témoin ; restrictif (sûr) ; à écrire pour T6 |
| E8 | volume sans capacité lisible = trop-gros |
amélioration acceptable | choix prudent ; lu, non exercé |
| E9 | AVERTISSEMENT, INFO, ERREUR sur la sortie d'erreur |
amélioration acceptable | -Json rejoué : ConvertFrom-Json lit 74 entrées, mêmes colonnes ; [Console]::Error.WriteLine lu (pureté de stdout seule : estimé) |
| E10 | chargement par . définit les fonctions sans rien lancer |
amélioration acceptable | utilisé pour le critère 2 et pour -? |
| E11 | lecture de Q4 : UnrealTrace et UnrealHeaderTool gardés |
amélioration acceptable pour le code ; décision de règle reportée (§ 6) | Q4 ne les nomme pas |
| E12 | exclusions etat\REPO et .py .png .jpg .json pour tout \etat\ |
conforme à la SPEC | aucun chemin etat\REPO ni Q4 dans l'inventaire (Grep : 16 correspondances, toutes des .json de Logs, hors etat\) |
| E13 | second témoin d'index à résumé vide | conforme à la SPEC | utilisé au critère 3 |
Écarts de T4b (E1 à E11), jugement
| # | Écart | Jugement | Motif |
|---|---|---|---|
| E1 | refus session-non-interactive |
amélioration acceptable | évite un effacement définitif (source dotnet/runtime citée par T4b, non relue ici : estimé) ; UserInteractive=True ici |
| E2 | refus lecture-seule |
amélioration acceptable | évite une boîte de dialogue ; non exercé |
| E3 | jonction, lien, lien-interne, chemin réel testé |
amélioration acceptable | rejoué : .claude\skills rend 5 refus dont jonction et lien |
| E4 | dossier-non-plantage |
conforme à la SPEC | DeleteDirectory réservé aux dossiers de plantage ; rejoué : 3 dossiers Crashes\<dossier> admis, la racine de build refusée |
| E5 | refus ajoutés (chemin-relatif, illisible, racine-autorisee, depot-git, … doublon) |
amélioration acceptable | rejoués : chemin-relatif, racine-autorisee, depot-git, doublon, git-erreur ; non exercés : illisible, manifest-illisible, corbeille-desactivee |
| E6 | une ligne REFUS par motif ; A-BLANC et A BLANC |
amélioration acceptable | format de la ligne de compte tenu (CORBEILLE envoyes=0 octets=0 refuses=… echecs=0) |
| E7 | lignes vides et # ignorées ; TSV lu sur la colonne Chemin |
amélioration acceptable | rejoué sur 3 TSV de Traces.ps1 |
| E8 | contrôle après envoi : nom avec et sans extension, 10 essais | amélioration acceptable | non exercé, reporté à T5 |
| E9 | pathspec :(literal,icase), dépôt le plus proche, --git-dir des modules |
amélioration acceptable | rejoué : casse différente, .., module Clothes4.txt refusés suivi-git |
| E10 | racines : LifePlay_Build_* développé à l'exécution |
à corriger (R1) | la liste des racines diffère de celle de Traces.ps1 (+ 3) ; le développement de LifePlay_Build_* lui-même est acceptable |
| E11 | « décrite par un manifest.csv » = manifest.csv et copies <dossier>\<Rel> |
à corriger (R2) | ne couvre pas les manifestes à colonne chemin ni sans Rel (essai à blanc, § 5) |
Note TRACE
Trace : Docs\Migration\etat\AG\TRACE1\TRACE1-T4v-*.txt — Fiche TRACE1-T4v — 2026-10-13 08:52 à 09:06
Commande : voir § 3 (chaque ligne cite sa commande) ; scripts de contrôle TRACE1-T4v-essais.ps1 (-Etape Dates|Code|Refus|Racines|Compte),
TRACE1-T4v-essais2.ps1 (-Etape Manifest|Crash|Tsv|Divers), TRACE1-T4v-essais3.ps1 (-Etape Manifestes|Capacites),
TRACE1-T4v-compare.ps1, TRACE1-T4v-index-check.ps1 ; jamais Corbeille.ps1 -Envoyer
Environnement: copie 5.8, ue5.8, HEAD f32df0d, pwsh 7.6.6, UserInteractive=True ; machine non calme (autres sessions écrivent dans Saved et etat)
Attendu : critères 1 à 7 de la SPEC § 7 ; corbeille identique avant et après ; aucun fichier de l'existant modifié
Obtenu : § 3 ; corbeille 2521 / 2521 à chaque relevé
Lecture : les comptes de l'inventaire bougent entre deux passages (3 083 T4a, 3 089 T4v, 3 094 et 3 099 aux passages -Index) :
fichiers créés par les autres sessions ; le recompte de référence est celui du critère 1 (3 089 entrées, 3 310 fichiers)
Sorties brutes (extraits)
TRACES entrees=3089 octets=37551676018 couvertes=0 sans-resume=3089 trop-gros=0 (code 1, index absent)
INFO racines=63 lus=518644 retenus=3353 instantanes=43 manifestes=200 erreurs-acces=0
T1 : lignes de donnees=3574 ; exclus Q4=69 REPO=132 preuves=102 ; restent=3271 ; instantanes retires=43 ; attendu=3228
T4v : entrees=3089 dont dossiers=76 ; fichiers developpes=3310 ; somme Fichiers=3310
communs=3209 ; T1 seul=19 (existe=False : 19) ; T4v seul=101
ini-plantage=44 ; crees ou ecrits apres 08:04:44=52 ; disparus depuis=2 ; autres=3
3228 - 19 + 44 + 52 + 2 + 3 = 3310 (obtenu 3310)
DOUBLONS groupes=527 copies=138 octets-copies=7855386094
TRACES entrees=3090 octets=37551688484 couvertes=0 sans-resume=3090 trop-gros=0 (passage -Doublons, une entrée de plus)
Racines : Traces.ps1 80 ; Corbeille.ps1 83 ; Corbeille seul : %userprofile%\appdata\local\crashreportclient,
%userprofile%\appdata\local\epicgameslauncher\saved\logs, %userprofile%\appdata\local\unrealbuildtool
CORBEILLE AVANT items=2521 / APRES items=2521
Les 3 fichiers « autres » du recompte du critère 1 sont deux AutoSDKInfo-backup-2026.10.13-05.47.59.{txt,json} et
UnrealTrace\server_1120.log, de dates antérieures à 08:04:44 mais absents de T1 : journaux tournants, estimé créés
entre le début du balayage de T1 et l'écriture de son fichier (0,09 % du compte). Un fichier tournant
(UnrealTrace\server_1118.log) a disparu entre le comptage et la lecture de ses dates : la première version de
TRACE1-T4v-compare.ps1 s'est arrêtée dessus ; la version 2 le tolère (disparus depuis=2).