# Plan de développement — docv / enso Plan de développement actionnable du monorepo enso. Il détaille les phases, les jalons et l’ordre des travaux en s’appuyant sur le [plan de réalisation](PLAN_REALISATION_DOCV_ENSO.md), l’[implémentation docv](docv/IMPLEMENTATION.md) et l’[ordre d’intégration enso](enso/ORDRE_INTEGRATION_ZONE_17.md). --- ## 1. Vue d’ensemble 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 1–15. | | **2** | enso (avocats) | Phase 1 suffisamment avancée | Back enso, front enso, BDD enso, zone 17 (ia_local) selon ordre d’inté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 1–2 | 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 d’erreurs (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 d’implémentation par zone Les zones sont implémentées dans l’ordre 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 d’office) 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 d’office | 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 1–15, 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 1–15), 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 1–15, 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) (E1–E31). ### 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 1–15 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.55–18.58, 18.71–18.74, 18.77–18.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 E1–E31 à 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 1–15 + zone 17 selon ordre d’intégration. --- ## 5. Phase 3 — hors périmètre actuel La phase « troisième produit » n’est pas suivie dans ce dépôt pour l’instant. 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 1–15 dans l’ordre §3.1) │ ▼ Phase 2 (enso) — zones 1–15 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 d’intégration zone 17 (enso). | | [features/SPECIFIQUES_PROJETS.md](features/SPECIFIQUES_PROJETS.md) | Liste et statut de confirmation des spécifiques enso (E1–E31). | | [features/implementation/README.md](features/implementation/README.md) | IMPL_xx par zone (détail technique). |