Dom
4f61741420
feat: journée 17 avril — tests E2E validés, dashboard fleet+audit, VWB bridge, cleaner C2
...
security-audit / Bandit (scan statique) (push) Successful in 14s
security-audit / pip-audit (CVE dépendances) (push) Successful in 10s
security-audit / Scan secrets (grep) (push) Successful in 8s
tests / Lint (ruff + black) (push) Successful in 13s
tests / Tests unitaires (sans GPU) (push) Failing after 14s
tests / Tests sécurité (critique) (push) Has been skipped
Pipeline E2E complet validé :
Capture VM → streaming → serveur → cleaner → replay → audit trail
Mode apprentissage supervisé fonctionne (Léa échoue → humain → reprise)
Dashboard :
- Cleanup 14→10 onglets (RCE supprimée)
- Fleet : enregistrer/révoquer agents, tokens, ZIP pré-configuré téléchargeable
- Audit trail MVP (/audit) : filtres, tableau, export CSV, conformité AI Act/RGPD
- Formulaire Fleet simplifié (nom + email, machine_id auto)
VWB bridge Léa→VWB :
- Compound décomposés en N steps (saisie + raccourci visibles)
- Layout serpentin 3 colonnes (plus colonne verticale)
- Badge OS 🪟 /🐧 , filtre OS retiré (admin Linux voit Windows)
- Fix import SQLite readonly
Cleaner intelligent :
- Descriptions lisibles (UIA/C2) + détection doublons
- Logique C2 : UIElement identifié = jamais parasite
- Patterns parasites resserrés
- Message Léa : "Je n'y arrive pas, montrez-moi comment faire"
Config agent (INC-1 à INC-7) :
- SERVER_URL + SERVER_BASE unifiés
- RPA_OLLAMA_HOST séparé
- allow_redirects=False sur POST
- Middleware réécriture URL serveur
CI Gitea : fix token + Flask-SocketIO + ruff propre
Fleet endpoints : /agents/enroll|uninstall|fleet + agent_registry SQLite
Backup : script quotidien workflows.db + audit
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-17 17:46:40 +02:00
Dom
a6eb4c168f
feat: Léa UX — messages français naturels + feedback temps réel
...
Aspect 1/4 de Léa (agent Windows) : rendre Léa humaine.
Nouveaux modules :
- agent_v1/ui/messages.py : 11 formatters (cible non trouvée, mauvaise fenêtre,
écran inchangé, connexion, workflow, retry, ralentissement, erreur générique)
- agent_v1/ui/activity_panel.py : panneau tkinter lazy avec état courant,
action, progression X/Y, temps écoulé, 7 états (OBSERVE/CHERCHE/AGIT/VERIFIE...)
Hiérarchie de notifications :
- INFO (4s, vert) — début workflow, étape en cours
- ATTENTION (7s, orange) — retry, ralentissement
- BLOCAGE (15s, rouge, persistent, bypass rate-limit) — cible introuvable, mauvaise fenêtre
Transformations de messages :
AVANT : "target_not_found: dans *bonjour, – Bloc-notes"
APRÈS : "Léa a besoin d'aide"
"Je ne trouve pas « bonjour » dans Bloc-notes.
Peux-tu cliquer dessus toi-même ? Je reprends ensuite."
Robustesse :
- Détection fenêtre Léa via regex word-boundaries (évite cléa.txt, leapfrog.exe)
- Centralisée dans messages.est_fenetre_lea() — source unique de vérité
- Noop stub universel via __getattr__ (plus besoin de lister les méthodes)
- Thread-safe (RLock + snapshots immutables)
- Fallback silencieux si tkinter/plyer absent
101 nouveaux tests, aucune régression.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 08:42:01 +02:00
Dom
f340eab628
feat: conformité AI Act — divulgation IA, consentement, rétention, arrêt urgence
...
- Léa se présente comme "assistante basée sur l'intelligence artificielle"
- Dialog consentement avant enregistrement (capture écran/clavier)
- Rétention logs 180 jours (Article 12 + 26(6))
- Bouton ARRÊT D'URGENCE toujours visible (Article 14)
- Transparence mode autonome explicite (Article 50)
- Rapport conformité AI Act en français (docs/CONFORMITE_AI_ACT.md)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 16:57:43 +01:00