diegosouzapw/OmniRoute · error · Error
OmniRoute ${upstream.status}: ${errText}
Error message
OmniRoute ${upstream.status}: ${errText} What it means
Error "OmniRoute ${upstream.status}: ${errText}" thrown in diegosouzapw/OmniRoute.
Source
Thrown at src/mitm/handlers/claudeCode.ts:51
// Claude (open-sse/executors/antigravity.ts::stripTrailingAntigravityAssistantTurn).
// Guard: never strip messages down to empty — an empty array is itself an invalid
// request, so at least one entry (even a lone trailing assistant turn) is always
// preserved.
if (Array.isArray(payload.messages) && payload.messages.length > 0) {
while (
payload.messages.length > 1 &&
payload.messages[payload.messages.length - 1]?.role === "assistant"
) {
payload.messages.pop();
}
}
const upstreamStart = this.now();
const upstream = await this.fetchRouter(payload, "/v1/messages", req.headers);
if (!upstream.ok) {
const errText = await upstream.text().catch(() => "");
throw new Error(`OmniRoute ${upstream.status}: ${errText}`);
}
let collected = "";
await this.pipeSSE(upstream, res, (chunk) => {
collected += chunk.toString();
});
const total = this.now() - startedAt;
this.hookBufferUpdate(intercepted, {
status: upstream.status,
responseHeaders: Object.fromEntries(upstream.headers.entries()),
responseBody: collected,
responseSize: Buffer.byteLength(collected),
proxyLatencyMs: upstreamStart - startedAt,
upstreamLatencyMs: total - (upstreamStart - startedAt),
});
} catch (err) {
await this.hookBufferError(intercepted, err);View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at src/mitm/handlers/claudeCode.ts:51 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/e61b1786755363e4.
Report an issue: GitHub.