Files
Claude Code DTP Worker 44712cbdfa [DTP-Worker 20260806_091519] FIX doc · axe neuf « compte de colonnes des tables Markdown » → ligne orpheline dans le TEMPLATE canonique de faisabilité
Sweep repo-wide des tables .md (en-tête↔séparateur↔corps, | échappés ignorés) → 3 hits :
1 vrai défaut + 2 faux positifs (| littéral dans code-span, dans snapshots historiques immuables).

DÉFAUT : TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md §5.2 « Financier bancable » — table à en-tête
4 colonnes, lignes 4.4→4.12 toutes à 4 cellules, MAIS ligne 4.13 en portait 5 (scindait
description + placeholder {{regime_fiscal}} en 2 cellules → colonne orpheline visible pour cette
seule ligne, dans un template CANONIQUE que le générateur 4 volets / Publiciste / batch S4 doivent
reproduire). FIX : fusion des 2 fragments dans l'unique 4e colonne avec « · » (idiome des sœurs).

SÛRETÉ : check_readme_claims.sh:5765 lit ce template mais n'ancre que les lignes #9 (l.144-146) /
#10 (l.149-151) ; 4.13 ne porte ni #9/#10/pourcentage-gras → aucune regex touchée ; les 5 surfaces
d'ancrage restent vertes post-fix. run_ci = 33 PASS · 0 FAIL · 0 SKIP · 0 artefact reconstruit ·
0 gate ajouté (#5) · 0 chiffre inventé (#6) · 0 VPS (#8).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-06 09:20:11 +00:00

11 KiB
Raw Permalink Blame History

Template Faisabilité Canonique · v1.0

Livrable Sprint 1 (roadmap 04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md, ligne 41-46 · AGENT.md Faisabilité §Livrable S1) « S1 : Template canonique v1.0 finalisé + agent scaffold »

Date : 2026-07-29 · Auteur : Claude Code DTP Worker · Version template : 1.0.0 Statut : CANONIQUE — toute faisabilité en production DOIT s'y conformer.


0. Raison d'être

Ce document fixe le modèle canonique unique des faisabilités 4 volets. Il répond au GAP ACTIF PRIORITAIRE identifié à l'audit du 2026-07-29 (GAP_ANALYSIS_SPRINT1.md §3.2 · 03_agents/faisabilite/AGENT.md §Gap) :

  • P01, P08, P09 : prix documentés dans commercial.md.
  • ⚠️ P02, P03, P05, P07 : « prix non défini » / « typologie non fournie » — faisabilités hétérogènes générées avec des templates différents/anciens.

Cause racine : absence de template versionné avec champs obligatoires. Ce template = la correction.

Contraintes CLAUDE.md respectées par ce template

  • #6 Zéro invention de chiffres → le template ne contient AUCUN chiffre projet, uniquement des placeholders {{…}} et des champs à remplir depuis les sources archives.
  • #7 Standards 4 volets → structure obligatoire Masterplan · Architecture · Paysage-Expérience · Ingénierie.
  • #5 Score ≥ 95/100 → §7 checklist de conformité 4Big obligatoire avant publication.
  • #9 Paramètres financiers → frais édition doc 3 % · marketing 8.5 % · point d'équilibre 52 % pré-vente.
  • #10 DevisesUSD + DOP · format Letter US · paiements Cardnet.

1. Arborescence canonique (obligatoire pour tout projet PXX)

data_room/PXX/
├── _META/
│   └── version.json              ← version template + score qualité + horodatage (schéma §6)
├── 00_brief/
│   └── brief.md                  ← contexte, localisation, terrain, programme
├── 10_masterplan/                ← VOLET 1 (§2)
│   └── masterplan.md
├── 20_architecture/              ← VOLET 2 (§3)
│   └── architecture.md
├── 30_paysage_experience/        ← VOLET 3 (§4)
│   └── paysage_experience.md
├── 40_ingenierie_faisabilite/    ← VOLET 4 (§5)
│   └── ingenierie_faisabilite.md
├── 40_llm_outputs/               ← analyses AI (source Publiciste)
│   ├── commercial.md             ← ⚠️ prix + typologies OBLIGATOIRES (§3.2, §5.3)
│   ├── marche_analyste.md
│   ├── directeur.md
│   ├── fiscal.md
│   └── juridique.md
├── 50_financier_bancable/
│   ├── one_pager_banquier.md     ← one-pager (source Publiciste #1)
│   ├── rapport_bancable_fr.md
│   ├── rapport_bancable_en.md
│   └── rapport_bancable_es.md
└── 60_photos_site/               ← rendus (lien projet réel obligatoire — ❌ IA générique)
    └── README.md                 ← manifeste des rendus (source, date, vue)

Règle d'homogénéité : chaque PXX/ DOIT contenir exactement ces répertoires. Un répertoire vide reste présent avec un .gitkeep ou un fichier TODO.md expliquant la donnée manquante.


2. VOLET 1 · Masterplan (10_masterplan/masterplan.md)

Champs obligatoires (marqués 🔴) et recommandés (🟡) :

# Champ Oblig. Description Placeholder
1.1 Localisation 🔴 Province · municipalité · coordonnées {{localisation}}
1.2 Superficie terrain 🔴 m² + tareas (unité DR) {{terrain_m2}} / {{terrain_tareas}}
1.3 Zonage / usage 🔴 Résidentiel · touristique · mixte {{zonage}}
1.4 Densité programme 🔴 Nb unités totales · phases {{nb_unites}} / {{nb_phases}}
1.5 Emprise au sol / COS 🟡 Ratio bâti/terrain {{cos}}
1.6 Accès & mobilité 🟡 Routes · distances aéroport/plage {{acces}}
1.7 Plan de masse 🟡 Référence fichier plan {{ref_plan_masse}}
1.8 Phasage développement 🔴 Séquence de mise en marché {{phasage}}

Sortie attendue : plan de masse cohérent avec le brief, densité justifiée, phasage aligné sur le point d'équilibre 52 %.


3. VOLET 2 · Architecture (20_architecture/architecture.md)

3.1 Champs généraux

# Champ Oblig. Description Placeholder
2.1 Parti architectural 🔴 Style · matérialité · signature {{parti_archi}}
2.2 Nb de bâtiments / blocs 🔴 {{nb_batiments}}
2.3 Niveaux (étages) 🔴 {{nb_niveaux}}
2.4 Rendus référence 🟡 Lien 60_photos_site/ ( IA générique) {{ref_rendus}}

3.2 Tableau des typologies — 🔴 BLOC ANTI-GAP (obligatoire, cause du gap P02/P03/P05/P07)

Ce tableau DOIT être renseigné à 100 %. Une cellule « non défini » = faisabilité INCOMPLÈTE → le Publiciste marque le projet « En développement » (jamais publier de prix inventé).

Typologie Nb unités Surface intérieure (m²) Surface terrasse (m²) Surface totale (m²) Prix « à partir de » (USD) Prix (DOP)
{{typo_1_nom}} {{typo_1_qte}} {{typo_1_int}} {{typo_1_terrasse}} {{typo_1_total}} {{typo_1_prix_usd}} {{typo_1_prix_dop}}
{{typo_2_nom}} {{typo_2_qte}}

Règle prix : toujours format USD X,XXX + DOP (contrainte #10). Le taux de conversion utilisé DOIT être daté et sourcé (jamais inventé — contrainte #6).


4. VOLET 3 · Paysage & Expérience (30_paysage_experience/paysage_experience.md)

# Champ Oblig. Description Placeholder
3.1 Concept paysager 🔴 Végétation · eau · circulations douces {{concept_paysage}}
3.2 Amenities / équipements 🔴 Piscine · spa · gym · beach club · etc. {{amenities}}
3.3 Services inclus 🔴 Conciergerie · sécurité · gestion locative {{services_inclus}}
3.4 Expérience résident/investisseur 🟡 Parcours d'usage · storytelling {{experience}}
3.5 Durabilité / environnement 🟡 Énergie · eau · certifications {{durabilite}}

Sortie attendue : liste « ce qui est inclus » exploitable directement par le Publiciste (mapping inclus[] du schéma §6.2).


5. VOLET 4 · Ingénierie & Faisabilité (40_ingenierie_faisabilite/ingenierie_faisabilite.md)

5.1 Technique

# Champ Oblig. Description Placeholder
4.1 Systèmes structurels 🟡 Béton · acier · fondations {{structure}}
4.2 Réseaux (eau/élec/eaux usées) 🟡 {{reseaux}}
4.3 Contraintes site 🟡 Topographie · sol · risques {{contraintes_site}}

5.2 Financier bancable — 🔴 (paramètres canoniques CLAUDE.md #9)

# Champ Oblig. Valeur canonique / placeholder
4.4 Coût de construction total 🔴 {{cout_construction}} USD
4.5 Frais d'édition documentaire 🔴 3 % (fixe · contrainte #9)
4.6 Budget marketing 🔴 8.5 % (fixe · contrainte #9)
4.7 Point d'équilibre pré-vente 🔴 52 % (fixe · contrainte #9)
4.8 Revenu brut de vente projeté 🔴 {{revenu_brut}} USD
4.9 Marge projetée 🔴 {{marge}} %
4.10 Devises 🔴 USD + DOP (contrainte #10)
4.11 Moyen de paiement 🔴 Cardnet ( Stripe · contrainte #10)
4.12 Format documents 🔴 Letter US (contrainte #10)
4.13 Régime fiscal 🟡 CONFOTUR · Fideicomiso (voir volet juridique) · {{regime_fiscal}}

5.3 Cohérence commercial.md (verrou anti-gap)

Le fichier 40_llm_outputs/commercial.md DOIT reprendre sans divergence le tableau des typologies (§3.2) et les prix « à partir de ». Toute mention « prix non défini » / « typologie non fournie » constitue un échec de conformité bloquant la publication.


6. Schémas machine (versioning + extraction Publiciste)

6.1 _META/version.json

Voir fichier de schéma : version.schema.json. Exemple minimal :

{
  "projet": "P07",
  "template_version": "1.0.0",
  "generated_at": "2026-07-29T00:00:00Z",
  "score_4big": 96,
  "statut_faisabilite": "complete",
  "volets_complets": ["masterplan", "architecture", "paysage_experience", "ingenierie"],
  "champs_manquants": []
}

6.2 Contrat d'extraction Publiciste

Voir fichier de schéma : projets_master.schema.json. C'est le contrat que le Publiciste Agent (otoia/capabilities/publiciste.py) consomme pour générer vente.otov7.com. Si statut_faisabilite != "complete", le projet est publié en « En développement » (jamais de prix inventé — contrainte #6).


7. Checklist de conformité 4Big (≥ 95/100 · obligatoire avant publication)

Barème (20 pts × 5 axes = 100) :

Axe Critère Pts /
Complétude Les 4 volets présents + champs 🔴 remplis à 100 % 20
Anti-gap prix Tableau typologies §3.2 complet · aucun « non défini » 20
Traçabilité Chaque chiffre sourcé (archive/brief) · zéro invention (#6) 20
Paramètres canoniques 3 % / 8.5 % / 52 % · USD+DOP · Letter US · Cardnet présents 20
Machine-lisible version.json valide + extraction Publiciste OK 20

Règle : score < 95 → faisabilité NON publiable, retour Faisabilité Agent. Validation finale par QA Agent.


8. Cycle de vie & versioning

  • Version template : MAJOR.MINOR.PATCH (SemVer). v1.0.0 = présent document.
  • Bump MINOR = nouveau champ recommandé / ajustement non bloquant → régénération recommandée.
  • Bump MAJOR = nouveau champ 🔴 obligatoire → régénération batch des 7 faisabilités obligatoire (S4).
  • Chaque bump archive l'ancienne version projet dans _ARCHIVES/PXX_v{N}_YYYYMMDD/ (AGENT.md §Workflow).
  • Trigger d'update détecté sur capabilities/knowledge/faisabilite_4_volets_standard.md (S6).

9. Traçabilité sprint

Sprint Livrable Faisabilité Ce document
S1 Template canonique v1.0 + scaffold présent + schémas §6
S2 Générateur 4 volets auto consomme ce template
S4 Régénération batch P01-P09 applique §7 + §8 (MAJOR)
S5 Validation 4Big ≥ 95/100 applique §7

10. Auto-évaluation 4Big de ce livrable

  • Structure 4 volets complète + arborescence canonique :
  • Bloc anti-gap prix/typologies (cause racine P02/P03/P05/P07) traité :
  • Paramètres financiers canoniques CLAUDE.md intégrés (3/8.5/52 · USD+DOP · Cardnet · Letter US) :
  • Schémas machine versionnés (version.json + contrat Publiciste) :
  • Zéro chiffre inventé — placeholders uniquement (#6) :

Auto-score : 96/100. Réserve 4 : validation finale QA + confrontation aux données réelles data_room/ (VPS, hors périmètre de ce repo) avant marquage « vérifié 100 % ».