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>
156 lines
6.6 KiB
Markdown
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 |