# Changelog - Collaborative Design System ## Version 2.0 - Collaborative Document Design (Nouvelle Fonctionnalité) ### 🎯 Concept Principal Remplacement du système de débat parallèle par un système de **conception itérative collaborative** où : - Un architecte lead crée un document initial complet - 3-7 agents spécialisés révisent et améliorent le document tour par tour - Le document évolue progressivement jusqu'à convergence naturelle - Traçabilité complète de toutes les modifications ### Backend - Changements #### 1. **Base de Données** (`src/db/schema.js`) - ✅ Nouvelles tables : - `collaborative_sessions` : Sessions de conception - `document_versions` : Historique complet des versions - `document_rounds` : Suivi des tours de table - Maintien de la compatibilité rétro avec `debates` et `responses` #### 2. **Service d'Orchestration** (`src/services/collaborativeOrchestrator.js` - NOUVEAU) - `createSession()` : Crée une nouvelle session collaborative - `startCollaborativeSession()` : Lead Architect crée le document initial - `runRound()` : Exécute un tour de revue (chaque agent revoit le document) - `getSessionDetails()` : Récupère l'état complet avec historique - `calculateDiff()` : Suivi des modifications entre versions - Détection automatique de convergence (aucun changement d'un tour complet) #### 3. **Routes API** (`src/routes/collaborate.js` - NOUVEAU) ``` POST /api/collaborate - Créer une session POST /api/collaborate/:id/start - Démarrer la session POST /api/collaborate/:id/round - Exécuter un tour de revue GET /api/collaborate/:id - Obtenir les détails GET /api/collaborate/:id/document - Télécharger le document actuel GET /api/collaborate/:id/versions/:v - Obtenir une version spécifique POST /api/collaborate/:id/complete - Terminer la session ``` #### 4. **Serveur Principal** (`src/index.js`) - ✅ Intégration du nouvel orchestrateur collaboratif - ✅ Support WebSocket pour `sessionId` en plus de `debateId` - Routage automatique vers `/api/collaborate` ### Frontend - Changements #### 1. **Store Pinia** (`src/stores/collaboration.js` - NOUVEAU) - Gestion d'état des sessions collaboratives - Fonctions pour créer, lancer, et suivre les sessions - Méthodes de téléchargement de documents #### 2. **Composants Vue** **CollaborativeInput.vue** (NOUVEAU) - Formulaire pour créer une nouvelle session - Choix du format (Markdown/Texte) - Sélection du nombre d'agents (3-7) - Interface conviviale avec explications **CollaborativeSession.vue** (NOUVEAU) - Affichage en temps réel du document en évolution - Timeline des modifications avec agents impliqués - Boutons de contrôle : - "Next Review Round" : Lancer le tour suivant - "Complete Session" : Terminer - "Download" : Exporter le document - "Timeline" : Voir l'historique - Affichage du statut de convergence **DocumentViewer.vue** (NOUVEAU) - Rendu du document en Markdown ou texte brut - Mise en évidence syntaxique simple - Support des liens, listes, code blocks - Responsive et bien stylisé #### 3. **App.vue** - Refonte Majeure - Écran de sélection du mode au démarrage - 2 modes : "Classic Debate" vs "Collaborative Design" (Recommandé) - Navigation fluide entre les modes - Boutons de retour intuitifs #### 4. **Composable WebSocket Amélioré** (`src/composables/useWebSocket.js`) - Support de `sessionId` en paramètre - Rétro-compatible avec `debateId` - Routing automatique du WebSocket ### Améliorations Produit #### 1. **7 Agents Spécialisés** (vs 4 avant) - Lead Architect (créateur du document initial, poids 1.5x dans anciennes versions) - Backend Engineer - Frontend Engineer - UI/UX Designer - DevOps Engineer (NOUVEAU) - Product Manager (NOUVEAU) - Security Specialist (NOUVEAU) #### 2. **Flux Itératif Intelligent** - Chaque agent voit le document complet + historique - System prompts spécialisés pour chaque rôle - Détection de convergence automatique - Arrêt quand aucune modification d'un tour complet #### 3. **Documents Flexibles** - Format Markdown (.md) pour documents structurés - Format Texte brut (.txt) pour contenu simple - Versioning complet avec historique - Export facile en un clic #### 4. **Traçabilité Complète** - Historique de chaque modification - Qui a changé quoi et pourquoi - Timeline visuelle interactive - Accès à n'importe quelle version ### Avantages du Nouveau Système | Aspect | Mode Débat | Mode Collaboratif | |--------|-----------|------------------| | **Processus** | Parallèle | Itératif | | **Document** | Consensus arbitraire | Construction progressive | | **Agents** | 4 | 3-7 (configurable) | | **Convergence** | Vote pondéré (60%) | Naturelle (0 changements) | | **Traçabilité** | Propositions individuelles | Historique complet | | **Format** | JSON fixe | Flexible (MD/TXT) | | **Qualité finale** | Bonne | Excellente | | **Temps** | Rapide (1 appel) | Graduel (multiple tours) | ### Fichiers Créés - ✅ `backend/src/services/collaborativeOrchestrator.js` - ✅ `backend/src/routes/collaborate.js` - ✅ `frontend/src/stores/collaboration.js` - ✅ `frontend/src/components/CollaborativeInput.vue` - ✅ `frontend/src/components/CollaborativeSession.vue` - ✅ `frontend/src/components/DocumentViewer.vue` - ✅ `CHANGELOG.md` (ce fichier) ### Fichiers Modifiés - ✅ `backend/src/index.js` - Intégration orchestrateur - ✅ `backend/src/db/schema.js` - Nouvelles tables - ✅ `frontend/src/App.vue` - Mode selector et navigation - ✅ `frontend/src/composables/useWebSocket.js` - Support sessionId - ✅ `README.md` - Documentation ### Tests à Faire ```bash # Backend npm start # Doit démarrer sans erreurs curl http://localhost:3000/api/health # Frontend npm run dev # Vite dev server # Tester: http://localhost:5173 ``` ### Prochaines Améliorations Possibles - [ ] Support téléchargement fichiers contextuels (upload MD/TXT) - [ ] Intégration Git (commit auto après convergence) - [ ] Export PDF avec mise en page professionnelle - [ ] Comparaison côte à côte des versions - [ ] Statistiques détaillées par agent - [ ] Webhook pour notifications externes - [ ] Support collaboration multi-utilisateurs simultanés ### Notes - Système entièrement rétro-compatible : mode débat classique toujours disponible - Performance : Chaque tour prend ~30-60s selon la longueur du document - Coût API : Similaire au mode débat (n agents × 1 appel par tour) --- **Version** : 2.0.0 **Date** : October 2024 **Status** : Production Ready