# enso — Documentation projet (avocats) Point d’entrée de la documentation pour le projet **enso** (déclinaison avocats). enso hérite du socle **docv** (zones 1 à 15) et ajoute les fonctionnalités **ia_local** (zone 17). **Architecture globale :** [ARCHITECTURE_DOCV_ENSO.md](../ARCHITECTURE_DOCV_ENSO.md) (section 3.2 enso). **Plan de réalisation :** [PLAN_REALISATION_DOCV_ENSO.md](../PLAN_REALISATION_DOCV_ENSO.md) (Phase 2 — enso). --- ## 1. Périmètre enso | Source | Contenu | |--------|---------| | **docv (hérité)** | Zones 1 à 15 : authentification, offices, rôles, types de dossiers/documents, dossiers, documents, parties et partage, notes et rappels, abonnement, espaces client/invité, admin office, admin plateforme, contenus, technique et design. | | **enso (spécifique)** | Zone 17 : tableau de bord métier, CRM, composition d’actes, mise à jour DP, secrétariat juridique, renvoi dossier, extraction dataroom, alertes, data room, courriers IFU, workflow documentaire, tâches, débours, messages, notifications, config établissements, types et configuration, facturation débours, courriers annexes, mails semi-auto, édition formalités, fiche prépa AG, planning des charges, organigramme, listing annexes, devis/lettre de mission, Outlook, Chat IA, Explorer, recherche globale, mon compte appareils. | API externes consommées par **enso-back uniquement** : ancrage (serveur services, api-anchorage), IA (sous-module `ai`). Pas d’IdNot, Mailchimp, OVH, Stripe, API notaire. --- ## 2. Documentation de référence pour enso | Document | Usage | |----------|--------| | [SCREENS_AND_FUNCTIONS_MAP.md](../SCREENS_AND_FUNCTIONS_MAP.md) | Cartographie écrans et actions (sections 1–17, 18.1–18.83). | | [REFERENTIEL_ECRANS_ACTIONS.md](../features/REFERENTIEL_ECRANS_ACTIONS.md) | Liste exhaustive écrans et actions avec identifiants stables (zones 1–15 et 17). | | [specs/README.md](../features/specs/README.md) | Spécifications fonctionnelles par zone (SPEC_01 à SPEC_17). Pour enso : toutes les specs 01–15 (docv) + **SPEC_17_ia_local** (spécifique enso). | | [implementation/README.md](../features/implementation/README.md) | Description technique d’implémentation par zone (IMPL_01 à IMPL_17). Pour enso : IMPL_01–IMPL_15 (docv) + **IMPL_17_ia_local** (spécifique enso). | | [PARAMETRAGE_ECRANS_ACTIONS.md](../features/PARAMETRAGE_ECRANS_ACTIONS.md) | Modèle de paramétrage (écrans, actions, options). | | [SPECIFIQUES_PROJETS.md](../features/SPECIFIQUES_PROJETS.md) | Liste des spécifiques enso (E1–E31) ; statut de confirmation. | | [FONCTIONNALITES_IA_LOCAL_A_INTEGRER.md](../features/FONCTIONNALITES_IA_LOCAL_A_INTEGRER.md) | Détail fonctionnel des fonctionnalités ia_local à intégrer dans enso. | | [DOCV_API_ENSO_FRONT_MAP.md](../features/DOCV_API_ENSO_FRONT_MAP.md) | **Socle docv consommé par enso-front** : endpoint → handler Rust → fichier TS → écran (`/dashboard`, `/company/...`). | | [OPERATION_CHECKLISTS.md](../features/OPERATION_CHECKLISTS.md) | Checklists métier (pièces attendues) par slug d’opération : JSON embarqué front, i18n, titre suggéré à la création de dossier ; pas d’API docv. | --- ## 3. Correspondance spécifiques enso (E1–E31) et zone 17 Les spécifiques listés dans [SPECIFIQUES_PROJETS.md](../features/SPECIFIQUES_PROJETS.md) (section 2) correspondent aux écrans et actions de la zone 17. Mapping pour implémentation : | Spécifique | Identifiant écran (zone 17) | Actions 18.x | Spec / IMPL | |------------|----------------------------|--------------|-------------| | E1 Composition d’actes | ia.composition-actes | 18.55 | SPEC_17 / IMPL_17 | | E2 Mise à jour DP | ia.mise-a-jour-dp | 18.56 | SPEC_17 / IMPL_17 | | E3 Secrétariat juridique | ia.secretariat | 18.57 | SPEC_17 / IMPL_17 | | E4 Renvoi de dossier | ia.renvoi-dossier | 18.58 | SPEC_17 / IMPL_17 | | E5 Extraction dataroom | ia.extraction-dataroom | 18.59 | SPEC_17 / IMPL_17 | | E6 Alertes fins de dossiers | ia.alertes | 18.60 | SPEC_17 / IMPL_17 | | E7 Data room | ia.data-room | 18.61 | SPEC_17 / IMPL_17 | | E8 Courriers IFU / RDPD DVD | ia.courriers-ifu | 18.62 | SPEC_17 / IMPL_17 | | E9 Workflow documentaire | ia.workflow | 18.63 | SPEC_17 / IMPL_17 | | E10 Tâches métier | ia.taches | 18.64 | SPEC_17 / IMPL_17 | | E11 Débours | ia.debours | 18.65 | SPEC_17 / IMPL_17 | | E12 Messages / Tchat | ia.messages | 18.66 | SPEC_17 / IMPL_17 | | E13 CRM | ia.crm | 18.54 | SPEC_17 / IMPL_17 | | E14 Configuration établissements | ia.config-etablissements | 18.68 | SPEC_17 / IMPL_17 | | E15 Types et configuration | ia.admin-types | 18.69 | SPEC_17 / IMPL_17 | | E16 Facturation débours | ia.facturation-debours | 18.70 | SPEC_17 / IMPL_17 | | E17 Courriers annexes | ia.courriers-annexes | 18.71 | SPEC_17 / IMPL_17 | | E18 Mails semi-auto | ia.mails-semi-auto | 18.72 | SPEC_17 / IMPL_17 | | E19 Édition formalités | ia.edition-formalites | 18.73 | SPEC_17 / IMPL_17 | | E20 Fiche prépa AG | ia.fiche-prepa-ag | 18.74 | SPEC_17 / IMPL_17 | | E21 Planning des charges | ia.planning-charges | 18.75 | SPEC_17 / IMPL_17 | | E22 Organigramme | ia.organigramme | 18.76 | SPEC_17 / IMPL_17 | | E23 Listing annexes | ia.listing-annexes | 18.77 | SPEC_17 / IMPL_17 | | E24 Devis / lettre de mission | ia.devis-lettre-mission | 18.78 | SPEC_17 / IMPL_17 | | E25 Interfaçage Outlook | ia.outlook | 18.79 | SPEC_17 / IMPL_17 | | E26 Chat IA | ia.chat | 18.80 | SPEC_17 / IMPL_17 | | E27 Explorer | ia.explorer | 18.81 | SPEC_17 / IMPL_17 | | E28 Recherche globale | ia.search | 18.82 | SPEC_17 / IMPL_17 | | E29 Mon compte – appareils | ia.my-account-devices | 18.83 | SPEC_17 / IMPL_17 | | E30 Thème / design enso | — | — | Configuration front (theme/, design-system) | | E31 Textes et libellés avocat | — | — | Configuration i18n (structure docv + surcharges enso) | E30 et E31 sont de la **configuration** (surcharges thème et i18n), pas des écrans supplémentaires. Tableau de bord métier (18.53) et notifications (18.67) couvrent les usages associés aux spécifiques. --- ## 4. Structure cible enso (rappel) ### 4.1 Répartition des API (docv d’abord, enso pour le spécifique) | Couche | Rôle | Périmètre | |--------|------|-----------| | **docv-back** | API HTTP du **socle** (zones 1 à 15), réutilisable par **tous** les sites produits qui s’appuient sur docv | Auth, offices, rôles, dossiers, documents, partage, abonnement, admin, etc. — tout ce qui doit rester **commun et mutualisable**. | | **enso-front** | Consomme en **priorité** les API **docv** (chemins publics type **`/docv-api/`** derrière reverse proxy) pour les fonctionnalités héritées du socle ; n’implémente côté Next que ce qui est propre au rendu (Route Handlers **`/api/*`** pour secrets serveur, BFF léger, OAuth token exchange, etc.). | Une nouvelle capacité **métier** exposée à plusieurs produits doit être **portée dans docv** (back + contrats), pas dupliquée dans enso-back. | | **enso-back** | API **spécifique cabinet / projet enso** : zone **17** (ia_local), extensions ou agrégats réservés au périmètre avocats, intégrations (ancrage, IA) **côté serveur** quand elles ne doivent pas vivre dans docv. | Pas reconstituer dans enso-back ce que **docv-back** porte déjà pour les zones 1 à 15 ; enso-back complète docv pour le **différenciant** enso. | En résumé : **fonctionnalités destinées à tous les sites** → **docv** ; **spécifique enso (cabinet)** → **enso-back** + front ; le front **enso** dialogue **au maximum** avec **docv-back** pour le cœur métier commun. ### 4.2 Composants et données - **enso-front** : même stack que docv-front ; hérite design system docv ; surcharges `theme/`, `i18n/` ; pages et composants zone 17 (routes `/ia/*`, `/dashboard`, `/crm`, etc.) ; authentification utilisateur via OAuth2 **docv-back** (redirect `enso` → docv → retour `/auth/docv-callback`). Favicon : conventions Next.js dans `src/app/` — `icon.jpg` et `apple-icon.jpg`, copie du bandeau **`enso-logo-banner.jpg`** (même visuel que l’en-tête de l’application). **`next.config.js`** redirige **`/favicon.ico`** vers **`/icon.jpg`** pour les clients qui ne lisent que l’URL historique. - **enso-back** : Rust, serveur HTTP **Axum** ; BDD enso (PostgreSQL, schéma dérivé docv + tables zone 17) ; handlers/services pour le **périmètre spécifique** (zone 17 et extensions cabinet) ; consommation API ancrage et API IA côté back uniquement, **en complément** des appels front → **docv-back** pour le socle. **Présence** : `GET /api/v1/enso/status` (JSON `service`, `ready`, `database`, réservés `anchoring` / `ia`) — [DOCV_API_ENSO_FRONT_MAP.md](../features/DOCV_API_ENSO_FRONT_MAP.md) §4, [PORTS_ENSO.md](../PORTS_ENSO.md). - **Migrations et seeds** : structure docv + tables établissements, tâches, alertes, débours, datarooms, messages, notifications, etc. (voir [IMPL_17_ia_local.md](../features/implementation/IMPL_17_ia_local.md) section 4. Entités BDD). --- ## 5. Ordre de lecture recommandé pour implémenter enso 1. [ARCHITECTURE_DOCV_ENSO.md](../ARCHITECTURE_DOCV_ENSO.md) (section 3.2) — structure enso-front / enso-back. 2. [SPEC_17_ia_local.md](../features/specs/SPEC_17_ia_local.md) — périmètre fonctionnel zone 17. 3. [IMPL_17_ia_local.md](../features/implementation/IMPL_17_ia_local.md) — implémentation technique zone 17 (routes, front, back, BDD, actions 18.53–18.83). 4. [ORDRE_INTEGRATION_ZONE_17.md](ORDRE_INTEGRATION_ZONE_17.md) — ordre d’intégration des sous-blocs zone 17 (phases et dépendances). 5. [REFERENTIEL_ECRANS_ACTIONS.md](../features/REFERENTIEL_ECRANS_ACTIONS.md) — identifiants stables pour paramétrage (screen_config, action_config). 6. [SPECIFIQUES_PROJETS.md](../features/SPECIFIQUES_PROJETS.md) — confirmation des spécifiques E1–E31 avant implémentation. Pour les zones 1–15 (socle docv), utiliser les SPEC_01 à SPEC_15 et IMPL_01 à IMPL_15 ; enso réutilise ou étend ces zones par configuration et par ajout des écrans zone 17.