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>
121 lines
7.2 KiB
Markdown
121 lines
7.2 KiB
Markdown
# Requirements Document - Interface Propriétés d'Étapes Complète
|
|
|
|
## Introduction
|
|
|
|
Ce document spécifie les exigences pour implémenter une interface utilisateur complète et robuste pour l'affichage et la configuration des propriétés d'étapes dans le Visual Workflow Builder. Le système doit gérer à la fois les étapes standard et les actions VWB avec une expérience utilisateur cohérente.
|
|
|
|
## Glossary
|
|
|
|
- **Étape Standard**: Étape avec des paramètres définis dans stepParametersConfig (click, type, wait, etc.)
|
|
- **Action VWB**: Action du catalogue Vision-Only RPA avec paramètres dynamiques
|
|
- **Propriétés d'Étape**: Paramètres configurables d'une étape (champs de saisie, sélecteurs, etc.)
|
|
- **StepTypeResolver**: Service de résolution unifié des types d'étapes
|
|
- **PropertiesPanel**: Composant React affichant les propriétés d'une étape sélectionnée
|
|
- **StandardParametersEditor**: Composant pour éditer les paramètres d'étapes standard
|
|
- **VWBActionProperties**: Composant pour éditer les paramètres d'actions VWB
|
|
- **EmptyStateMessage**: Message affiché quand aucun paramètre n'est disponible
|
|
|
|
## Requirements
|
|
|
|
### Requirement 1: Affichage des Propriétés d'Étapes Standard
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux voir et configurer les propriétés des étapes standard (click, type, wait, etc.), afin de personnaliser le comportement de mes workflows.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. WHEN une étape standard est sélectionnée, THE PropertiesPanel SHALL afficher les champs de configuration appropriés
|
|
2. WHEN l'étape est de type 'type', THE System SHALL afficher les champs: target (visual), text (text), clearFirst (boolean)
|
|
3. WHEN l'étape est de type 'click', THE System SHALL afficher les champs: target (visual), clickType (select)
|
|
4. WHEN l'étape est de type 'wait', THE System SHALL afficher le champ: duration (number)
|
|
5. WHEN l'étape est de type 'extract', THE System SHALL afficher les champs: target (visual), attribute (select)
|
|
6. THE StandardParametersEditor SHALL valider les valeurs saisies en temps réel
|
|
7. WHEN un paramètre requis est manquant, THE System SHALL afficher un message d'erreur
|
|
8. WHEN les paramètres sont modifiés, THE System SHALL sauvegarder automatiquement les changements
|
|
|
|
### Requirement 2: Gestion des Actions VWB
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux configurer les actions VWB du catalogue, afin d'utiliser des fonctionnalités avancées de vision par ordinateur.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. WHEN une action VWB est sélectionnée, THE PropertiesPanel SHALL détecter qu'il s'agit d'une action VWB
|
|
2. WHEN l'action VWB est chargée depuis le catalogue, THE VWBActionProperties SHALL afficher les paramètres spécialisés
|
|
3. WHEN l'action VWB n'est pas disponible dans le catalogue, THE System SHALL afficher un message informatif
|
|
4. WHEN une action VWB est en cours de chargement, THE System SHALL afficher un indicateur de chargement
|
|
5. THE VWBActionProperties SHALL supporter la validation des paramètres VWB
|
|
6. WHEN les paramètres VWB sont invalides, THE System SHALL afficher des erreurs spécifiques
|
|
|
|
### Requirement 3: États de Chargement et d'Erreur
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux être informé de l'état du système lors du chargement des propriétés, afin de comprendre ce qui se passe.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. WHEN le StepTypeResolver résout une étape, THE System SHALL afficher un indicateur de chargement
|
|
2. WHEN la résolution échoue, THE System SHALL afficher un message d'erreur informatif
|
|
3. WHEN aucune propriété n'est disponible, THE EmptyStateMessage SHALL expliquer pourquoi
|
|
4. THE System SHALL distinguer entre "pas de paramètres" et "erreur de chargement"
|
|
5. WHEN une action VWB n'est pas trouvée, THE System SHALL suggérer des actions alternatives
|
|
|
|
### Requirement 4: Interface Utilisateur Cohérente
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux une interface cohérente pour toutes les propriétés d'étapes, afin d'avoir une expérience utilisateur fluide.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. THE PropertiesPanel SHALL utiliser un design cohérent pour tous les types de champs
|
|
2. THE System SHALL respecter les couleurs et espacements du design system
|
|
3. WHEN un champ est en erreur, THE System SHALL utiliser les couleurs d'erreur standard
|
|
4. THE System SHALL supporter les raccourcis clavier pour la navigation
|
|
5. THE PropertiesPanel SHALL être responsive et s'adapter à différentes tailles d'écran
|
|
6. THE System SHALL maintenir l'accessibilité avec les attributs ARIA appropriés
|
|
|
|
### Requirement 5: Performance et Optimisation
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux que l'interface des propriétés soit réactive, afin de travailler efficacement sur mes workflows.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. THE PropertiesPanel SHALL éviter les re-rendus inutiles avec React.memo
|
|
2. THE StepTypeResolver SHALL utiliser le cache pour éviter les résolutions répétées
|
|
3. WHEN les paramètres changent, THE System SHALL debouncer les sauvegardes automatiques
|
|
4. THE System SHALL charger les actions VWB de manière asynchrone sans bloquer l'interface
|
|
5. THE PropertiesPanel SHALL supporter la virtualisation pour les listes longues de paramètres
|
|
|
|
### Requirement 6: Validation et Feedback
|
|
|
|
**User Story:** En tant qu'utilisateur, je veux être guidé lors de la configuration des paramètres, afin d'éviter les erreurs de configuration.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. THE System SHALL valider les paramètres en temps réel pendant la saisie
|
|
2. WHEN un paramètre est invalide, THE System SHALL afficher l'erreur immédiatement
|
|
3. THE System SHALL supporter l'autocomplétion pour les variables
|
|
4. WHEN un champ supporte les variables, THE System SHALL afficher les variables disponibles
|
|
5. THE System SHALL prévisualiser les valeurs des variables dans les champs
|
|
6. WHEN tous les paramètres sont valides, THE System SHALL afficher un indicateur de succès
|
|
|
|
### Requirement 7: Intégration avec le Système Existant
|
|
|
|
**User Story:** En tant que développeur, je veux que le nouveau système s'intègre parfaitement avec l'architecture existante, afin de maintenir la cohérence du code.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. THE PropertiesPanel SHALL utiliser le StepTypeResolver existant pour la résolution des types
|
|
2. THE System SHALL maintenir la compatibilité avec les hooks existants (useStepTypeResolver)
|
|
3. THE System SHALL respecter les interfaces TypeScript existantes
|
|
4. THE System SHALL utiliser les services existants (catalogService, apiClient)
|
|
5. THE System SHALL maintenir les logs de débogage pour le développement
|
|
6. THE System SHALL être testable avec les frameworks de test existants
|
|
|
|
### Requirement 8: Extensibilité Future
|
|
|
|
**User Story:** En tant que développeur, je veux un système extensible pour ajouter de nouveaux types de paramètres, afin de supporter l'évolution du produit.
|
|
|
|
#### Acceptance Criteria
|
|
|
|
1. THE ParameterFieldRenderer SHALL supporter l'ajout de nouveaux types de champs
|
|
2. THE System SHALL permettre l'enregistrement de renderers personnalisés
|
|
3. THE StandardParametersEditor SHALL être extensible pour de nouveaux types d'étapes
|
|
4. THE VWBActionProperties SHALL supporter l'évolution du format des actions VWB
|
|
5. THE System SHALL maintenir une API stable pour les extensions futures |