v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40) - Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard) - Ollama GPU fonctionnel - Self-healing interactif - Dashboard confiance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
94
docs/guides/REPLAY_SIMULATION_GUIDE.md
Normal file
94
docs/guides/REPLAY_SIMULATION_GUIDE.md
Normal file
@@ -0,0 +1,94 @@
|
||||
# Guide Replay Simulation Report - Fiche #16
|
||||
|
||||
**Auteur :** Dom, Alice Kiro - 22 décembre 2025
|
||||
|
||||
## Vue d'ensemble
|
||||
|
||||
Le système Replay Simulation Report permet de tester les règles de résolution de cibles de manière **100% headless** sans interaction UI réelle. Il charge des cas de test depuis `tests/dataset/**/` et génère des rapports détaillés avec scores de risque et métriques de performance.
|
||||
|
||||
## Fonctionnalités Clés
|
||||
|
||||
- ✅ **Test headless** : Aucune interaction UI, parfait pour itération rapide
|
||||
- ✅ **Règles réelles** : Utilise TargetResolver avec toutes les fiches #8-#14
|
||||
- ✅ **Scores de risque** : Ambiguïté, confiance, marge top1/top2
|
||||
- ✅ **Rapports duaux** : JSON machine-friendly + Markdown human-friendly
|
||||
- ✅ **Performance** : Métriques de temps et débit
|
||||
- ✅ **Analyse stratégique** : Évaluation par stratégie de résolution
|
||||
|
||||
## Utilisation Rapide
|
||||
|
||||
```bash
|
||||
# Test tous les cas de test
|
||||
python replay_simulation_cli.py
|
||||
|
||||
# Test avec pattern spécifique
|
||||
python replay_simulation_cli.py --dataset "form_*" --max-cases 50
|
||||
|
||||
# Mode verbose avec sortie personnalisée
|
||||
python replay_simulation_cli.py --dataset "login_*" --verbose --out-md report.md
|
||||
```
|
||||
|
||||
## Format des Datasets
|
||||
|
||||
Chaque cas de test doit être dans un répertoire contenant :
|
||||
|
||||
1. **`screen_state.json`** : ScreenState sérialisé
|
||||
2. **`target_spec.json`** : TargetSpec sérialisé
|
||||
3. **`expected.json`** : `{"element_id": "...", "confidence": 0.95}`
|
||||
4. **`metadata.json`** : Métadonnées optionnelles
|
||||
|
||||
## Métriques de Risque
|
||||
|
||||
### Risque Global
|
||||
Pondération des facteurs :
|
||||
- **40%** Ambiguïté (nombre d'éléments similaires)
|
||||
- **30%** Confiance inversée (1 - confiance)
|
||||
- **20%** Marge inversée (1 - marge top1/top2)
|
||||
- **10%** Temps de résolution normalisé
|
||||
|
||||
### Seuils de Qualité
|
||||
|
||||
| Métrique | Excellent | Bon | Acceptable | Problématique |
|
||||
|----------|-----------|-----|------------|---------------|
|
||||
| Taux de succès | >95% | 90-95% | 80-90% | <80% |
|
||||
| Précision | >95% | 90-95% | 85-90% | <85% |
|
||||
| Risque moyen | <0.3 | 0.3-0.5 | 0.5-0.7 | >0.7 |
|
||||
| Temps moyen | <50ms | 50-100ms | 100-200ms | >200ms |
|
||||
|
||||
## Cas d'Usage
|
||||
|
||||
### 1. Validation de Règles
|
||||
```bash
|
||||
# Avant modification
|
||||
python replay_simulation_cli.py --out-json before.json
|
||||
|
||||
# Après modification
|
||||
python replay_simulation_cli.py --out-json after.json
|
||||
```
|
||||
|
||||
### 2. Développement Itératif
|
||||
```bash
|
||||
# Test rapide pendant développement
|
||||
python replay_simulation_cli.py --dataset "dev_*" --max-cases 10 --verbose
|
||||
|
||||
# Test complet avant commit
|
||||
python replay_simulation_cli.py --dataset "**" --out-md full_report.md
|
||||
```
|
||||
|
||||
### 3. Régression Testing
|
||||
```bash
|
||||
# Dans le pipeline CI
|
||||
python replay_simulation_cli.py --dataset "regression_*" --quiet
|
||||
```
|
||||
|
||||
## Avantages
|
||||
|
||||
- 🚀 **Rapidité** : Tests headless sans UI
|
||||
- 🎯 **Précision** : Utilise les règles réelles des fiches #8-#14
|
||||
- 📊 **Analyse** : Métriques de risque détaillées
|
||||
- 🔄 **Itération** : Feedback immédiat pour développement
|
||||
- 📈 **Évolution** : Suivi des améliorations dans le temps
|
||||
|
||||
---
|
||||
|
||||
*RPA Vision V3 - Fiche #16 : Replay Simulation Report*
|
||||
Reference in New Issue
Block a user