feat: chat unifié, GestureCatalog, Copilot, Léa UI, extraction données, vérification replay

Refonte majeure du système Agent Chat et ajout de nombreux modules :

- Chat unifié : suppression du dual Workflows/Agent Libre, tout passe par /api/chat
  avec résolution en 3 niveaux (workflow → geste → "montre-moi")
- GestureCatalog : 38 raccourcis clavier universels Windows avec matching sémantique,
  substitution automatique dans les replays, et endpoint /api/gestures
- Mode Copilot : exécution pas-à-pas des workflows avec validation humaine via WebSocket
  (approve/skip/abort) avant chaque action
- Léa UI (agent_v0/lea_ui/) : interface PyQt5 pour Windows avec overlay transparent
  pour feedback visuel pendant le replay
- Data Extraction (core/extraction/) : moteur d'extraction visuelle de données
  (OCR + VLM → SQLite), avec schémas YAML et export CSV/Excel
- ReplayVerifier (agent_v0/server_v1/) : vérification post-action par comparaison
  de screenshots, avec logique de retry (max 3)
- IntentParser durci : meilleur fallback regex, type GREETING, patterns améliorés
- Dashboard : nouvelles pages gestures, streaming, extractions
- Tests : 63 tests GestureCatalog, 47 tests extraction, corrections tests existants
- Dépréciation : /api/agent/plan et /api/agent/execute retournent HTTP 410,
  suppression du code hardcodé _plan_to_replay_actions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dom
2026-03-15 10:02:09 +01:00
parent 74a1cb4e03
commit cf495dd82f
93 changed files with 12463 additions and 1080 deletions

View File

@@ -4,7 +4,7 @@
# Visual Workflow Builder v4 - Script de Lancement
#
# Ce script lance :
# - Le backend Flask (port 5001)
# - Le backend Flask (port 5002)
# - Le frontend React v4 avec Vite (port 3002)
################################################################################
@@ -84,7 +84,7 @@ fi
################################################################################
echo -e "${BLUE}📦 1. Démarrage du Backend Flask${NC}"
echo " Port: 5001"
echo " Port: 5002"
echo ""
cd "$BACKEND_DIR"
@@ -103,9 +103,9 @@ echo "$BACKEND_PID" > "$BACKEND_PID_FILE"
# Attendre que le backend soit prêt
echo -n " Attente du backend"
for i in {1..30}; do
if curl -s http://localhost:5001/health > /dev/null 2>&1; then
if curl -s http://localhost:5002/health > /dev/null 2>&1; then
echo ""
echo -e "${GREEN} ✓ Backend prêt sur http://localhost:5001${NC}"
echo -e "${GREEN} ✓ Backend prêt sur http://localhost:5002${NC}"
break
fi
echo -n "."
@@ -176,8 +176,8 @@ echo -e "${CYAN}╚════════════════════
echo ""
echo -e "${GREEN}🌐 URLs:${NC}"
echo " • Frontend: http://localhost:3002"
echo " • Backend: http://localhost:5001"
echo " • API v3: http://localhost:5001/api/v3"
echo " • Backend: http://localhost:5002"
echo " • API v3: http://localhost:5002/api/v3"
echo ""
echo -e "${GREEN}📝 Logs:${NC}"
echo " • Backend: tail -f $LOG_DIR/backend_v4.log"