# HANDOFF — 2026-05-08 ## 1. ÉTAT FACTUEL DU REPO - Branche courante : `feature/qw-suite-mai` - Dernier commit : `56e869c46 fix(replay): bug TypeError log + flag pré-check OCR off par défaut (démo GHT)` - Fichiers modifiés non commités : - ` M .gitignore` - ` D ANALYSE_MOAT_RPA_VISION_V3.md` - ` D PITCH_INVESTISSEURS_RPA_VISION_V3.md` - ` M agent_chat/app.py` - ` M agent_v0/agent_v1/core/executor.py` - ` M agent_v0/agent_v1/ui/chat_window.py` - ` M agent_v0/agent_v1/ui/notifications.py` - ` M agent_v0/server_v1/replay_engine.py` - ` M core/grounding/ui_tars_grounder.py` - ` M core/llm/__init__.py` - ` M core/llm/ocr_extractor.py` - ` M deploy/systemd/rpa-mockup-easily.service` - ` M visual_workflow_builder/backend/api_v3/capture.py` - ` M visual_workflow_builder/backend/instance/workflows.db` - ` M visual_workflow_builder/frontend_v4/src/components/PropertiesPanel.tsx` - ` M visual_workflow_builder/frontend_v4/src/services/api.ts` - ` M visual_workflow_builder/frontend_v4/src/services/captureLibraryStorage.ts` - ` M visual_workflow_builder/frontend_v4/src/types.ts` - `?? .vite/` - `?? agent_chat/urgences_orchestrator.py` - `?? agent_v0/agent_v1/tools/test_lea_pause_flow.py` - `?? archive/` - `?? core/grounding/infigui_server.py` - `?? demo/` - `?? deploy/VRAM_BUDGET.md` - `?? deploy/hyperv_glpi_ubuntu24/` - `?? deploy/systemd/ollama-vram-policy.conf` - `?? deploy/systemd/rpa-grounding.service` - `?? docs/BENCH_MEDGEMMA.json` - `?? docs/BENCH_MEDGEMMA.md` - `?? docs/BENCH_MINI_LLM_NLP.md` - `?? docs/BENCH_T2A_DECISION_11DOSSIERS.md` - `?? docs/HANDOFF_SESSION_20260506.md` - `?? docs/MAIL_PAULINE_AVANT_VISIO.md` - `?? docs/MODELE_ECONOMIQUE_AIVA_VISION_BENCHMARK.md` - `?? docs/POINTS_SUSPECTS_PAULINE.md` - `?? docs/REPLAY_BLOCAGE_NOTES_MEDICALES_2026-05-08.md` - `?? docs/REVUE_DOSSIERS_PAULINE.md` - `?? docs/UX_PAUSE_BUBBLES_FIX_2026-05-08.md` - `?? docs/handoffs/` - `?? liste_md.txt` - `?? mcp_rpa_vision.py` - `?? tools/_bench_t2a_out/` - `?? tools/analyze_bench_results.py` - `?? tools/bench_t2a_post_fix.py` - `?? tools/benchmark_medgemma_demo.py` - `?? tree_rpa_v3.txt` - `?? web_dashboard/static/analytics/` - Reflog des 20 dernières opérations : - `56e869c46 HEAD@{0}: commit: fix(replay): bug TypeError log + flag pré-check OCR off par défaut (démo GHT)` - `f8dc3c3af HEAD@{1}: commit: docs(audit): rapport curateur mémoire Claude — santé index 7 mai 2026` - `ca81850a2 HEAD@{2}: commit: docs(audit): rapport médecin DIM senior + TIM sur arbre décisionnel UHCD/Forfait` - `35fd6cf4c HEAD@{3}: commit: test(e2e): harness replay reproductible — mock client Léa V1 contre serveur réel` - `7847a0e82 HEAD@{4}: commit: feat(agent_v1): toast paused supervisée Tkinter + Plan B + threshold FIND-TEXT 0.75` - `40440f1ca HEAD@{5}: commit: fix(replay): cure régression b584bbabc — fallback recorded_coords aveugle` - `7233df2bb HEAD@{6}: commit: fix(replay): câblage execution_mode supervised + seuil large fallback heartbeat` - `f62fda575 HEAD@{7}: commit: fix(stream): /resolve_target — fallback heartbeat full si image client tronquée` - `22c0a2ba6 HEAD@{8}: commit: revert: désactiver self-healing Win+D auto (cercle vicieux)` - `6fdedbfe9 HEAD@{9}: commit: fix(vwb): execute-windows route vers la machine la plus active (pas alphabétique)` - `c969f93a2 HEAD@{10}: commit: fix(replay): self-healing Win+D auto au retry 1 (verification_failed)` - `1cbec2806 HEAD@{11}: reset: moving to HEAD~1` - `6ff454efd HEAD@{12}: commit: fix(replay): self-healing Win+D auto au retry 1 (verification_failed)` - `1cbec2806 HEAD@{13}: commit: fix(resolve): rebrancher hybrid_text_direct dans _resolve_target_sync` - `864530c85 HEAD@{14}: commit: fix(stream): _async_replay_lock helper + 17 endpoints async non-bloquants` - `d1ebf6221 HEAD@{15}: commit: fix(infra): durcissement headless — pyautogui robuste + cleanup .service` - `87dbe8c5f HEAD@{16}: commit: fix(stream): get_replay_status non-bloquant + bornage actions serveur` - `0a02a6ec9 HEAD@{17}: commit: feat(qw4): bench rigoureux LLM safety_checks → gemma4:latest par défaut` - `83be93e12 HEAD@{18}: commit: chore(qw): cleanup post-review (préfixes BUS, événements monitor, import io)` - `f5c33477f HEAD@{19}: commit: fix(qw4): câblage polling frontend → streaming pour PauseDialog` ## 2. DÉCISIONS PRISES CETTE SESSION - [Commit + figer branche `demo/ght-2026-05-08` à HEAD le soir 7 mai] — sécuriser la nuit avant la démo — message Dom : « vas-y, commit et fige la branche » - [Lancer agent test E2E reproductible en background] — itérer rapidement sur le replay sans Windows — message Dom : « lance l'agent test e2e » - [Plan B : intercepter `replay_paused` côté Léa V1 et afficher en toast Tkinter] — pause visible sur l'écran Windows pendant la démo — message Dom : « bon, ok pour le plan B » puis « applique et déploie » - [Modifier seuil FIND-TEXT client 0.50 → 0.75 dans `executor.py:2300`] — éviter faux positifs (placeholders italiques, tabs voisins) — message Dom : « applique et déploie » - [Lancer agent archéologue + agent UX Tkinter en background pendant la nuit 7→8 mai] — investigation perte de sérénité, recherche web obligatoire — message Dom : « pour l'agent archeologue, demande lui de prendre réelement son temps... A vous de jouer » - [Lancer agent médecin DIM/TIM en background pendant la nuit] — auditer arbre décisionnel UHCD/Forfait — message Dom : « Tu pourrais mettre un agent sur le sujet un medecin dim, un tim senior » - [Lancer agent curateur mémoire en mode rapport seul] — diagnostic santé MEMORY.md, aucune modification — message Dom : « ok. demande un rapport complet à ton agent curateur mémoire. uniquement un rapport... » - [Lancer agent test-runner E2E + agent bench T2A en parallèle 8 mai matin] — corrections post-test E2E + baseline T2A vs post-fix DIM — message Dom : « B + bench T2A en parallèle » - [Appliquer fix bug TypeError log RESOLVE_EXIT (`api_stream.py`) + flag env `RPA_ENABLE_TEXT_PRECHECK=false` par défaut + commit + restart streaming + avancer sur arbre décisionnel] — message Dom : « ok pour que tu applique + commit + redémarre streaming et avance sur la partie arbre decisionnel. » - [Lancer Léa V1 pour test E2E live] — message Dom : « léa relancée. je lance le repalay. » - [Appliquer fix timeout `executor.py` 5s → 30s + push Windows + relance Lea.bat] — bug réseau client (timeout < extract_text serveur) identifié par agent diagnostic — message Dom : « relance Lea.bat, je teste » - [Lancer agent diagnostic replay (clic Notes médicales) + agent UX bulles paused — 2 agents en parallèle 8 mai matin] — bugs UX (3 toasts, scroll cassé, boutons Annuler) + blocage replay onglet Imagerie — message Dom : « met un agent sur les bulles, mais surtout sur le replay ! » - [À VÉRIFIER PAR DOM] : Dom prévoit de re-prendre les ancres (Notes médicales et autres) côté VWB après échec test live ; ambiguïté sur l'ajout du step Synthèse Urgences (le step EXISTE déjà dans le workflow Urgence_aiva_demo : step 14, anchor `anchor_6a2591e7c51c_1778229076` créé 8 mai 0h31). ## 3. PROBLÈMES OUVERTS - [P0] Bug Léa replay : pré-check OCR rejette systématiquement, contrôles débranchés suite à checkout antérieur - [P0] Audit en cours : agent d'exploration cartographie les fonctions de contrôle perdues — CR pas encore reçu - [P1] Démo GHT reportée à demain/jeudi - [P2] Système de mémoire à reconstruire post-démo (recall.md, MEMORY.md) ## 4. PROCHAINE ACTION CONCRÈTE Action unique : récupérer le CR de l'agent d'exploration et identifier les contrôles désactivés à réactiver chirurgicalement (1 par 1, test après chaque). ## 5. CE QUE LE PROCHAIN CLAUDE DOIT LIRE - @docs/handoffs/2026-05-08_session_audit.md (ce fichier) - Le CR de l'agent d'exploration (chemin à préciser quand reçu) - NE PAS LIRE : recall.md (archivé/obsolète), MEMORY.md (saturé)