Aller au contenu principal

Priorités de Développement - Aaperture

Source de vérité : Ce document est la référence principale pour les priorités de développement. Pour une vue détaillée par domaine fonctionnel, consultez PLAN_AMELIORATIONS_CRM.md.

Ce document liste les priorités de développement basées sur l'analyse de la documentation et l'état actuel du projet.

Dernière mise à jour : Après complétion de la gestion centralisée des types via OpenAPI


✅ Complété Récemment

  1. Système de réservation publique - 100% complété

    • ✅ Interface publique avec calendrier interactif
    • ✅ Gestion des conflits avec verrouillage Redis
    • ✅ Tests unitaires et d'intégration complets (149 tests)
    • ✅ Documentation complète
  2. Global Search & IA - Phase 1 - 100% complété

    • ✅ Assistant conversationnel intégré
    • ✅ Builder de vues personnalisées via prompts
    • ✅ Génération d'actions complexes
  3. Tests d'intégration pour conflits de réservation - 100% complété

    • ✅ 7 tests d'intégration pour scénarios concurrents
    • ✅ Tests de verrouillage et nettoyage
  4. Intégration Stripe complète - 100% complété

    • ✅ Gestion des abonnements (création, annulation, reprise)
    • ✅ Paiement des factures via Stripe Payment Intents
    • ✅ Collecte de méthodes de paiement via SetupIntent
    • ✅ Attachement de méthodes de paiement au client Stripe
    • ✅ Webhooks pour synchronisation automatique
    • ✅ Historique des paiements
    • ✅ Interface utilisateur complète avec Stripe Elements
  5. Backup et disaster recovery - 100% complété

    • ✅ Sauvegardes automatiques quotidiennes (scheduler NestJS à 2h du matin)
    • ✅ Vérification d'intégrité avec checksum SHA-256
    • ✅ Monitoring complet (statut, durée, erreurs)
    • ✅ Alertes email en cas d'échec
    • ✅ Plan de disaster recovery documenté
    • ✅ Statistiques de backup pour monitoring
    • Documentation : docs/DISASTER_RECOVERY.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Infrastructure & Robustesse"
  6. Gestion des timeouts - 100% complété

    • ✅ Configuration centralisée via module TimeoutConfig
    • ✅ Timeouts configurables pour toutes les opérations (DB, APIs externes, HTTP, cron, migrations, backups)
    • ✅ Middleware HTTP global pour timeout des requêtes - ✅ Appliqué
    • ✅ Timeouts dans scripts shell (migrations, backups) - ✅ Appliqué
    • ✅ Timeouts DB (pool et requêtes) - ✅ Appliqué
    • ✅ Utilitaires de timeout avec support retry - ✅ Disponibles et utilisés
    • ✅ Application des timeouts dans services OpenAI - ✅ Appliqué (tous les appels API wrappés)
    • ✅ Application des timeouts dans services Google Calendar/Gmail - ✅ Appliqué (helper withCalendarTimeout utilisé)
    • ✅ Application des timeouts dans schedulers cron - ✅ Appliqué (tous les schedulers wrappés avec executeWithTimeoutAndRetry)
    • Documentation : docs/TIMEOUT_MANAGEMENT.md, docs/ENV_VARIABLES_TIMEOUT.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Infrastructure & Robustesse"
  7. Amélioration du processus de migration - 100% complété

    • ✅ Validation automatique des migrations avant exécution
    • ✅ Backup automatique avant migration en production
    • ✅ Logging complet dans table migration_logs (statut, durée, erreurs)
    • ✅ Rollback automatique en cas d'échec
    • ✅ Vérification de l'ordre des migrations
    • ✅ Script amélioré migrate-improved.sh avec toutes les fonctionnalités
    • Tests automatisés de migration dans CI/CD - Job test:migrations qui valide les migrations avant déploiement
    • Interface admin pour visualiser les migrations - Onglet "Migrations" avec statistiques, liste des migrations, détection des migrations manquantes
    • Alertes automatiques en cas d'échec de migration - Scheduler NestJS qui vérifie quotidiennement les migrations échouées et envoie des emails d'alerte
    • Validation avancée - Détection des migrations manquantes via comparaison DB/changelog (parsing du changelog-master.yaml et comparaison avec migration_logs)
    • Documentation : docs/MIGRATION_PROCESS.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Infrastructure & Robustesse"
  8. Système d'export centralisé multi-formats - 100% complété

    • ✅ Service centralisé ExportService pour tous les exports
    • ✅ Support multi-formats : PDF, Word (DOCX), CSV, Excel (XLSX), JSON
    • ✅ Endpoints unifiés avec paramètre format pour toutes les entités
    • ✅ Conversion HTML→Word pour quotes, invoices, contracts
    • ✅ Composant frontend réutilisable ExportFormatDialog
    • ✅ Exports pour : sessions, contacts, quotes, invoices, conversations, roadmaps, contract templates
    • ✅ Types TypeScript générés depuis OpenAPI
    • ✅ Documentation complète
    • Documentation : docs/EXPORT_SYSTEM.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Export & Import"
  9. Navigation mobile améliorée - 100% complété

    • ✅ Menu utilisateur full-screen sur mobile (UserMenuMobile)
    • ✅ Sous-menus expansibles avec chevrons
    • ✅ Contenu scrollable pour menus longs
    • ✅ Détection automatique mobile/desktop dans UserDropdown
    • ✅ Navigation tactile optimisée
    • ✅ Intégration dans MobileSidebar
  10. Système de queue pour jobs lourds - 100% complété

    • ✅ Module QueueModule avec configuration BullMQ et Redis
    • ✅ Service QueueService pour gérer les queues et jobs
    • ✅ 6 queues configurées : exports, google-calendar-sync, scheduled-emails, workflow-tasks, recurring-sessions, audit-cleanup
    • ✅ 6 processors implémentés pour chaque type de job
    • ✅ Migration complète des schedulers vers la queue (non-bloquant)
    • ✅ Migration du ExportController vers la queue
    • ✅ Intégration WebSocket pour mises à jour de statut en temps réel
    • ✅ Endpoint /export/status/:jobId pour vérifier le statut des jobs
    • ✅ Retry automatique avec backoff exponentiel
    • ✅ Documentation complète
    • Documentation : docs/QUEUE_SYSTEM.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Infrastructure & Robustesse"
  11. Gestion centralisée des types via OpenAPI - 100% complété

    • ✅ Audit complet des types utilisés dans frontend et backend
    • ✅ Migration de tous les types partagés vers OpenAPI
    • ✅ Types scope-specific (frontend-only ou backend-only) dans fichiers types.ts appropriés
    • ✅ Suppression des définitions de types dupliquées
    • ✅ Mise à jour de tous les imports pour utiliser les types générés
    • ✅ Vérification que tous les types OpenAPI sont correctement exportés
    • ✅ Documentation complète des règles de gestion des types
    • ✅ Correction des erreurs de validation OpenAPI
    • Documentation : docs/AGENTS_OPENAPI.md
    • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Tests & Qualité"
  • ✅ Renommage menu "Administration" → "Système" pour éviter confusion
  • Documentation : docs/MOBILE_NAVIGATION.md
  • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Mobile & PWA"

🚀 Priorité Haute (Impact élevé, Effort moyen)

1. Calendrier visuel amélioré ✅ COMPLÉTÉ

  • Impact : Essentiel pour la gestion des sessions
  • Effort : Moyen-Élevé
  • Description : Améliorer l'interface calendrier pour une meilleure visualisation et gestion des sessions
  • Statut : ✅ Complété (2025-01-27)
  • Réalisations :
    • ✅ Vue timeline pour la semaine avec grille horaire (0h-23h)
    • ✅ Vue timeline pour le jour avec grille horaire (0h-23h)
    • ✅ Positionnement précis des événements/sessions
    • ✅ Affichage des créneaux de disponibilité
    • ✅ Navigation et scroll optimisés
    • ✅ Visualisation des chevauchements (bordure rouge, icône d'alerte, tooltip)
    • ✅ Légende interactive avec icônes et couleurs
    • ✅ Filtres visuels (masquer/afficher sessions, événements, disponibilités)
    • ✅ Vue agenda/liste chronologique
    • ✅ Drag & drop dans toutes les vues (Month, Week, Day) avec zones droppables
  • Documentation : docs/CALENDAR_VISUAL_IMPROVEMENTS.md

2. Sécurité CASA pour validation Google ✅ COMPLÉTÉ

  • Impact : Validation Google requise pour intégration OAuth/Calendar
  • Effort : Moyen
  • Description : Corrections de sécurité critiques identifiées dans l'évaluation CASA pour passer la validation Google
  • Statut : ✅ Complété (2025-01-26)
  • Référence : SECURITY_ASSESSMENT_CASA.md
  • Score de sécurité : A (95/100) ⬆️
  • Améliorations critiques (Phase 1) : ✅ COMPLÉTÉ
    • ✅ Supprimer valeur par défaut JWT_SECRET - Validation stricte implémentée
    • ✅ Configurer CORS avec whitelist d'origines - Whitelist configurée via ALLOWED_ORIGINS
    • ✅ Installer et configurer Helmet - Helmet configuré avec CSP et headers de sécurité
    • ✅ Configurer whitelist d'origines pour WebSocket - Whitelist appliquée aux gateways WebSocket
  • Améliorations importantes (Phase 2) : ✅ COMPLÉTÉ
    • ⚠️ Mettre à jour dépendances vulnérables (glob, js-yaml) - Nécessite breaking changes, à planifier
    • ✅ Ajouter rate limiting global par défaut - Rate limit global (100 req/min) via APP_GUARD
    • ✅ Implémenter protection CSRF - Guard CSRF avec validation des tokens
    • ✅ Validation contenu fichiers (magic bytes) - Validation intégrée dans StorageController
  • Améliorations (Phase 3) : ✅ COMPLÉTÉ
    • ✅ Implémenter refresh token - Refresh token JWT (access: 15min, refresh: 30 jours)
    • ✅ Système d'alerte pour tentatives suspectes - SecurityAlertsService avec alertes email
    • ✅ Sanitizer HTML côté serveur - HtmlSanitizerService avec DOMPurify

3. Authentification à deux facteurs (2FA)

  • Impact : Sécurité critique
  • Effort : Moyen
  • Description : Implémenter l'authentification à deux facteurs pour renforcer la sécurité
  • Statut : Non commencé

4. GDPR / RGPD - Portail de gestion des données ✅ COMPLÉTÉ

  • Impact : Conformité légale essentielle
  • Effort : Moyen-Élevé
  • Description : Portail complet pour gérer les données personnelles (export, suppression, rectification, consentements, traçabilité)
  • Statut : ✅ Complété (2025-01-27)
  • Livrables :
    • ✅ Migrations GDPR (consentements, demandes, exports, logs d’effacement, activités de traitement)
    • ✅ Service et contrôleur RGPD (accès, portabilité, rectification, effacement, opposition, limitation)
    • ✅ Portail frontend /gdpr avec onglets Consentements / Mes droits / Mes demandes / Informations légales
    • ✅ Textes légaux conformes (bases légales, durées de conservation, contact, CNIL)
    • ✅ Export des données (JSON/CSV/XML), vérification par email, planification d’effacement et annulation

📋 Priorité Moyenne (Impact moyen, Effort variable)

1. Global Search & IA - Phase 2

  • Impact : Améliore la productivité
  • Effort : Moyen
  • Description :
    • Création assistée par IA d'entités (contacts, sessions, devis, factures)
    • Génération de rapports intelligents
    • Rédaction assistée
  • Statut : Planifié
  • Référence : PLAN_AMELIORATIONS_CRM.md

2. Scheduled exports/reports

  • Impact : Automatisation utile
  • Effort : Moyen
  • Description :
    • ✅ Scheduled emails pour devis/factures/contrats (déjà implémenté)
    • ✅ Système d'export centralisé multi-formats (PDF, Word, CSV, Excel, JSON) - Complété
    • ❌ Scheduled exports (CSV, Excel, JSON) - À venir
    • ❌ Scheduled report generation pour analytics - À venir
  • Statut : Partiellement implémenté (système d'export complété, planification à venir)
  • Documentation : docs/EXPORT_SYSTEM.md

3. Planification récurrente pour les sessions ✅

  • Impact : Améliore la productivité pour les sessions régulières
  • Effort : Moyen-Élevé
  • Description : Permettre de créer des sessions récurrentes (quotidien, hebdomadaire, mensuel, annuel) avec gestion des occurrences individuelles et synchronisation Google Calendar
  • Fonctionnalités :
    • ✅ Patterns de récurrence (quotidien, hebdomadaire avec jours spécifiques, mensuel, annuel)
    • ✅ Date de fin de récurrence
    • ✅ Modification/suppression d'occurrences individuelles ou de toute la série
    • ✅ Synchronisation Google Calendar (événements récurrents avec RRULE)
    • ✅ Gestion des exceptions Google Calendar pour modifications/suppressions individuelles
    • ✅ Interface utilisateur avec sélecteur de récurrence
    • ✅ Génération dynamique des occurrences dans le calendrier
    • ✅ Indicateur visuel pour les sessions récurrentes
  • Statut : ✅ Complété
  • Estimation : 5-7 jours de développement (réalisé)
  • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Gestion des Sessions & Réservations"
  • Améliorations complétées récemment :
    • ✅ Prévisualisation des occurrences (composant RecurrencePreview intégré dans le formulaire)
    • ✅ Modification de recurrence_end_date avec suppression automatique des occurrences au-delà
    • ✅ Modification du pattern de récurrence avec régénération automatique des occurrences
    • ✅ Génération périodique des occurrences (job cron quotidien pour générer jusqu'à 12 mois à l'avance)
    • Améliorations futures :
      • ✅ Synchronisation bidirectionnelle depuis Google Calendar (Complété)
        • ✅ Détection et synchronisation des occurrences modifiées dans Google Calendar
        • ✅ Détection et suppression des occurrences supprimées dans Google Calendar
        • ✅ Gestion des exceptions Google Calendar (modifications individuelles)
        • ✅ Résolution de conflits pour les événements récurrents

4. Segmentation avancée des contacts

  • Impact : Marketing plus efficace
  • Effort : Moyen
  • Description : Permettre une segmentation avancée des contacts pour des campagnes marketing ciblées
  • Statut : Non commencé

5. Workflows visuels

  • Impact : Automatisation puissante
  • Effort : Élevé
  • Description : Créer un système de workflows visuels pour automatiser des processus métier
  • Statut : Non commencé

6. Gestion des paiements ✅ COMPLÉTÉ

  • Impact : Améliore le suivi financier
  • Effort : Moyen-Élevé
  • Description : Système complet de gestion des paiements et abonnements via Stripe
  • Statut : ✅ Complété
  • Fonctionnalités implémentées :
    • Gestion des abonnements : Création, annulation et reprise d'abonnements (FREE, BASIC, PRO)
    • Paiement des factures : Paiement des factures via Stripe Payment Intents avec Stripe Elements
    • Collecte de méthodes de paiement : SetupIntent pour collecter les méthodes de paiement pour les abonnements
    • Attachement de méthodes de paiement : Attachement automatique des méthodes de paiement au client Stripe et définition comme méthode par défaut
    • Webhooks Stripe : Synchronisation automatique des statuts d'abonnements et paiements via webhooks
    • Historique des paiements : Suivi complet de tous les paiements effectués
    • Interface utilisateur : Formulaires de paiement sécurisés avec Stripe Elements, gestion des abonnements dans l'interface utilisateur
  • Documentation : backend/src/stripe/README.md

7. Monitoring et observabilité

  • Impact : Essentiel pour la stabilité et le debugging
  • Effort : Moyen
  • Description : Système complet de monitoring avec Sentry, métriques de performance, logs centralisés et alertes
  • Priorité : Haute
  • Statut : Planifié
  • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Infrastructure & Robustesse"

8. Gestion des erreurs de connexion DB ✅

  • Impact : Réduction des erreurs dans les jobs cron
  • Effort : Faible
  • Description : Retry automatique pour les erreurs de connexion PostgreSQL dans les schedulers
  • Statut : ✅ Complété
  • Référence : PLAN_AMELIORATIONS_CRM.md - Section "Performance & Scalabilité"

🔧 Améliorations Agent IA (Priorité Moyenne)

1. Gestion des erreurs améliorée

  • Problème : Les erreurs sont parfois génériques ou peu informatives
  • Solution :
    • Créer des types d'erreurs spécifiques pour chaque type d'action
    • Fournir des messages d'erreur plus détaillés et actionnables
    • Ajouter des codes d'erreur pour faciliter le debugging
  • Statut : À faire
  • Référence : AGENT_IMPROVEMENTS.md (documentation interne)

2. Validation des actions avant exécution

  • Problème : Les actions sont exécutées directement sans validation approfondie
  • Solution :
    • Ajouter une étape de validation pré-exécution
    • Vérifier que toutes les données requises sont présentes
    • Prévisualiser les changements avant exécution
    • Demander confirmation pour les actions critiques
  • Statut : À faire

3. Historique et audit des actions

  • Problème : Pas de traçabilité complète des actions exécutées via l'agent
  • Solution :
    • Enregistrer toutes les actions dans un log d'audit
    • Associer chaque action à la conversation qui l'a déclenchée
    • Permettre de voir l'historique des actions par conversation
  • Statut : À faire

4. Tests unitaires pour les helpers et handlers

  • Statut actuel :
    • ✅ Tests unitaires pour ConflictDetectionHelper (26 tests) - Complété
    • 🚧 Tests unitaires pour les autres helpers (ActionHelpers, EntitySearchHelper)
    • 🚧 Tests unitaires pour les handlers d'actions
  • Référence : AGENT_IMPROVEMENTS.md (documentation interne)

📊 Priorité Basse (Impact variable, Effort élevé)

1. Global Search & IA - Phase 3

  • Impact : Intelligence avancée
  • Effort : Élevé
  • Description :
    • Analyse et insights automatiques
    • Suggestions d'actions contextuelles
    • Recherche conversationnelle
    • Prédictions et recommandations
    • Résumé et synthèse
  • Statut : Planifié

2. Statistiques avancées pour bookings

  • Impact : Améliore l'analyse des réservations
  • Effort : Moyen
  • Description :
    • Dashboard avec statistiques avancées (réservations par période, taux d'annulation, créneaux populaires)
    • Export des données (CSV, Excel, JSON)
    • Graphiques et visualisations
  • Estimation : 5-7 jours de développement
  • Statut : Non commencé

3. Personnalisation de la page de réservation

  • Impact : Améliore l'expérience client
  • Effort : Moyen
  • Description :
    • Personnalisation des couleurs et du thème
    • Messages de confirmation personnalisés
    • Support multilingue amélioré
  • Estimation : 3-4 jours de développement
  • Statut : Non commencé

4. Gestion des timezones pour bookings

  • Impact : Améliore l'expérience internationale
  • Effort : Moyen
  • Description :
    • Détection automatique du timezone du client
    • Affichage des heures dans le timezone local
    • Conversion automatique lors de la réservation
  • Estimation : 3-4 jours de développement
  • Statut : Non commencé

5. Application mobile native

  • Impact : Accessibilité mobile
  • Effort : Très élevé
  • Description : Développer une application mobile native (iOS/Android)
  • Statut : Non commencé

6. Analytics prédictives

  • Impact : Insights avancés
  • Effort : Très élevé (nécessite ML)
  • Description : Utiliser le machine learning pour prédire les tendances
  • Statut : Non commencé

📝 Notes

  • Ce document est évolutif et doit être mis à jour régulièrement
  • Les priorités peuvent changer en fonction des retours utilisateurs
  • Certaines améliorations peuvent être combinées pour optimiser le développement
  • Il est important de valider les besoins avec les utilisateurs avant de développer

📚 Références