# 🔧 Guide de Réparation Rapide - Option A ## Correction des tokens pour services systemd **Date**: 7 janvier 2026 **Objectif**: Synchroniser les tokens entre agent et serveur pour la démo investisseurs **Durée estimée**: 5 minutes --- ## 🎯 Problème Identifié **Symptôme**: L'agent V0 ne peut pas uploader les sessions (erreur 401 Unauthorized) **Cause**: Incohérence des tokens entre : - `.env.local` : contient les tokens `5a0d59...` et `1ad831...` - `api_tokens.py` : hardcode les tokens `73cf0d...` et `7eea1d...` - L'agent lit `.env.local`, le serveur valide avec les tokens hardcodés ❌ **Solution**: Remplacer les tokens dans les configs par ceux hardcodés dans le code --- ## 📋 Étapes de Réparation ### Étape 1 : Corriger les Tokens Production (Services Systemd) ```bash cd /home/dom/ai/rpa_vision_v3 # Exécuter le script de correction (nécessite sudo) sudo bash fix_tokens_production.sh ``` **Ce que fait le script** : 1. ✅ Sauvegarde `/etc/rpa_vision_v3/rpa_vision_v3.env` 2. ✅ Met à jour `RPA_TOKEN_ADMIN` et `RPA_TOKEN_READONLY` 3. ✅ Redémarre les services systemd (api, worker, dashboard) 4. ✅ Affiche le statut des services **Sortie attendue** : ``` ✅ CORRECTION TERMINÉE 📊 Statut des services: ● rpa-vision-v3-api.service - RPA Vision V3 - Upload API (FastAPI) Loaded: loaded (/etc/systemd/system/rpa-vision-v3-api.service) Active: active (running) ``` --- ### Étape 2 : Corriger les Tokens Développement (Optionnel) Si vous travaillez aussi en mode dev local : ```bash bash fix_tokens_dev.sh ``` --- ### Étape 3 : Vérifier les Services ```bash # Vérifier que tous les services sont actifs systemctl status rpa-vision-v3-api.service systemctl status rpa-vision-v3-worker.service systemctl status rpa-vision-v3-dashboard.service # Vérifier les logs récents sudo journalctl -u rpa-vision-v3-api -n 50 --no-pager ``` **Rechercher dans les logs** : ``` ✓ TokenManager initialized with 2 admin tokens, 2 read-only tokens ✓ Added hardcoded production admin token ``` --- ### Étape 4 : Tester l'Upload Agent ```bash # Lancer l'agent V0 cd /home/dom/ai/rpa_vision_v3/agent_v0 ./run.sh ``` **Actions à faire** : 1. L'agent s'ouvre dans le system tray 2. Cliquer sur "Start Capture" 3. Effectuer quelques actions (ouvrir une fenêtre, cliquer, etc.) 4. Attendre 30 secondes 5. Vérifier l'upload dans les logs **Vérification du succès** : ```bash # Vérifier les sessions reçues ls -lh /opt/rpa_vision_v3/data/training/sessions/ # Devrait afficher des fichiers .json avec timestamp récent ``` --- ## 🔍 Diagnostic en Cas de Problème ### Problème : Services ne démarrent pas ```bash # Voir les erreurs détaillées sudo journalctl -u rpa-vision-v3-api -xe # Vérifier la configuration sudo cat /etc/rpa_vision_v3/rpa_vision_v3.env | grep RPA_TOKEN ``` ### Problème : Agent envoie toujours 401 ```bash # Vérifier que l'agent utilise le bon token cd /home/dom/ai/rpa_vision_v3/agent_v0 cat config.py | grep RPA_TOKEN_ADMIN # Vérifier que .env.local est à jour cat /home/dom/ai/rpa_vision_v3/.env.local | grep RPA_TOKEN_ADMIN ``` ### Problème : Besoin de rollback ```bash # Restaurer la sauvegarde (remplacer TIMESTAMP par le bon) sudo cp /etc/rpa_vision_v3/rpa_vision_v3.env.backup_TIMESTAMP \ /etc/rpa_vision_v3/rpa_vision_v3.env # Redémarrer les services sudo systemctl restart rpa-vision-v3-*.service ``` --- ## ✅ Checklist de Validation - [ ] Script `fix_tokens_production.sh` exécuté sans erreur - [ ] Les 3 services systemd sont "active (running)" - [ ] Les logs montrent "TokenManager initialized with 2 admin tokens" - [ ] L'agent V0 se lance correctement - [ ] L'agent peut uploader une session (pas d'erreur 401) - [ ] Les sessions apparaissent dans `/opt/rpa_vision_v3/data/training/sessions/` --- ## 📞 Support En cas de blocage : 1. Vérifier les logs : `sudo journalctl -u rpa-vision-v3-api -n 100` 2. Vérifier les tokens : `sudo cat /etc/rpa_vision_v3/rpa_vision_v3.env | grep TOKEN` 3. Contacter le support technique --- ## 📝 Prochaines Étapes Une fois la correction appliquée et validée : 1. **Test E2E complet** : Capturer une session complète d'un logiciel médical 2. **Validation workflow** : Vérifier que les données sont bien extraites et consolidées 3. **Préparation démo** : Créer un scénario de démonstration pour investisseurs --- **Tokens de Production (pour référence)** : - Admin: `73cf0db73f9a5064e79afebba96c85338be65cc2060b9c1d42c3ea5dd7d4e490` - ReadOnly: `7eea1de415cc69c02381ce09ff63aeebf3e1d9b476d54aa6730ba9de849e3dc6` ⚠️ **IMPORTANT** : Ces tokens doivent rester confidentiels et seront à changer avant la production réelle.