From e786c128b2f2eb60a9490bcf01052e472521a62a Mon Sep 17 00:00:00 2001 From: Claude Code DTP Worker Date: Thu, 6 Aug 2026 05:49:28 +0000 Subject: [PATCH] =?UTF-8?q?[DTP-Worker=2020260806=5F054454]=20FIX=20doc=20?= =?UTF-8?q?=E2=80=94=20lien=20Markdown=20label=E2=86=94cible=20incoh=C3=A9?= =?UTF-8?q?rent=20dans=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Axe NEUF (absent mémoire): liens `[`label`](cible)` où le label code-span est un chemin de fichier EXISTANT dont le basename diffère de la cible href. check_docs prouve que la cible résout, jamais que le label la désigne — un Cmd-clic sur `ci/guard_constraints.sh` atterrissait sur `ci/README.md` (mauvais fichier). Balayage git ls-files '*.md' → 3 occurrences, toutes README.md (L54 x2 + L75). Les scripts nommés existent + sont git-trackés (gates) ⇒ FIX = pointer chaque label vers le fichier qu'il nomme. label==cible, navigation véridique, check_docs toujours vert. Re-balayage mismatch → 0. Axe éliminé au passage (CLEAN, non re-flaggé): chemins-fantômes backtick — 2 survivants = faux positifs (label de lien à vraie cible · résolution sous-arbre confotur/cflib). run_ci = 33 PASS · 0 FAIL · 0 SKIP. 0 gate (#5, origine isolée), 0 artefact rebuild, 0 chiffre inventé (#6), 0 VPS (#8). Co-Authored-By: Claude Opus 4.8 (1M context) --- 05_activity_log/2026-08-06.md | 36 +++++++++++++++++++++++++++++++++++ README.md | 4 ++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/05_activity_log/2026-08-06.md b/05_activity_log/2026-08-06.md index a259409..7d6aeec 100644 --- a/05_activity_log/2026-08-06.md +++ b/05_activity_log/2026-08-06.md @@ -1,5 +1,41 @@ # Activity Log · 2026-08-06 · Claude Code DTP Worker +## Session `20260806_054454` — FIX doc · lien Markdown label↔cible incohérent (label = chemin de fichier, href pointant ailleurs) → 3 corrigés + +**Choix de tâche.** `./run_ci.sh` au démarrage = **33 PASS · 0 FAIL · 0 SKIP**, arbre propre, +roadmap intégralement livrée/gatée. Les **6+ derniers commits** sont des sweeps vérification-only +(`0 édition`) — rendement décroissant, du churn. Objectif : trouver un **défaut réel actionnable** +sur un axe **non couvert** par la mémoire, sinon améliorer une doc (fallback). + +**Axe éliminé (CLEAN, non re-flaggé).** Chasse aux **chemins-fantômes dans les code-spans backtick** +(classe `backtick-path-escapes-check-docs` — les backticks neutralisent le link-check). Résolution +contre racine dépôt **+ racine deliverables + sous-arbres modules**, en excluant les snapshots +historiques (`05_activity_log/`, `daily_reports/`), les globs `*/AGENT.md` et les chemins +runtime/VPS (`otoia/`, `out/`, `vente.otov7.com`). Les 2 candidats survivants +(`crm/commissions/README.md` `banclib/finance.py` · `onapi_legal/AGENT.md` `cflib/*.py`) sont des +**faux positifs** : le premier est un **label** de lien dont la vraie cible +`../../faisabilite/bancable/banclib/finance.py` **existe** ; le second résout sous +`legal/confotur/cflib/`. → dimension **CLEAN**, mémoire confirmée. + +**Axe NEUF (absent de la mémoire) → défaut réel.** Liens Markdown de la forme `[`label`](cible)` +où le **label** (code-span) est un **chemin de fichier existant** mais dont le **basename diffère** +de celui de la **cible** href. `check_docs` prouve que la cible **résout**, **jamais** que le label +la **désigne** : un lecteur qui Cmd-clique `ci/guard_constraints.sh` atterrit sur `ci/README.md` +(mauvais fichier). Balayage `git ls-files '*.md'` → **3 occurrences**, toutes dans `README.md` : +- L54 `[`ci/guard_constraints.sh`](ci/README.md)` et `[`ci/check_docs.sh`](ci/README.md)` +- L75 `[`ci/guard_constraints.sh`](ci/README.md)` + +Les scripts nommés **existent et sont git-trackés** (ce sont des gates) ⇒ **FIX** = pointer chaque +label vers le fichier qu'il **nomme** (`ci/guard_constraints.sh` / `ci/check_docs.sh`). Résultat : +label == cible, navigation véridique, `check_docs` toujours vert (les cibles existent). + +**Vérif.** Cibles existent ✓ · re-balayage mismatch → **0** · `ci/check_docs.sh` **PASS** · +`./run_ci.sh` = **33 PASS · 0 FAIL · 0 SKIP**. + +**Portée / anti-churn.** Édité : `README.md` (3 href) + ce journal. **0 artefact reconstruit**, +**0 gate ajouté** (#5 — origine isolée, pas une classe récurrente, cf. `confotur 8-négatifs`), +**0 chiffre inventé** (#6), **0 VPS** (#8). Structure du gate inchangée (33 checks). + ## Session `20260806_051453` — VÉRIF indépendante · NOUVELLE famille objective « portabilité runtime / intégrité d'encodage » (3 axes neufs) → CLEAN · 0 édition de production **Choix de tâche.** `./run_ci.sh` au démarrage = **33 PASS · 0 FAIL · 0 SKIP**, arbre propre. diff --git a/README.md b/README.md index 4ce20d1..22ae8ea 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ Transverses : [`devops`](03_agents/devops/AGENT.md) · [`qa`](03_agents/qa/AGENT - **Recette roadmap** : **15 promesses** (8 livrables sprint + 7 métriques MVP), **15 `in_repo` prouvées** (chacune traçant ses items hors-périmètre worker · #8 · ex. M5 « app publiée 2 stores »), verdict `true` — source [`qa/acceptance/out/acceptance_matrix.json`](05_deliverables_mvp/qa/acceptance/out/acceptance_matrix.json). -- **Guards** : [`ci/guard_constraints.sh`](ci/README.md) + [`ci/check_docs.sh`](ci/README.md) verts. +- **Guards** : [`ci/guard_constraints.sh`](ci/guard_constraints.sh) + [`ci/check_docs.sh`](ci/check_docs.sh) verts. - **Décisions produit ouvertes** : la CI dépôt verte n'implique pas *zéro décision en attente*. Les arbitrages de **périmètre produit** et les **dépendances runtime hors dépôt** (VPS · #8) qui appartiennent à Michel sont consolidés, sourcés `file:line`, dans @@ -72,7 +72,7 @@ Les fichiers `DIRECTIVE_*.md` à la racine sont les **input-specs formels et dat Michel** : des snapshots de gouvernance (au même titre que les `daily_reports`) qui pilotent les modules. Ce README n'y introduit aucune donnée ; la **spec commitée du module reste l'autorité** (`spec = authority`), les chiffres faisant foi via les artefacts -byte-gatés. Ils sont exclus de [`ci/guard_constraints.sh`](ci/README.md) (prose de +byte-gatés. Ils sont exclus de [`ci/guard_constraints.sh`](ci/guard_constraints.sh) (prose de gouvernance énumérant règles et autorisations, pouvant citer des URLs/chemins interdits ailleurs).