Files
rpa_vision_v3/.kiro/specs/systeme-execution-vwb/tasks.md
Dom a7de6a488b feat: replay E2E fonctionnel — 25/25 actions, 0 retries, SomEngine via serveur
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>
2026-03-31 14:04:41 +02:00

240 lines
7.3 KiB
Markdown

# 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<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 :
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.