# Système d'Exécution VWB - Plan de Tâches **Auteur :** Dom, Alice, Kiro - 10 janvier 2026 **Phase :** 3.1 - Intégration et Exécution VWB **Durée Estimée :** 4 jours **Priorité :** Critique ## Vue d'Ensemble Implémentation du système d'exécution des actions VisionOnly dans le Visual Workflow Builder avec feedback visuel en temps réel et gestion complète des états d'exécution. ## Tâches Détaillées ### Tâche 3.1.1 : Extension du Composant Executor **Durée :** 1 jour **Priorité :** Critique **Dépendances :** Aucune **Objectifs :** - Étendre le composant `Executor/index.tsx` pour supporter les actions VWB - Intégrer avec l'API catalogue pour l'exécution - Maintenir la compatibilité avec les actions existantes **Livrables :** - [ ] Extension du composant `visual_workflow_builder/frontend/src/components/Executor/index.tsx` - [ ] Service `executionService.ts` pour la gestion des exécutions VWB - [ ] Hook `useVWBExecution.ts` pour la logique d'exécution - [ ] Types TypeScript pour les états d'exécution VWB **Critères d'Acceptation :** - [ ] Actions VWB exécutables depuis l'interface - [ ] Paramètres transmis correctement à l'API - [ ] Gestion des réponses et erreurs de l'API - [ ] Compatibilité maintenue avec actions existantes ### Tâche 3.1.2 : États Visuels sur le Canvas **Durée :** 1 jour **Priorité :** Critique **Dépendances :** Tâche 3.1.1 **Objectifs :** - Implémenter les états visuels sur les nœuds du canvas - Créer des animations fluides pour les transitions - Ajouter des indicateurs de progression **Livrables :** - [ ] Extension du composant `Canvas/StepNode.tsx` avec états d'exécution - [ ] Styles CSS pour les différents états (idle, running, success, error) - [ ] Animations de transition entre états - [ ] Indicateurs de progression pour actions longues **Critères d'Acceptation :** - [ ] États visuels clairs et distincts - [ ] Animations fluides sans impact performance - [ ] Mise en évidence de l'étape en cours - [ ] Indicateurs de progression fonctionnels ### Tâche 3.1.3 : Intégration Evidence Viewer **Durée :** 1 jour **Priorité :** Haute **Dépendances :** Tâche 3.1.2 **Objectifs :** - Intégrer l'affichage des Evidence pendant l'exécution - Créer un panneau dédié pour l'historique - Implémenter la navigation dans les Evidence **Livrables :** - [ ] Extension du composant `EvidenceViewer/index.tsx` pour l'exécution - [ ] Panneau `ExecutionEvidencePanel.tsx` pour l'historique - [ ] Service `evidenceExecutionService.ts` pour la gestion - [ ] Interface de navigation dans les Evidence **Critères d'Acceptation :** - [ ] Evidence affichées automatiquement après chaque action - [ ] Navigation fluide dans l'historique - [ ] Screenshots avec annotations visibles - [ ] Performance optimisée pour images multiples ### Tâche 3.1.4 : Contrôles d'Exécution **Durée :** 1 jour **Priorité :** Haute **Dépendances :** Tâche 3.1.3 **Objectifs :** - Implémenter les contrôles play/pause/stop - Ajouter l'exécution pas-à-pas - Créer la gestion des reprises d'exécution **Livrables :** - [ ] Composant `ExecutionControls.tsx` avec boutons de contrôle - [ ] Logique de pause/reprise d'exécution - [ ] Mode pas-à-pas pour le débogage - [ ] Sauvegarde/restauration d'état d'exécution **Critères d'Acceptation :** - [ ] Contrôles réactifs et intuitifs - [ ] Pause/reprise fonctionnelle - [ ] Exécution pas-à-pas opérationnelle - [ ] Reprise depuis étape spécifique possible ## Jalons et Livrables ### Jalon 3.1.A (Fin Jour 1) : Executor Étendu - [ ] Composant Executor supportant les actions VWB - [ ] Service d'exécution fonctionnel - [ ] Tests unitaires de base ### Jalon 3.1.B (Fin Jour 2) : États Visuels - [ ] Canvas avec états d'exécution visuels - [ ] Animations et transitions fluides - [ ] Tests d'intégration canvas-executor ### Jalon 3.1.C (Fin Jour 3) : Evidence Intégrées - [ ] Affichage automatique des Evidence - [ ] Panneau d'historique fonctionnel - [ ] Navigation dans les Evidence ### Jalon 3.1.D (Fin Jour 4) : Système Complet - [ ] Contrôles d'exécution complets - [ ] Tests end-to-end réussis - [ ] Documentation utilisateur - [ ] Démo fonctionnelle ## Architecture Technique ### Composants Principaux ```typescript // Extension du composant Executor interface VWBExecutorProps { workflow: Workflow; onStepStateChange: (stepId: string, state: StepExecutionState) => void; onEvidenceGenerated: (stepId: string, evidence: Evidence) => void; onExecutionComplete: (success: boolean, summary: ExecutionSummary) => void; } // Service d'exécution VWB class VWBExecutionService { async executeStep(step: Step): Promise; async pauseExecution(): Promise; async resumeExecution(): Promise; async stopExecution(): Promise; } // États d'exécution enum StepExecutionState { IDLE = 'idle', RUNNING = 'running', SUCCESS = 'success', ERROR = 'error', PAUSED = 'paused', SKIPPED = 'skipped' } ``` ### Flux d'Exécution ``` 1. Utilisateur clique "Exécuter" ↓ 2. Executor valide le workflow ↓ 3. Pour chaque étape VWB : a. Mise à jour état visuel → RUNNING b. Appel API catalogue avec paramètres c. Réception Evidence d. Affichage Evidence dans viewer e. Mise à jour état → SUCCESS/ERROR ↓ 4. Affichage résumé final ``` ### Intégration avec l'Existant - **Canvas** : Extension des nœuds avec états visuels - **PropertiesPanel** : Affichage des paramètres d'exécution - **EvidenceViewer** : Intégration pour l'historique - **Redux Store** : Gestion d'état centralisée ## Tests et Validation ### Tests Unitaires - [ ] Service d'exécution VWB - [ ] Hook useVWBExecution - [ ] Composants de contrôle - [ ] États visuels du canvas ### Tests d'Intégration - [ ] Executor ↔ API Catalogue - [ ] Canvas ↔ États d'exécution - [ ] EvidenceViewer ↔ Exécution - [ ] Contrôles ↔ Service d'exécution ### Tests End-to-End - [ ] Exécution complète d'un workflow VWB - [ ] Gestion d'erreurs et récupération - [ ] Performance avec workflows complexes - [ ] Compatibilité navigateurs ## Critères de Succès ### Fonctionnels - [ ] Toutes les actions VWB s'exécutent correctement - [ ] États visuels informatifs et clairs - [ ] Evidence affichées en temps réel - [ ] Contrôles d'exécution fonctionnels - [ ] Gestion d'erreurs robuste ### Non-Fonctionnels - [ ] Performance : démarrage < 2s - [ ] Interface fluide pendant l'exécution - [ ] Gestion mémoire optimisée - [ ] Compatibilité navigateurs maintenue ### Qualité - [ ] Code commenté en français - [ ] Tests avec couverture > 80% - [ ] Documentation utilisateur complète - [ ] Respect des conventions du projet ## Risques et Mitigation ### Risque 1 : Complexité d'intégration **Mitigation :** Développement incrémental avec tests continus ### Risque 2 : Performance dégradée **Mitigation :** Profiling régulier et optimisations ciblées ### Risque 3 : Gestion d'état complexe **Mitigation :** Utilisation de Redux et patterns éprouvés ## Prochaines Étapes Après completion de cette tâche : 1. **Tâche 3.2** : Persistance Workflows VWB Étendus 2. **Tâche 3.3** : Tests d'Intégration VWB Complets 3. **Phase 4** : Robustesse et Finalisation VWB Cette implémentation permettra aux utilisateurs d'exécuter des workflows VWB complets avec un feedback visuel riche et une expérience utilisateur optimale.