[DTP-Worker] Sprint 8 · buffer L75 · Traçabilité non vérifiée : les n° de ligne roadmap_line de la matrice d'acceptation pouvaient pointer à côté en silence (roadmap éditée) → INV11 ancrage roadmap (dérive 8+7 du fichier · #6) + parse_roadmap_anchors + 6 tests ; régénéré 558→564

INV10 ne garantissait que « roadmap_line est un entier positif ». Ajout de
parse_roadmap_anchors (deps) qui DÉRIVE la structure réelle de la roadmap, et
d'INV11 qui exige que chaque roadmap_line pointe RÉELLEMENT son bullet
(DELIVERABLE du sprint SX · k-ième bullet métrique) et que le « 8 + 7 » soit
dérivé du fichier, pas figé. Morsure prouvée sur le spec réel (S1=999, M3=200).
Régénéré consommateurs : regression 558→564 (run/plan/MANIFEST), quality_report
(acceptance 31→37 méthodes, 100/100 inchangé), fiches QA + Backend, README
acceptance (10→11 invariants). 7 gates verts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Code DTP Worker
2026-07-31 06:12:15 +00:00
parent 11f1250b29
commit 25541c365d
11 changed files with 273 additions and 22 deletions
+6 -2
View File
@@ -43,7 +43,7 @@ qu'aucune promesse n'est silencieusement oubliée.
```bash
python3 acceptance_gen.py build # écrit out/acceptance_matrix.json + out/MANIFEST.json
python3 acceptance_gen.py validate # (re)génère en mémoire + valide (schéma + 10 invariants)
python3 acceptance_gen.py validate # (re)génère en mémoire + valide (schéma + 11 invariants)
python3 -m unittest discover -s tests -p 'test_*.py' -v
```
@@ -56,7 +56,7 @@ python3 -m unittest discover -s tests -p 'test_*.py' -v
Sortie **déterministe** (ordre du spec, listes triées, aucun horodatage).
## Invariants (10 familles)
## Invariants (11 familles)
1. ids uniques ; livrables S1..S8 + métriques M1..M7 ordonnés.
2. toute preuve module est **gated** (drapeau recalculé depuis le CI).
@@ -68,6 +68,10 @@ Sortie **déterministe** (ordre du spec, listes triées, aucun horodatage).
8. `mvp_metric` ⇒ sprint nul ; `sprint_deliverable` ⇒ sprint renseigné.
9. **SoD** : la matrice ne se cite jamais elle-même comme preuve.
10. `roadmap_line` entier positif.
11. **ancrage roadmap** : chaque `roadmap_line` pointe RÉELLEMENT son bullet dans
`04_roadmap/…` (n° DELIVERABLE du sprint SX · k-ième bullet métrique), et le
compte « 8 + 7 » est **dérivé du fichier roadmap**, pas figé — une promesse
ajoutée/retirée ou des lignes décalées rougissent au lieu de dériver en silence.
## Hors périmètre worker (#8)