Diego Rodrigues de Sa e Souza
d776a42324
fix(api): invalidate /v1/models + specialty catalogs on DB writes; fix duplicated headers and 500 replayed as 200 ( #6408 )
...
The #6408 request-shape-keyed TTL cache around getUnifiedModelsResponse was not
keyed by DB/settings state, so a write followed by a read within the ~1.5s TTL
replayed the pre-write catalog (dropping newly-eligible models like codex/gpt-5.5
and every specialty catalog routed through it since #6303 ). Fold a
modelCatalogCacheVersion (bumped by invalidateDbCache, already called on every
settings/connection/combo/pricing write) into the cache so a state change forces
an immediate miss; merge response headers through a real Headers instance
(fixes X-Request-Id duplication); carry and replay status end-to-end (a mid-build
500 was replayed as 200). Tests call the existing __resetCatalogBuilderRunsForTest
hook in setup, matching v1-models-concurrent-6408.
2026-07-07 07:41:20 -03:00
Diego Rodrigues de Sa e Souza
4f294c0cca
feat(sse): exclude paid-only models from auto/* candidate pool when hidePaidModels is on ( #6512 ) ( #6518 )
...
Exclude paid-only models from the auto/* candidate pool when hidePaidModels is on (#6512 ). Integrated into release/v3.8.46; fixed a phantom vitest guard, 4/4 green.
2026-07-07 01:02:35 -03:00
Diego Rodrigues de Sa e Souza
0d3d31c21f
feat(sse): provider-family auto combos auto/glm, auto/minimax, auto/zai, auto/mimo, auto/gemma, auto/llama, auto/gemini ( #6453 ) ( #6509 )
...
Provider-family auto combos (#6453 ). Integrated into release/v3.8.46; vitest autoCombo suite 11/11 green.
2026-07-07 01:00:12 -03:00
Dilnei
526048da5e
fix(ui): prevent silent overwrite of existing API key connections on re-add ( #6499 )
...
Unique default connection name prevents silent overwrite of existing API-key connections. Integrated into release/v3.8.46 with a unit-tested helper; remaining file-size reds are pre-existing base-red drift.
2026-07-06 23:59:01 -03:00
Chirag Singhal
9a33cdac1d
fix(compression): add intra-message dedup to session-dedup engine ( #6467 ) ( #6501 )
...
Intra-message dedup for the session-dedup compression engine (#6467 ) + fallbackReason surfacing + fusion rate-limit detail. Integrated into release/v3.8.46 with a TDD regression.
2026-07-06 23:53:52 -03:00
Chirag Singhal
c3cef782ac
fix(compression): unknown engine names surface validationErrors instead of silently falling back ( #6485 ) ( #6506 )
...
Surface validationErrors for unknown stacked compression engines. Integrated into release/v3.8.46 with a TDD regression.
2026-07-06 23:51:01 -03:00
Jan Leon
958260a5c9
Add Codex reset-credit redemption flow ( #6361 )
...
Codex reset-credit redemption flow (#6361 ). Tests 56/56; kept release 'Banked Reset Credits' label (reverted cosmetic rename that broke 2 release tests). Integrated into release/v3.8.46.
2026-07-06 21:50:27 -03:00
hao3039032
f6b4926138
feat(glm): add team plan quota settings for glm-cn connections ( #6351 )
...
add GLM team plan quota settings (#6351 ). Tests 29/29; reconciled FormData with m365Tier; modal caps bumped for own growth. Integrated into release/v3.8.46.
2026-07-06 21:35:04 -03:00
Aditya Banerjee
e45e6c3e34
feat: add TinyFish Fetch support to web-fetch provider and update related documentation ( #6349 )
...
add TinyFish web-fetch/search provider + tool (#6349 ). Tests green (tinyfish suites + count-guard 170->171). Integrated into release/v3.8.46.
2026-07-06 21:32:15 -03:00
Swing Tempo
69d2b31930
Swingtempo/fixwindowscodex ( #6312 )
...
launch-codex spawns codex.cmd via shell on Windows (#6263 pattern). Added resolveCodexSpawn() helper + regression test (2/2), satisfying Hard Rule #18 . Integrated into release/v3.8.46.
2026-07-06 21:20:52 -03:00
Xiangzhe
95708051a2
fix(codex): isolate Spark quota and stabilize quota UI ( #6336 )
...
isolate Spark quota + stabilize quota UI (#6336 ). Tests 44/44, no file-size drift from its files. Integrated into release/v3.8.46.
2026-07-06 21:18:58 -03:00
Chirag Singhal
b681308259
feat(api): add hidePaidModels setting to filter paid-only models from /v1/models catalog ( #6495 )
...
feat(api): add hidePaidModels setting (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 21:17:29 -03:00
jmengit
17da3b6e09
fix(api-manager): preserve combos in model fallback ( #6443 )
...
fix(api-manager): preserve combos in fallback model picker (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 21:16:56 -03:00
Jillur Rahman
27867e5af3
fix(providers): treat recoverable Antigravity/Cloud-Code 403s as project errors, not account bans ( #6452 )
...
fix(providers): treat recoverable Antigravity/CF 403 as retryable (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 21:16:39 -03:00
Jillur Rahman
62a74faa4b
fix(mitm): redact Set-Cookie in sanitizeHeaders to prevent session-token leak ( #6451 )
...
fix(mitm): redact Set-Cookie in sanitizeHeaders (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 21:16:16 -03:00
Chirag Singhal
a03c22e5ed
fix(api): accept mode:'caveman' + stacked default pipeline yields 0% ( #6425 ) ( #6439 )
...
fix(api): /api/compression/preview accepts mode caveman + stacked-zero (#6425 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 21:12:58 -03:00
Diego Rodrigues de Sa e Souza
04335944ea
feat(providers): add Zed hosted LLM aggregator (native-app sign-in) — NEEDS LIVE OAUTH VALIDATION ( #6118 )
...
add Zed hosted LLM aggregator native-app provider (port PR #2328 ). VPS-validated live by operator (Hard Rule #18 ); zed suites 15/15. OAuthModal cap 989->993 (own growth). Remaining file-size reds are pre-existing release base-red drift (rebaselined at release Phase 0). Integrated into release/v3.8.46.
2026-07-06 20:43:11 -03:00
Diego Rodrigues de Sa e Souza
3cc48edb35
fix(oauth): preserve Kiro IDC region in SSO-cache auto-import ( #6113 )
...
preserve Kiro IDC region in SSO-cache auto-import (port PR #2314 ). VPS-validated live by operator (Hard Rule #18 ); kiro-auto-import-idc 9/9. Integrated into release/v3.8.46.
2026-07-06 20:39:06 -03:00
Diego Rodrigues de Sa e Souza
58f53e3a35
feat(proxy): native proxy-pool round-robin / egress IP rotation ( #6365 ) ( #6395 )
...
native proxy-pool round-robin / egress IP rotation (#6365 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:31:44 -03:00
Diego Rodrigues de Sa e Souza
18fa0b2651
feat(providers): Gemini tool-calling end-to-end on /v1beta ( #6222 ) ( #6394 )
...
Gemini tool-calling end-to-end on /v1beta (#6222 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:31:12 -03:00
Diego Rodrigues de Sa e Souza
f5147d00f9
feat(providers): copilot-m365-web enterprise (work) tier support ( #6334 ) ( #6392 )
...
copilot-m365-web enterprise (work) tier support (#6334 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:30:56 -03:00
Diego Rodrigues de Sa e Souza
62b1bc9d05
feat(api): standardize effort + thinking request params ( #6241 ) ( #6398 )
...
standardize effort + thinking request params (#6241 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:30:40 -03:00
Diego Rodrigues de Sa e Souza
8db5a665d6
feat(combo): sequential 'pipeline' combo strategy ( #6297 ) ( #6396 )
...
sequential 'pipeline' combo strategy (#6297 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:29:59 -03:00
Diego Rodrigues de Sa e Souza
ecf3d3aa06
feat(ci): check:test-masking flags inline-reimplemented prod conditions ( #6348 ) ( #6393 )
...
check:test-masking flags inline-reimplemented prod (#6348 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:29:29 -03:00
Diego Rodrigues de Sa e Souza
c7c7d476a3
feat(sse): per-connection routing override (native vs CLIProxyAPI) ( #6339 ) ( #6383 )
...
per-connection routing override native vs CLIProxy (#6339 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:29:13 -03:00
Diego Rodrigues de Sa e Souza
b7ac5261a5
feat(dashboard): 'Open <host>' link in Add session cookie modal ( #6268 ) ( #6391 )
...
'Open <host>' link in Add session cookie modal (#6268 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:28:39 -03:00
Diego Rodrigues de Sa e Souza
c6a80071f1
feat(providers): add DigitalOcean AI as an OpenAI-compatible provider ( #6373 )
...
add DigitalOcean AI OpenAI-compatible provider (port PR #2417 ). Resolved registry conflict with hcnsec #6410 ; count-guard 169→170. Tests green. Integrated into release/v3.8.46.
2026-07-06 19:27:51 -03:00
Diego Rodrigues de Sa e Souza
437ca488b0
feat(providers): add Huancheng Public API (hcnsec) OpenAI-compatible regional provider ( #6410 )
...
add Huancheng Public API (hcnsec) OpenAI-compatible provider (port PR #2378 ) (net +1/-0, tests OK). Integrated into release/v3.8.46.
2026-07-06 19:25:45 -03:00
Diego Rodrigues de Sa e Souza
b67f2c58da
fix(dashboard): disambiguate colliding passthrough model aliases (port from 9router#1850) ( #6431 )
...
disambiguate colliding passthrough model aliases (port #1850 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:24:59 -03:00
Diego Rodrigues de Sa e Souza
2ecaae7c40
fix(translator): preserve co-located functionResponse parts in gemini→openai ( #6376 )
...
preserve co-located functionResponse parts (port PR #2394 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:24:43 -03:00
Diego Rodrigues de Sa e Souza
259d9b0f38
fix(headroom): detect python managed by mise/pyenv/asdf/conda (port from 9router#2353) ( #6382 )
...
detect python managed by mise/pyenv/asdf/conda (port #2353 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:24:24 -03:00
Diego Rodrigues de Sa e Souza
bd65eeb045
fix(executors): strip client_metadata for NVIDIA requests (port from 9router#1887) ( #6411 )
...
strip client_metadata for NVIDIA (port #1887 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:24:08 -03:00
Diego Rodrigues de Sa e Souza
d415cc0216
fix(translator): strip thinking for NVIDIA glm-5.2 (port from 9router#2023) ( #6413 )
...
strip thinking for NVIDIA glm-5.2 (port #2023 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:23:43 -03:00
Diego Rodrigues de Sa e Souza
cfbc2c27c2
fix(translator): suppress </think> marker for Antigravity client (port from 9router#1061) ( #6415 )
...
suppress </think> marker for Antigravity (port #1061 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:23:27 -03:00
Diego Rodrigues de Sa e Souza
58bb2cd8c7
fix(executors): strip nested reasoning_content for Mistral (port from 9router#1649) ( #6417 )
...
strip nested reasoning_content for Mistral (port #1649 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:22:52 -03:00
Diego Rodrigues de Sa e Souza
4b1c1859f8
fix(executors): strip client_metadata on the OpenCode path (port from 9router#1442) ( #6418 )
...
strip client_metadata on OpenCode path (port #1442 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:22:27 -03:00
Diego Rodrigues de Sa e Souza
f0b085ebca
fix(executors): inject reasoning_content for native Kimi provider (port from 9router#1480) ( #6419 )
...
inject reasoning_content for native Kimi (port #1480 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:22:02 -03:00
Diego Rodrigues de Sa e Souza
1636ace600
fix(executors): strip client context_management on 400 (port from 9router#1468) ( #6420 )
...
recover from client context_management 400 (port #1468 ) (net +1/-0, test OK). Integrated into release/v3.8.46.
2026-07-06 19:21:38 -03:00
Diego Rodrigues de Sa e Souza
7a7a72c6f4
fix(network): enable Happy Eyeballs on direct egress (port from 9router#1237) ( #6423 )
...
Happy Eyeballs on direct egress (port #1237 ). Integrated into release/v3.8.46.
2026-07-06 19:20:53 -03:00
Diego Rodrigues de Sa e Souza
465f0a0e83
fix(combo): advance round-robin pointer past the served model (port from 9router#948) ( #6428 )
...
combo round-robin advances pointer past served model (port #948 ). Test combo-rr-fallback-advance-948 (green). Integrated into release/v3.8.46.
2026-07-06 19:18:42 -03:00
Chirag Singhal
a73c6ca5fb
fix(sse): reject non-string model with 400 before resolver ( #6407 ) ( #6433 )
...
reject non-string model with 400 before resolver (#6407 , 6/6). Reconciled with #6437 early schema validation on chat.ts. Integrated into release/v3.8.46.
2026-07-06 18:43:06 -03:00
Chirag Singhal
a7e0dddac4
fix(chat): validate scalar params before provider lookup ( #6412 ) ( #6437 )
...
JSON 404 for unknown /api/* (#6424 ) + early scalar-param validation before provider lookup (#6412 , 10/10). Integrated into release/v3.8.46.
2026-07-06 18:40:39 -03:00
Chirag Singhal
d12ac37d4d
fix(api): reject non-JSON Content-Type on /v1/chat/completions with 415 ( #6414 ) ( #6434 )
...
reject non-JSON Content-Type on /v1/chat/completions (#6414 , 4/4). Integrated into release/v3.8.46.
2026-07-06 18:39:25 -03:00
Chirag Singhal
fa3a09cb43
fix(api): echo X-OmniRoute-Compression response header ( #6422 ) ( #6441 )
...
echo X-OmniRoute-Compression header on completions routes (#6422 , 6/6). Reconciled with #6429 body.model echo. Integrated into release/v3.8.46.
2026-07-06 18:38:12 -03:00
Chirag Singhal
d11bf528af
fix(api): coalesce concurrent GET /v1/models to one builder run ( #6408 ) ( #6440 )
...
coalesce concurrent GET /v1/models (#6408 , 3/3). Integrated into release/v3.8.46.
2026-07-06 18:36:37 -03:00
Chirag Singhal
ac96c0dd02
fix(completions): echo requested body.model on /v1/completions to match x-omniroute-model header ( #6429 )
...
echo body.model on /v1/completions (5/5). Integrated into release/v3.8.46.
2026-07-06 18:35:25 -03:00
Chirag Singhal
6ea7c68e6e
fix(api): env-var master keys see full /v1/models catalog ( #6406 ) ( #6436 )
...
env-key master sees full /v1/models catalog (#6406 , 2/2). Integrated into release/v3.8.46.
2026-07-06 18:35:01 -03:00
Chirag Singhal
c8e94d7a14
fix(chatCore): align non-streaming body.model with X-OmniRoute-Model header ( #6426 ) ( #6432 )
...
align non-streaming body.model with X-OmniRoute-Model (#6426 , 3/3). Integrated into release/v3.8.46.
2026-07-06 18:33:49 -03:00
Chirag Singhal
a2fabdde8f
fix(api): return JSON 404 for unknown /v1/* routes ( #6405 ) ( #6435 )
...
JSON 404 for unknown /v1/* routes (#6405 ). Test tests/unit/api/v1-catchall-json-404.test.ts (3/3). Integrated into release/v3.8.46.
2026-07-06 18:32:33 -03:00
Diego Rodrigues de Sa e Souza
2f4b793c3d
fix(api): provider-models route — redirect→local-catalog fallback + custom-model merge ( #6267 , #6247 ) ( #6449 )
2026-07-06 18:17:02 -03:00