[DTP-Worker 20260803_060704] Sprint 3 · fix · Citation roadmap fantôme dans bancable (prose-facts-vs-numeric-drift)

Docstring bancable_gen.py:5 + bancable/README.md:5 attribuaient au fichier
ROADMAP_8_WEEKS_OR_LESS.md un libellé verbatim « 40_llm_outputs/ + rapports
bancables FR/EN/ES » ABSENT de la roadmap (grep = 0 occurrence). Le §Sprint 3
réel dit « Faisabilité Auto » → « génération 4 volets <1h ». Le libellé cité
vient des daily_reports (planif S3 du 2026-07-30), pas de la roadmap : citation
mal-attribuée (même classe que « regression_run.json non commité »).

Fix : §Sprint 3 cité fidèlement + volet financier bancable ré-attribué aux
daily_reports / Portail Bancables 4Big, avec mention « pas un texte roadmap ».
Consommateur qa/audit_4big/quality_report.json régénéré (README bancable
6103 → 6439 octets · verdict PASS 22/22 = 100/100 inchangé). Libellé fantôme
cité par aucun gate. run_ci.sh 30 PASS 0 FAIL. Zéro module, zéro gate (#5).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Code DTP Worker
2026-08-03 06:16:35 +00:00
parent 3d8ccb0249
commit 88d9955f90
4 changed files with 51 additions and 3 deletions
+41
View File
@@ -514,3 +514,44 @@ La docstring `.py` n'est lue en octets par aucun gate → pas d'autre consommate
**Gate-neutre.** `./run_ci.sh` → **30 PASS · 0 FAIL · 0 SKIP**. Zéro nouveau module,
zéro gate ajouté (#5) — la dérive était déjà couverte par les faits, seule la prose
mentait. Commit `89eb8e6`.
## Session `20260803_060704` · fix · Citation roadmap fantôme dans le module bancable (classe `prose-facts-vs-numeric-drift` · dérive doc-vs-roadmap)
**Contexte.** Repo tout-vert au démarrage (`run_ci.sh` 30 PASS / 0 FAIL). Sweep
docstring-vs-CODE des 20 générateurs `*_gen.py` (fichiers `out/` écrits vs docstring) :
**CLEAN** (les « manquants » sont tous des fichiers d'ENTRÉE — faux positifs). Chiffres
launch-readiness des `daily_reports` re-vérifiés contre artefacts : **exacts** (22/22 ·
569/569 · 15/15). README racine, publiciste (CLI 4 sous-commandes + lib), versions Expo
(runtime 51 vs cible rebuild 54), 13 agents : **tous cohérents**.
**Dérive trouvée (réelle · ungated · citation mal-attribuée).** Deux surfaces du module
`faisabilite/bancable` attribuaient au **fichier roadmap** un libellé **absent** de
`ROADMAP_8_WEEKS_OR_LESS.md` :
- `bancable_gen.py:5` (docstring) : « §Sprint 3 · **« 40_llm_outputs/ + rapports bancables
FR/EN/ES »** » présenté comme texte roadmap.
- `bancable/README.md:5` : « §Sprint 3 (**« `40_llm_outputs/` + rapports bancables
FR/EN/ES »**) ».
`grep` du fichier roadmap : **zéro occurrence** de `40_llm_outputs` / `rapports bancables`
/ `bancable` / `financier`. Le §Sprint 3 réel dit « **Faisabilité Auto** » → Faisabilité
« génération 4 volets <1h ». Le libellé cité provient en fait des **`daily_reports`**
(planification S3 du 2026-07-30 : « Ou Faisabilité S3 : `40_llm_outputs/` + rapports
bancables FR/EN/ES »), **pas** de la roadmap — une citation verbatim (`« … »`) pointant
vers la mauvaise source. Même classe que la dérive « regression_run.json non commité »
(prose-fact qui contredit sa source citée), appliquée à une **ancre roadmap**.
**Correctif.** Docstring + README réalignés : le §Sprint 3 est cité **fidèlement**
(« Faisabilité Auto » · « génération 4 volets <1h »), et le volet financier bancable
FR/EN/ES est ré-attribué à sa vraie source (planification S3 des `daily_reports`, exigée
par le **Portail Bancables 4Big**), avec mention explicite « **pas** un texte du fichier
roadmap ». Lien README ajouté vers `../../daily_reports`.
**Consommateur régénéré (`artifact-reproducibility-gate`).** L'édition du README a fait
dériver l'évidence DOC de `qa/audit_4big/out/quality_report.json` (bancable README
6103 → 6439 octets) → régénéré ; verdict **PASS · 22/22 = 100/100** inchangé (diff = 1
insertion / 1 suppression, la seule ligne octets). La docstring `.py` n'est lue en octets
par aucun gate → pas d'autre consommateur. Le libellé fantôme n'est cité par **aucun**
gate (`check_readme_claims` ne touche que les chiffres « Génération réelle » du bancable).
**Gate-neutre.** `./run_ci.sh` → **30 PASS · 0 FAIL · 0 SKIP**. Zéro nouveau module, zéro
gate ajouté (#5) — la dérive était une citation mal-sourcée, seule la prose mentait.
@@ -2,7 +2,11 @@
> Livrable **Faisabilité · Sprint 3** — roadmap
> [`ROADMAP_8_WEEKS_OR_LESS.md`](../../../04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md)
> §Sprint 3 (« `40_llm_outputs/` + rapports bancables FR/EN/ES »).
> §Sprint 3 « Faisabilité Auto » (Faisabilité → « génération 4 volets <1h »). Le volet
> **financier bancable FR/EN/ES** est la déclinaison S3 planifiée dans les
> [`daily_reports`](../../daily_reports) (« `40_llm_outputs/` + rapports bancables
> FR/EN/ES ») — un libellé de planification, **pas** un texte du fichier roadmap —
> exigée par le **Portail Bancables 4Big** (ci-dessous).
Remplit le répertoire `50_financier_bancable/` d'une data_room — jusqu'ici **vide**
(`.gitkeep` posé par le générateur 4 volets) — que le **Portail Bancables 4Big**
@@ -2,7 +2,10 @@
"""Générateur de dossier financier bancable trilingue FR/EN/ES · Sprint 3.
Livrable **Faisabilité · Sprint 3** (roadmap `04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md`
§Sprint 3 · « 40_llm_outputs/ + rapports bancables FR/EN/ES »). Remplit le
§Sprint 3 « Faisabilité Auto » → Faisabilité « génération 4 volets <1h » ; le volet
**financier bancable FR/EN/ES** est la déclinaison S3 planifiée dans les
`daily_reports` — « 40_llm_outputs/ + rapports bancables FR/EN/ES » — et exigée par le
Portail Bancables 4Big, non un libellé du fichier roadmap). Remplit le
répertoire `50_financier_bancable/` d'une data_room — jusqu'ici vide (`.gitkeep`)
— que le **Portail Bancables 4Big** (`PORTAIL_BANCABLES_4BIG.md`, variante 06
retenue par Michel) exige à l'étape 1 de son workflow de déploiement projet.
@@ -318,7 +318,7 @@
"criterion": "DOC",
"weight": 20,
"passed": true,
"evidence": "README.md (6103 octets)"
"evidence": "README.md (6439 octets)"
},
{
"criterion": "CONTRAT",