LifePlay-Revival/Docs/Migration/etat/EVAL2/EVAL2-T3-INV.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

13 KiB

Fiche EVAL2-T3 — Niveau N1 — Modèle prévu haiku (lp-inventory) | utilisé claude-haiku-5-5 — Agent lp-inventory — Skills sk-protocol, sk-recount, lp-paths

EVAL2-T3-INV : CHG et ERR de P3, retard des journaux, délais décision vers livraison (2026-10-14)

Périmètre : jeu 5.8 (D:\Game\LifePlay-master 5.8), période P3 2026-10-11 05:30 → 2026-10-14 18:25:41 (UTC+2), coupure P3a / P3b 2026-10-13 12:07:16 (établie par l'orchestrateur EVAL2, remplace la valeur provisoire 10:00). Lecture seule ; écritures uniquement sous etat\EVAL2\.

Hors gabarit : le gabarit INV ne prévoit pas de section « Délais » ; les mesures 1 et 2 de la fiche sont rangées dans les sections 2 et 3.

1. Commandes exactes

  1. Copie du script de base (original intact) : cp "D:/Game/LifePlay-master 5.8/Docs/Migration/etat/EVAL/scripts/eval_journal.py" "D:/Game/LifePlay-master 5.8/Docs/Migration/etat/EVAL2/scripts/eval2_journal.py" (après mkdir -p des dossiers EVAL2/scripts et EVAL2/data). Ce cp a remplacé eval2_journal.py s'il existait déjà ; son ancien contenu n'a pas été relevé (voir § 4).
  2. Script paramétré, réécrit en entier par Write (pas d'Edit) : D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\scripts\eval2_journal.py.
  3. Exécution (le script écrit lui-même data/chg.csv, data/err.csv, data/decisions.csv, data/eval2_t3_sortie.txt) : python -I -X utf8 "D:/Game/LifePlay-master 5.8/Docs/Migration/etat/EVAL2/scripts/eval2_journal.py". Une première exécution (coupure provisoire 10:00) a été remplacée par celle-ci ; les fichiers de données sont ceux de la seconde.
  4. Commandes git lancées par le script (lecture seule) : git -C <dépôt> log --reverse -p --unified=0 --format=@@C@@%h %ad --date=iso -- Docs/Journal_Modifications.md Docs/Migration/Journal_Modifications.md (idem avec Docs/Registre_Erreurs.md et Docs/Migration/Registre_Erreurs.md pour les ERR) ; recoupement git -C <dépôt> log -S CHG-nnn --reverse --format=%h %ad --date=iso -- <journal> pour chaque CHG de P3. Écart à la fiche : la fiche prévoit --format=%ci ; le script emploie %ad --date=iso (même horodatage, autre commande).
  5. Contrôles par Grep (recomptage par une seconde méthode, sk-recount) : ^\| ERR-(089|09\d|1[0-3]\d) \|.*JOURNAUX sur Docs\Registre_Erreurs.md → 50 ; ^\| ERR-(089|09\d|1[0-3]\d) \|.*inscrit le 2026-10-14 → 50 ; ^\| ERR-(089|09\d|1[0-3]\d) \| → 50 ; ^\| CHG-(32[4-9]|3[34]\d) \|.*(?:2026-10-1[1-4]) sur Docs\Journal_Modifications.md → 26 ; 3af7324 dans EVAL2\data\chg.csv → 6 ; ,2026-10-14,2026-10-14,18:22,P3b,0,oui, dans EVAL2\data\err.csv → 50 ; b3ee785|0745917|1383710|1ed076a|1ae1575 dans EVAL2\data\chg.csv → 7.

2. Comptes bruts

Sortie du script (python -I -X utf8 ...), copiée telle quelle :

Periode P3 : 2026-10-11 05:30 -> 2026-10-14 18:25:41 ; coupure P3a / P3b (etablie) : 2026-10-13 12:07:16
Heures : P3a 54.62 ; P3b 30.31 ; P3 84.93
1. lignes CHG (Docs/Journal_Modifications.md) : 348 ; lignes ERR (Docs/Registre_Erreurs.md) : 138
2. brouillons JOURNAUX1 : CHG ['CHG-brouillons-2.md', 'CHG-brouillons.md'] ; ids '| CHG-nnn |' aucun ; ERR ['ERR-brouillons-2.md', 'ERR-brouillons.md'] ; ids '| ERR-nnn |' aucun
3. commits d'introduction (diff) : CHG 348/348 ; ERR 138/138
   CHG sans commit : aucun ; CHG de compte cumule != 1 : aucun
   ERR sans commit : aucun ; ERR de compte cumule != 1 : aucun
4. BOSS-JOURNAL : lignes datees (| 2026-) 462 ; avec heure 86 ; sans heure 376
   lignes par jour (P3) : {'2026-10-11': 79, '2026-10-12': 36, '2026-10-13': 111, '2026-10-14': 41}
   ids cites avec JOURNAL-LIBRE dans BOSS-JOURNAL : 45
5. CHG de P3 (commit d'introduction dans P3) : P3a 18 ; P3b 8 ; total 26
   CHG sans commit d'introduction : 0 ; CHG hors P3 : {'hors': 322}
   CHG par date declaree (2026-10-11 a 10-14) : 30 ; par commit dans P3 : 26
   dans la date declaree mais hors commit P3 : [('CHG-323', '2026-10-11', '2026-10-11 05:27'), ('CHG-322', '2026-10-11', '2026-10-11 00:10'), ('CHG-321', '2026-10-11', '2026-10-11 00:10'), ('CHG-320', '2026-10-11', '2026-10-11 00:10')]
   dans commit P3 mais date declaree hors 10-11 a 10-14 : aucun
6. recoupement git log -S (CHG de P3) : accord 26 / 26 ; desaccords aucun
7. debit CHG par sous-periode (entrees / heures) :
   P3a : 18 / 54.62 h = 0.33 par heure
   P3b : 8 / 30.31 h = 0.26 par heure
   P3 : 26 / 84.93 h = 0.31 par heure
8. CHG de P3, origine :
   P3a : marque de rattrapage 2 ; id dans brouillon 0 ; au fil de l'eau 16
   P3b : marque de rattrapage 1 ; id dans brouillon 0 ; au fil de l'eau 7
   P3 : marque de rattrapage 3 ; id dans brouillon 0 ; au fil de l'eau 23
9. retard des CHG de P3 (jour du commit d'introduction moins date declaree) :
   P3 total : n 26 ; mediane 0.0 j ; moyenne 0.04 j ; repartition (jours : nombre) [(0, 25), (1, 1)] ; >= 1 j : 1 ; >= 3 j : 0
   marque de rattrapage : n 3 ; mediane 0 j ; moyenne 0.00 j ; repartition (jours : nombre) [(0, 3)] ; >= 1 j : 0 ; >= 3 j : 0
   au fil de l'eau : n 23 ; mediane 0 j ; moyenne 0.04 j ; repartition (jours : nombre) [(0, 22), (1, 1)] ; >= 1 j : 1 ; >= 3 j : 0
   CHG de P3 depose dans BOSS-JOURNAL par JOURNAL-LIBRE : 16 ; ecart commit - JOURNAL-LIBRE (h) : aucun calculable (lignes JOURNAL-LIBRE sans heure)
11. plage CHG de P3 periode : min CHG-324, max CHG-349, entrees 26, attendu 26, trous 0
12. ERR de P3 (commit d'introduction dans P3) : P3a 0 ; P3b 50 ; total 50 ; sans commit 0
   ERR de P3 crees en rattrapage (marque JOURNAUX1/2) : 50 ; au fil de l'eau : 0
13. retard ERR de P3 (commit moins « inscrit le », jours) : n 50 ; mediane 0.0 j ; moyenne 0.00 j ; repartition (jours : nombre) [(0, 50)] ; >= 1 j : 0 ; >= 3 j : 0
   TOTAL (ERR par lot) | 0 | 50 | 50
   debit ERR : P3a 0.00 par heure ; P3b 1.65 par heure ; P3 0.59 par heure
15. decisions (lignes utilisateur, Objet ou Decision : approuv / decision / valide / GO) :
   lignes utilisateur au total : 76 ; decisions de P3 (2026-10-11 a 10-14) : 20
   statuts : {'decision sans heure': 13, 'complet (heures)': 2, 'sans livraison appariee': 4, 'sans jeton commun': 1}
   delai decision -> livraison, paires avec heures : n 2 ; mediane 3.50 h ; min 2.33 ; max 4.67
   delai en jours (toutes paires) : n 4 ; mediane 0.0 j ; repartition [(0, 4)]
18. chg.csv : lignes de donnees 26 ; attendu 26 ; OK
18. err.csv : lignes de donnees 50 ; attendu 50 ; OK
18. decisions.csv : lignes de donnees 20 ; attendu 20 ; OK

Commits d'introduction (data/chg.csv, data/err.csv) : 6 CHG (CHG-344 à CHG-349) et les 50 ERR (ERR-089 à ERR-138) sont introduits par le même commit 3af7324 (2026-10-14 18:22) ; 3 CHG (CHG-336, 337, 338) par b3ee785 (2026-10-13 08:26) ; 0745917 (CHG-343, 13:04), 1383710 (CHG-342, 12:35), 1ed076a (CHG-341, 10:34), 1ae1575 (CHG-340, 10:20) : un commit chacun.

Décisions de P3 (data/decisions.csv, liste complète à la section 17 du fichier brut data/eval2_t3_sortie.txt) : deux paires complètes en heures, COMMUN-8 (décision 10:53, livraison 13:13, 2.33 h) et COMMUN-11 (décision 13:15, livraison 17:55, 4.67 h). Les autres décisions de P3 n'ont pas d'heure (13) ou pas de livraison appariée (4) ou pas de jeton commun (1).

3. Écarts au compte attendu de la fiche

  • CHG de P3 : 26 (CHG-324 à CHG-349, plage complète, 0 trou). CHG-323 (commit 05:27 le 10-11, 3 minutes avant le début de P3) est exclu ; CHG-320 à 322 (00:10) aussi.
  • ERR de P3 : 50 (ERR-089 à ERR-138), tous introduits le 2026-10-14 18:22 ; aucun ERR de P3a. Le débit ERR de P3a (0) reflète un dépôt groupé, pas une absence de constats.
  • Le retard mesuré est nul par construction (voir § 4, point 1) : il ne mesure pas le retard du journal par rapport au fait.
  • Brouillons JOURNAUX1 : 0 identifiant CHG ou ERR numéroté (les brouillons portent CHG-XXX et ERR-XXX (Nxx)), donc le rattachement brouillon vers numéro n'est pas mesurable par le script.
  • Délais : la fiche attend une médiane ; elle repose sur 2 paires avec heure. Médiane 3.50 h, n = 2 : non significative.
  • Commande git : %ad --date=iso au lieu de %ci (voir § 1, point 4).

4. Établi / estimé / incertain

Établi :

  • Les 26 CHG de P3 et les 50 ERR de P3 sont présents dans leurs tableaux et leurs commits d'introduction (data/chg.csv, data/err.csv, Grep de contrôle § 1 point 5).
  • Les 50 lignes ERR-089 à ERR-138 portent « JOURNAUX » et « inscrit le 2026-10-14 » (Grep § 1 point 5).
  • Décisions et délais : 20 décisions de P3, 2 paires complètes (sortie du script § 2).
  • Coupure P3a / P3b : 2026-10-13 12:07:16, selon le message de l'orchestrateur (non vérifiable par ce rapport) ; avec elle, P3a = 54.62 h, P3b = 30.31 h.

Estimé :

  • Le retard réel fait → dépôt n'est pas mesuré : la colonne « Date » du journal (CHG) et « inscrit le » (ERR) valent le jour du dépôt dans 25 CHG sur 26 et dans 50 ERR sur 50. Ces dates sont donc des proxys du dépôt, pas du fait. Le CHG-329 (date déclarée 10-11, commit 10-12 22:37) est le seul retard d'un jour.
  • Borne haute pour les ERR : le brouillon etat/BOSS/JOURNAUX1/ERR-brouillons.md:2 (en-tête : « défauts constatés depuis le 2026-10-13 vers 13 h ») donne un fait au plus tôt le 2026-10-13 vers 13 h ; le dépôt groupé est 2026-10-14 18:22 : écart au plus tôt d'environ 29 h, estimé, non relevé ligne à ligne.
  • Rattrapage : CHG-344 à 349 introduits dans 3af7324 (groupe de JOURNAUX), CHG-347 à 349 nommés « JOURNAUX2 inséré » dans etat/BOSS/BOSS-JOURNAL.md l. 512 (ligne tronquée à l'affichage). Le compte « marque de rattrapage 3 » du script repose sur une expression large ; CHG-327 et CHG-330 y sont comptés sans lecture de leur ligne : faux positifs possibles. Le compte réel de CHG de rattrapage est donc incertain entre 3 et 9 (6 si CHG-344 à 346 sont des rattrapages).

Incertain :

  • Le retard CHG et ERR par rapport à la date du fait : non mesuré. Essai qui trancherait : extraire, pour chaque CHG et ERR, la date du livrable ou du BUILD-FIN cité dans la ligne (ou dans BOSS-JOURNAL l. des livraisons), puis recalculer retard = commit - fait.
  • Ecart commit - JOURNAL-LIBRE : aucun calculable, les lignes JOURNAL-LIBRE de BOSS-JOURNAL n'ont pas d'heure (16 CHG concernés). Essai : relever l'heure dans la transcription de la session qui a pris le jeton.
  • Décisions sans heure : 376 lignes du BOSS-JOURNAL sur 462 sans heure ; 13 des 20 décisions de P3 n'ont donc pas de délai. Essai : demander à la session BOSS d'ajouter l'heure, ou relever l'heure du message dans les transcriptions.
  • Appariement décision → livraison : par jeton commun (ex. COMMUN-8) et premier BUILD-FIN / commit / essai OK ultérieur ; 4 décisions sans livraison appariée et 1 sans jeton (l. 504). Le délai réel peut être plus long si la livraison porte un autre jeton.
  • Coupure : la sensibilité est établie par les heures de commit : CHG-339 (10:03), 340 (10:20), 341 (10:34), 342 (12:35) et 343 (13:04) ; une coupure entre 10:34 et 12:35 change P3a/P3b par 3 CHG (339 à 341) ou 2 CHG (342) ; avec 12:07:16, CHG-339 à 341 sont en P3a, 342 et 343 en P3b.
  • Sortie de Docs\Journal_Modifications.md : 348 lignes CHG et 138 lignes ERR, sans doublon (0 en double dans les tableaux).
  • Non mesuré : le contenu des décisions (approuvé, GO, etc.) n'a pas été lu un à un ; seule la présence du mot-clé est établie. Non mesuré aussi : la date du fait pour les 26 CHG.
  • eval2_journal.py : si un script de même nom existait avant le cp de l'étape 1, son contenu a été remplacé ; ce rapport ne peut pas dire ce qu'il contenait.

Fichiers écrits (chemins absolus) :

  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\scripts\eval2_journal.py
  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\data\chg.csv (26 lignes)
  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\data\err.csv (50 lignes)
  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\data\decisions.csv (20 lignes)
  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\data\eval2_t3_sortie.txt
  • D:\Game\LifePlay-master 5.8\Docs\Migration\etat\EVAL2\EVAL2-T3-INV.md (ce livrable)

Fichiers à commiter : sans objet (rôle INV ; aucun fichier suivi par git n'a été modifié). Les .md et .csv de etat\EVAL2\ sont suivis par git (.gitignore) : à confier au gardien seulement s'ils doivent survivre au lot.

Tours : 14 / 40 (décompte de l'agent, à confirmer par python -I Tools/FicheStats.py --lot EVAL2).

Constats

  1. Le dépôt des journaux est groupé : les 50 ERR de P3 et 6 CHG (344 à 349) entrent dans le journal par un seul commit (3af7324, 2026-10-14 18:22). Les CHG 336 à 338 par un seul commit (b3ee785, 2026-10-13 08:26). Un retard de dépôt ne peut donc se lire qu'en comparant le fait à ce commit, pas à la date déclarée.
  2. Débit CHG : 0.33 par heure en P3a (18 / 54.62 h), 0.26 en P3b (8 / 30.31 h). Débit ERR : 0 en P3a, 1.65 par heure en P3b (50 / 30.31 h), tous issus du dépôt groupé.
  3. Délais décision vers livraison : 2 paires complètes seulement (2.33 h et 4.67 h) ; 13 décisions de P3 sur 20 sans heure. Le délai médian n'est pas exploitable en l'état.
  4. Prochaine mesure utile : relever, pour les 26 CHG et 50 ERR, la date du fait (livrable ou BUILD-FIN cité) ; c'est la seule façon de chiffrer le retard réel des journaux, et elle ferait passer le retard de 0 à une valeur mesurée.

Suite : orchestrateur EVAL2 doit décider si T3 est clos avec les réserves de la section 4, ou si une fiche complémentaire relève les dates de fait ; état : mesures brutes et CSV écrits, retard vrai non mesuré.