backup: snapshot post-démo GHT 2026-05-19
Some checks failed
tests / Lint (ruff + black) (push) Successful in 1m50s
tests / Tests unitaires (sans GPU) (push) Failing after 1m50s
tests / Tests sécurité (critique) (push) Has been skipped

Backup état complet après enregistrement vidéo démo de bout en bout.
À utiliser comme point de référence pour la consolidation post-démo.

Changements majeurs de la session 18-19 mai :
- AIVA-URGENCE : page autonome avec preset URL + auto-focus chain
- Workflow Demo_urgence_3_db : merge linux_db + steps AIVA + pause humaine NoMachine
- Bypass LLM (static_result / static_text) dans replay_engine
  pour démos déterministes sans appel Ollama
- Fix api_stream:3013 — replay_paused au premier polling /next
- dag_execute : lift duration_ms vers top-level pour wait runtime
- NPM bypass auth /aiva-urgence/ via location ^~ (proxy_host/10.conf hors git)
- scripts/cancel-replays.sh — workaround Stop VWB qui ne purge pas la queue

Anchors visuels (468) forcés dans le commit pour garantir restorabilité.
DB workflows actuelle + ~12 .bak DB de la journée incluses.

Sujets identifiés pour consolidation post-démo (TODO) :
1. Bug VWB recapture anchor ne régénère pas le PNG
2. Léa client accumule état mémoire (restart périodique requis)
3. Stop VWB ne purge pas la queue serveur (lien manquant vers /replay/cancel)
4. Bug coord client mss tronqué 2560x60 → mapping Y cassé
5. delay_before/delay_after ignorés au runtime (fix partiel duration_ms)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dom
2026-05-19 14:55:06 +02:00
parent f2212e77e3
commit 5ea4960e65
627 changed files with 211348 additions and 169 deletions

View File

@@ -0,0 +1,129 @@
# HANDOFF CLAUDE CHAT — 2026-05-10 fin de journée
## Ce qui a marché aujourd'hui
- Diagnostic clair de l'archi rpa_vision_v3 : projet mature,
beaucoup de composants codés mais non branchés au runtime,
surdocumentation. Recadrage Dom : "le code surpasse la doc".
- Identification du vrai grounder prod (InfiGUI sur core/grounding/,
mais pas câblé au replay engine côté agent_v0/server_v1/ — assumé
pour l'instant)
- Bug #1 (cannot unpack non-iterable NoneType) résolu indirectement
par redémarrage propre Léa via Lea.bat
- Bug #2 (timeout HTTP 30s pendant t2a_decision 26s) identifié,
à corriger pour démo (passer à 60s ou dynamique)
- 3 livrables agent VWB validés et rapatriés :
* Numérotation steps sur canvas (badges 1..N en bleu)
* Ancre zoomable au survol miniature dans Properties (tooltip
600px)
* Nouveau type de step extract_text_scroll (capture haut +
Ctrl+End + capture bas + concat + Ctrl+Home, scroll_pause_ms
configurable, 500ms default)
- Découverte du bug UX VWB : capture.py:select_anchor appelle
silencieusement qwen2.5vl:3b à chaque ancre capturée pour
générer va.description, qui est ensuite affichée sous les
nodes du canvas. VLM hallucine régulièrement, induit Dom en
erreur pendant la construction. À débattre post-démo.
- Doc inspiration frameworks externes en
docs/INSPIRATION_FRAMEWORKS_2026-05-10.md (OpenAdapt, Skyvern,
OmniParser, OpenCUA — convergences fortes avec rpa_vision_v3)
## État machine à la coupure (~20h45 CEST)
- InfiGUI démarré (PID 3079017, ~3934 MiB VRAM, non appelé par
le replay)
- Ollama actif (idle, charge à la demande)
- rpa-streaming actif (PID 3169493)
- Léa Windows polle
- BDD VWB sauvegardée dans
docs/handoffs/2026-05-10_workflows_etat_soir.db (point de
référence avant reprise demain)
## Ce qui reste à clarifier demain matin
PRIORITÉ ABSOLUE : trancher la divergence entre ce que Dom dit
avoir saisi (variables correctes, monitor GPU sans activité VLM
pendant la session de reconstruction) et ce que Claude Code
rapportait de la BDD (incohérences sur step 7, steps 14/17
sans by_text, ordre des extract_text_scroll vs t2a_decision).
Hypothèses à confronter :
- Bug VWB de persistance silencieux (modifs Dom non écrites en BDD)
- Cache frontend obsolète après hot-reload
- Claude Code en dérive de fin de session (lecture biaisée d'une
BDD qui était en réalité conforme)
- Affichage canvas trompeur (sous-labels = descriptions VLM
hallucinées, mais step.label et by_text en BDD sont corrects)
Méthode pour démêler :
1. Cliquer sur chaque node click_anchor du workflow et lire le
champ "Cible textuelle" / by_text dans Properties (pas le
sous-label canvas)
2. Comparer avec ce que Dom voulait
3. Si écart : corriger en repassant par le VWB en se fiant
uniquement à Properties
4. Si pas d'écart : passer directement au dry-run
## 4 points de fix potentiels (à valider d'abord)
1. Step 7 (extract_text) : variable_name = t_notes_medicales
alors que label "Lire Synthèse Urgences" → si confirmé,
renommer en t_synthese_urgences pour cohérence avec
t2a_decision et type_text DPI
2. Steps 14 et 17 (click_anchor) : by_text vide → ajouter le
texte cible
3. Steps 15-19 (4 extract_text_scroll consécutifs) : seulement
2 click_anchor entre eux → vérifier que chaque scroll lit
bien un onglet différent, pas le même contenu 2 fois
4. Step 8 (t2a_decision) : positionné AVANT les steps 15-19 qui
remplissent ses variables d'entrée → soit déplacer après, soit
c'est conforme à un autre design qu'il faut documenter
## Méthode pour la reprise demain matin
- Cerveau frais avant 9h, si possible avant la première vérif
- Ne se fier qu'au by_text dans Properties, jamais aux sous-labels
canvas
- Cycles courts : 1 modif → vérif BDD via Claude Code → valide →
modif suivante
- Si Claude Code retourne quelque chose qui surprend, demander
un dump SQL brut sans interprétation pour vérifier soi-même
- 30-45 min max pour les fix, 15 min dry-run, 1h marge avant démo
(l'après-midi)
## Points méthodo à retenir pour les prochaines sessions
- Claude Code et moi (Claude chat) dérivons après 12h+ de session
continue, comme Dom. Si retour suspect demain matin, redémarrer
une session fraîche plutôt que continuer.
- Le pattern "agent qui valide superficiellement le code mais
pas la fonctionnalité" est récurrent. La vérification
fonctionnelle reste à Dom (et à moi pour l'aider à la cadrer).
- Asymétrie mémoire Dom→Claude vs Claude→Dom : sujet à traiter
en session dédiée.
- Dom a un assistant de longue date appelé Alice, à intégrer
comme référence dans la construction de ma mémoire.
## État des dettes ouvertes
- DETTE-006 (bug d'échelle pixel grounding) : path Ollama, hors
scope démo car cascade ne descend pas jusqu'au grounding VLM
sur cibles textuelles. À fixer post-démo.
- Migration Qwen3-VL-8B-Instruct : non urgente. InfiGUI-G1-3B
satisfait les besoins courants.
- DETTE-014 (smart_resize calé sur Qwen2VLImageProcessor non-Fast) :
à reclasser, factor=28 correcte pour cible Ollama qwen2.5vl
actuelle.
- Asymétrie VWB-direct (utilise UI-DETR-1) vs Replay-distant (ne
l'utilise pas) : asset architectural sous-utilisé. À débattre
post-démo si branchement au runtime sans figer l'apprentissage
est possible.
- Bug UX VWB capture.py : description VLM hallucinée affichée
comme sous-label. Désactiver l'appel VLM (1 commentaire dans
capture.py:225-272) ou changer le frontend.
## Coupure
Dom coupe à 20h45 CEST après 13h de session focus exceptionnelle.
Démo interne lundi après-midi devant DG/DSI/médecins/DIM/TIM.
Marge confortable pour reprise lundi matin avec cerveau frais.