smart_ide/services/docv/enso-docs/PLAN_DEVELOPPEMENT.md
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

156 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.

# Plan de développement — docv / enso
Plan de développement actionnable du monorepo enso. Il détaille les phases, les jalons et lordre des travaux en sappuyant sur le [plan de réalisation](PLAN_REALISATION_DOCV_ENSO.md), l[implémentation docv](docv/IMPLEMENTATION.md) et l[ordre dintégration enso](enso/ORDRE_INTEGRATION_ZONE_17.md).
---
## 1. Vue densemble des phases
| Phase | Objectif | Dépendance | Livrable clé |
|-------|----------|------------|---------------|
| **0** | Cadrage et règles | Aucune | Monorepo structuré, règles Cursor/lint, sous-module ai, docs à jour. |
| **1** | docv (socle commun) | Phase 0 | Back docv (Rust), front docv (Next.js), BDD + seeds, login par défaut, zones 115. |
| **2** | enso (avocats) | Phase 1 suffisamment avancée | Back enso, front enso, BDD enso, zone 17 (ia_local) selon ordre dintégration. |
| **3** | — | — | Hors périmètre actuel du dépôt (voir [HORS_PERIMETRE_NOTAIRE.md](HORS_PERIMETRE_NOTAIRE.md)). |
| **4** | Convergence et qualité | Phases 12 | Lint/conformité, scripts deploy/, clôture évolutions, documentation à jour. |
Les phases 1 et 2 se succèdent ; la phase 4 clôt une fois docv et enso stabilisés pour le périmètre visé.
---
## 2. Phase 0 — Cadrage et règles
**Référence :** [PLAN_REALISATION_DOCV_ENSO.md](PLAN_REALISATION_DOCV_ENSO.md) (Phase 0).
### 2.1 Jalons
| Jalon | Contenu | Critère de complétion |
|-------|---------|------------------------|
| 0.1 | Structure du monorepo | Dossiers `docv/`, `enso/`, `deploy/`, `.secrets/`, `docs/` ; `package.json` racine (workspaces) ; `.gitignore` (secrets, node_modules, target, .env). |
| 0.2 | Sous-module API IA | `.gitmodules` avec `ai` → https://git.4nkweb.com/4nk/ai.git ; dépôt `ai` cloné (ou prêt dès premier commit distant). |
| 0.3 | Règles Cursor | Fichiers dans `.cursor/rules/` : qualité, lint, clôture évolution, correction derreurs (référence section 10 du plan de réalisation). |
| 0.4 | Règles de lint | Config ESLint (front) et Clippy / rustfmt (back) ; max-lines, max-lines-per-function, max-params, complexity alignés sur les règles Cursor. |
| 0.5 | Documentation cadrage | Architecture, plan de réalisation, plan de développement (ce document) à jour et accessibles depuis [docs/README.md](README.md). |
### 2.2 Livrable Phase 0
- Repo structuré, règles Cursor et lint définies et applicables, pas de code métier obligatoire au-delà des squelettes existants.
---
## 3. Phase 1 — docv (socle commun)
**Référence :** [docv/IMPLEMENTATION.md](docv/IMPLEMENTATION.md), [docv/README.md](docv/README.md), [PLAN_REALISATION](PLAN_REALISATION_DOCV_ENSO.md) (Phase 1).
### 3.1 Ordre dimplémentation par zone
Les zones sont implémentées dans lordre des dépendances. Détail : [docv/IMPLEMENTATION.md](docv/IMPLEMENTATION.md) section 1.
| Ordre | Zone | IMPL | Livrable zone |
|-------|------|------|----------------|
| 1 | 1 — Auth et compte | IMPL_01 | Login par défaut (identifiant/mot de passe, session ou JWT, choix doffice) pour tous les types de membres. |
| 2 | 5 — Offices et membres | IMPL_05 | CRUD offices, collaborateurs, utilisateurs, RIB ; contexte office actif. |
| 3 | 6 — Rôles et permissions | IMPL_06 | Matrice rôle × ressource × action ; screen_config / action_config (paramétrage). |
| 4 | 4 — Types de dossiers | IMPL_04 | Référentiel types de dossiers par office. |
| 5 | 3 — Documents et types | IMPL_03 | Types de documents, upload/download. |
| 6 | 2 — Dossiers | IMPL_02 | CRUD dossiers, liste, archivés, supprimés. |
| 7 | 7 — Parties et partage | IMPL_07 | Parties au dossier, partage, invitations. |
| 8 | 8 — Notes et rappels | IMPL_08 | Notes et rappels liés dossiers/documents. |
| 9 | 14 — Contenus et paramètres | IMPL_14 | Textes légaux, config publique. |
| 10 | 13 — Admin plateforme | IMPL_13 | Super-admin : rôles plateforme, plans, textes, system_configuration. |
| 11 | 9 — Abonnement et facturation | IMPL_09 | Abonnement par office, plans, prestataire paiement (back). |
| 12 | 10, 11 — Espace client / invité | IMPL_10 | Portail client, accès invité. |
| 13 | 12 — Admin doffice | IMPL_12 | Portail admin office, métriques. |
| 14 | 15 — Technique et design | IMPL_15 | Vérification ancrage, design system, paramétrage écrans/actions. |
### 3.2 Sous-phases Phase 1
| Sous-phase | Contenu | Livrable |
|------------|---------|----------|
| **1.1 Backend docv** | Stack Rust (Axum/Actix), PostgreSQL (SQLx/Diesel), migrations BDD (ordre §3.1), handlers/services/repositories pour chaque zone, clients anchoring + IA (back uniquement), erreurs typées, logging. | Service docv-back démarre, expose les endpoints zones 115, lit/écrit BDD, consomme ancrage et IA côté back. |
| **1.2 Frontend docv** | Stack Next.js (ou équivalent), client API unique vers docv-back, pages et composants pour chaque écran (référentiel zones 115), design system (tokens, thème), i18n (structure + défauts fr/en), chargement screen_config/action_config. | Front docv utilisable en autonomie sur BDD et back docv. |
| **1.3 Données et paramétrage** | Seeds : rôles, permissions, types documents/dossiers, textes site, system_configuration ; seeds screen_config/action_config (identifiants stables). | Instance docv déployée avec structures et données par défaut réutilisables par enso. |
### 3.3 Critères de passage à la Phase 2
- Back docv opérationnel (auth, offices, rôles, dossiers, documents, partage, admin, paramétrage).
- Front docv opérationnel (écrans zones 115, design system, i18n).
- Migrations et seeds appliqués ; login par défaut fonctionnel pour tous les types de membres.
- API ancrage et API IA (sous-module ai) consommables par le back (contrats stables ou stubs documentés).
---
## 4. Phase 2 — enso (avocats)
**Référence :** [enso/README.md](enso/README.md), [enso/ORDRE_INTEGRATION_ZONE_17.md](enso/ORDRE_INTEGRATION_ZONE_17.md), [SPECIFIQUES_PROJETS.md](features/SPECIFIQUES_PROJETS.md) (E1E31).
### 4.1 Jalons
| Jalon | Contenu | Critère de complétion |
|-------|---------|------------------------|
| 2.1 | Héritage docv dans enso | BDD enso (schéma docv + migrations), enso-back et enso-front structure alignée docv ; config (seeds, thème, i18n) spécifique avocat. |
| 2.2 | Zones 115 opérationnelles dans enso | Même fonctionnalités que docv (auth par défaut, offices, rôles, dossiers, documents, partage, etc.) avec paramétrage enso. |
| 2.3 | Zone 17 — Config et navigation | Établissements (18.68), admin-types (18.69), Explorer (18.81), recherche (18.82), dashboard minimal (18.53). |
| 2.4 | Zone 17 — CRM, tâches, débours | CRM (18.54), tâches (18.64), planning (18.75), débours (18.65), facturation débours (18.70). |
| 2.5 | Zone 17 — Partage, dataroom, alertes, workflow | Renvoi (18.58), data room (18.61), extraction dataroom (18.59), alertes (18.60), workflow (18.63). |
| 2.6 | Zone 17 — Communication et actes | Messages (18.66), notifications (18.67), courriers IFU (18.62), mails semi-auto (18.72) ; actes et juridique (18.5518.58, 18.7118.74, 18.7718.78). |
| 2.7 | Zone 17 — IA et compte | Outlook (18.79), organigramme (18.76), Chat IA (18.80), appareils (18.83). |
Ordre détaillé des sous-blocs zone 17 : [enso/ORDRE_INTEGRATION_ZONE_17.md](enso/ORDRE_INTEGRATION_ZONE_17.md). Spécifiques E1E31 à confirmer avant implémentation ([SPECIFIQUES_PROJETS.md](features/SPECIFIQUES_PROJETS.md)).
### 4.2 Livrable Phase 2
- Application enso déployable avec BDD enso, back enso (consommation ancrage + IA côté back uniquement), front enso (design et textes avocat), zones 115 + zone 17 selon ordre dintégration.
---
## 5. Phase 3 — hors périmètre actuel
La phase « troisième produit » nest pas suivie dans ce dépôt pour linstant. Référence : [HORS_PERIMETRE_NOTAIRE.md](HORS_PERIMETRE_NOTAIRE.md).
---
## 6. Phase 4 — Convergence et qualité
**Référence :** [PLAN_REALISATION](PLAN_REALISATION_DOCV_ENSO.md) (Phase 4), section 5 (règles Cursor et lint).
### 6.1 Jalons
| Jalon | Contenu | Critère de complétion |
|-------|---------|------------------------|
| 4.1 | Documentation à jour | Architecture, plan de réalisation, plan de développement, docs docv/enso et implémentation reflètent létat réel (stack, schémas BDD, endpoints). |
| 4.2 | Conformité Cursor et lint | Règles appliquées sur tout le code (docv, enso) ; pas de contournement ; Clippy / ESLint / type-check OK. |
| 4.3 | Scripts de déploiement | Scripts dans `deploy/` pour build et déploiement de docv et enso (BDD respectives). |
| 4.4 | Clôture des évolutions | Pour chaque livrable, workflow de clôture appliqué (helpers, i18n, fallback, modifications similaires, optimisation, sécurité, code mort, lint, types, compilation, documentation). |
### 6.2 Livrable Phase 4
- Documentation à jour ; conformité Cursor/lint ; scripts deploy/ opérationnels ; clôture des évolutions effectuée.
---
## 7. Dépendances et ordre de lecture
```
Phase 0 (Cadrage)
Phase 1 (docv) ──► 1.1 Backend → 1.2 Frontend → 1.3 Données (zones 115 dans lordre §3.1)
Phase 2 (enso) — zones 115 puis 17
Phase 4 (Convergence)
```
### 7.1 Références croisées
| Document | Usage |
|----------|--------|
| [PLAN_REALISATION_DOCV_ENSO.md](PLAN_REALISATION_DOCV_ENSO.md) | Phases et livrables globaux, règles Cursor, références. |
| [docv/IMPLEMENTATION.md](docv/IMPLEMENTATION.md) | Ordre des zones docv, stack, schéma BDD, surface API, checklist Phase 1. |
| [enso/ORDRE_INTEGRATION_ZONE_17.md](enso/ORDRE_INTEGRATION_ZONE_17.md) | Phases dintégration zone 17 (enso). |
| [features/SPECIFIQUES_PROJETS.md](features/SPECIFIQUES_PROJETS.md) | Liste et statut de confirmation des spécifiques enso (E1E31). |
| [features/implementation/README.md](features/implementation/README.md) | IMPL_xx par zone (détail technique). |