9router/open-sse
brimob-sowax 80afb59907 fix(qoder): detect billing blocks at stream start, return 403 for failover
Peek the first SSE frame in wrapQoderSSE; if statusCodeValue != 200 and the
body carries a billing signature (code 112/10605 or pricingUrl), return a
synthetic 403 so chatCore marks the connection unavailable and triggers
combo/account fallback instead of leaking the error text into chat.

wrapQoderSSE becomes async; consumed peek bytes are re-processed in the
stream start() seed loop so nothing is dropped.
2026-08-13 11:43:11 +07:00
..
config fix(oauth): scope antigravity header fixes to loadCodeAssist/onboardUser only 2026-08-05 16:40:09 +07:00
executors fix(qoder): detect billing blocks at stream start, return 403 for failover 2026-08-13 11:43:11 +07:00
handlers feat(providers): self-hosted OpenAI-compatible STT, TTS and embedding providers 2026-08-05 13:38:13 +07:00
providers fix(oauth): scope antigravity header fixes to loadCodeAssist/onboardUser only 2026-08-05 16:40:09 +07:00
rtk feat(headroom): report effective payload savings 2026-08-05 11:32:38 +07:00
services feat(usage): dedup + cache Claude quota calls to avoid 429 2026-08-13 11:27:57 +07:00
shared feat(qoder): support PAT (Personal Access Token) connections end-to-end 2026-08-05 11:16:50 +07:00
transformer fix(codex): harden streaming timeouts + Responses terminal events 2026-06-06 16:07:43 +07:00
translator fix(responses): don't close message on empty tool_calls array 2026-08-13 11:40:45 +07:00
utils fix(passthrough): detect codex-tui/Codex Desktop as native Codex client 2026-08-05 15:53:20 +07:00
.npmignore Update jsconfig.json and package.json to correct open-sse path references from relative to local directory. 2026-01-05 10:37:09 +07:00
AGENTS.md feat(headroom): add proxy lifecycle management + dashboard UI 2026-06-20 10:09:50 +07:00
index.js fix(providers): remove Qwen provider support 2026-08-05 16:17:26 +07:00