From 953e683be36ecee271e2909fff2c832c74e11d33 Mon Sep 17 00:00:00 2001 From: Claude Code DTP Worker Date: Mon, 3 Aug 2026 04:12:15 +0000 Subject: [PATCH] =?UTF-8?q?[DTP-Worker=2020260803=5F040643]=20Sprint=205?= =?UTF-8?q?=20=C2=B7=20fix=20=C2=B7=20D=C3=A9rive=20doc-vs-CODE=20Mobile?= =?UTF-8?q?=20:=20cmd=5Fbuild=20=C3=A9crit=205=20fichiers=20(store=5Flisti?= =?UTF-8?q?ng.json=20inclus)=20mais=20docstring=20app=5Fconfig=5Fgen.py=20?= =?UTF-8?q?=C2=AB=20les=204=20fichiers=20=C2=BB=20+=20glob=20README=20omet?= =?UTF-8?q?taient=20store=5Flisting=20=E2=86=92=20r=C3=A9align=C3=A9s=20su?= =?UTF-8?q?r=205.=20Consommateur=20qa/audit=5F4big/quality=5Freport.json?= =?UTF-8?q?=20r=C3=A9g=C3=A9n=C3=A9r=C3=A9=20(=C3=A9vidence=20DOC=20byte-c?= =?UTF-8?q?ount=20=C2=B7=20verdict=20PASS=2022/22=20inchang=C3=A9)=20?= =?UTF-8?q?=C2=B7=20run=5Fci.sh=2030=20PASS=200=20FAIL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 05_activity_log/2026-08-03.md | 44 +++++++++++++++++++ .../mobile/app_config/README.md | 2 +- .../mobile/app_config/app_config_gen.py | 2 +- .../qa/audit_4big/out/quality_report.json | 2 +- 4 files changed, 47 insertions(+), 3 deletions(-) diff --git a/05_activity_log/2026-08-03.md b/05_activity_log/2026-08-03.md index 3c645b4..d5a4361 100644 --- a/05_activity_log/2026-08-03.md +++ b/05_activity_log/2026-08-03.md @@ -351,3 +351,47 @@ contextes **cible/futur** (`eas build (Expo 54)`, items acceptance `out_of_scope **Vérifications.** `./run_ci.sh` → **30 PASS · 0 FAIL · 0 SKIP** (inchangé). **Zéro nouveau module · zéro gate ajouté (#5) · aucune logique de prod ni de gate touchée.** Aucune commande touchant au VPS (#8) · aucun `git clean` . + +## Session 040643 · Dérive doc-vs-CODE Mobile · `app_config_gen.py` + README (« 4 fichiers » → 5, `store_listing.json` omis) + +**Contexte.** `./run_ci.sh` au démarrage : **30 PASS · 0 FAIL · 0 SKIP**, arbre propre. +Roadmap intégralement couverte par des modules gatés+verts ; priorité recherchée : +tâche **fonctionnelle** in-repo (Michel · « commits fonctionnels »), périmètre worker +(repo seul · pas de VPS #8 · pas de nouveau module #5). Le dernier livrable touché +(commit `af84b21`, workflow `mobile-build.yml`) a orienté l'audit vers le module Mobile +`05_deliverables_mvp/mobile/app_config`. + +**Défaut trouvé (réel · classe [[docstring-vs-code-drift]], ungated).** Le générateur +`cmd_build` écrit **5** fichiers JSON (`app_config`, `eas_build`, `role_navigation`, +`store_listing`, `MANIFEST` — vérifié `app_config_gen.py:239-243`), mais **deux** +surfaces de doc décrivaient encore **4** — l'output `store_listing.json` (ajouté après +coup) y était omis : +- **`app_config_gen.py` l.20** (docstring, bloc « Sous-commandes ») : `build … -> écrit + les 4 fichiers ci-dessus` — alors que l'énumération **juste au-dessus** (l.11-17) liste + bien **5** fichiers, dont `store_listing.json` : incohérence **interne** au docstring, + off-by-one classique laissé par l'insertion tardive de la fiche store ; +- **`README.md` § Utilisation** : `# écrit out/{app_config,eas_build,role_navigation}.json + + MANIFEST.json` — `store_listing.json` **absent** du glob, alors que la § « Sorties » + du même README le documente déjà comme sortie produite. + +**Correctif (2 éditions chirurgicales, gate-neutres).** +- l.20 → `écrit les 5 fichiers ci-dessus` (aligné sur l'énumération l.11-17) ; +- README → `out/{app_config,eas_build,role_navigation,store_listing}.json + MANIFEST.json`. +- Sweep résiduel `grep « 4 fichiers » / « les 4 » / « role_navigation}.json » / « 3 + fichiers »` sur `05_deliverables_mvp/mobile/` + `03_agents/mobile/` → **0** autre + occurrence stale. La § « Sorties » (5 items) et « Résultat courant » du README étaient + déjà correctes. + +**Régénération du consommateur (obligatoire · [[artifact-reproducibility-gate]]).** +L'édition du README a fait dériver `qa/audit_4big/out/quality_report.json` (critère DOC : +évidence `README.md (4917 → 4931 octets)`). `python3 audit_4big_gen.py build` → verdict +**PASS · 22/22 modules ≥ 95 (min 100)** inchangé ; seul le byte-count évolue. `git diff` +du report = **1 insertion / 1 suppression** (l'octet-compte du README Mobile). + +**Sûreté du changement.** Aucun claim numérique gaté touché (le « 5 » du docstring n'est +pas re-dérivé par un gate de compte ; le glob README n'est pas un lien Markdown → hors +`check_docs`) ; aucun terme interdit ; aucune logique de prod ni de gate modifiée. + +**Vérifications.** `./run_ci.sh` → **30 PASS · 0 FAIL · 0 SKIP**. **Zéro nouveau module · +zéro gate ajouté (#5)** — pure correction de vérité-terrain doc-vs-CODE. Aucune commande +touchant au VPS (#8) · aucun `git clean` . diff --git a/05_deliverables_mvp/mobile/app_config/README.md b/05_deliverables_mvp/mobile/app_config/README.md index 7b47ab6..84b99d1 100644 --- a/05_deliverables_mvp/mobile/app_config/README.md +++ b/05_deliverables_mvp/mobile/app_config/README.md @@ -53,7 +53,7 @@ Publiciste (zéro `pip`). ## Utilisation ```bash -python3 app_config_gen.py build # écrit out/{app_config,eas_build,role_navigation}.json + MANIFEST.json +python3 app_config_gen.py build # écrit out/{app_config,eas_build,role_navigation,store_listing}.json + MANIFEST.json python3 app_config_gen.py validate # schéma + 15 invariants (sort en erreur sinon) python3 -m unittest discover -s tests -v ``` diff --git a/05_deliverables_mvp/mobile/app_config/app_config_gen.py b/05_deliverables_mvp/mobile/app_config/app_config_gen.py index b4989bf..26b0fba 100644 --- a/05_deliverables_mvp/mobile/app_config/app_config_gen.py +++ b/05_deliverables_mvp/mobile/app_config/app_config_gen.py @@ -17,7 +17,7 @@ en : - MANIFEST.json -> traçabilité (comptes, résumé par portail, marque, a_confirmer) Sous-commandes : - build [-o OUT] -> écrit les 4 fichiers ci-dessus + build [-o OUT] -> écrit les 5 fichiers ci-dessus validate [-o OUT] -> (re)génère en mémoire, valide vs mobile.schema.json + invariants Sortie déterministe (tri stable, aucun horodatage) -> diffable + re-générable. diff --git a/05_deliverables_mvp/qa/audit_4big/out/quality_report.json b/05_deliverables_mvp/qa/audit_4big/out/quality_report.json index 3797844..f96f4cd 100644 --- a/05_deliverables_mvp/qa/audit_4big/out/quality_report.json +++ b/05_deliverables_mvp/qa/audit_4big/out/quality_report.json @@ -606,7 +606,7 @@ "criterion": "DOC", "weight": 20, "passed": true, - "evidence": "README.md (4917 octets)" + "evidence": "README.md (4931 octets)" }, { "criterion": "CONTRAT",