Files
rpa_vision_v3/.kiro/specs/visual-workflow-builder-vision-refactor/requirements.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

7.6 KiB

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