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,82 @@
# Requirements Document
## Introduction
Ce document spécifie les exigences pour un système de monitoring et d'administration complet pour RPA Vision V3. Le système fournira une interface admin enrichie avec gestion des chaînes de workflows, déclencheurs, métriques Prometheus intégrées, logging centralisé et téléchargement des logs.
## Glossary
- **Admin Dashboard**: Interface web d'administration pour gérer et monitorer le système RPA
- **Prometheus**: Système de monitoring et d'alerting open-source pour collecter et stocker des métriques
- **Workflow Chain**: Séquence ordonnée de workflows exécutés consécutivement
- **Trigger**: Déclencheur automatique qui lance l'exécution d'un workflow basé sur un événement
- **Log Entry**: Entrée de journal structurée contenant timestamp, niveau, composant et message
- **Metrics Endpoint**: Point d'accès HTTP exposant les métriques au format Prometheus
## Requirements
### Requirement 1
**User Story:** As an administrator, I want to view and manage workflow chains, so that I can orchestrate complex multi-workflow processes.
#### Acceptance Criteria
1. WHEN an administrator accesses the chains section, THE Admin Dashboard SHALL display all configured workflow chains with their status and workflow sequence
2. WHEN an administrator creates a new chain, THE Admin Dashboard SHALL validate that all referenced workflows exist before saving
3. WHEN an administrator executes a chain, THE Admin Dashboard SHALL execute workflows in sequence and report progress via WebSocket
4. WHEN a workflow in a chain fails, THE Admin Dashboard SHALL stop chain execution and report the failure point
### Requirement 2
**User Story:** As an administrator, I want to configure and manage triggers, so that workflows can be automatically executed based on events.
#### Acceptance Criteria
1. WHEN an administrator accesses the triggers section, THE Admin Dashboard SHALL display all configured triggers with type, target workflow, and enabled status
2. WHEN an administrator creates a schedule trigger, THE Admin Dashboard SHALL validate the interval configuration and associate it with a workflow
3. WHEN an administrator enables or disables a trigger, THE Admin Dashboard SHALL update the trigger state and persist the change
4. WHEN a trigger fires, THE Admin Dashboard SHALL log the event and initiate the associated workflow execution
### Requirement 3
**User Story:** As a system operator, I want Prometheus metrics exposed, so that I can monitor system health and performance.
#### Acceptance Criteria
1. WHEN a monitoring system requests metrics, THE Admin Dashboard SHALL expose a /metrics endpoint returning Prometheus-formatted data
2. WHEN a workflow executes, THE Admin Dashboard SHALL increment workflow execution counters with workflow_id and status labels
3. WHEN a workflow completes, THE Admin Dashboard SHALL record execution duration in a histogram metric
4. WHEN the system state changes, THE Admin Dashboard SHALL update gauge metrics for active workflows and error rates
### Requirement 4
**User Story:** As a developer, I want a centralized logging system, so that I can track and debug system behavior across components.
#### Acceptance Criteria
1. WHEN a component logs an event, THE Logging System SHALL create a structured log entry with timestamp, level, component, and message
2. WHEN a workflow-related event occurs, THE Logging System SHALL include workflow_id and node_id in the log entry metadata
3. WHEN logs are requested via API, THE Admin Dashboard SHALL return recent log entries filtered by optional parameters
4. WHEN the logging system writes entries, THE Logging System SHALL also update Prometheus log counters by level and component
### Requirement 5
**User Story:** As an administrator, I want to download logs, so that I can analyze system behavior offline or share with support.
#### Acceptance Criteria
1. WHEN an administrator requests log download, THE Admin Dashboard SHALL generate a ZIP archive containing structured log files
2. WHEN generating the ZIP archive, THE Admin Dashboard SHALL include execution_logs.json, error_logs.json, and metrics.json files
3. WHEN the download completes, THE Admin Dashboard SHALL return the ZIP file with appropriate content-type and filename headers
4. WHEN an administrator specifies a date range, THE Admin Dashboard SHALL filter logs to include only entries within that range
### Requirement 6
**User Story:** As an administrator, I want the admin interface updated with new sections, so that I can access all monitoring features from one place.
#### Acceptance Criteria
1. WHEN an administrator loads the dashboard, THE Admin Dashboard SHALL display navigation links for Workflows, Chains, Triggers, Metrics, and Logs sections
2. WHEN an administrator switches sections, THE Admin Dashboard SHALL load section data dynamically via API calls
3. WHEN displaying the logs section, THE Admin Dashboard SHALL show a download button and refresh functionality
4. WHEN displaying metrics, THE Admin Dashboard SHALL show real-time system metrics with auto-refresh capability