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>
This commit is contained in:
Dom
2026-03-31 14:04:41 +02:00
parent 5e0b53cfd1
commit a7de6a488b
79542 changed files with 6091757 additions and 1 deletions

View File

@@ -0,0 +1,112 @@
# Requirements Document
## Introduction
Le système RPA Vision V3 souffre d'un manque d'unification critique qui cause des problèmes récurrents de configuration, de chemins de données incohérents, et de services mal synchronisés. Cette spécification vise à unifier définitivement tous les composants du système.
## Glossary
- **System**: Le système RPA Vision V3 complet
- **Component**: Un service ou module du système (dashboard, worker, API, agent)
- **Configuration_Manager**: Gestionnaire centralisé de configuration
- **Data_Path**: Chemin unifié pour toutes les données
- **Service_Registry**: Registre des services actifs
- **Health_Monitor**: Moniteur de santé système
## Requirements
### Requirement 1: Configuration Centralisée
**User Story:** En tant qu'administrateur système, je veux une configuration centralisée unique, afin d'éviter les incohérences entre composants.
#### Acceptance Criteria
1. THE Configuration_Manager SHALL load configuration from a single source of truth
2. WHEN any component starts, THE System SHALL use the same configuration values
3. WHEN configuration changes, THE System SHALL propagate changes to all active components
4. THE Configuration_Manager SHALL validate all configuration values before application
5. IF configuration is invalid, THEN THE System SHALL fail fast with clear error messages
### Requirement 2: Chemins de Données Unifiés
**User Story:** En tant que développeur, je veux des chemins de données cohérents, afin que tous les composants accèdent aux mêmes données.
#### Acceptance Criteria
1. THE System SHALL use a single DATA_PATH for all data storage
2. WHEN any component accesses sessions, THE System SHALL use the same sessions directory
3. WHEN any component accesses workflows, THE System SHALL use the same workflows directory
4. THE System SHALL create missing directories automatically with correct permissions
5. THE Data_Path SHALL be configurable via environment variables with sensible defaults
### Requirement 3: Services Synchronisés
**User Story:** En tant qu'administrateur, je veux que tous les services soient synchronisés, afin d'éviter les états incohérents.
#### Acceptance Criteria
1. THE Service_Registry SHALL track all active system components
2. WHEN a service starts, THE System SHALL register it in the Service_Registry
3. WHEN a service stops, THE System SHALL update the Service_Registry
4. THE System SHALL provide a unified health check endpoint for all services
5. WHEN services are restarted, THE System SHALL ensure proper initialization order
### Requirement 4: Monitoring Unifié
**User Story:** En tant qu'administrateur, je veux un monitoring unifié, afin de surveiller l'état complet du système.
#### Acceptance Criteria
1. THE Health_Monitor SHALL check all system components periodically
2. WHEN a component fails, THE Health_Monitor SHALL log the failure and attempt recovery
3. THE System SHALL provide unified metrics for all components
4. THE Health_Monitor SHALL expose a single status endpoint showing overall system health
5. WHEN system health degrades, THE System SHALL send alerts
### Requirement 5: Démarrage et Arrêt Coordonnés
**User Story:** En tant qu'administrateur, je veux un démarrage/arrêt coordonné, afin d'éviter les problèmes de dépendances.
#### Acceptance Criteria
1. THE System SHALL provide a single command to start all services
2. THE System SHALL provide a single command to stop all services
3. WHEN starting, THE System SHALL respect service dependencies
4. WHEN stopping, THE System SHALL gracefully shutdown services in reverse order
5. THE System SHALL wait for proper initialization before marking services as ready
### Requirement 6: Gestion d'Erreurs Centralisée
**User Story:** En tant qu'administrateur, je veux une gestion d'erreurs centralisée, afin de diagnostiquer rapidement les problèmes.
#### Acceptance Criteria
1. THE System SHALL use a unified logging format across all components
2. WHEN errors occur, THE System SHALL log them with consistent structure
3. THE System SHALL provide error correlation across components
4. THE System SHALL aggregate logs in a central location
5. WHEN critical errors occur, THE System SHALL trigger automated recovery procedures
### Requirement 7: Validation de Cohérence
**User Story:** En tant qu'administrateur, je veux une validation de cohérence automatique, afin de détecter les problèmes avant qu'ils n'impactent les utilisateurs.
#### Acceptance Criteria
1. THE System SHALL validate data consistency across all components
2. WHEN inconsistencies are detected, THE System SHALL report them clearly
3. THE System SHALL provide automated repair procedures for common issues
4. THE System SHALL run consistency checks at startup
5. THE System SHALL provide manual consistency check commands
### Requirement 8: Migration et Mise à Jour
**User Story:** En tant qu'administrateur, je veux des migrations automatiques, afin de maintenir la cohérence lors des mises à jour.
#### Acceptance Criteria
1. THE System SHALL detect schema version mismatches automatically
2. WHEN schema migrations are needed, THE System SHALL perform them safely
3. THE System SHALL backup data before performing migrations
4. THE System SHALL validate data integrity after migrations
5. IF migrations fail, THEN THE System SHALL restore from backup automatically