Files
rpa_vision_v3/.kiro/specs/rpa-system-unification/tasks.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

156 lines
6.6 KiB
Markdown

# Implementation Plan: RPA System Unification
## Overview
Ce plan unifie définitivement le système RPA Vision V3 en créant une architecture centralisée qui élimine les incohérences et problèmes récurrents.
## Tasks
- [x] 1. Créer le Configuration Manager centralisé
- Implémenter la classe SystemConfig avec tous les paramètres unifiés
- Créer le ConfigurationManager pour charger/valider la configuration
- Ajouter la gestion des variables d'environnement et fichiers de config
- _Requirements: 1.1, 1.2, 1.4, 1.5_
- [x]* 1.1 Écrire les tests de propriété pour la configuration
- **Property 1: Configuration Consistency**
- **Property 10: Configuration Validation Completeness**
- **Validates: Requirements 1.1, 1.2, 1.4, 1.5**
- [ ] 2. Implémenter le Data Manager unifié
- Créer la classe DataManager pour gérer tous les chemins de données
- Unifier les chemins sessions, workflows, embeddings, logs
- Ajouter la création automatique des répertoires avec permissions
- Implémenter la validation d'intégrité des données
- _Requirements: 2.1, 2.2, 2.3, 2.4, 2.5_
- [ ]* 2.1 Écrire les tests de propriété pour les chemins de données
- **Property 2: Data Path Unification**
- **Property 8: Data Consistency Validation**
- **Validates: Requirements 2.1, 2.2, 2.3, 7.1, 7.2**
- [ ] 3. Créer le Service Registry
- Implémenter la classe ServiceRegistry pour tracker tous les services
- Ajouter l'enregistrement/désenregistrement automatique des services
- Créer les modèles ServiceInfo et ServiceStatus
- Implémenter la synchronisation entre services
- _Requirements: 3.1, 3.2, 3.3, 3.4, 3.5_
- [ ]* 3.1 Écrire les tests de propriété pour le Service Registry
- **Property 3: Service Registration Completeness**
- **Validates: Requirements 3.1, 3.2, 3.3**
- [ ] 4. Implémenter le Health Monitor
- Créer la classe HealthMonitor pour surveiller tous les composants
- Ajouter les vérifications de santé périodiques
- Implémenter la détection de pannes et récupération automatique
- Créer l'endpoint de santé système unifié
- _Requirements: 4.1, 4.2, 4.3, 4.4, 4.5_
- [ ]* 4.1 Écrire les tests de propriété pour le Health Monitor
- **Property 4: Health Check Responsiveness**
- **Validates: Requirements 4.1, 4.2**
- [ ] 5. Créer le System Controller
- Implémenter la classe SystemController pour coordonner les services
- Ajouter les commandes start/stop/restart unifiées
- Gérer les dépendances entre services au démarrage
- Implémenter l'arrêt gracieux en ordre inverse
- _Requirements: 5.1, 5.2, 5.3, 5.4, 5.5_
- [ ]* 5.1 Écrire les tests de propriété pour le System Controller
- **Property 5: Startup Order Correctness**
- **Property 6: Shutdown Graceful Completion**
- **Validates: Requirements 5.1, 5.2, 5.3, 5.4**
- [ ] 6. Checkpoint - Vérifier l'architecture de base
- Ensure all tests pass, ask the user if questions arise.
- [ ] 7. Implémenter la gestion d'erreurs centralisée
- Créer le format de log unifié pour tous les composants
- Ajouter la corrélation d'erreurs entre composants
- Implémenter l'agrégation centralisée des logs
- Créer les procédures de récupération automatique
- _Requirements: 6.1, 6.2, 6.3, 6.4, 6.5_
- [ ]* 7.1 Écrire les tests de propriété pour la gestion d'erreurs
- **Property 7: Error Correlation Consistency**
- **Validates: Requirements 6.1, 6.2, 6.3**
- [ ] 8. Créer le système de migration
- Implémenter la détection automatique des versions de schéma
- Créer le framework de migration avec backup automatique
- Ajouter la validation d'intégrité post-migration
- Implémenter la restauration automatique en cas d'échec
- _Requirements: 8.1, 8.2, 8.3, 8.4, 8.5_
- [ ]* 8.1 Écrire les tests de propriété pour les migrations
- **Property 9: Migration Safety**
- **Validates: Requirements 8.1, 8.3, 8.5**
- [ ] 9. Migrer le Dashboard Service
- Modifier web_dashboard/app.py pour utiliser le Configuration Manager
- Remplacer les chemins hardcodés par le Data Manager
- Intégrer avec le Service Registry et Health Monitor
- Corriger le problème des sessions non trouvées
- _Requirements: 1.2, 2.1, 2.2, 3.1_
- [ ] 10. Migrer l'API Service
- Modifier server/api_upload.py pour utiliser la configuration centralisée
- Intégrer avec le Service Registry
- Unifier les chemins de données avec le Data Manager
- _Requirements: 1.2, 2.1, 2.2, 3.1_
- [ ] 11. Migrer le Worker Service
- Modifier server/worker_daemon.py pour la configuration centralisée
- Intégrer avec le Service Registry et Health Monitor
- Unifier les chemins de traitement des données
- _Requirements: 1.2, 2.1, 2.2, 3.1_
- [ ] 12. Migrer l'Agent Service
- Modifier agent_v0/ pour utiliser la configuration centralisée
- Intégrer avec le Service Registry
- Unifier les chemins d'upload et de stockage
- _Requirements: 1.2, 2.1, 2.2, 3.1_
- [ ] 13. Créer les scripts de gestion système
- Créer rpa-system start/stop/restart/status
- Ajouter les commandes de vérification de cohérence
- Implémenter les outils de diagnostic et réparation
- Créer les scripts de migration manuelle
- _Requirements: 5.1, 5.2, 7.3, 7.5_
- [ ]* 13.1 Écrire les tests d'intégration système
- Tester les cycles complets start/stop
- Tester la récupération après panne
- Tester les migrations de données
- _Requirements: 5.1, 5.2, 8.1, 8.2_
- [ ] 14. Mettre à jour la configuration systemd
- Modifier les services systemd pour utiliser le nouveau système
- Ajouter les dépendances correctes entre services
- Mettre à jour les variables d'environnement
- Tester le démarrage automatique au boot
- _Requirements: 3.5, 5.3, 5.4_
- [ ] 15. Checkpoint final - Validation complète
- Ensure all tests pass, ask the user if questions arise.
- Vérifier que tous les services utilisent la configuration centralisée
- Valider que les chemins de données sont unifiés
- Tester les scénarios de panne et récupération
- Valider les migrations de données
- [ ]* 15.1 Tests de performance système
- Mesurer les temps de démarrage/arrêt
- Tester la performance des health checks
- Valider les performances de migration
- _Requirements: 4.1, 5.5, 8.4_
## Notes
- Tasks marked with `*` are optional and can be skipped for faster MVP
- Each task references specific requirements for traceability
- Checkpoints ensure incremental validation
- Property tests validate universal correctness properties
- Integration tests validate cross-component behavior
- Cette unification résoudra définitivement les problèmes récurrents de configuration et de synchronisation