diegosouzapw/OmniRoute · error

Vision API returned invalid response

Error message

Vision API returned invalid response

What it means

Error "Vision API returned invalid response" thrown in diegosouzapw/OmniRoute.

Source

Thrown at src/lib/guardrails/visionBridgeHelpers.ts:628

/**
 * Extract the description text from an OpenAI-compatible vision response.
 * Falls back to `reasoning_content` then `reasoning` when `content` is empty —
 * reasoning models (e.g. xiaomi/mimo-v2.5, opencode/mimo-v2.5-free) can exhaust
 * `max_tokens` on chain-of-thought and return `content: null` with a complete
 * analysis in a reasoning field. opencode-routed gateways name that field
 * `reasoning` rather than `reasoning_content` (#6623 / #10809).
 */
function extractOpenAICompatibleContent(data: unknown): string {
  const record = data as {
    choices?: Array<{
      message?: { content?: unknown; reasoning_content?: unknown; reasoning?: unknown };
    }>;
    error?: { message?: string };
  } | null;

  if (!record || typeof record !== "object" || Array.isArray(record)) {
    throw new Error("Vision API returned invalid response");
  }

  if (record.error) {
    throw new Error(`Vision API error: ${record.error.message || JSON.stringify(record.error)}`);
  }

  const message = record.choices?.[0]?.message;
  const content = typeof message?.content === "string" ? message.content.trim() : "";
  if (content) return content;

  const reasoning =
    typeof message?.reasoning_content === "string"
      ? message.reasoning_content.trim()
      : typeof message?.reasoning === "string"
        ? message.reasoning.trim()
        : "";
  if (reasoning) return reasoning;

View on GitHub (pinned to a179ffed5b)

When it happens

Trigger: Thrown at src/lib/guardrails/visionBridgeHelpers.ts:628 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25). Data as JSON: /api/errors/cf7f90fa2eba0581. Report an issue: GitHub.