[DTP-Worker 20260803_120715] Fix drift · surfaces sœurs 22→24 laissées par réconciliation 100714 dans prose gate-docs (ci/) · invariant général de-hardcodé + citations contenu fiche alignées 24/624
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -837,23 +837,23 @@ for path_f, suite_path, pat, label in PER_SUITE_HORS_TABLE:
|
||||
# Tous les blocs de comptes de tests précédents recomputent un compte de MÉTHODES
|
||||
# `def test_` (`auth[path]`). La table de livrables de la fiche DevOps porte, elle,
|
||||
# dans la cellule « Tests » de la ROW du pipeline CI (`.gitea/workflows/ci.yml` +
|
||||
# `ci/`), un compte d'une CLASSE tout autre : « 22 suites gated » — le nombre de
|
||||
# `ci/`), un compte d'une CLASSE tout autre : « 24 suites gated » — le nombre de
|
||||
# suites que la CI passe au crible, soit `regression_plan.totals.suites` (déjà chargé
|
||||
# dans `reg`, byte-gaté par check_artifacts · recompté à chaque build par la
|
||||
# découverte réelle des suites). Ce nombre est SAISI À LA MAIN dans la fiche et
|
||||
# NI row_re NI aucun bloc amont ne l'atteint : (a) row_re exige un lien d'ancre
|
||||
# `<mot>/…/README.md` vers une suite gatée ET une cellule ENTIER NU — or l'ancre ici
|
||||
# est `ci.yml`/`ci/` (pas un module de `auth`) ET la cellule porte le suffixe
|
||||
# « suites gated » ; (b) l'agrégat de la fiche QA (« 22 suites gated · 564 tests… »,
|
||||
# « suites gated » ; (b) l'agrégat de la fiche QA (« 24 suites gated · 624 tests… »,
|
||||
# gaté sur regression_run) est une SURFACE distincte (autre fiche, autre motif). La
|
||||
# MÊME valeur 22 vit donc à DEUX endroits — un seul était gaté. Ajouter/retirer un
|
||||
# MÊME valeur 24 vit donc à DEUX endroits — un seul était gaté. Ajouter/retirer un
|
||||
# module gated fait bouger `reg["suites"]` tandis que cette cellule DevOps rote en
|
||||
# silence : la doc d'identité de l'agent DevOps affirmerait un périmètre de couverture
|
||||
# CI faux (le « vert trompeur » que #6 interdit). Aucune suite tests/ (FONCTIONS, pas
|
||||
# la prose de fiche) ne l'attrape. On RECOMPUTE depuis `reg["suites"]` (source unique
|
||||
# déjà en portée · zéro duplication #6) et on exige que la cellule l'écrive EXACTEMENT.
|
||||
# Motif ANCRÉ sur le label de rôle « CI/CD Gitea Actions » de CETTE row → vise la
|
||||
# bonne cellule sans capter la valeur 22 de la fiche QA (autre fichier de toute façon).
|
||||
# bonne cellule sans capter la valeur 24 de la fiche QA (autre fichier de toute façon).
|
||||
# Claim absent = échec (traçabilité #6). Cohérence croisée : `reg["suites"]` ==
|
||||
# regression_run (len(suites)) — la source du compte de tests de la fiche QA — de sorte
|
||||
# qu'une divergence plan↔run (compte de suites) morde ici aussi.
|
||||
@@ -3165,8 +3165,8 @@ if dr_ph is not None:
|
||||
# trompeur, l'agent DevOps aurait sauté 2 modules. On RECOMPUTE #/responsable/
|
||||
# modules/deps depuis deploy_runbook.json (zéro duplication) et on exige que la table
|
||||
# les énonce EXACTEMENT. Identité d'ensemble : {ordres des lignes} == {ordres de
|
||||
# l'artefact} (aucune phase FANTÔME/MANQUANTE) ET l'UNION des cellules Modules == les
|
||||
# 22 modules de l'artefact (aucun module OUBLIÉ/en trop). La colonne « Phase » reste
|
||||
# l'artefact} (aucune phase FANTÔME/MANQUANTE) ET l'UNION des cellules Modules ==
|
||||
# l'ensemble des modules de l'artefact (aucun module OUBLIÉ/en trop). La colonne « Phase » reste
|
||||
# libre (paraphrase). Cohérences croisées en bonus (mordent un plan INTERNEMENT
|
||||
# incohérent) : ordres contigus 1..N sans doublon · responsable ∈ {worker, vps,
|
||||
# worker+vps} · toute dépendance pointe en ARRIÈRE (n° < n° de la phase ⇒ pas de
|
||||
|
||||
Reference in New Issue
Block a user