15b3b33081
As of end of Phase 4, only _send_minimax has a working tool-call loop. Phase 3 (Grok, Llama) and Phase 2 (Qwen) entry points are single-shot; they call send_openai_compatible once and return without executing tool_calls. If the user notices 'tool execution doesn't work for Qwen/Grok/Llama' after Phase 5 ships, the fix is to lift the tool loop into a shared run_with_tool_loop() helper that wraps send_openai_compatible. The 4 existing vendors (_send_anthropic / _send_gemini / _send_gemini_cli / _send_deepseek) already have the same inline duplication, so the lift would also help those. This is a follow-up track, not in scope for qwen_llama_grok_integration_20260606.