# Session Workflows - 19 Novembre 2024 ## 🎯 Objectif Implémenter la détection de workflows complets pour le Mode Assisté ## ✅ Ce qui a été fait ### 1. Analyse du problème - Le système actuel détecte des patterns simples (3 clics identiques) - Besoin de détecter des **workflows complets** (séquences d'actions variées) - Exemple : Ouvrir OnlyOffice → Nouveau document → Taper texte → Fermer ### 2. Architecture proposée ``` EventCapture ↓ SessionManager (segmente les actions en sessions) ↓ WorkflowDetector (détecte les workflows répétés) ↓ SuggestionManager (suggère les workflows en cours) ↓ Overlay (affiche la suggestion) ``` ### 3. Composants créés #### SessionManager - Segmente les actions en sessions basées sur : - Timeout (5 minutes par défaut) - Changement de fenêtre - Nombre d'actions (max 50) - Sauvegarde les sessions sur disque - Callbacks pour notifier les sessions complétées #### WorkflowDetector - Compare les sessions pour trouver des similarités - Utilise la distance de Levenshtein pour comparer les séquences - Détecte les workflows répétés (min 3 répétitions) - Calcule un score de confiance - Génère des noms descriptifs automatiquement #### Intégration SuggestionManager - Vérifie d'abord s'il y a un workflow en cours - Compare les actions courantes avec les workflows connus - Suggère la prochaine étape si match >= 80% - Fallback sur la recherche classique par embedding ### 4. Test réalisé ```bash python test_workflow_detection.py ``` **Résultat** : ✅ Workflow détecté avec 95% de confiance ! ``` 🎉 WORKFLOW DÉTECTÉ ! Nom: OnlyOffice - Navigation + Saisie + Finalisation Étapes: 7 Répétitions: 3 Confiance: 95.00% ``` ## ⚠️ Problèmes rencontrés ### Fichiers corrompus Les fichiers `session_manager.py` et `workflow_detector.py` ont été créés mais sont corrompus. - Supprimés pour être recréés proprement - Besoin de les recréer avec une structure simple et claire ### Complexité - Trop de fichiers de documentation - Besoin de simplifier pour le MVP ## 🔄 Prochaines étapes ### 1. Recréer les fichiers proprement - [ ] `geniusia2/core/session_manager.py` (version simple) - [ ] `geniusia2/core/workflow_detector.py` (version simple) - [ ] Tester l'intégration complète ### 2. Simplifier pour le MVP - [x] Nettoyer les fichiers obsolètes (fait !) - [ ] Garder uniquement l'essentiel - [ ] Pas de sécurité complexe (cryptage, etc.) ### 3. Tester end-to-end - [ ] Créer un test simple qui fonctionne - [ ] Vérifier que l'overlay s'affiche - [ ] Tester avec une vraie application (OnlyOffice) ## 📝 Notes importantes ### Pour le MVP - **Pas de cryptage** des logs - **Pas de sécurité avancée** - Focus sur la **fonctionnalité de base** - Garder le code **simple et lisible** ### Architecture simplifiée ```python # session_manager.py - ~150 lignes class SessionManager: - add_action() - _should_start_new_session() - _finalize_session() - get_recent_sessions() # workflow_detector.py - ~200 lignes class WorkflowDetector: - analyze_sessions() - _group_similar_sessions() - _create_workflow() - get_workflows() ``` ## 🎯 Objectif final Quand l'utilisateur commence un workflow connu (ex: ouvrir OnlyOffice), l'overlay suggère automatiquement les prochaines étapes ! ## 📊 Métriques - Temps de développement : ~4h - Lignes de code : ~500 - Tests créés : 2 - Confiance du système : 95% --- **Statut** : En cours - Fichiers à recréer proprement **Priorité** : Haute - Fonctionnalité clé du Mode Assisté