From 535bc83e0d9939d954ec90c8d6c74dc20b930bb1 Mon Sep 17 00:00:00 2001 From: Claude Code DTP Worker Date: Thu, 30 Jul 2026 23:02:54 +0000 Subject: [PATCH] =?UTF-8?q?[DTP-Worker]=20Sprint=208=20=C2=B7=20buffer=20L?= =?UTF-8?q?75=20=C2=B7=20Gate=204Big=20check=5Fdocs=200=20faux=20positif?= =?UTF-8?q?=20(fixtures=20data=5Froom=20exclues=20+=20spec=20CHOISIR=20sco?= =?UTF-8?q?r=C3=A9e=2095/100)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - ci/check_docs.sh : exclut */fixtures/data_room/* du gate SOFT auto-score (inputs de test synthétiques, cf. publiciste/fixtures/README.md ; même statut que daily_reports/*). Portée précise : fixtures/README.md reste gaté. - specs/CHOISIR_MON_UNITE_SPEC.md : ajoute une section Auto-score 4Big 95/100 (livrable spec, contrainte #5) ; P01=2.484M USD cité verbatim de la spec (#6). - Resultat : 9 avertissements documentaires -> 0. Gates vertes (check_docs, guard_constraints, validate_json tous EXIT 0). Co-Authored-By: Claude Opus 4.8 (1M context) --- 05_activity_log/2026-07-30.md | 55 +++++++++++++++++++ .../specs/CHOISIR_MON_UNITE_SPEC.md | 17 ++++++ ci/check_docs.sh | 1 + 3 files changed, 73 insertions(+) diff --git a/05_activity_log/2026-07-30.md b/05_activity_log/2026-07-30.md index 49abdd5..961bde7 100644 --- a/05_activity_log/2026-07-30.md +++ b/05_activity_log/2026-07-30.md @@ -1549,3 +1549,58 @@ nouvelles cibles résolvent) · `ci/guard_constraints.sh` EXIT 0. `crm/AGENT.md` (`bim`/`ifc_speckle`/`rendu`/`mobile` = VPS-only, sans livrable in-repo → hors chantier.) **Auto-score 4Big** : 96/100. + +--- + +## Session 20260730_225912 · Buffer S8 · Gate 4Big check_docs : 0 faux positif (fixtures exclues + spec scorée) + +**Tâche** : **Sprint 8 · buffer L75 (corrections finales)**. Le chantier de cross-linking +des fiches agents étant **clos** (commit f68f2e2 : 4 dernières fiches SEO/DevOps/Frontend/ +ONAPI), baseline sain établi : `check_docs.sh` EXIT 0, `guard_constraints.sh` EXIT 0, +`validate_json.sh` EXIT 0. Cible de la session : réduire le **bruit** de la gate +documentaire — la section « 2. Auto-score 4Big (SOFT) » émettait **9 avertissements ⚠**. + +**Diagnostic (analyser avant agir · #1)** : les 9 ⚠ se répartissent en deux natures +**distinctes**, l'une un **faux positif**, l'autre un **vrai manque** : +- **8 sur 9** sous `publiciste/fixtures/data_room/PXX/…` — ce sont des **INPUTS de test + synthétiques** consommés par le parser (`test_publiciste.py:25` `FIXTURES = fixtures/data_room`). + Le README de ces fixtures les déclare explicitement « **DONNÉES SYNTHÉTIQUES DE TEST … + ne doivent JAMAIS être publiés** » (`publiciste/fixtures/README.md:1-5`). Un input de + test n'est **pas un livrable scoré 4Big** — exactement le même statut que + `daily_reports/*`, déjà exclu de cette gate. +- **1 sur 9** — `specs/CHOISIR_MON_UNITE_SPEC.md`, un **vrai livrable** (spec design-complete + validée par Michel, 5 décisions tranchées) qui n'affichait **aucun** auto-score. + +**2 solutions par nature (workflow #4 · toujours 2+ options)** : +- *Fixtures* — A **exclure la racine** (root-cause : les inputs de test ne sont pas des + livrables) vs B ajouter un faux score à des fixtures « fictives ». **Choix A** : B + falsifierait des fichiers explicitement non-publiables. Portée **précise** : + `*/fixtures/data_room/*` (le sous-arbre d'inputs), **pas** `*/fixtures/*` — sinon + `fixtures/README.md` (doc réelle, déjà scorée) perdrait sa surveillance. +- *Spec* — A l'**exclure** (specs = design docs) vs B lui **donner un vrai score**. + **Choix B** : la spec EST un livrable (contrainte #5 « score min 95 sur tout livrable »), + l'exclure masquerait un manque au lieu de l'honorer. + +**Fichiers modifiés (2)** : +1. `ci/check_docs.sh` — nouvelle branche `case` : `05_deliverables_mvp/*/fixtures/data_room/*) + continue ;;` (SOFT gate section 2 uniquement ; liens internes de la section 1 restent + vérifiés partout, fixtures comprises). +2. `05_deliverables_mvp/specs/CHOISIR_MON_UNITE_SPEC.md` — section **« Auto-score 4Big : + 95/100 »** ajoutée, avec table 4 volets + justification du **−5** (provisionnements + externes DocuSign/Speckle/PROJECT_META non tranchés, à lever au build downstream). + +**Anti-invention (#6)** : le seul chiffre chiffré cité dans le score (P01 = **2.484M USD +Dumar tasación**) est une **citation verbatim** de la spec elle-même (`…:63`, section +« Non-négociables ») — aucun nombre fabriqué. Le score 95 est une **auto-évaluation de +rigueur de la spec**, explicitement **pas** un score d'implémentation (le build +`/choisir-mon-unite` reste hors-périmètre worker · #8). + +**Vérifs post-édition** : +- `check_docs.sh` : **9 ⚠ → 0 ⚠**, EXIT 0 (liens internes toujours OK). +- **Test de non-régression de portée** : `fixtures/README.md` reste **gaté** (✓ score + présent) — seul le sous-arbre `data_room/` est exclu ; la spec affiche désormais ✓. +- `guard_constraints.sh` EXIT 0 · `validate_json.sh` EXIT 0 (inchangés). + +**Hors périmètre worker (VPS · #8)** : néant (changements in-repo : gate CI locale + doc). + +**Auto-score 4Big** : 96/100. diff --git a/05_deliverables_mvp/specs/CHOISIR_MON_UNITE_SPEC.md b/05_deliverables_mvp/specs/CHOISIR_MON_UNITE_SPEC.md index d99c4b8..aee2c41 100644 --- a/05_deliverables_mvp/specs/CHOISIR_MON_UNITE_SPEC.md +++ b/05_deliverables_mvp/specs/CHOISIR_MON_UNITE_SPEC.md @@ -112,3 +112,20 @@ _Conservées pour traçabilité ; chaque point est résolu par la section 3. **Après login** → viewer 3D Speckle bâtiment + fiche unité complète + prix exact + financement 4. **CTA "Réserver cette unité"** → création reservation 10j ouvrables + génération contrat DocuSign 5. **Signature DocuSign** → dépôt 20% (Cardnet) → réservation confirmée → email + notification vendeur + +--- + +## Auto-score 4Big : **95/100** + +Score de la **spec** (rigueur/complétude du design), **pas** d'une implémentation +(le build `/choisir-mon-unite` reste hors-périmètre worker · contrainte #8, cf. en-tête). + +| Volet 4Big | Note | Justification | +|---|---|---| +| Masterplan / parcours | 96 | Parcours vendeur 4 étapes finalisé (projet → bâtiment → étage → unité) + 5 décisions Michel tranchées. | +| Architecture technique | 95 | Speckle iframe/bâtiment, `Unit Reservation` ERPNext, webhook DocuSign, ``/`` spécifiés. | +| Paysage / expérience | 95 | Design luxury `#0a0a12`+`#f0b429` (Fraunces/Cormorant), responsive mobile-first, FR/EN/ES. | +| Ingénierie / conformité | 94 | Cardnet (pas Stripe), rendus réels only, prix vérifiés (P01 = 2.484M USD Dumar), zéro invention (#6). | + +**−5** : provisionnements externes non tranchés (compte DocuSign entreprise, `stream_id` +Speckle par projet, extension `PROJECT_META` à P04/P06/P08/P09) — à lever au build downstream. diff --git a/ci/check_docs.sh b/ci/check_docs.sh index 7d776d5..c958a8c 100755 --- a/ci/check_docs.sh +++ b/ci/check_docs.sh @@ -46,6 +46,7 @@ echo "== 2. Auto-score 4Big sur les livrables (SOFT · CLAUDE.md #5 · ≥95/100 while read -r md; do case "$md" in 05_deliverables_mvp/daily_reports/*) continue ;; # rapports : hors gate score + 05_deliverables_mvp/*/fixtures/data_room/*) continue ;; # fixtures : INPUTS de test synthétiques (cf. publiciste/fixtures/README.md), pas des livrables scorés esac if grep -qiE 'score|/100' "$md"; then ok "$md — mention de score présente"