From 8648e375fe6c20d32358e99b0a65e7bdc6375ac1 Mon Sep 17 00:00:00 2001 From: Dom Date: Fri, 8 May 2026 11:37:40 +0200 Subject: [PATCH] docs(handoff): session audit 2026-05-08 - controles debranches --- docs/handoffs/2026-05-08_session_audit.md | 108 ++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 docs/handoffs/2026-05-08_session_audit.md diff --git a/docs/handoffs/2026-05-08_session_audit.md b/docs/handoffs/2026-05-08_session_audit.md new file mode 100644 index 000000000..de96dedab --- /dev/null +++ b/docs/handoffs/2026-05-08_session_audit.md @@ -0,0 +1,108 @@ +# 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é)