Dom
4dc7d840d6
feat(p1x): de-hardcode VLM models/endpoints to vlm_config (DGX-ready)
Migre les call-sites VLM serveur vers la configuration centrale pour
fonctionner sur DGX (tunnel Ollama 11434), où gemma4:* est absent et le
port Docker 11435 est mort.
- task_planner, replay_verifier, domain_context, ir_builder, resolve_engine
(popup): modele -> vlm_config.get_vlm_model(), defaut 11435 -> 11434
(override GEMMA4_PORT legacy conserve)
- resolve_engine (grounding bbox x2): nouvel helper
vlm_config.get_bbox_grounding_model() (var dediee RPA_BBOX_GROUNDING_MODEL,
fallback RPA_GROUNDING_MODEL puis qwen2.5vl:7b-rpa) -> desambiguise le
conflit D5-v3b, bbox_2d + num_ctx 4096 preserves
- safety_checks_provider: defaut -> get_vlm_model(), override
RPA_SAFETY_CHECKS_LLM_MODEL preserve
- ui_detector: default_factory + resolution lazy (corrige aussi un gel a
l'import), pas d'appel reseau a l'import
- field_extractor: property lazy via vlm_config
TDD strict (RED->GREEN), 305 tests verts, tests mockes HTTP (zero dependance
DGX reel), aucun alias Ollama.
Hors perimetre (arbitrage Dom): client Lea agent_v1/executor.py (gele),
chemin V4 observe_reason_act (RPA_REASONING_MODEL), core/config.py defaults.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 14:06:03 +02:00
..
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-05-29 11:25:00 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-05-29 11:25:00 +02:00
2026-05-29 11:25:00 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 17:46:22 +02:00
2026-06-02 18:16:55 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-02 16:30:14 +02:00
2026-06-03 14:06:03 +02:00
2026-06-03 14:06:03 +02:00
2026-06-02 16:30:14 +02:00