Skip to content

v0.12.90 — Fix empty-turn fallback for eco/agentic requests

Latest

Choose a tag to compare

@1bcMax 1bcMax released this 31 Mar 17:01
38bc08b

What's Fixed

Empty turn responses now trigger model fallback

Problem: Under the eco profile (and sometimes auto), agentic clients like Roo Code would receive silent empty responses — the model returned HTTP 200 with no content and no tool calls, just finish_reason: stop. The proxy treated this as success and forwarded the empty turn to the client, causing the agent to loop or stall.

Root cause: Models like gemini-3.1-flash-lite sometimes refuse complex agentic requests (large Roo Code tool schemas) by producing a zero-output response instead of an error. ClawRouter's degraded-response detector didn't catch this pattern, so it never fell back to the next model.

Fix: detectDegradedSuccessResponse now flags responses where:

  • choices[0].message.content is empty and
  • no tool_calls and
  • finish_reason === "stop"

These are treated as degraded response: empty turn → fallback fires → next model in chain is tried automatically.

Upgrade

npm i -g @blockrun/clawrouter@latest