[DTP-Worker] Sprint 8 · buffer L75 · Comptes vivants "551 tests" périmés DANS la machinerie CI (ci.yml + check_regression.sh + check_readme_claims.sh), non gatés → renvoi artefact (→558)
Même classe de vert-trompeur que ci/README.md (session 050007) mais dans le code des gates : 3 comptes vivants figés "22 suites · 551 tests · PASS" (matrice 534→551→558). L'ironie : le header de check_regression — le gate anti-péremption de la matrice — s'était lui-même périmé. Fix précédent 050007 : suppression de la surface de dérive (retrait du nombre figé → renvoi à regression_run.json), pas 551→558. Progressions historiques "534→551→558" conservées. 7 gates verts. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,64 @@
|
||||
# Activity Log · 2026-07-31 · Claude Code DTP
|
||||
|
||||
## Session `20260731_053011` · Buffer S8 · Comptes vivants « 551 tests » périmés DANS la machinerie CI elle-même (`.gitea/workflows/ci.yml` + `ci/check_regression.sh` + `ci/check_readme_claims.sh`) — non couverts par aucun gate
|
||||
|
||||
**Tâche** : **Sprint 8 · buffer L75** (DevOps CI/CD · QA régression). Roadmap
|
||||
fonctionnellement close (22/22 modules · **558** tests · 7 gates verts). Poursuite de
|
||||
la série anti-dérive (CLAUDE.md #6). Les sessions précédentes ont gaté les comptes vivants
|
||||
des **docs** d'entrée (README, fiches QA/Backend) puis nettoyé la **doc du CI** (`ci/README.md`,
|
||||
session `050007`). Recherche du même faux-vert **hors de ce périmètre** : audit `git grep '551'`
|
||||
repo-wide (pas seulement `*.md`) → la machinerie CI **opérationnelle** (workflow + headers de
|
||||
gates), qu'**aucun gate ne couvre**.
|
||||
|
||||
### Défauts trouvés — 3 comptes vivants « 551 » périmés (→ 558), dans le code des gates
|
||||
|
||||
- **`.gitea/workflows/ci.yml:67`** : le commentaire du job `check-regression` décrivait
|
||||
l'artefact commité comme « **22 suites · 551 tests · PASS**, cité dans toute la doc » —
|
||||
compte **vivant figé** périmé (matrice 534 → 551 → **558**).
|
||||
- **`ci/check_regression.sh:8`** (l'ironie, encore) : le **header du gate de fraîcheur de
|
||||
la matrice** — dont le rôle même est d'empêcher le compte agrégé de se périmer —
|
||||
s'illustrait par « totaux « **22 suites · 551 tests · verdict PASS** » cité partout ».
|
||||
Le gardien anti-péremption avait lui-même péri.
|
||||
- **`ci/check_readme_claims.sh:152`** : l'anecdote décrivant le défaut QA disait « … alors
|
||||
que **le run dit 22 / 551** » — présent de l'indicatif ⇒ prétention **vivante** du compte
|
||||
courant, désormais fausse (558). *(Le « 21 suites · 534 tests » de la même ligne est
|
||||
l'anecdote historique point-in-time du défaut corrigé — conservé.)*
|
||||
- **Pourquoi non gaté** : `check_readme_claims` ne couvre que README + fiches QA/Backend ;
|
||||
ces fichiers **mélangent** narratifs historiques figés volontaires (progression
|
||||
« 534 → 551 → 558 ») et comptes vivants — exactement le motif qui a laissé `ci/README.md`
|
||||
dériver (session `050007`).
|
||||
|
||||
### Fix (2 solutions · CLAUDE.md #4 — retenu : supprimer la surface de dérive · précédent `050007`)
|
||||
|
||||
Plutôt que réécrire 551→558 (qui re-dériverait au prochain ajout de suite), **retrait du
|
||||
nombre vivant figé** au profit d'un renvoi à l'artefact — « les totaux agrégés (suites · tests ·
|
||||
verdict) dont la doc dérive, **jamais figés en dur ici** ». Zéro nombre à périmer = **zéro
|
||||
surface de dérive**, structurellement plus fort qu'un gate sur de la prose (#6).
|
||||
- `ci.yml:67` & `check_regression.sh:8` : compte figé → renvoi descriptif à `regression_run.json`.
|
||||
- `check_readme_claims.sh:152` : « le run dit 22 / 551 » → « le run agrégé faisant autorité
|
||||
en disait déjà **davantage** (recompté ci-dessous, jamais figé ici) » — formulation
|
||||
identique à celle appliquée à `ci/README.md` en session `050007`. Le **534** point-in-time
|
||||
reste comme valeur du défaut.
|
||||
- *(Alt. écartée : étendre `check_readme_claims` à `ci.yml`/`ci/*.sh` — fragile, il faudrait
|
||||
distinguer chaque progression historique figée d'un compte vivant ; le retrait est plus fort.)*
|
||||
|
||||
### Preuves
|
||||
|
||||
| Contrôle | Résultat |
|
||||
|---|---|
|
||||
| `git grep '551'` hors logs/daily_reports/progression `534→551→558` | **aucun** compte vivant résiduel ✅ |
|
||||
| 7 gates (`guard`/`json`/`docs`/`artifacts`/`regression`/`ci_integrity`/`readme_claims`) | ✅ exit 0 |
|
||||
| `check_artifacts` (rebuild + égalité byte des `out/`) | ✅ (édition **hors** `05_deliverables_mvp` ⇒ 0 dérive d'artefact) |
|
||||
| `check_ci_integrity` (câblage `gate.needs` inchangé) | ✅ |
|
||||
| Diff | 3 fichiers · +9/−6 · 0 untracked |
|
||||
|
||||
**Hors périmètre worker (VPS · #8)** : néant (commentaires CI en-repo, aucun touch prod).
|
||||
**Anti-invention (#6)** : rien inventé — retrait de nombres figés, la vérité reste recomputée
|
||||
par les gates depuis `regression_run.json`.
|
||||
**Auto-score 4Big** : 96/100.
|
||||
|
||||
---
|
||||
|
||||
## Session `20260731_050007` · Buffer S8 · Chiffre vivant périmé DANS la doc du CI (`ci/README.md`) — le gate `check_regression` était illustré par un compte de tests faux, et `check_readme_claims` sous-décrit (2 docs au lieu de 3)
|
||||
|
||||
**Tâche** : **Sprint 8 · buffer L75** (DevOps CI/CD · QA régression). Roadmap
|
||||
|
||||
Reference in New Issue
Block a user