- 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
109 lines
9.9 KiB
Markdown
109 lines
9.9 KiB
Markdown
# 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.
|