Nicolas Cantu bc3c75e15f Add enso docs mirror under services/docv/enso-docs; docv integration docs
- Copy enso/docs tree to services/docv/enso-docs (refresh via cp -a from enso repo)
- Document mirror and refresh command in services/docv/README.md
- Ignore services/docv/target for local Rust workspace
- Track docv-service-integration, API docv.md, and related doc index updates
2026-04-03 17:26:35 +02:00

109 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# enso — Documentation projet (avocats)
Point dentré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 dactes, 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 dIdNot, 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 117, 18.118.83). |
| [REFERENTIEL_ECRANS_ACTIONS.md](../features/REFERENTIEL_ECRANS_ACTIONS.md) | Liste exhaustive écrans et actions avec identifiants stables (zones 115 et 17). |
| [specs/README.md](../features/specs/README.md) | Spécifications fonctionnelles par zone (SPEC_01 à SPEC_17). Pour enso : toutes les specs 0115 (docv) + **SPEC_17_ia_local** (spécifique enso). |
| [implementation/README.md](../features/implementation/README.md) | Description technique dimplémentation par zone (IMPL_01 à IMPL_17). Pour enso : IMPL_01IMPL_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 (E1E31) ; 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 dopération : JSON embarqué front, i18n, titre suggéré à la création de dossier ; pas dAPI docv. |
---
## 3. Correspondance spécifiques enso (E1E31) 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 dactes | 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 dabord, 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 sappuient 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 ; nimplé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 len-tête de lapplication). **`next.config.js`** redirige **`/favicon.ico`** vers **`/icon.jpg`** pour les clients qui ne lisent que lURL 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.5318.83).
4. [ORDRE_INTEGRATION_ZONE_17.md](ORDRE_INTEGRATION_ZONE_17.md) — ordre dinté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 E1E31 avant implémentation.
Pour les zones 115 (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.