175 lines
20 KiB
Markdown
175 lines
20 KiB
Markdown
Fiche AMEL1-T0 — Niveau N2 — Modèle prévu Opus 5.5 | utilisé claude-opus-5-5 — Agent orchestrateur (session EVAL) — Skills aucun préchargé
|
||
# AMEL1-INDICATEURS : un indicateur mesurable par recommandation R1 à R14, mesure « avant » (P3) et mode opératoire « après » (2026-10-14)
|
||
|
||
**Demande de l'utilisateur** (2026-10-14, session EVAL) : « implémentons les recommandations pour chaque recommandation je
|
||
veux un indicateur mesurable. avec une mesure maintenant et après basé sur un mode opératoire net et complet ».
|
||
**Recommandations** : `etat\EVAL2\EVAL2-RAPPORT.md` § 4. **Valeurs « avant »** : `etat\EVAL2\EVAL2-STATS.md` et les relevés T1a à
|
||
T6 (période P3, 2026-10-11 05:30 → 2026-10-14 18:25:41).
|
||
|
||
---
|
||
|
||
## 1. Mode opératoire de la mesure (identique avant et après)
|
||
|
||
### 1.1 Périodes
|
||
|
||
| Période | Bornes | Rôle |
|
||
|---|---|---|
|
||
| **AVANT = P3** | 2026-10-11 05:30:00 → 2026-10-14 18:25:41 (UTC+2), coupure P3a/P3b 2026-10-13 12:07:16 | valeur de référence, déjà relevée (§ 2, colonne « Avant ») |
|
||
| **APRÈS = P4** | début : date du dernier commit d'AMEL1 (toutes les recommandations « en place ») ; fin : la première des deux bornes **72 h de calendrier** ou **30 h actives cumulées des sessions principales** ; au moins **5 builds** et **1 essai commun** dans la fenêtre, sinon la fenêtre est prolongée jusqu'à les atteindre | mesure de l'effet |
|
||
|
||
La période P4 ne commence pas avant que toutes les recommandations soient en place, sinon l'effet est mélangé. Une
|
||
recommandation non en place à P4 est mesurée quand même et notée « non en place » (sa valeur sert de témoin).
|
||
|
||
### 1.2 Commande unique
|
||
|
||
```
|
||
python -I -X utf8 Tools\Indicateurs.py --debut "AAAA-MM-JJ HH:MM:SS" --fin "AAAA-MM-JJ HH:MM:SS" --sortie Docs\Migration\etat\EVAL2\AMEL1\AMEL1-MESURE-<periode>.md
|
||
```
|
||
|
||
- Le script (`Tools\Indicateurs.py`, fiche AMEL1-M1) lance les relevés T1a à T6 d'EVAL2 sur la fenêtre donnée, avec les
|
||
mêmes définitions, et écrit **une ligne par indicateur** : valeur, numérateur, dénominateur, source, et la commande
|
||
de contrôle à rejouer à la main.
|
||
- **Contrôle de non-régression du script** : `--debut "2026-10-11 05:30:00" --fin "2026-10-14 18:25:41"` doit redonner
|
||
les valeurs « Avant » du § 2 (tolérance : ± 1 sur les comptes, ± 0,5 point sur les pourcentages ; écart plus grand =
|
||
script faux, la mesure P4 n'est pas faite).
|
||
- Session EVAL et ses sous-agents exclus, comme en EVAL et EVAL2. Métadonnées des sessions lues avec le chemin MSIX
|
||
(`%USERPROFILE%\AppData\Local\Packages\Claude_*\LocalCache\Roaming\Claude\claude-code-sessions`).
|
||
|
||
**`Tools/` n'est plus suivi par git** (décision de l'utilisateur du 2026-10-14 : « on gitignore Tools. c'est un dossier
|
||
pour Agent IA », CHG-357). `Tools\Indicateurs.py` et `Tools\EssaiJournal.*` vivent donc seulement sur le poste. Avant la
|
||
mesure P4, vérifier leur MD5 contre la référence (`Indicateurs.py` `42feceb7…` ; écart = rejouer d'abord le contrôle
|
||
sur P3 du § 1.2) ; copie des versions finales, hors git, dans `D:\Game\LifePlay_Backup_5.5\AMEL1-OUTILS\` (2026-10-14 :
|
||
`Indicateurs.py` `42feceb7…`, `EssaiJournal.ps1` `39d511f2…`, `EssaiJournal.regles.json` `a34e684b…`, `CopieEtat.ps1`
|
||
`a5298113…`, `FicheStats.py` `25938733…`).
|
||
|
||
**Transcriptions** (décision de l'utilisateur du 2026-10-14 : « Copier avant suppression ») : 4 sessions supprimées le
|
||
2026-10-14 ont emporté leurs transcriptions (P3 n'est plus rejouable à l'identique ; la référence « Avant » reste
|
||
`AMEL1-MESURE-P3.md`, figée). Copie complète faite le 2026-10-14 : `D:\Game\LifePlay_Backup_5.5\TRANSCRIPTIONS\complet\` (dossier d'abord nommé `2026-10-14\`, renommé pour servir de base à
|
||
`-Tout` ; premier `-Tout` incrémental : 8 copies, manifeste écrit)
|
||
(2 077 fichiers, 837 Mo). Avant toute suppression de session : `Tools\SauverTranscriptions.ps1 -Session <id>` ; avant la
|
||
mesure P4 : `-Tout`. **I15** : valeur « avant » retenue = **10,9** pour 100 appels shell (mesurée par l'outil sur les données
|
||
P3 restantes ; décision de l'utilisateur « 10,9 mesuré par l'outil ») ; cible ≤ 5,5.
|
||
|
||
### 1.3 Règles de lecture
|
||
|
||
- **Atteint** : la valeur P4 franchit la cible. **Amélioré** : elle va dans le bon sens sans franchir la cible.
|
||
**Sans effet** : écart inférieur à la tolérance. **Dégradé** : mauvais sens.
|
||
- Les valeurs P4 sont rapportées à la même unité que P3 (par heure active, par 100 appels, par commit) : P4 n'aura pas la
|
||
même durée ni le même type de travail. Le type de travail de P4 est décrit en tête de la mesure (lots, builds, essais).
|
||
- Biais déclaré : la session EVAL conçoit, met en œuvre et mesure ; la VAL de la mesure P4 est confiée à un
|
||
`lp-validator` indépendant (fiche AMEL1-V2).
|
||
|
||
---
|
||
|
||
## 2. Indicateurs
|
||
|
||
| Rec. | Indicateur | Formule exacte | Source (relevé, script) | **Avant (P3)** | Cible P4 | Tolérance |
|
||
|---|---|---|---|---|---|---|
|
||
| **R1** Recentrer Big Boss | **I1a** part de Big Boss dans tous les jetons lus | jetons lus des transcriptions Big Boss (`ebc15012`, `92a3927f` et suivantes, identifiées par `local_7f1c9fb1` dans les métadonnées) / jetons lus de toutes les principales et de tous les sous-agents | T1a `eval2_sessions.py`, T1b `eval2_subagents.py` | **20,4 %** (605,6 M / 2 970 M) | ≤ 15 % (clause D-P7.8) | ± 0,5 pt |
|
||
| | **I1b** part de Big Boss dans les heures actives | heures actives Big Boss / somme des heures actives des sessions principales | T1a | **36,1 %** (24,66 / 68,27 h) | ≤ 20 % | ± 1 pt |
|
||
| | **I1c** contexte médian des principales (E1, rotation) | médiane du contexte par tour, toutes principales | T1a | **295 k** | < 200 k (doc 33 § 7) | ± 5 k |
|
||
| **R2** Crochet v2 | **I2a** taux de refus à tort | refus opérationnels du crochet classés « à tort » (règle v2, `eval2_refus.py`) / refus opérationnels | T6 `eval2_commandes.py`, `eval2_refus.py` | **47 %** (36 / 76) | ≤ 10 % | ± 2 pts |
|
||
| | **I2b** cas adverses bloqués (sécurité conservée) | cas adverses de la batterie P7-H2 refusés par le crochet en place / cas adverses de la batterie | `etat\AG\P7\P7-H2*` (batterie `cas.jsonl`), rejouée par le script de test de P7-H2 | à mesurer en AMEL1-M1 sur le crochet actuel | 100 % | 0 |
|
||
| **R3** Contrôles en jeu automatiques | **I3** part des KO trouvés avant l'utilisateur | KO (cas KO, KO partiels et défauts hors fiche KO) dont le découvreur est « agent » ou « script » / tous les KO des essais communs de la période | T4 `eval2_commun.py` (`data\commun.csv`, colonne découvreur) | **12,5 %** (6 / 48 ; 9 / 48 = 18,8 % avec les mixtes) | ≥ 30 % | ± 2 pts |
|
||
| **R4** `lp-mcp-bp` en Sonnet (essai ORGA2) | **I4a** jetons lus par passage `lp-mcp-bp` | jetons lus des sous-agents `lp-mcp-bp*` / nombre de passages | T1b | **3,90 M** (144,2 M / 37) | ≤ 2,3 M (−40 %) | ± 0,1 M |
|
||
| | **I4b** temps d'éditeur par correctif (garde-fou ORGA2 § 6) | somme des durées éditeur des passages `lp-mcp-bp*` (premier → dernier appel MCP) / passages | T1b (horodatages des appels MCP) | à mesurer en AMEL1-M1 | ≤ valeur avant + 10 % | ± 5 % |
|
||
| **R5** Journal au fil de l'eau | **I5a** part des ERR consignées en rattrapage | ERR de la période dont la ligne porte « JOURNAUX » ou dont l'écart date du fait → date d'inscription dépasse 24 h / ERR de la période | T3 `eval2_journal.py` | **100 %** (50 / 50) | ≤ 10 % | 0 |
|
||
| | **I5b** plus long intervalle sans écriture de journal pendant l'activité | plus grand écart entre deux écritures successives d'un CHG, d'un ERR ou d'un brouillon `*-JOURNAL-BROUILLON.md` (dates de commit et dates de modification), borné aux heures actives | T3 + dates des brouillons | **≈ 29 h** (CHG-343, 10-13 13:04 → `3af7324`, 10-14 18:22) | < 4 h | ± 0,5 h |
|
||
| **R6** PubCheck dès la fiche | **I6** refus de commit pour fuite (nom de compte, chemin machine) pour 100 commits | (refus PubCheck + refus du gardien pour nom de compte, lus dans `etat\REPO\REPO-JOURNAL.md`) × 100 / commits de la période | T2 `eval2_commits.py` (`data\tickets.csv`) | **12,2** (6 / 49) | 0 | 0 |
|
||
| **R7** Consignes de shell | **I7a** refus que les agents se causent eux-mêmes, pour 1 000 appels shell des sous-agents | refus du crochet sur `python -c`, heredoc Python, `tee` par un agent dont la fiche les interdit × 1 000 / appels Bash + PowerShell des sous-agents | T6 | numérateur **14** (T6) ; dénominateur à mesurer en AMEL1-M1 (appels shell des seuls sous-agents) ; borne basse 2,4 ‰ si rapporté aux 5 910 appels de toutes les sessions | ≤ 1 ‰ | ± 0,5 ‰ |
|
||
| | **I7b** erreurs de guillemets et d'échappement pour 1 000 appels shell | erreurs classées « guillemets / échappement » × 1 000 / appels Bash + PowerShell (tous) | T6 § 2.8 | **4,4 ‰** (26 / 5 910) | ≤ 2 ‰ | ± 0,5 ‰ |
|
||
| **R8** VAL « témoin en jeu » | **I8a** part des VAL PASS-STATIC de comportement qui nomment leur cas de fiche de tests | VAL PASS-STATIC dont le livrable cite un cas `COMMUN-n` / VAL PASS-STATIC d'un correctif de comportement | T5 `eval2_val.py` (`data\val.csv`) | à mesurer en AMEL1-M1 (estimé ≈ 0 %) | ≥ 90 % | ± 5 pts |
|
||
| | **I8b** PASS (ou PASS-STATIC) suivis d'un KO en jeu sur le même cas | compte | T5 × T4 | **4** (S-F5m, B2p-E, B2q-a, B2s) pour 70 PASS / PASS-STATIC = **5,7 %** | ≤ 2 % | ± 1 cas |
|
||
| **R9** Fiches `lp-cart` plus étroites | **I9** taux de hors budget `lp-cart` | passages `lp-cart` hors budget (tours ou pic, critère EVAL) / passages `lp-cart` | T1b | **79 %** (11 / 14) | ≤ 40 % | ± 5 pts |
|
||
| **R10** Outils de copie, contrôle d'instantané | **I10a** part des contrôles faits par les outils | appels `CopieEtat` + `GitEtat` / (ces appels + `git status` + calculs d'empreinte improvisés) | T6 familles `a.*`, `c.git-status`, § 2.9 | **4,0 %** (66 / 1 655) | ≥ 30 % | ± 1 pt |
|
||
| | **I10b** écritures sans instantané préalable | relevés « instantané manquant » (cas distincts) | T5 `data\ecarts.csv` | **3 cas distincts** (7 relevés) | 0 | 0 |
|
||
| **R11** Registres et BOSS-JOURNAL horodatés | **I11a** lignes du BOSS-JOURNAL avec heure | lignes de la période avec `HH:MM` / lignes de la période | T3 | **18,6 %** (86 / 462) | ≥ 90 % | ± 2 pts |
|
||
| | **I11b** livrables de rôle avec ligne `Tours` | livrables de rôle avec `Tours :` / livrables de rôle | T5 | **68,6 %** | ≥ 95 % | ± 2 pts |
|
||
| **R12** Sessions renommées au lot servi | **I12** sessions dont le titre dans l'application ne correspond pas au lot servi | sessions principales actives dont le titre de l'application ≠ titre de la transcription / lot servi (table `data\lots.csv` vs `lots_transcription.csv`) | T1a | **3** sur 25 (ARCH427 et TRACE1 sous « STG », PUB3 sous « REL ») | 0 | 0 |
|
||
| **R13** Pièges de poste versés | **I13** fiches `lp-inventory` reprises pour une cause d'environnement ou de consigne de shell | fiches `lp-inventory` reprises ou arrêtées par un refus ou un piège de poste / fiches `lp-inventory` | registres de lot, T1b | **3 / 7** dans EVAL2 (T1a, T4, T6), 43 % | 0 | 0 |
|
||
| **R14** Budget de tours du build | **I14** passages `lp-builder` au-delà du budget de tours de leur fiche | passages dont les tours mesurés dépassent le budget déclaré / passages `lp-builder` | T1b § 2.6 | **1 / 32** (3 %) | 0 | 0 |
|
||
|
||
### 2.1 Valeurs « Avant » de référence, figées par l'outil (AMEL1-M1, 2026-10-14)
|
||
|
||
La comparaison avant / après se fait **entre deux sorties du même outil** : la référence « Avant » est
|
||
`AMEL1-MESURE-P3.md`, produite par `Tools\Indicateurs.py` sur P3 (MD5 de l'outil `f6703323…`, 50 lignes sur 53 dans la
|
||
tolérance du tableau ci-dessus). Les valeurs du tableau ci-dessus restent la trace de la lecture manuelle. Là où les deux
|
||
diffèrent, l'outil fait foi (décision de l'orchestrateur), parce que la mesure P4 sera faite par lui :
|
||
|
||
| Ind. | Lecture manuelle | **Avant de référence (outil)** | Cause de l'écart |
|
||
|---|---|---|---|
|
||
| I2b | à mesurer | **88,5 %** (154 / 174 cas adverses refusés ; `cas.jsonl` de P7-H2 seul : 32 / 35) | mesuré |
|
||
| I4b | à mesurer | **3,4 min** par passage `lp-mcp-bp` (127,5 min / 37) | mesuré |
|
||
| I7a | numérateur 14 | **5,9 ‰** (14 / 2 370 appels shell des sous-agents) | mesuré |
|
||
| I8a | à mesurer | **2,9 %** (1 / 34 VAL PASS-STATIC citent un cas `COMMUN-n` précis) | critère strict retenu, conforme au texte R8 approuvé (« nomme le cas ») ; critère large (mention d'un essai en jeu) : 88,2 %, non retenu |
|
||
| I8b | 4 / 70 = 5,7 % | **5,8 %** (4 / 69) | retouche en bloc filtrée |
|
||
| I11a | 18,6 % (86 / 462, fichier entier) | **19,0 %** (51 / 268 lignes de la fenêtre) | fenêtre P3 seule ; le fichier entier donne 18,8 % (87 / 463, une ligne ajoutée depuis) |
|
||
| I12 | 3 sessions | **5 / 25** | relevé automatique complet (lecture manuelle partielle) |
|
||
| I13 | 3 / 7 (lot EVAL2) | **2 / 7** dans P3 | le 3 / 7 portait sur le lot EVAL2, hors fenêtre et session exclue |
|
||
| I14 | 1 / 32 | **2 / 32** | GEL1-D1 (19 tours pour 15 déclarés) aussi au-delà |
|
||
| **I15** (R7 / OUTIL1) | — (indicateur ajouté par OUTIL1-D1, 2026-10-14) | **10,9 pour 100 appels shell** (465 / 4 281 ; principales 320, sous-agents 145) | mesuré sur les données P3 **restantes** : 4 sessions « STG » et leurs 66 sous-agents ont été supprimés de `~/.claude/projects` après P3 ; à données complètes, la définition T6 (lancements de scripts écrits dans `Tools\` inclus) donnait 723 / 5 910 = 12,2 (957 appels `h.*` moins 234 `Write`, T6-INV § 2.8). **Cible proposée : −50 %** |
|
||
|
||
Définitions fixées par l'outil et retenues (décision de l'orchestrateur, à appliquer à l'identique en P4) :
|
||
- **I5b** : intervalles comptés seulement pendant l'activité (heures où les sessions principales cumulent au moins 25 %
|
||
d'activité) ; sans ce filtre, 39,2 h.
|
||
- **I6** : un refus = une opération du `REPO-JOURNAL.md` qui commence par « COMMIT refus » (les lignes de reprise qui
|
||
rappellent un refus ne comptent pas).
|
||
- **I8b** : les retouches en bloc (≥ 20 fichiers à la même seconde) sont exclues ; les liens VAL → KO viennent d'une table
|
||
saisie (`--liens-val-ko`).
|
||
- **I10b** : un « cas distinct » = un lot.
|
||
- **I15** : appels Bash et PowerShell (principales et sous-agents) portant une des familles T6 `h.python-heredoc`, `h.python-pipe-stdin`,
|
||
`h.python-c` (plus de 200 caractères) ou le lancement d'un script écrit par `Write` hors `Tools\` dans la même transcription, pour
|
||
100 appels shell ; ventilé par lot (titre de la transcription, à défaut celui de l'application). Détail : `OUTIL1-D1-MESURE-P3.md`.
|
||
- **Attention, rejeu de P3 après suppression de données** : les transcriptions de 4 sessions « STG » (dont celle de 902 tours) et de 66
|
||
sous-agents (114,9 M de jetons lus) ont disparu de `~/.claude/projects` depuis la mesure d'origine. Un rejeu de P3 ne redonne plus les
|
||
valeurs de ce tableau pour les indicateurs fondés sur les transcriptions (I1, I2a, I4, I7, I10a, I12 à I14, G-a, G-b) ni, à cause des journaux
|
||
vivants et du crochet v2, pour I2b, I6, I11a. `AMEL1-MESURE-P3.md` n'a donc **pas** été réécrit : il reste la référence « Avant ». Le rejeu
|
||
actuel est dans `OUTIL1\OUTIL1-D1-MESURE-P3.md` (même outil, mêmes lignes sauf I15). La non-régression de l'outil se prouve en rejouant
|
||
l'ancienne et la nouvelle version sur les mêmes données (sortie identique pour les 27 indicateurs).
|
||
|
||
**Données saisies nécessaires à la mesure P4** (sinon l'indicateur sort « non mesurable » et le code est 1) : `--commun-csv`
|
||
et `--builds-csv` (I3, G-c, G-d), `--ecarts-csv` (I10b), `--liens-val-ko` (I8b). Elles sont tirées des bilans d'essai écrits au
|
||
gabarit BILAN (colonne découvreur, heures) par une fiche `lp-writer` AMEL1-P4a, juste avant la mesure, au format des CSV
|
||
d'EVAL2 (`etat\EVAL2\data\commun.csv`, `builds.csv`, `ecarts.csv`). Après le 2026-10-25 (heure d'hiver) : `--decalage-utc 1`.
|
||
|
||
**Indicateurs de résultat global** (ne mesurent pas une recommandation seule, ils suivent l'effet d'ensemble) :
|
||
|
||
| Indicateur | Avant (P3) | Cible P4 |
|
||
|---|---|---|
|
||
| G-a jetons lus par CHG + ERR | 39 M | ≤ 30 M |
|
||
| G-b part des appels faite par les sous-agents | 57 % | > 70 % (doc 33 § 7) |
|
||
| G-c délai fin d'essai → exe suivant (médiane) | 53 min | ≤ 53 min (ne pas ralentir) |
|
||
| G-d KO par essai commun | 19 KO + KO partiels / 13 builds = 1,46 | baisse |
|
||
|
||
---
|
||
|
||
## 3. Mise en œuvre (lot AMEL1)
|
||
|
||
Chaque recommandation devient une fiche, avec instantané (`Tools\Snapshot.ps1 -Lot AMEL1-<n>`) avant toute écriture,
|
||
livrable dans `etat\EVAL2\AMEL1\`, et commit par le gardien sur ticket. Les textes de skills et de règles sont soumis à
|
||
l'utilisateur avant le ticket (usage du projet, « approuvé tel quel »).
|
||
|
||
| Fiche | Rec. | Contenu | Où | Agent | Dépend de | Décision préalable |
|
||
|---|---|---|---|---|---|---|
|
||
| AMEL1-M1 | toutes | `Tools\Indicateurs.py` : scripts EVAL2 paramétrés (`--debut`, `--fin`, `--coupure`), calcul des 14 indicateurs ; contrôle sur P3 ; mesure des « avant » manquants (I2b, I4b, I7a, I8a) | jeu `Tools\` | `lp-impl` (sonnet) | — | — |
|
||
| AMEL1-R1 | R1, F1, F6 | règle « Big Boss = file UE, arbitrages, GO » ; gabarits fiche de tests et bilan d'essai tenus par un `lp-writer` ; rotation à 250 k et à chaque FIN-LOT pour toutes les sessions | addon : `lp-lot`, `lp-doc/gabarits.md` ; doc 32 § 15.9 | `lp-writer` | — | F1 = a, F6 = a |
|
||
| AMEL1-R2 | R2, F2 | crochet v2 : motifs cherchés hors texte cité, écriture permise dans le scratchpad et `%TEMP%`, crochet lu depuis le profil seulement ; batterie de cas (P7-H2 + 36 cas « à tort » de P3) | profil `%USERPROFILE%\.claude\hooks\`, copie versionnée addon | `lp-impl` (opus) + `lp-validator` | M1 (I2b avant) | F2 = a |
|
||
| AMEL1-R3 | R3, F3 | `Tools\EssaiJournal.ps1` : relecture du journal de jeu par cas de la fiche de tests (PASS / FAIL), lancé par le builder avant la remise | jeu `Tools\` | `lp-impl` (sonnet) | — | F3 = a |
|
||
| AMEL1-R4 | R4, F4 | essai ORGA2 § 5 (agent `lp-mcp-bp-s` en Sonnet, gabarit SPEC-MCP, script de relecture) | addon agents et skills | session ORGA2 | après le 2026-10-18 (ORGA2) | F4 = a |
|
||
| AMEL1-R5 | R5 | règle « brouillon `<LOT>-JOURNAL-BROUILLON.md` à chaque BUILD-FIN et à chaque KO » | `lp-lot`, `lp-doc` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R6 | R6 | `PubCheck.ps1` dans la VAL et le BUILD-FIN | `lp-validate`, `lp-lot` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R7 | R7, R13 | consignes de shell et pièges de poste (MSIX, `ls-remote`, test d'interpréteur) | `sk-windows-shell`, `lp-paths`, agent `lp-inventory` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R8 | R8 | règle « VAL témoin en jeu » | `lp-validate` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R9 | R9 | rappel « une question, liste fermée » en tête de toute fiche `lp-cart`, et modèle de l'en-tête de l'agent respecté | `sk-orchestrate` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R10 | R10 | `CopieEtat.ps1` : avertissement si aucun instantané du lot depuis le GO ; outils nommés dans le gabarit de fiche | jeu `Tools\`, `lp-lot` | `lp-impl` (sonnet) | — | F5 = a |
|
||
| AMEL1-R11 | R11, R12 | horodatage obligatoire du BOSS-JOURNAL, colonnes Tours et statut dans les registres ; renommage des sessions au lot servi | `lp-doc`, `lp-lot`, doc 32 § 15 | `lp-writer` | — | F5 = a |
|
||
| AMEL1-R13 | R13 | `FicheStats.py` : `lp-mcp-bp`, `lp-diag`, `lp-cart-max` dans `AGENTS_N3` | jeu `Tools\` | `lp-impl` (sonnet) | — | — |
|
||
| AMEL1-R14 | R14 | budget 60 tours pour un build dont la chaîne de vérification dépasse 50 étapes | `lp-build`, agent `lp-builder` | `lp-writer` | — | F5 = a |
|
||
| AMEL1-V1 | — | VAL de chaque fiche (diff, LF, PubCheck, critère de la fiche) | — | `lp-validator` | chaque fiche | — |
|
||
| AMEL1-P4 | toutes | mesure P4 par `Tools\Indicateurs.py`, tableau avant / après | `etat\EVAL2\AMEL1\AMEL1-MESURE-P4.md` | orchestrateur | toutes en place + fenêtre P4 | — |
|
||
| AMEL1-V2 | — | VAL indépendante de la mesure P4 | — | `lp-validator` | P4 | — |
|
||
|
||
Coordination : Big Boss tient le jeton du journal, les numéros CHG et les tickets du gardien ; R1 change son propre rôle et
|
||
lui est soumis en même temps qu'à l'utilisateur.
|
||
|
||
Tours : sans objet (fiche de l'orchestrateur)
|