# 🧪 Comment Tester la Détection de Workflows ## 🎯 Objectif Tester le système de détection de workflows qui vient d'être implémenté. ## ✅ Prérequis - ✅ SessionManager créé - ✅ WorkflowDetector créé - ✅ EventCapture modifié - ✅ Tout compile correctement ## 🧪 Test 1 : Script Automatique ### Lancer le Test ```bash geniusia2/venv/bin/python test_workflow_suggestion.py ``` ### Ce que fait le test 1. **Crée 3 sessions similaires** : - Session 1 : Clic → Type → Clic - Session 2 : Clic → Type → Clic - Session 3 : Clic → Type → Clic 2. **Détecte automatiquement le workflow** - Analyse les sessions - Calcule la similarité - Crée le workflow si >= 75% 3. **Suggère le workflow** - Commence une 4ème session - Fait les 2 premières actions - Vérifie si suggestion apparaît ### Résultat Attendu ``` 🎉 SUGGESTION CRÉÉE ! Type: workflow Workflow: Click → Type → Click Étape: 2/3 Prochaine action: Clic sur OnlyOffice Confiance: 89% Répétitions: 3x ``` ## 🧪 Test 2 : Test Manuel ### Lancer l'Application ```bash cd geniusia2 ./run.sh ``` ### Effectuer un Workflow Répété **Exemple : Ouvrir OnlyOffice** 1. **Jour 1** (ou Session 1) : - Clic sur le lanceur - Tape "office" - Clic sur OnlyOffice - Clic "Nouveau document" 2. **Attendre 5 minutes** (ou forcer la fin de session) 3. **Jour 2** (ou Session 2) : - Refaire exactement les mêmes actions 4. **Attendre 5 minutes** 5. **Jour 3** (ou Session 3) : - Refaire exactement les mêmes actions ### Vérifier la Détection Après la 3ème session, le système devrait : - ✅ Détecter le workflow - ✅ Logger "workflow_detected" - ✅ Créer un Workflow avec 4 étapes ### Tester la Suggestion **Jour 4** (ou Session 4) : - Commence le workflow (2 premières actions) - Le système devrait suggérer de continuer ## 📊 Vérifier les Logs ```bash # Voir les logs du jour cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq . # Filtrer les workflows cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq 'select(.action=="workflow_detected")' # Filtrer les sessions cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq 'select(.action=="session_completed")' ``` ## 🔧 Ajuster les Seuils Si la détection ne fonctionne pas bien, ajuster dans `config.py` : ```python "workflow": { # Timeout de session (secondes) "session_timeout": 300, # Réduire à 60 pour tests rapides # Nombre minimum de répétitions "min_repetitions": 3, # Réduire à 2 pour tests # Seuil de similarité "similarity_threshold": 0.75 # Réduire à 0.65 pour plus de détections } ``` ## ⚠️ Problèmes Courants ### Aucun Workflow Détecté **Causes** : - Pas assez de répétitions (< 3) - Actions trop différentes (similarité < 75%) - Sessions pas finalisées **Solutions** : 1. Vérifier les logs : `cat geniusia2/data/logs/logs_*.json` 2. Réduire `min_repetitions` à 2 3. Réduire `similarity_threshold` à 0.65 4. Forcer la fin de session : `event_capture.force_finalize_session()` ### Workflow Détecté Mais Pas de Suggestion **Causes** : - Début de workflow pas reconnu - Seuil de confiance trop élevé **Solutions** : 1. Vérifier que les 2 premières actions sont identiques 2. Réduire `similarity_threshold` dans `assist` 3. Vérifier les logs de suggestion ## ✅ Checklist de Test - [ ] Test automatique lancé (`test_workflow_suggestion.py`) - [ ] Workflow détecté dans les logs - [ ] Suggestion créée - [ ] Test manuel effectué (3 sessions) - [ ] Workflow détecté manuellement - [ ] Suggestion apparaît au début de la 4ème session - [ ] Logs vérifiés - [ ] Seuils ajustés si nécessaire ## 🎊 Résultat Attendu Après les tests, tu devrais avoir : - ✅ Workflows détectés automatiquement - ✅ Suggestions de workflows fonctionnelles - ✅ Logs complets - ✅ Système validé **Prêt pour l'intégration dans la GUI ! 🚀** --- **Créé le 19 Novembre 2025**