[DTP-Worker 20260802_130548] Sprint 8 · buffer · Compte d'agents : ancrage des 3 surfaces vives de GAP_ANALYSIS_SPRINT1 (dont coche couverture DoD) sur n_agents
Balayage de complétude après cb8d931 (qui a ancré « 13 agents » aux 2 docs de
mandat de tête) : 3ᵉ surface HORS gate = le livrable Sprint 1 GAP_ANALYSIS_SPRINT1.md
(Definition of Done). Retranscrit le compte à 3 endroits vifs — périmètre d'audit
(l.12) · constat global total (l.53, le « 12 » analytique EXCLU) · coche de
couverture DoD (l.214). Prouvé ungate (grep ci/=0 ; mutation 13→14 laissait exit 0)
et à dérive prouvée (publiciste 12→13). Extension de la boucle head-docs existante
(3 tuples réutilisant n_agents = git ls-files 03_agents/*/AGENT.md · zéro nouvelle
machinerie · #5) ; on n'ancre que le total ; INTROUVABLE = échec (#6). ci/README.md
documente désormais 7 surfaces vives. 6 morsures (M5 no-false-positive sur le « 12 » ·
M6 SILENT-GREEN via git rm --cached prouvant l'autorité git-index). 7 gates exit 0.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+5
-1
@@ -124,7 +124,11 @@ docs d'entrée — `README.md` :
|
||||
- modules gated `N/M` à `K/100` + verdict `PASS` → `qa/audit_4big/out/quality_report.json` (`totals`) ;
|
||||
- `N` suites gated → `qa/regression/out/regression_plan.json` (`totals.suites`) ;
|
||||
- `N` promesses (`X` sprint + `Y` métriques), `Z` `in_repo`, verdict `true` → `qa/acceptance/out/acceptance_matrix.json` ;
|
||||
- « 13 agents » (×2 : nav + titre) → `git ls-files 03_agents/*/AGENT.md`.
|
||||
- « 13 agents » recompté depuis `git ls-files 03_agents/*/AGENT.md` (source unique)
|
||||
et exigé identique à **7 surfaces vives** : `README.md` ×2 (nav + titre) ·
|
||||
`AGENTS_EXISTING_ASSETS.md` (titre) · `02_master_prompt/MASTER_PROMPT_DTP_v2.md`
|
||||
(titre) · `GAP_ANALYSIS_SPRINT1.md` ×3 (périmètre d'audit · constat global *total*
|
||||
— le « 12 » analytique n'est PAS ancré · coche de couverture DoD).
|
||||
|
||||
Et la fiche QA `03_agents/qa/AGENT.md` (section « Verdict agrégé courant », qui se
|
||||
disait « jamais compté à la main » tout en portant un compte figé qui s'est périmé
|
||||
|
||||
@@ -226,12 +226,23 @@ else:
|
||||
# régression). Aucun gate ne les comparait à la réalité du disque. On réutilise
|
||||
# le `n_agents` DÉJÀ dérivé de `git ls-files 03_agents/*/AGENT.md` (source unique,
|
||||
# pas de nouvelle machinerie) et on exige que chaque doc cite exactement ce compte.
|
||||
# Le GAP_ANALYSIS_SPRINT1 (livrable Sprint 1, Definition of Done) retranscrit ce
|
||||
# même compte à TROIS surfaces vives non gatées : le périmètre d'audit (« audit des
|
||||
# N agents DTP »), le constat global (« … des N agents partent d'un socle existant »
|
||||
# — on n'ancre QUE le TOTAL, pas le « 12 » analytique des agents à socle existant),
|
||||
# et surtout la coche de couverture DoD (« Couverture N agents + OTOIA core ✅ »).
|
||||
# Cette coche AFFIRME une complétude courante : si un 14e agent était mandaté (comme
|
||||
# le publiciste le fut, 12→13), elle mentirait en silence. Même source unique n_agents.
|
||||
# ============================================================================
|
||||
GAP = "05_deliverables_mvp/GAP_ANALYSIS_SPRINT1.md"
|
||||
for path, pat, label in [
|
||||
("AGENTS_EXISTING_ASSETS.md",
|
||||
r"Mapping vers les (\d+) agents DTP", "Actifs existants · titre"),
|
||||
("02_master_prompt/MASTER_PROMPT_DTP_v2.md",
|
||||
r"Tes (\d+) agents spécialisés", "Master prompt · titre"),
|
||||
(GAP, r"audit des \*\*(\d+) agents DTP", "Gap analysis · périmètre d'audit"),
|
||||
(GAP, r"\d+ des (\d+) agents", "Gap analysis · constat global (total)"),
|
||||
(GAP, r"Couverture (\d+) agents", "Gap analysis · couverture DoD"),
|
||||
]:
|
||||
try:
|
||||
doc = re.sub(r"\s+", " ", open(path, encoding="utf-8").read())
|
||||
|
||||
Reference in New Issue
Block a user