- TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md : 4 volets + champs obligatoires + bloc anti-gap prix/typologies - version.schema.json : schéma _META/version.json (SemVer, score 4Big, verrou complete>=95) - projets_master.schema.json : contrat d'extraction consommé par Publiciste - Paramètres canoniques CLAUDE.md intégrés (3% / 8.5% / 52% · USD+DOP · Cardnet · Letter US) - GAP_ANALYSIS §7 : critère template v1.0 -> done · daily report mis à jour Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
11 KiB
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.0Statut : 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 Devises → USD + 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.gitkeepou un fichierTODO.mdexpliquant 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) |
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 % ».