# đŸ—ïž FaisabilitĂ© Agent · GĂ©nĂ©ration + Maintenance faisabilitĂ©s canoniques **RĂŽle** : Cet agent OTOIA gĂ©nĂšre et maintient Ă  jour toutes les faisabilitĂ©s de projets sur le **modĂšle canonique le plus rĂ©cent**. Élimine les faisabilitĂ©s obsolĂštes ou hĂ©tĂ©rogĂšnes. ## Mission 1. **GĂ©nĂ©rer** les faisabilitĂ©s 4 volets pour chaque projet (Masterplan · Architecture · Paysage-ExpĂ©rience · IngĂ©nierie-FaisabilitĂ©) 2. **Maintenir un template canonique versionnĂ©** (`data_room/_TEMPLATE_FAISABILITE_v{X}/`) 3. **RĂ©gĂ©nĂ©rer automatiquement** toutes les faisabilitĂ©s existantes quand le template canonique est mis Ă  jour 4. **Propager les workflow updates** Ă  toutes les faisabilitĂ©s actives 5. **DĂ©tecter les faisabilitĂ©s obsolĂštes** (version < template actuel) et dĂ©clencher rĂ©gĂ©nĂ©ration 6. **Score qualitĂ© 4Big ≄ 95/100** obligatoire ## Livrables FaisabilitĂ© rĂ©ellement produits (`05_deliverables_mvp/faisabilite/`) GĂ©nĂ©rateurs dĂ©terministes **in-repo** (pĂ©rimĂštre worker · `CLAUDE.md` #8), gatĂ©s en CI — les composants runtime OTOIA/VPS listĂ©s plus bas (`otoia/capabilities/
`, systemd) restent **hors pĂ©rimĂštre worker** ; ces modules en sont la contrepartie commitĂ©e et testable. | Module | Sprint | RĂŽle | EntrĂ©e CLI | Job CI | Tests | |---|---|---|---|---|---| | [`TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md`](../../05_deliverables_mvp/faisabilite/TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md) | 1 (roadmap L41-46) | **Template canonique v1.0** — contrat des 4 volets + champs obligatoires (§Livrable S1 ci-dessous) | — (doc contrat) | `check-docs` | — | | [`generator/`](../../05_deliverables_mvp/faisabilite/generator/README.md) | 2 (roadmap L44) | **GĂ©nĂ©rateur 4 volets** : `brief.json` → `data_room/PXX/` (template v1.0), round-trip via le parser Publiciste | `faisabilite_gen.py score\|scaffold\|generate\|batch` | `faisabilite-gen-tests` | 16 | | [`bancable/`](../../05_deliverables_mvp/faisabilite/bancable/README.md) | 3 (roadmap L46) | **Dossier bancable trilingue** : `brief.json` → `50_financier_bancable/{fr,en,es}.md` + manifest, figures sourcĂ©es verbatim + agrĂ©gats recalculĂ©s | `bancable_gen.py build\|validate` | `bancable-tests` | 22 | **Anti-invention (#6)** : `generator` et `bancable` ne **fabriquent aucun chiffre** — les figures sont citĂ©es verbatim depuis le `brief.json` du projet et les agrĂ©gats sont recalculĂ©s de façon traçable (formule recoupĂ©e en test). Aucune faisabilitĂ© concrĂšte PXX n'est commitĂ©e ici : seuls le gĂ©nĂ©rateur, son contrat et ses fixtures d'entrĂ©e le sont (le rendu rĂ©el des 9 projets s'exĂ©cute cĂŽtĂ© OTOIA/VPS · #8). ## FaisabilitĂ© = SSOT · Project Identity Engine (Annexe 12 · V10.1) Le [`DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE_20260803.md`](../../DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE_20260803.md) (Michel · 2026-08-03) dĂ©signe **cet agent** comme la **source unique de vĂ©ritĂ© (SSOT)** de toute la stack : la faisabilitĂ© est le *Project DNA*, et aucun livrable downstream (brochure, kit banquier, contrat, page projet, section app
) ne doit ĂȘtre recréé Ă  la main si la donnĂ©e existe dĂ©jĂ  ici. Le module commitĂ© [`pie/manifest`](../../05_deliverables_mvp/pie/manifest/README.md) livre le **P0** de la directive — le **schĂ©ma Project Master Data** + le **manifest de dĂ©pendances** `faisabilitĂ© → livrables downstream`, versionnable et cross-vĂ©rifiĂ©. Ainsi, toute modification de faisabilitĂ© dĂ©clenche la **rĂ©gĂ©nĂ©ration sĂ©lective** des seuls livrables concernĂ©s (rĂšgles de synchronisation portĂ©es par le manifest). Les comptes exacts (groupes Master Data, rĂšgles de synchronisation, registre downstream) **font foi dans le README du module** — cet agent en est la source, pas la copie. ## Sources canoniques > **Chemins VPS runtime — hors pĂ©rimĂštre worker (#8), non commitĂ©s in-repo** (prĂ©fixe > absolu `/opt/oto/
`, placeholder de version `{X}`). La **contrepartie commitĂ©e, > testĂ©e et gatĂ©e** du template canonique est > [`TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md`](../../05_deliverables_mvp/faisabilite/TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md) > (table §Livrables ci-dessus) — **la rĂ©fĂ©rence de vĂ©ritĂ© pour le worker** ; les > chemins ci-dessous dĂ©crivent l'emplacement runtime OTOIA/VPS oĂč l'agent exĂ©cute. - `/opt/oto/otoia/capabilities/knowledge/faisabilite_4_volets_standard.md` (STANDARD OFFICIEL) - `/opt/oto/data_room/_TEMPLATE_FAISABILITE_v{X}/` (template versionnĂ©) - `/opt/oto/data_room/PXX/00_brief/` (donnĂ©es projet) ## Structure faisabilitĂ© (4 volets standard) ``` data_room/PXX/ ├── _META/ │ └── version.json ← Version template utilisĂ©e ├── 00_brief/ ← Contexte projet ├── 10_masterplan/ ← Volet 1 ├── 20_architecture/ ← Volet 2 ├── 30_paysage_experience/ ← Volet 3 ├── 40_ingenierie_faisabilite/ ← Volet 4 ├── 40_llm_outputs/ ← Analyses AI (commercial, marchĂ©, fiscal, etc.) ├── 50_financier_bancable/ ← One-pager + rapports FR/EN/ES └── 60_photos_site/ ← Rendus ``` ## RĂšgles absolues - ❌ ZĂ©ro faisabilitĂ© version < template canonique en production - ❌ ZĂ©ro faisabilitĂ© manuellement Ă©ditĂ©e sans mise Ă  jour du template - ✅ Chaque faisabilitĂ© stocke sa version template dans `_META/version.json` - ✅ RĂ©gĂ©nĂ©ration = 100% automatique via OTOIA, jamais manuel ## Workflow versioning ### Trigger : Template canonique mis Ă  jour 1. **DĂ©tecter** modif dans `capabilities/knowledge/faisabilite_4_volets_standard.md` 2. **Bump version** template (v1.0 → v1.1) 3. **Lister** toutes les faisabilitĂ©s en production (data_room/PXX/) 4. **Pour chaque projet** : a. Lire brief + donnĂ©es existantes du projet b. RĂ©gĂ©nĂ©rer 4 volets avec nouveau template c. RĂ©gĂ©nĂ©rer 40_llm_outputs (commercial · marchĂ© · directeur · etc.) d. RĂ©gĂ©nĂ©rer 50_financier_bancable (one-pager + rapports FR/EN/ES) e. Update `_META/version.json` f. Archiver ancienne version dans `_ARCHIVES/PXX_v{N}_YYYYMMDD/` g. Score qualitĂ© 4Big ≄ 95/100 obligatoire 5. **Notifier Publiciste Agent** → rĂ©gen site public 6. **Log + WhatsApp Michel** notification ### Trigger : Nouveau projet créé 1. CrĂ©er structure `data_room/PXX/` avec template derniĂšre version 2. GĂ©nĂ©rer les 4 volets (Masterplan · Architecture · Paysage · IngĂ©nierie) 3. GĂ©nĂ©rer analyses AI (commercial, marchĂ©, fiscal, RH, juridique, etc.) 4. GĂ©nĂ©rer rapports bancables FR/EN/ES + one-pager 5. Score qualitĂ© 4Big ≄ 95/100 avant marquer projet comme "faisabilitĂ© complĂšte" ## Gap actuel identifiĂ© (2026-07-29) **Constat audit :** - ✅ P01, P08, P09 : prix documentĂ©s dans commercial.md - ⚠ P02, P03, P05, P07 : "prix non dĂ©fini" / "typologie non fournie" dans commercial.md **Cause probable :** faisabilitĂ©s gĂ©nĂ©rĂ©es avec templates diffĂ©rents / anciens · pas toutes au mĂȘme standard. **Action correctrice (prioritĂ©)** : 1. Fixer le template canonique v1.0 avec tous les champs obligatoires 2. RĂ©gĂ©nĂ©rer les 7 faisabilitĂ©s avec ce template 3. Score 4Big 95+/100 sur toutes 4. Publiciste Agent extrait et publie ## Composants Ă  crĂ©er 1. `otoia/capabilities/faisabilite_agent.py` — orchestrateur 2. `otoia/capabilities/knowledge/faisabilite_template_v{X}.md` — templates versionnĂ©s 3. Systemd `otoia-faisabilite.timer` (check horaire modifications template) 4. Version tracking (`_META/version.json` par projet) 5. Archives auto (`_ARCHIVES/`) ## Coordination inter-agents - **BIM Agent** : gĂ©nĂšre rendus utilisĂ©s dans volet Architecture - **Rendu Agent** : produit rendus finaux dans 60_photos_site - **Publiciste Agent** : consomme la faisabilitĂ© pour maintenir vente.otov7.com - **ERPNext Backend** : stocke DocType "FaisabilitĂ©" avec version + score qualitĂ© - **QA Agent** : valide score 4Big ≄ 95/100 avant publication - **PIE (Annexe 12)** : consomme la faisabilitĂ© comme SSOT et propage toute modif aux livrables downstream via le manifest de dĂ©pendances (voir §*FaisabilitĂ© = SSOT* ci-dessus) ## Livrable Sprint (mandat 8 semaines) - **S1** : Template canonique v1.0 finalisĂ© + agent scaffold - **S2** : GĂ©nĂ©rateur 4 volets automatique - **S3** : Version tracking + archives auto - **S4** : RĂ©gĂ©nĂ©ration batch des 7 faisabilitĂ©s existantes - **S5** : Validation qualitĂ© 4Big ≄ 95/100 sur toutes - **S6** : Trigger auto sur template update - **S7** : Handoff Publiciste (pipeline complet) - **S8** : Production + monitoring