Files
rpa_vision_v3/.kiro/specs/rpa-precision-enhancement/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

11 KiB

RPA Precision Enhancement - Spécification des Exigences

Auteur: Dom, Alice Kiro
Date: 15 décembre 2024
Version: 1.0
Statut: Nouveau

🎯 Vue d'Ensemble

Suite aux corrections réussies des Fiches #1, #2, et #3 qui ont résolu les bugs critiques de précision ("robot qui clique à côté"), cette spécification définit la prochaine phase d'amélioration du système RPA Vision V3 pour atteindre une précision de niveau production.

📋 Contexte et Motivation

Succès Actuels

  • Fiche #1: Contrats de données unifiés (aliases de compatibilité)
  • Fiche #2: Format BBOX XYWH standardisé (précision géométrique)
  • Fiche #3: Context hints intégrés dans résolution composite
  • Précision actuelle: ~95% (amélioration de +35% depuis les corrections)

Défis Restants 🎯

  1. Robustesse multi-environnements: Variations d'écran, résolutions, DPI
  2. Adaptation dynamique: UI qui changent (mises à jour, thèmes)
  3. Performance à l'échelle: Optimisation pour workflows complexes
  4. Monitoring avancé: Métriques de précision en temps réel
  5. Auto-amélioration: Apprentissage continu des échecs

🎯 Objectifs Principaux

Objectif 1: Précision Robuste Multi-Environnements

  • Cible: 98%+ de précision sur différentes résolutions/DPI
  • Métriques: Taux de succès par environnement, écart-type des positions
  • Valeur: Déploiement fiable sur parcs hétérogènes

Objectif 2: Adaptation Dynamique UI

  • Cible: Détection automatique des changements UI et re-calibration
  • Métriques: Temps de récupération après changement UI, taux de faux positifs
  • Valeur: Maintenance réduite, workflows auto-résilients

Objectif 3: Performance Optimisée

  • Cible: <50ms résolution moyenne, <200ms pour cas complexes
  • Métriques: Latence P95, throughput résolutions/seconde
  • Valeur: Workflows fluides, expérience utilisateur améliorée

Objectif 4: Monitoring Intelligent

  • Cible: Dashboard temps réel avec alertes prédictives
  • Métriques: MTTR (Mean Time To Recovery), précision par composant
  • Valeur: Proactivité opérationnelle, debugging facilité

👥 Personas et Cas d'Usage

Persona 1: Administrateur RPA

Besoins:

  • Monitoring centralisé de la précision
  • Alertes automatiques sur dégradation
  • Métriques de performance par workflow

Cas d'usage:

  • Surveiller 50+ workflows en production
  • Détecter rapidement les régressions
  • Optimiser les configurations par environnement

Persona 2: Développeur Workflow

Besoins:

  • Outils de debugging précision
  • Feedback temps réel sur qualité résolution
  • Suggestions d'amélioration automatiques

Cas d'usage:

  • Créer workflows robustes multi-environnements
  • Diagnostiquer échecs de résolution
  • Optimiser sélecteurs pour performance

Persona 3: Utilisateur Final

Besoins:

  • Workflows qui "marchent toujours"
  • Récupération transparente des erreurs
  • Performance constante

Cas d'usage:

  • Exécuter workflows quotidiens sans intervention
  • Travailler sur différents postes/résolutions
  • Bénéficier d'améliorations automatiques

📋 User Stories

Epic 1: Robustesse Multi-Environnements

US-1.1: Normalisation DPI/Résolution

En tant qu' administrateur RPA
Je veux que les workflows fonctionnent identiquement sur différentes résolutions
Afin de déployer sur un parc hétérogène sans reconfiguration

Critères d'acceptation:

  • Détection automatique DPI/résolution
  • Normalisation coordonnées BBOX
  • Tests sur 3+ résolutions différentes
  • Précision >95% sur chaque environnement

US-1.2: Adaptation Échelle UI

En tant que développeur workflow
Je veux que les éléments soient trouvés même avec zoom/échelle différents
Afin de créer des workflows universels

Critères d'acceptation:

  • Support zoom 75%-150%
  • Recalibration automatique des seuils
  • Métriques de confiance ajustées
  • Fallback multi-échelle

Epic 2: Adaptation Dynamique

US-2.1: Détection Changements UI

En tant qu' utilisateur final
Je veux que mes workflows continuent de fonctionner après mises à jour UI
Afin de ne pas avoir à les reconfigurer constamment

Critères d'acceptation:

  • Détection automatique changements layout
  • Stratégies de récupération adaptatives
  • Apprentissage des nouveaux patterns
  • Notification changements détectés

US-2.2: Auto-Calibration Seuils

En tant que système RPA
Je veux ajuster automatiquement mes seuils de confiance
Afin de maintenir une précision optimale

Critères d'acceptation:

  • Analyse historique des succès/échecs
  • Ajustement dynamique des seuils
  • A/B testing des configurations
  • Rollback automatique si dégradation

Epic 3: Performance Optimisée

US-3.1: Cache Intelligent

En tant que système RPA
Je veux un cache multi-niveaux optimisé
Afin de réduire la latence de résolution

Critères d'acceptation:

  • Cache embeddings par session
  • Cache relations spatiales
  • Invalidation intelligente
  • Métriques hit rate >80%

US-3.2: Résolution Parallèle

En tant que développeur workflow
Je veux résoudre plusieurs cibles en parallèle
Afin d accélérer les workflows complexes

Critères d'acceptation:

  • API résolution batch
  • Pool de workers configurables
  • Gestion ressources GPU/CPU
  • Latence réduite 50%+ pour batch

Epic 4: Monitoring Avancé

US-4.1: Dashboard Précision Temps Réel

En tant qu' administrateur RPA
Je veux un dashboard temps réel de la précision
Afin de détecter rapidement les problèmes

Critères d'acceptation:

  • Métriques temps réel par workflow
  • Graphiques tendances précision
  • Alertes seuils configurables
  • Export données pour analyse

US-4.2: Diagnostic Automatique

En tant que développeur workflow
Je veux des suggestions automatiques d'amélioration
Afin d' optimiser mes sélecteurs

Critères d'acceptation:

  • Analyse patterns d'échec
  • Suggestions sélecteurs alternatifs
  • Scoring qualité résolution
  • Recommandations performance

🔧 Exigences Techniques

Performance

  • Latence résolution: <50ms P95 (simple), <200ms P95 (composite)
  • Throughput: >100 résolutions/seconde
  • Mémoire: <500MB overhead cache
  • CPU: <10% utilisation baseline

Fiabilité

  • Précision: >98% multi-environnements
  • Disponibilité: 99.9% uptime
  • Récupération: <5s après changement UI
  • Cohérence: Résultats identiques multi-exécutions

Scalabilité

  • Workflows simultanés: >50
  • Éléments UI: >1000 par écran
  • Historique: 30 jours métriques
  • Environnements: Support 10+ configurations

Sécurité

  • Données sensibles: Pas de capture credentials
  • Logs: Anonymisation automatique
  • Accès: RBAC pour monitoring
  • Audit: Traçabilité complète actions

🚫 Exclusions

Hors Périmètre v1.0

  • OCR avancé: Reconnaissance texte complexe (v2.0)
  • IA générative: Génération workflows automatique (v2.0)
  • Multi-applications: Workflows cross-app (v1.1)
  • Mobile: Support tablettes/smartphones (v2.0)

Contraintes Acceptées

  • Environnements supportés: Windows 10+, macOS 12+, Ubuntu 20+
  • Navigateurs: Chrome 90+, Firefox 88+, Edge 90+
  • Résolutions: 1024x768 à 4K
  • Langues: Interface anglais/français uniquement

📊 Métriques de Succès

Métriques Primaires

  1. Précision Globale: >98% (vs 95% actuel)
  2. Latence P95: <50ms simple, <200ms composite
  3. MTTR: <5 minutes (vs 30 minutes actuel)
  4. Satisfaction Utilisateur: >4.5/5 (enquête)

Métriques Secondaires

  1. Cache Hit Rate: >80%
  2. False Positive Rate: <2%
  3. Adaptation Time: <10s après changement UI
  4. Resource Efficiency: <10% CPU, <500MB RAM

Métriques de Qualité

  1. Code Coverage: >90%
  2. Performance Tests: 100% passing
  3. Security Scan: 0 vulnérabilités critiques
  4. Documentation: 100% APIs documentées

🗓️ Jalons et Livrables

Phase 1: Fondations (Semaines 1-2)

  • Architecture monitoring avancé
  • Framework métriques temps réel
  • Cache multi-niveaux
  • Tests performance baseline

Phase 2: Robustesse (Semaines 3-4)

  • Normalisation DPI/résolution
  • Adaptation multi-échelle
  • Détection changements UI
  • Stratégies récupération

Phase 3: Performance (Semaines 5-6)

  • Résolution parallèle
  • Optimisations cache
  • Profiling et tuning
  • Benchmarks comparatifs

Phase 4: Monitoring (Semaines 7-8)

  • Dashboard temps réel
  • Alertes intelligentes
  • Diagnostic automatique
  • Documentation utilisateur

🔗 Dépendances

Dépendances Internes

  • Core Models: Contrats données stabilisés (Fiches #1-3)
  • Target Resolver: Context hints implémentés (Fiche #3)
  • Action Executor: Précision BBOX corrigée (Fiche #2)
  • Analytics System: Infrastructure existante

Dépendances Externes

  • Monitoring Stack: Prometheus/Grafana ou équivalent
  • Cache Backend: Redis ou équivalent
  • GPU Resources: CUDA 11+ pour optimisations
  • Testing Infrastructure: Environnements multi-résolution

⚠️ Risques et Mitigation

Risques Techniques

  1. Performance Dégradation: Monitoring peut impacter latence
    • Mitigation: Sampling intelligent, async processing
  2. Cache Invalidation: Complexité gestion cohérence
    • Mitigation: Stratégies TTL conservatrices, validation
  3. Multi-threading: Race conditions résolution parallèle
    • Mitigation: Design thread-safe, tests concurrence

Risques Produit

  1. Over-engineering: Complexité vs bénéfice utilisateur
    • Mitigation: MVP itératif, feedback utilisateur continu
  2. Adoption: Résistance changement workflows existants
    • Mitigation: Rétrocompatibilité, migration progressive
  3. Maintenance: Overhead opérationnel monitoring
    • Mitigation: Automation maximale, self-healing

📚 Références

Standards et Bonnes Pratiques

  • W3C Accessibility Guidelines: Pour sélecteurs robustes
  • IEEE 829: Standards documentation tests
  • ISO 25010: Qualité logiciel (performance, fiabilité)

Technologies de Référence

  • Selenium Grid: Architecture parallélisation
  • Prometheus: Métriques et monitoring
  • OpenTelemetry: Observabilité distribuée
  • Apache Kafka: Streaming métriques temps réel

Prochaine étape: Création du document de design détaillé basé sur ces exigences.