# Requirements Document ## Introduction Le Visual Workflow Builder doit être complètement refondu pour être 100% vision-based, éliminant tous les sélecteurs CSS/XPath et implémentant une interface de sélection visuelle pure conforme à l'architecture RPA Vision V3. ## Glossary - **Visual_Workflow_Builder**: Interface web React/TypeScript pour créer des workflows visuels - **Visual_Target**: Cible visuelle définie par embedding et capture d'écran - **Screen_Capture_Service**: Service de capture d'écran en temps réel - **Element_Detection_Engine**: Moteur de détection d'éléments UI basé sur vision - **Visual_Selector**: Interface de sélection d'éléments par vision pure - **Reference_Screenshot**: Image de capture de référence avec overlays - **Bounding_Box**: Rectangle de délimitation précis d'un élément UI ## Requirements ### Requirement 1: Suppression Complète des Sélecteurs Traditionnels **User Story:** En tant qu'utilisateur RPA, je veux créer des workflows sans jamais utiliser de sélecteurs CSS ou XPath, afin d'avoir une approche 100% vision-based. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL NOT display any CSS selector input fields 2. THE Visual_Workflow_Builder SHALL NOT display any XPath selector input fields 3. THE Visual_Workflow_Builder SHALL NOT generate CSS or XPath selectors 4. WHEN configuring an action, THE Visual_Workflow_Builder SHALL only offer visual selection methods 5. THE Visual_Workflow_Builder SHALL remove all legacy selector-based configuration options ### Requirement 2: Interface de Sélection Visuelle Pure **User Story:** En tant qu'utilisateur, je veux sélectionner des éléments UI uniquement par vision, afin d'avoir une expérience intuitive et robuste. #### Acceptance Criteria 1. WHEN I need to select a UI element, THE Visual_Selector SHALL capture the current screen 2. THE Visual_Selector SHALL display the Reference_Screenshot with detected elements highlighted 3. WHEN I hover over an element, THE Visual_Selector SHALL show precise Bounding_Box overlay 4. WHEN I click on an element, THE Visual_Selector SHALL create a Visual_Target automatically 5. THE Visual_Selector SHALL show element confidence scores and metadata 6. THE Visual_Selector SHALL allow zooming and panning of the Reference_Screenshot ### Requirement 3: Affichage de l'Image de Capture de Référence **User Story:** En tant qu'utilisateur, je veux voir l'image exacte de ce qui a été capturé, afin de comprendre précisément quel élément sera ciblé. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL display the Reference_Screenshot for each Visual_Target 2. THE Reference_Screenshot SHALL show the exact captured element with green border overlay 3. WHEN viewing a configured action, THE Visual_Workflow_Builder SHALL show the target element image 4. THE Reference_Screenshot SHALL include contextual information (timestamp, screen size) 5. THE Visual_Workflow_Builder SHALL allow enlarging the Reference_Screenshot for detailed view ### Requirement 4: Correction du Cadre de Sélection **User Story:** En tant qu'utilisateur, je veux que le cadre de sélection soit parfaitement aligné avec l'élément, afin d'avoir une sélection précise. #### Acceptance Criteria 1. THE Bounding_Box SHALL be pixel-perfect aligned with the detected UI element 2. WHEN displaying overlays, THE Visual_Selector SHALL account for screen scaling and resolution 3. THE Bounding_Box SHALL update in real-time during mouse hover 4. WHEN an element is selected, THE Bounding_Box SHALL persist with correct coordinates 5. THE Visual_Selector SHALL handle multi-monitor setups with correct coordinate mapping ### Requirement 5: Intégration avec le Système de Capture Existant **User Story:** En tant que développeur, je veux réutiliser les APIs de capture existantes, afin de maintenir la cohérence avec le système RPA Vision V3. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL use the existing Screen_Capture_Service API 2. THE Visual_Workflow_Builder SHALL integrate with the Element_Detection_Engine 3. THE Visual_Workflow_Builder SHALL use the Visual_Target_Manager for target storage 4. THE Visual_Workflow_Builder SHALL leverage the existing embedding generation system 5. THE Visual_Workflow_Builder SHALL maintain compatibility with the core RPA Vision V3 pipeline ### Requirement 6: Interface Utilisateur Vision-Centric **User Story:** En tant qu'utilisateur, je veux une interface entièrement orientée vision, afin d'avoir une expérience cohérente avec l'approche RPA Vision V3. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL replace all text-based configuration with visual elements 2. THE Visual_Workflow_Builder SHALL show thumbnail previews of all Visual_Targets 3. WHEN creating workflows, THE Visual_Workflow_Builder SHALL emphasize visual representation 4. THE Visual_Workflow_Builder SHALL provide visual feedback for all user interactions 5. THE Visual_Workflow_Builder SHALL use icons and images instead of text labels where possible ### Requirement 7: Gestion des Métadonnées Visuelles **User Story:** En tant qu'utilisateur, je veux voir les informations détaillées sur chaque élément sélectionné, afin de comprendre la qualité de la détection. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL display confidence scores for each Visual_Target 2. THE Visual_Workflow_Builder SHALL show element type detection (button, input, link, etc.) 3. THE Visual_Workflow_Builder SHALL display contextual information (surrounding elements, position) 4. THE Visual_Workflow_Builder SHALL show embedding quality metrics 5. THE Visual_Workflow_Builder SHALL provide validation status for each Visual_Target ### Requirement 8: Capture d'Écran en Temps Réel **User Story:** En tant qu'utilisateur, je veux capturer l'écran actuel pour sélectionner des éléments, afin d'avoir une sélection basée sur l'état réel de l'interface. #### Acceptance Criteria 1. WHEN I click "Capture Screen", THE Screen_Capture_Service SHALL take a real-time screenshot 2. THE Screen_Capture_Service SHALL detect all interactive UI elements automatically 3. THE Screen_Capture_Service SHALL return element coordinates with sub-pixel precision 4. THE Screen_Capture_Service SHALL handle different screen resolutions and DPI settings 5. THE Screen_Capture_Service SHALL provide fallback mechanisms for capture failures ### Requirement 9: Validation et Feedback Visuel **User Story:** En tant qu'utilisateur, je veux recevoir un feedback visuel immédiat sur mes sélections, afin de confirmer que l'élément correct est ciblé. #### Acceptance Criteria 1. WHEN I select an element, THE Visual_Workflow_Builder SHALL highlight it with a colored overlay 2. THE Visual_Workflow_Builder SHALL show a preview of the action that will be performed 3. WHEN validation fails, THE Visual_Workflow_Builder SHALL show visual error indicators 4. THE Visual_Workflow_Builder SHALL provide real-time feedback during element detection 5. THE Visual_Workflow_Builder SHALL allow testing the selection before saving ### Requirement 10: Performance et Responsivité **User Story:** En tant qu'utilisateur, je veux une interface rapide et réactive, afin d'avoir une expérience fluide lors de la création de workflows. #### Acceptance Criteria 1. THE Visual_Workflow_Builder SHALL complete screen capture in less than 2 seconds 2. THE Visual_Workflow_Builder SHALL detect elements in less than 3 seconds 3. THE Visual_Workflow_Builder SHALL provide loading indicators for all async operations 4. THE Visual_Workflow_Builder SHALL cache Reference_Screenshots for quick access 5. THE Visual_Workflow_Builder SHALL optimize image display for different screen sizes