Version: 2026.4.20
OS: macOS arm64
Channel: Telegram bot
Behavior:
• Switch to any non-Claude model (Gemini 2.5 Pro, GPT-5) via /model or session_status tool
• Bot confirms switch and sends ONE message successfully
• User replies anything → ⚠️ "Agent couldn't generate a response. Please try again."
• /new also crashes
• /model reset to Claude always works
Log:
[agent/embedded] incomplete turn detected: stopReason=stop payloads=0
What was tried (all failed):
• New OpenRouter API keys (multiple times)
• Delete + reinstall OpenRouter plugin (twice)
• Added OPENROUTER_API_KEY to env.vars
• Set maxTokens: 16000 for Gemini
• Fixed default model to claude-sonnet-4-6
• Set separate image model
• Updated to v4.20
• Ran openclaw configure --section model wizard
Note: auth-state.json shows lastGood only for Anthropic — OpenRouter has never recorded a successful auth. Direct curl to OpenRouter API works fine with the key. Bug is in OpenClaw's session layer.