Validé sur PC Windows (DESKTOP-58D5CAC, 2560x1600) : - 8 clics résolus visuellement (1 anchor_template, 1 som_text_match, 6 som_vlm) - Score moyen 0.75, temps moyen 1.6s - Texte tapé correctement (bonjour, test word, date, email) - 0 retries, 2 actions non vérifiées (OK) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
7.3 KiB
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.tsxpour 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.tspour la gestion des exécutions VWB - Hook
useVWBExecution.tspour 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.tsxavec é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.tsxpour l'exécution - Panneau
ExecutionEvidencePanel.tsxpour l'historique - Service
evidenceExecutionService.tspour 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.tsxavec 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
// 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<ExecutionResult>;
async pauseExecution(): Promise<void>;
async resumeExecution(): Promise<void>;
async stopExecution(): Promise<void>;
}
// É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 :
- Tâche 3.2 : Persistance Workflows VWB Étendus
- Tâche 3.3 : Tests d'Intégration VWB Complets
- 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.