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:
Dom
2026-01-29 11:23:51 +01:00
parent 21bfa3b337
commit a27b74cf22
1595 changed files with 412691 additions and 400 deletions

128
server/start_all.sh Executable file
View File

@@ -0,0 +1,128 @@
#!/bin/bash
# start_all.sh
# Démarre l'API et le Dashboard en mode développement
set -e
echo "========================================"
echo "RPA Vision V3 - Démarrage Complet"
echo "========================================"
echo ""
# Détecter le répertoire du projet
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
echo "📁 Répertoire projet: $PROJECT_DIR"
echo ""
# Vérifier l'environnement virtuel
if [ ! -d "$PROJECT_DIR/venv_v3" ]; then
echo "❌ Environnement virtuel non trouvé: $PROJECT_DIR/venv_v3"
echo " Créez-le avec: python3 -m venv venv_v3"
exit 1
fi
# Activer l'environnement virtuel
source "$PROJECT_DIR/venv_v3/bin/activate"
# Fiche #23 - Anti-oubli tokens (DEV)
chmod +x "$SCRIPT_DIR/bootstrap_local_env.sh" 2>/dev/null || true
"$SCRIPT_DIR/bootstrap_local_env.sh" >/dev/null || true
# Vérifier les dépendances
echo "📦 Vérification des dépendances..."
# Installer les dépendances serveur si nécessaire
if ! python -c "import fastapi" 2>/dev/null; then
echo "Installation des dépendances serveur..."
pip install -r "$SCRIPT_DIR/requirements_server.txt"
fi
if ! python -c "import flask" 2>/dev/null; then
echo "Installation des dépendances dashboard..."
pip install -r "$PROJECT_DIR/web_dashboard/requirements.txt"
fi
echo "✅ Dépendances OK"
echo ""
# Créer les répertoires nécessaires
mkdir -p "$PROJECT_DIR/data/training/uploads"
mkdir -p "$PROJECT_DIR/data/training/sessions"
mkdir -p "$PROJECT_DIR/logs"
# Configuration (bootstrap_local_env.sh charge déjà les variables)
export ENCRYPTION_PASSWORD="${ENCRYPTION_PASSWORD:-rpa_vision_v3_default_key}"
# Fonction pour arrêter proprement
cleanup() {
echo ""
echo "🛑 Arrêt des services..."
kill $API_PID 2>/dev/null || true
kill $DASHBOARD_PID 2>/dev/null || true
exit 0
}
trap cleanup SIGINT SIGTERM
# Démarrer l'API
echo "🚀 Démarrage de l'API (port 8000)..."
cd "$SCRIPT_DIR"
python api_upload.py > "$PROJECT_DIR/logs/api.log" 2>&1 &
API_PID=$!
# Attendre que l'API démarre
sleep 2
if ! kill -0 $API_PID 2>/dev/null; then
echo "❌ Erreur démarrage API"
cat "$PROJECT_DIR/logs/api.log"
exit 1
fi
echo "✅ API démarrée (PID: $API_PID)"
echo ""
# Démarrer le Dashboard
echo "🚀 Démarrage du Dashboard (port 5001)..."
cd "$PROJECT_DIR/web_dashboard"
python app.py > "$PROJECT_DIR/logs/dashboard.log" 2>&1 &
DASHBOARD_PID=$!
# Attendre que le Dashboard démarre
sleep 2
if ! kill -0 $DASHBOARD_PID 2>/dev/null; then
echo "❌ Erreur démarrage Dashboard"
cat "$PROJECT_DIR/logs/dashboard.log"
kill $API_PID 2>/dev/null || true
exit 1
fi
echo "✅ Dashboard démarré (PID: $DASHBOARD_PID)"
echo ""
# Afficher les informations
echo "========================================"
echo "✅ Services démarrés!"
echo "========================================"
echo ""
echo "🌐 URLs:"
echo " API: http://localhost:8000"
echo " Dashboard: http://localhost:5001/?token=${RPA_TOKEN_READONLY:-}"
echo ""
echo "📝 Logs:"
echo " API: tail -f $PROJECT_DIR/logs/api.log"
echo " Dashboard: tail -f $PROJECT_DIR/logs/dashboard.log"
echo ""
echo "🔑 Encryption password: ${ENCRYPTION_PASSWORD:0:3}***"
echo ""
echo "📊 Test API:"
echo " curl -H \"Authorization: Bearer ${RPA_TOKEN_READONLY:-<read_ONLY_TOKEN>}\" http://localhost:8000/api/traces/status"
echo ""
echo "🛑 Appuyez sur Ctrl+C pour arrêter"
echo ""
# Attendre
wait