diff --git a/AUDIT_FAISABILITE_DEEP_20260810.md b/AUDIT_FAISABILITE_DEEP_20260810.md new file mode 100644 index 0000000..c25c848 --- /dev/null +++ b/AUDIT_FAISABILITE_DEEP_20260810.md @@ -0,0 +1,420 @@ +# AUDIT FAISABILITÉ DEEP · Intégration BIM 6 Disciplines + Dashboard Validation +**Date:** 2026-08-10 · **Auteur:** Claude · **Cible:** P01 Coralis (référence pour P02-P09) + +--- + +## 0. RÉSUMÉ EXÉCUTIF + +**Constat clé:** le pipeline feasibility existant produit **déjà** un document bancable de qualité Big4 (2 507 lignes, 11 sections sourcées) avec toutes les données Coralis correctes: +- 2 blocs × 4 niveaux + azotea activa +- 22 apartamentos (11 par bloc, 3 typologies: 105/70/60 m²) +- Terrain 1 286.92 m², emprise bloc ~260 m², surface Bloque 2 ~1 145 m² +- Azotea activa avec **jacuzzis privés** documentés (39.5-63.9 m²) +- Structure béton f'c = 280 kg/cm² + Acier Grade 60 + Zone sismique 4 (0.30g) +- Normes R-001/R-027/R-029/ACI 318 +- Étude géotechnique Yudith Rodriguez (3 SPT + 2 calicatas) + +**Mon erreur Sprint B v3:** j'ai généré un modèle 3D à partir d'assumptions inventées, en ignorant complètement ces sources déjà sourcées et validées. + +**Correction nécessaire:** le pipeline BIM doit **CONSOMMER** les 11 sections existantes comme source de vérité, PAS régénérer des dimensions/matériaux hors contexte. + +--- + +## 1. AUDIT MODULE PAR MODULE + +### Module 1 · Sommaire Exécutif (`section_1.md` · 169 lignes) + +**Contenu actuel:** identité projet, caractéristiques techniques (2 blocs, 22 apts, 4 niveaux + azotea), programme immobilier (11 unités Bloque 2 à financer), CAPEX/CA (0.75M USD construction), DSCR, structure financière, statut juridique (matrícula 3000004538), ratings risques (score marché 45/100). + +**Sources internes:** `40_llm_outputs/directeur.json`, `financier_senior.json`, `commercial.json`. + +**Impact BIM:** ajouter en 1.4 une **cellule "Livrables BIM"** listant les 6 IFC + clash report + BOM + rendus, avec statut validation Michel. + +**Effort code:** 15 min (ajouter template Jinja2 dans `oto_module_bankable_v2_strict.py` section EXEC_SUMMARY). + +### Module 2 · Étude de Marché (`section_2.md` · 164 lignes) + +**Contenu actuel:** contexte San Cristóbal (250k hab, 25km Santo Domingo), comparables INDEXES (à documenter), courbe absorption sectorielle, segmentation acheteurs (local/expat/investisseur), analyse pricing hedonic. + +**Score marché analyste:** 45/100 — étude terrain requise (100+ interviews). + +**Impact BIM:** aucun (marché ≠ 3D). + +**Effort code:** 0. + +### Module 3 · Étude Architecturale (`section_3.md` · 181 lignes) ⭐ + +**Contenu actuel VÉRIFIÉ:** +- 3.1.1 Description programme (2 blocs, 22 apts, phasage) +- 3.1.2 Typologies (Tipo 1: 105 m² · Tipo 2: 60 m² · Tipo 3: 70 m²) +- 3.1.3 Azotea activa (jacuzzis privés 39.5-63.9 m²) +- Surfaces communes, amenities, orientations, éclairage + +**Source-clé:** `P01_PLANS_ARCHITECTURAUX_REVISES_2026-05.txt` (déjà indexé) + +**Impact BIM:** DEEP integration: +- **3.1.4 Modèle BIM Architectural** (NOUVEAU) → charge `{Pxx}_bim_architectural.ifc` +- **3.1.5 Visualisation 3D** → embed viewer GLB +- Chaque dimension mentionnée dans le texte doit être **calculée depuis le BIM**, pas juste répétée de plans +- Surfaces habitables calculées via IfcSpace enumeration +- Orientations issues des coordonnées IFC (angles solaires) +- Auto-génération des schémas (plans typologies) + +**Modifs code:** +- `oto_module_bankable_v2_strict.py` → prompt Claude pour section TECH_ARCH doit inclure snippet BIM extract +- Ajouter fonction `extract_bim_architectural(project_code)` qui lit l'IFC et retourne dict de dimensions +- Nouveau prompt: "Utilise EXACTEMENT ces valeurs du BIM: {dims}" + +**Effort code:** 3h. + +### Module 4 · Étude Structurelle & MEP (`section_4.md` · 188 lignes) ⭐⭐⭐ + +**Contenu actuel VÉRIFIÉ:** +- 4.1.1 Caractéristiques structurelles (système, matériaux, hauteurs) +- 4.1.2 Conception sismique (R-001, R-027, R-029, ACI 318, 0.30g San Cristóbal) +- 4.1.3 Étude géotechnique Yudith Rodriguez (3 SPT + 2 calicatas + stratigraphie) +- Suite: capacité portante, dimensionnement fondations, MEP (probable section 4.2+) + +**Impact BIM CRITIQUE:** section est actuellement TOUT-en-UN. À SPLITTER en 5+1 sous-sections: + +**4.1 Structurel** (garder l'existant + enrichir avec BIM) +- 4.1.1 Système constructif (garder) +- 4.1.2 Conception sismique (garder + ajouter validation via BIM structural) +- 4.1.3 Géotechnique (garder) +- **4.1.4 Modèle BIM Structurel** (NOUVEAU) → `{Pxx}_bim_structural.ifc` +- **4.1.5 Quantitatifs béton/acier** → extrait BOM + +**4.2 Plomberie** (NOUVEAU — actuellement mélangé dans MEP) +- 4.2.1 Réseaux eau chaude INDIVIDUELLE (règle Michel R-001) +- 4.2.2 Réseaux eau froide + évacuation +- 4.2.3 Incendie (sprinklers, colonnes sèches) +- **4.2.4 Modèle BIM Plomberie** → `{Pxx}_bim_plumbing.ifc` + +**4.3 Électrique** (NOUVEAU) +- 4.3.1 Courants forts (TGBT, tableaux divisionnaires) +- 4.3.2 Courants faibles (réseau, alarme, contrôle accès) +- 4.3.3 Conformité R-029 +- **4.3.4 Modèle BIM Électrique** → `{Pxx}_bim_electrical.ifc` + +**4.4 Mécanique HVAC** (NOUVEAU) +- 4.4.1 Climatisation individuelle par unité (split/multi-split) +- 4.4.2 Ventilation extraction (cuisines/SDB) +- **4.4.3 Modèle BIM Mécanique** → `{Pxx}_bim_mechanical.ifc` + +**4.5 Clash Detection** (NOUVEAU — inter-disciplines) +- 4.5.1 Rapport clash arch/struct/plomb/élec/méca +- 4.5.2 Sévérité: bloquant / important / mineur +- 4.5.3 Résolution requise AVANT bancabilité +- **Fichier:** `{Pxx}_clash_report.json` + +**Sources internes existantes:** `P01_ETUDE_GEOTECHNIQUE_Yudith_2021-2025.txt`, `P01_REGLEMENTATION_RD_2026.txt`, `P01_ENVIRONNEMENT_TECHNIQUE_PGES.txt`. + +**Modifs code:** +- `SECTIONS` array dans `oto_module_bankable_v2_strict.py` → split "STRUCT_MEP" en 5 clés: STRUCTURAL / PLUMBING / ELECTRICAL / MECHANICAL / CLASH +- 5 nouveaux prompts Claude avec extraits BIM correspondants +- 5 nouvelles fonctions `extract_bim_{discipline}(project_code)` + +**Effort code:** 6h (refonte majeure de la section). + +### Module 5 · Étude Financière & DCF (`section_5.md` · 326 lignes) + +**Contenu actuel:** CAPEX détaillé (0.75M USD), BPU Construcosto Santiago-Cibao, structure financement, DSCR par phase, IRR (~15%), NPV, sensibilités. + +**Impact BIM:** +- Ajouter **5.6 · Bill of Materials extrait BIM** (NOUVEAU) → `{Pxx}_quantities.json` +- CAPEX matériaux CALCULÉ (pas estimé) via extractions IFC: + - Béton total (m³) × prix Construcosto = ligne CAPEX béton + - Acier total (kg) × prix = ligne CAPEX acier + - CMU (unités) × prix = ligne CAPEX maçonnerie + - Verre (m²) × prix = ligne CAPEX vitrerie + - Cabling électrique (m) × prix = ligne CAPEX élec + - Tuyauterie plomberie (m) × prix = ligne CAPEX plomb + - Ducts HVAC (m²) × prix = ligne CAPEX méca + +**Sources internes:** `commercial.json`, `financier_senior.json`, `directeur.json`, `economique.json`. + +**Modifs code:** +- Ajouter fonction `compute_bom_capex(project_code, construcosto_prices)` qui lit tous les IFC et retourne CAPEX matériaux calculé +- Cross-check avec CAPEX estimé existant → alerte si delta > 15% +- Nouveau prompt Claude pour section FIN_DCF: "Compare le CAPEX estimé actuel avec le CAPEX calculé BOM et documente la variance" + +**Effort code:** 3h. + +### Module 5.3 · Phasage (dans `section_5.md`) + +**Contenu actuel:** phasage 1 phase (Bloque 2 seul, <100 unités). + +**Impact BIM:** aucun structurel. + +**Effort code:** 0. + +### Module 5.4 · Stratégie Commerciale (dans `section_5.md`) + +**Contenu actuel:** 8 sous-points obligatoires (banques, brokers, marketing, budget, pricing, calendrier). + +**Impact BIM:** +- Ajouter en 5.4.9 · **Livrables 3D commerciaux** — rendus HD extraits du BIM pour brochures/site/socios +- Rendus 3 typologies (Tipo 1 · Tipo 2 · Tipo 3) via panoramas 360° Blender Cycles + +**Effort code:** 1h. + +### Module 5.5 · Frais Édition (dans `section_5.md`) + +**Contenu actuel:** 3% coût construction (RÈGLE NON-NÉGOCIABLE). + +**Impact BIM:** aucun. + +**Effort code:** 0. + +### Module 6 · Étude Juridique (`section_6.md` · 170 lignes) + +**Contenu actuel:** statut foncier, matrícula 3000004538, charges/hypothèques, structure fiduciaria (pas de fiducie car <1M USD), CONFOTUR non applicable. + +**Impact BIM:** aucun. + +**Effort code:** 0. + +### Module 7 · Étude Environnementale (`section_7.md` · 186 lignes) ⭐⭐⭐ + +**Contenu actuel VÉRIFIÉ:** +- 7.1.1 Autorités (MARENA, MOPC, Ayuntamiento SC, CORAASAN, EDESUR) +- 7.1.2 Permis MARENA (P01 = Catégorie C ou D · <1ha · 60-120j délai) +- 7.2 Caractéristiques géotechniques et sismiques (répétées de section 4) + +**Impact BIM VRD CRITIQUE:** +- Section actuellement centrée sur MARENA/paperasse +- MANQUE totalement le **BIM VRD Environnemental** (règle Michel: OBLIGATOIRE tous projets) +- Ajouter **7.3 BIM VRD Environnemental** (NOUVEAU): + - 7.3.1 Raccordement pluvial (drainage eau de pluie → réseau public ou infiltration) + - 7.3.2 Raccordement septique (fosse ou raccord CORAASAN) + - 7.3.3 Raccordement électrique souterrain (arrivée EDESUR + distribution interne blocs) + - 7.3.4 Raccordement eau potable (arrivée CORAASAN) + - 7.3.5 Raccordement gaz (si applicable) + - **Fichier:** `{Pxx}_bim_vrd.ifc` + - **7.3.6 Modélisation impact environnemental** (calcul déblais/remblais, imperméabilisation) + +**Sources internes existantes:** `P01_REGLEMENTATION_RD_2026.txt`, `P01_ENVIRONNEMENT_TECHNIQUE_PGES.txt`. + +**Modifs code:** +- Ajouter clé "VRD" au SECTIONS array +- Nouveau prompt: extraire données géo/environnementales + BIM VRD +- Fonction `extract_bim_vrd(project_code)` (raccordements souterrains) + +**Effort code:** 3h. + +### Module 8 · Structure de Financement (`section_8.md` · 159 lignes) + +**Contenu actuel:** architecture WAF/WA/HRD/AC/ERC/Plotus, % détention, mandat HRD→AC, intervention pay master ERC. + +**Impact BIM:** aucun. + +**Effort code:** 0. + +### Module 9 · Risques & Mitigation (`section_9.md` · 169 lignes) + +**Contenu actuel:** 2+ solutions chiffrées par risque (sol → pieux, pluvial → drainage, sismique → renforcement). + +**Impact BIM:** ajouter catégorie de risque **"Clash BIM détecté"** (bloquant/important) avec solutions typiques (rerouting HVAC, coordination CAO, etc.). + +**Effort code:** 30 min. + +### Module 10 · Conclusions & Recommandations (`section_10.md` · 113 lignes) + +**Contenu actuel:** décision investissement, conditions précédentes, points d'attention bancaires. + +**Impact BIM:** ajouter en 10.4 · **Validation BIM 6 disciplines**: +- Modèles IFC générés: 6/6 +- Clash bloquants résolus: X/Y +- BOM CAPEX validé: OUI/NON +- Signature Michel: OUI/NON +- Statut go/no-go bancaire + +**Effort code:** 30 min. + +### Module 11 · Annexes (`section_11.md` · 682 lignes) + +**Contenu actuel:** énorme liste d'annexes officielles mergées (tasación, études techniques, plans, sustento). + +**Impact BIM:** ajouter comme nouvelles annexes: +- **A9** · Modèle BIM Architectural (IFC + GLB preview) +- **A10** · Modèle BIM Structurel (IFC) +- **A11** · Modèle BIM Plomberie (IFC) +- **A12** · Modèle BIM Électrique (IFC) +- **A13** · Modèle BIM Mécanique (IFC) +- **A14** · Modèle BIM VRD Environnemental (IFC) +- **A15** · Clash Report (JSON + PDF résumé) +- **A16** · Bill of Materials (Excel + JSON) +- **A17** · Rendus 3D synthèse (PNG HD extraits du viewer) + +**Effort code:** 1h (ajout dans `merge_annexes_multilang.py`). + +--- + +## 2. PIPELINE TECHNIQUE · ORDRE DE DÉPENDANCES + +``` +┌─ Sprint A: extract_archives.py (FAIT) +│ ↓ +├─ Sprint B1: generate_bim_architectural.py (À FAIRE) +│ ↓ (validation Michel dashboard) +├─ Sprint B2-B6: 5 disciplines en parallèle (À FAIRE) +│ │ ↓ +│ ├─ B2: generate_bim_structural.py +│ ├─ B3: generate_bim_plumbing.py +│ ├─ B4: generate_bim_electrical.py +│ ├─ B5: generate_bim_mechanical.py +│ └─ B6: generate_bim_vrd.py +│ ↓ +├─ Sprint C: clash_detect.py (À FAIRE) +│ ↓ (si clash bloquant → STOP + alerte) +├─ Sprint D: compute_bom_capex.py (À FAIRE) +│ ↓ +├─ Sprint E: bankable_v2_strict.py (MODIFIER) +│ │ - Split SECTIONS array en 15 clés (au lieu de 10) +│ │ - Injecter extracts BIM dans chaque prompt Claude +│ │ ↓ +├─ assemble_bankable.py (garder) +├─ translate_bankable.py FR→ES/EN (garder) +├─ assemble_multilang.py (garder) +├─ merge_annexes_multilang.py (MODIFIER — ajouter A9-A17) +└─ Deploy portal (garder) +``` + +**Total code:** +- Sprint B1-B6: 6 scripts × ~500 lignes = 3 000 lignes Python (Blender bpy + IfcOpenShell) +- Sprint C: ~400 lignes (clash detection) +- Sprint D: ~300 lignes (BOM calc) +- Sprint E: modifs bankable_v2_strict.py = ~500 lignes +- Dashboard console: ~800 lignes JS/HTML/CSS + endpoints backend +- **Total: ~5 000 lignes de code neuf/modifié** + +**Temps dev estimé:** 40-50h (5-6 jours pleins). + +--- + +## 3. DASHBOARD CONSOLE VALIDATION + +### 3.1 URL et emplacement + +`https://console.otov7.com/#faisabilite-3d-review?project=P01` + +Route à ajouter dans `/opt/oto/sites/console/index.html` (module Faisabilité existant). + +### 3.2 Composants UI + +**Header:** +- Titre projet + statut global (Draft / En review / Validé) +- Historique versions +- Timeline des validations + +**Grid 3D:** +- 6 tuiles (une par discipline) avec: + - Preview 3D (model-viewer) + - Statut discipline (badge) + - Bouton "Voir en grand" + - Boutons validation: ✅ Accepter · ⚠️ Réviser · ❌ Rejeter + +**Panneau clash:** +- Liste des clash détectés +- Filtres par sévérité +- Vue 3D synchronisée sur le point de clash + +**Panneau BOM:** +- Tableau matériaux calculés +- Cross-check avec CAPEX estimé +- Alerte si delta > 15% + +**Panneau audit trail:** +- Historique décisions Michel avec timestamps +- Commentaires +- Notifications envoyées + +### 3.3 Backend endpoints + +- `GET /api/faisabilite/{code}/bim-status` → statut 6 disciplines +- `POST /api/faisabilite/{code}/validate/{discipline}` → accept/reject avec commentaire +- `GET /api/faisabilite/{code}/clash-report` → JSON clash +- `GET /api/faisabilite/{code}/bom` → JSON BOM +- `POST /api/faisabilite/{code}/regenerate` → trigger pipeline complet +- `GET /api/faisabilite/{code}/audit-trail` → historique décisions + +**Effort dashboard:** 6-8h (front + back). + +--- + +## 4. POINTS DE VALIDATION MICHEL OBLIGATOIRES + +**5 checkpoints stricts dans le pipeline:** + +1. **CP1 · Après Sprint B1 (Architectural)** → Michel valide géométrie/dimensions + - Blocage: les 4 autres disciplines ne partent PAS sans validation +2. **CP2 · Après Sprint B2-B6 (5 disciplines complémentaires)** → Michel valide MEP + - Blocage: clash detection ne part PAS sans validation +3. **CP3 · Après Sprint C (Clash Report)** → Michel valide plan de résolution des clash bloquants + - Blocage: BOM/faisabilité ne partent PAS sans validation +4. **CP4 · Après Sprint D (BOM)** → Michel valide CAPEX calculé vs estimé + - Blocage: génération feasibility ne part PAS sans validation +5. **CP5 · Avant Deploy portal** → Michel signe le document bancable final + - Blocage: pas de mise en ligne sans signature + +Chaque checkpoint = notification WhatsApp + email + entrée audit trail. + +--- + +## 5. GAPS PRIORITAIRES vs Vision Michel + +| Gap | Priorité | Impact | Effort | +|---|---|---|---| +| Split section 4 en 5 sous-sections BIM | 🔴 HIGH | Bloque tout | 6h | +| Section 7 · BIM VRD | 🔴 HIGH | Règle absolue Michel | 3h | +| Dashboard console validation | 🔴 HIGH | Sans ça = risque erreurs propagées | 6-8h | +| Sprint B1 script architectural précis | 🔴 HIGH | Fondation des 5 autres | 4h | +| Sprint B2-B5 scripts disciplines | 🟡 MED | Après B1 validé | 12-16h | +| Sprint C clash detection | 🟡 MED | Après B2-B6 | 4h | +| Sprint D BOM CAPEX | 🟡 MED | Après C | 3h | +| Modif bankable_v2_strict split SECTIONS | 🔴 HIGH | Sans ça template broken | 5h | +| Section 11 annexes (A9-A17) | 🟢 LOW | Une fois BIM disponible | 1h | +| Rendus 3D commerciaux (5.4.9) | 🟢 LOW | Nice-to-have Sprint 6 | 2h | + +--- + +## 6. RECOMMANDATION DE SÉQUENCEMENT + +**Semaine 1 (~35h):** +- Modifier `bankable_v2_strict.py` (SECTIONS split + prompts BIM) - 5h +- Modifier template feasibility (11 modules → 15 modules) - 3h +- Coder Sprint B1 architectural précis - 4h +- Coder dashboard console validation (front + back) - 8h +- Regénérer P01 avec BIM Architectural + validation Michel - 2h +- Coder Sprint B2 Structurel - 3h +- Coder Sprint B3 Plomberie - 3h +- Coder Sprint B4 Électrique - 3h +- Coder Sprint B5 Mécanique - 3h +- Coder Sprint B6 VRD Environnemental - 3h + +**Semaine 2 (~15h):** +- Sprint C · Clash Detection - 4h +- Sprint D · BOM CAPEX - 3h +- Sprint E · Feed back complet dans template - 4h +- Tests E2E P01 - 2h +- Documentation utilisateur + directives Gitea - 2h + +**Total: 50h dev / 2 semaines.** + +--- + +## 7. RÈGLES ABSOLUES À RESPECTER (rappel) + +- ✅ **Zéro invention** — tout vient des archives sourcées ([[otov7-zero-invention-chiffres]]) +- ✅ **Zéro altération rendus existants** ([[otov7-rendus-existants-respect-absolu]]) +- ✅ **Validation Michel étape-par-étape** — dashboard console obligatoire +- ✅ **BIM 6 disciplines** — arch + struct + plomb + élec + méca + VRD ([[otov7-oto-3d-studio-pipeline-faisabilite]]) +- ✅ **Eau chaude INDIVIDUELLE** — jamais centralisée (norme R-001) +- ✅ **Sources sourcées** — chaque chiffre a une `(Source: ...)` +- ✅ **Trilingue FR/ES/EN** — pipeline existant à préserver +- ✅ **Frais édition 3%** — non négociable + +--- + +**Ce document est le référentiel unique pour la refonte du pipeline feasibility.** +**Statut:** Draft pour validation Michel · publication Gitea après GO