LifePlay-Revival/Docs/Migration/etat/AG/PUB3/PUB3-T6a-bis-VAL.md
edujiro5972 8084622450 LifePlay UE 5.8 : état de développement au 2026-10-19
Tickets : REP1-T4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 22:57:42 +02:00

7 KiB

Fiche PUB3-T6a-bis — 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, lp-validate, sk-windows-shell, debug-verification

PUB3-T6a-bis-VAL : rejeu de la VAL de Tools\PubCheck.ps1 après corrections D1 à D7 (2026-10-13)

Copie D:\Game\LifePlay-master 5.8, branche ue5.8. Tools\PubCheck.ps1 relu en entier (290 l.). Valeurs personnelles jamais écrites : <compte>, <machine>, <adresse>. <scratchpad> = dossier temporaire de la session. Aucune écriture git dans le projet (les git init/add/commit visent des témoins jetables du scratchpad), aucun hook installé, aucun fichier du projet modifié sauf PUB3-T6a-VAL.md (corrigé, § 4) et ce livrable.

1. Fiches amont relues

PUB3-T6a-VAL.md (FAIL, D1 à D7), PUB3-T5-IMPL.md § 6 et § 7 (annoncés par la coordination), Tools\PubCheck.ps1 corrigé. Fraîcheur : HEAD ue5.8 a avancé d'un commit (a08c134, CAM-B1) depuis la VAL précédente (f32df0d).

2. Points à confirmer des IMPL (T5 § 6 et § 7)

Point Verdict
Corrections D1 à D7 effectives PASS, voir § 3
Extension de la SPEC (CHEMIN-NOM, CHEMIN-MACHINE, IDENTITE-NOM) à juger PASS techniquement ; opportunité à l'utilisateur (§ 6)
Client graphique sans pwsh dans le PATH reporté (inchangé)

3. Critères rejoués

3.1 Verdict par défaut

Défaut Essai (témoin jetable ou dépôt réel) Résultat brut (masqué) Verdict
D1 messages commit dont le message contient le compte, nom git d'auteur = compte, email noreply ; -Pointe HEAD -Distant origin e42c54f:IDENTITE:0:IDENTITE-NOM ; e42c54f:MESSAGE:1:NOM ; PubCheck : 2 constat(s) ; code 1 (avant : 0) PASS
D2 -Index et ++ plus.txt (ligne ajoutée ++ <compte>) plus.txt:2:NOM présent en -Index (avant : absent) ; -Index du témoin B : 8 constats PASS
D3 temps quadratique texte à lignes courtes, compte en dernière ligne, -Fichiers 1,9 Mo 1,2 s ; 4,7 Mo 2,1 s ; 9,4 Mo 3,5 s ; 18,8 Mo 5,9 s ; 109 Mo : -Arbre 32,1 s, -Pointe 31,4 s, -Fichiers 29,6 s, constat gros.txt:1400001:NOM (ligne exacte : 1 400 000 lignes + 1) ; avant : 13 s / 78 s / 330 s / > 1 180 s PASS (linéaire ; 109 Mo dépasse 30 s, hors de la SPEC § 4.3 qui vise 60 s pour ue5.8)
D4 chemins et noms fichiers propre-<machine>.txt, propre-<compte>.txt, neutre.txt (même contenu) ; nom git d'auteur = machine -Fichiers, -Index, -Arbre : propre-<machine>.txt:0:CHEMIN-MACHINE et propre-<compte>.txt:0:CHEMIN-NOM, code 1 ; -Pointe : d2ae07b:IDENTITE:0:IDENTITE-NOM ; <compte>-fichier.txt:0:CHEMIN-NOM aussi en -Index, -Arbre, -Pointe (témoin B) PASS avec réserve D8
D5 masque -Depot = dossier sous le profil PubCheck : erreur : depot introuvable : C:\Users\<compte>\AppData\Local\Temp\… ; chemins de constat masqués PASS
D6 cosmétique -Index avec chemin à espaces ; ligne « introduit par » dossier avec espaces/f e.txt:1:NOM sans tabulation ; introduit par 094ed0c (7 car.) PASS
D7 document PubCheck.ps1 -Fichiers sur PUB3-T5-IMPL.md, PUB3-T3-SPEC.md, Tools/PubCheck.ps1, Tools/hooks/pre-push PubCheck : 0 constat(s) PASS

D8 (nouveau, mineur, faux négatif) : en -Pointe, des fichiers de même contenu forment un seul blob et seul le premier chemin listé par rev-list --objects est testé (PubCheck.ps1:235, $vus[$sha]). Témoin à trois fichiers de contenu identique, dont deux avec le compte ou la machine dans le nom : -Pointe HEAD donne 0 constat(s), alors que -Fichiers, -Index et -Arbre en donnent 2.

3.2 Témoins A, B, C rejoués (dépôts neufs)

A : 9 constats en -Fichiers, -Index, -Arbre -Binaires, -Pointe (8 sans -Binaires), mêmes catégories qu'à la VAL précédente (NOM, PROFIL sous deux formes, PROFIL autre nom, MACHINE, ADRESSE, BINAIRE-NOM) ; cas admis 0 dans les 4 modes ; IDENTITE code 1 ; USERNAME vide, COMPUTERNAME vide, dépôt introuvable, ref inconnue : code 2. B : espaces, non ASCII, CRLF, majuscules, souligné, UTF-16, ++ : tous détectés. C : lignes de 20 000, 100 000 et 400 000 car. : code 0 en 0,8 à 1 s.

3.3 Critères sur le vrai dépôt

# Commande Compte brut Verdict
1 pwsh -NoProfile -File Tools\PubCheck.ps1 -Arbre ue5.8 (et avec -Binaires) PubCheck : 218 constat(s), code 1, 2,7 s ; 69 fichiers, 109 fichier:ligne, NOM=109, PROFIL=109, aucune catégorie CHEMIN ; identique avec -Binaires. git grep -c : 69 fichiers, 109 lignes ; git grep -o : 116 PASS : 218 inchangé, pas de faux positif des nouvelles catégories
5 USERNAME='' + -Arbre ue5.8 PubCheck : erreur : variable USERNAME vide, code 2 PASS
6 -Pointe ue5.8 -Distant origin HEAD a08c134 : 746 constats (NOM=374, PROFIL=372), code 1, 22 s. -Pointe f32df0d : 734, identique à l'ancien compte ; les 12 de plus viennent d'un seul blob introduit par a08c134. Aucune ligne CHEMIN, IDENTITE ni MESSAGE PASS (écart de compte expliqué)
7 <scratchpad>\hook-test.sh (même charge qu'avant) ue5.8 code 1 (22 s) ; pointe origin/main code 0 ; sha local zéros code 0 ; PATH sans pwsh code 1 ; LP_PUBCHECK absent code 1 PASS
8 Select-String -SimpleMatch compte et machine sur PUB3\ (10 fichiers dont les 2 livrables), PubCheck.ps1, pre-push compte : 0 ; machine : 0 PASS

4. Corrections de mon livrable précédent

PUB3-T6a-VAL.md réécrit en entier (un seul Write) : l. 58 et 89 reformulées sans exemple de chemin de profil ; « 16 s » retiré ; « (l. 15) » remplacé par « l. 15-16 » ; renvoi vers ce livrable ajouté. Son verdict FAIL reste historique ; il est levé ici.

5. Contrôles finaux mesurés

Commande : pwsh -NoProfile -File Tools\PubCheck.ps1 -Fichiers Docs/Migration/etat/AG/PUB3/PUB3-T6a-VAL.md Docs/Migration/etat/AG/PUB3/PUB3-T6a-bis-VAL.md Sortie : PubCheck : 0 constat(s), code 0 (mesuré avant la dernière réécriture de ce fichier, qui ne change que ce § 5 et le compte de tours ; le même contrôle est rejoué après, voir le compte rendu). Select-String -SimpleMatch compte et machine : 0 et 0.

6. Verdict et points à confirmer

Verdict global : PASS avec réserve D8. D1 à D7 : PASS. Critères 1, 5, 6, 7, 8 : PASS sur le vrai dépôt.

  • Extension de la SPEC (CHEMIN-NOM, CHEMIN-MACHINE, IDENTITE-NOM) : accepter ou retirer (aucun faux positif sur ue5.8).
  • D8 : corriger (tester tous les chemins d'un blob partagé) ou accepter ; le risque ne vaut que si un chemin fautif partage un blob.
  • Établi : tout le § 3 (rejoué aujourd'hui). Estimé : D8 limité aux blobs partagés (lecture de PubCheck.ps1:232-236). Incertain : client graphique sans pwsh ; push vers URL ; -Arbre origin/main (non rejoué).

Fichiers à commiter

A Docs/Migration/etat/AG/PUB3/PUB3-T6a-bis-VAL.md ; M (ou A) Docs/Migration/etat/AG/PUB3/PUB3-T6a-VAL.md (réécrit).

Tours : 20 / 30