Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
142ae93
fix(network): bound direct-path response-start timeout
excessivechaos Aug 17, 2026
e39f366
fix(combo): clear stale sticky pins when stickiness is disabled
excessivechaos Aug 20, 2026
ce6249c
Merge pull request #10528 from excessivechaos/fix/direct-dispatcher-t…
diegosouzapw Aug 20, 2026
d9cb4f5
fix(files): validate the list limit query parameter (#10673)
pacocartones Aug 20, 2026
bc9090b
fix(translator): merge consecutive same-role contents in direct claud…
Siva010 Aug 20, 2026
eb6f319
feat(providers): add tabitoken gateway and serve hcnsec's four protoc…
yawar-aquil Aug 20, 2026
af5ab4c
fix(command-code): map unsupported minimal reasoning_effort to low
excessivechaos Aug 20, 2026
0a1f1d4
fix(open-sse): declare Ollama Cloud reasoning models' supportedThinki…
hartmark Aug 20, 2026
87719f2
fix(domain): treat unreported Antigravity quota fraction as unknown, …
hartmark Aug 20, 2026
018badc
fix: route Playground ChatTab Send to the selected endpoint, not just…
hartmark Aug 20, 2026
bed4d24
fix(config): exclude cookie-auth image bridges from unprefixed model …
hartmark Aug 20, 2026
6d04367
fix: skip expensive RTK compression stats computation on no-op runs (…
hartmark Aug 20, 2026
9603ec1
fix(sse): log upstream error body in COMBO per-target failure warning…
hartmark Aug 20, 2026
0458c5a
fix(db): disambiguate Kiro OAuth dedup by profileArn (#10815)
hartmark Aug 20, 2026
4ec080d
fix(api): POST /v1/search names unknown providers instead of opaque 4…
hartmark Aug 20, 2026
b668d91
fix(sse): canonicalize alias provider ids before quota fetcher lookup…
hartmark Aug 20, 2026
1974177
fix(sse): strip commentary items from Responses response.completed sn…
hartmark Aug 20, 2026
5d9998e
Merge pull request #10912 from diegosouzapw/fix/10095-antigravity-mul…
diegosouzapw Aug 21, 2026
c535df9
Merge pull request #10923 from diegosouzapw/fix/10156-responses-comme…
diegosouzapw Aug 21, 2026
050c7c0
Merge pull request #10913 from diegosouzapw/fix/10592-playground-endp…
diegosouzapw Aug 21, 2026
7756aef
Merge pull request #10917 from diegosouzapw/fix/10597-combo-log-error…
diegosouzapw Aug 21, 2026
699be22
Merge pull request #10915 from diegosouzapw/fix/10765-rtk-uncondition…
diegosouzapw Aug 21, 2026
c7e264e
Merge pull request #10911 from diegosouzapw/fix/10788-opencode-effort…
diegosouzapw Aug 21, 2026
590cbbe
Merge pull request #10918 from diegosouzapw/fix/10815-kiro-oauth-dedup
diegosouzapw Aug 21, 2026
3669df2
Merge pull request #10914 from diegosouzapw/fix/10848-image-scan-cook…
diegosouzapw Aug 21, 2026
f66c986
Merge pull request #10919 from diegosouzapw/fix/10849-search-provider…
diegosouzapw Aug 21, 2026
1f04e73
Merge pull request #10922 from diegosouzapw/fix/10877-quota-alias-lookup
diegosouzapw Aug 21, 2026
3fed9e8
fix(sse): add the missing minimax-music dispatch to music generation …
Aug 21, 2026
1188401
fix(deps): upgrade @atjsh/llmlingua-2 to 2.0.5 and drop @tensorflow/t…
jonlwheat2-gif Aug 21, 2026
f71f3da
feat(routing): add DISABLE_CONTEXT_WINDOW_CHECKS bypass for the direc…
diegosouzapw Aug 21, 2026
2cd14b1
fix(providers): rename Freepik slug to Magnific and validate Magnific…
RaviTharuma Aug 21, 2026
769ab62
fix(reasoning): preserve compatible response state (#10574)
jackjinke Aug 21, 2026
00aba8e
fix(sse): include prompt cache usage fields on message_stop fallback …
NahuSaruf Aug 21, 2026
28788cb
fix(cli): route provider tests through connection API (#10572)
hydraxman Aug 21, 2026
cbf2377
feat(providers): implement native support for Freebuff AI gateway (#6…
adrianaryaputra Aug 21, 2026
d098114
fix(combo): guarantee combo loops terminate with an actionable error …
herjarsa Aug 21, 2026
74c9e7e
feat(combo): Auto-Combo snapshot generation/duplication in the UX (#1…
swingtempo Aug 21, 2026
d6737bf
fix(zed-hosted): add connection test support for Zed Hosted Models (#…
Hsia97 Aug 21, 2026
374b387
fix(opencode): route Muse Spark 1.2 models to OpenAI Responses API (#…
zoser69 Aug 21, 2026
1d4c4cd
fix(sse): re-run strict system hoist after format translation (#10803)
Kizuno18 Aug 21, 2026
b87056a
feat(a2a): A2A v1.0 client compatibility (SendMessage alias + v1.0 ag…
wpec Aug 21, 2026
b661b71
fix(sse,compression): graceful silent-close truncation + compressTool…
minhlongs Aug 21, 2026
6098954
test(providers): regenerate translate-path golden snapshot for freebu…
hartmark Aug 21, 2026
fa0cd5a
fix(cursor): discover account Agent endpoint (#10804)
tuandinh0801 Aug 21, 2026
16fc433
fix(skills): make marketplace installs available to API keys (#10854)
kriptoburak Aug 21, 2026
6fd4040
feat(cli): support Grok Build custom host configuration (#10830)
tuandinh0801 Aug 21, 2026
5bf694f
chore(deps): bump github/codeql-action from 4.37.6 to 4.37.7 (#10928)
dependabot[bot] Aug 21, 2026
af47a5f
chore(deps): bump github/codeql-action/analyze from 4.37.6 to 4.37.7 …
dependabot[bot] Aug 21, 2026
34f65e1
chore(deps): bump github/codeql-action/init from 4.37.6 to 4.37.7 (#1…
dependabot[bot] Aug 21, 2026
1d29188
deps: bump the development group with 2 updates (#10932)
dependabot[bot] Aug 21, 2026
7fa6528
deps: bump the production group with 5 updates (#10931)
dependabot[bot] Aug 21, 2026
24f31cf
feat(command-code): expose reasoning effort suffixes (#10884)
excessivechaos Aug 21, 2026
b580992
feat(opencode-go): expose Muse Spark reasoning effort aliases (#10883)
excessivechaos Aug 21, 2026
fac2a93
fix(dashboard): guard non-string apiKey in CLI tool cards (#10872)
Rahulsharma0810 Aug 21, 2026
967b56a
fix(cline): stop generating proxy task ids (#10279)
arafatkatze Aug 21, 2026
45b42ec
fix(compression): bump vendored GCF with numeric-domain and surplus f…
blackwell-systems Aug 21, 2026
3805494
feat(vision-bridge): consolidate vision bridge fixes (catalog verdict…
Stazyu Aug 21, 2026
825e2ab
fix(opencode-plugin): respect log level in provider.models() catalog …
tientien17 Aug 21, 2026
fdeac49
feat(providers): restore per-connection upstream timeout tier (#10885)
maxmad64bis Aug 21, 2026
1b16e12
fix(quality): rebaseline file-size for #10859 own growth (missed at m…
hartmark Aug 21, 2026
bc47c92
merge release/v3.8.50 into fix/combo-sticky-pin-clear
hartmark Aug 21, 2026
325b760
fix(quality): rebaseline file-size for this PR's own commandCode.ts g…
hartmark Aug 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
43 changes: 43 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -417,6 +417,15 @@ ALLOW_API_KEY_REVEAL=false
# by OMNIROUTE_CHAT_MAX_HEAVY_IN_FLIGHT and the heap-pressure shed instead. Set a positive
# value only on memory-constrained deployments that need a hard ceiling.
# OMNIROUTE_CHAT_HARD_MAX_MESSAGES=0

# Skip OmniRoute's local context-window and max-input-token check for direct
# single-model requests. Default: false (dangerous opt-in).
# The upstream provider still enforces its real limits, so enabling this can
# replace an early OmniRoute 400 with an upstream context-length error.
# Prompt compression and the model's own output-token cap remain active.
# Also configurable from Dashboard > Settings > Feature Flags; no restart is
# required. Used by: src/shared/utils/featureFlags.ts and open-sse/handlers/chatCore.ts.
# DISABLE_CONTEXT_WINDOW_CHECKS=false
# How long a heavy request waits for heavyweight capacity before a retryable 503.
# A short bounded wait serializes agent bursts instead of an instant 503; 0 = instant.
# Default 2000 (2s).
Expand Down Expand Up @@ -705,6 +714,11 @@ NEXT_PUBLIC_ENABLE_SOCKS5_PROXY=true
# ALL_PROXY=socks5://127.0.0.1:7890
# NO_PROXY=localhost,127.0.0.1

# Pin the echo-IP target used by proxy egress probes. Unset, the probe tries
# api64.ipify.org then api4.ipify.org so IPv4-only tunnels are not reported dead.
# Used by: src/lib/proxyEchoTarget.ts.
# OMNIROUTE_PROXY_ECHO_URL=https://api4.ipify.org?format=json

# Max concurrent sockets per cached HTTP/SOCKS proxy dispatcher.
# Long-lived SSE streams such as Codex /v1/responses need more than one
# connection when multiple requests share the same account-level proxy.
Expand Down Expand Up @@ -885,6 +899,14 @@ NEXT_PUBLIC_ENABLE_SOCKS5_PROXY=true
# Set to 0/false/off to skip compression entirely. Default: rtk
# OMNIROUTE_MCP_DESCRIPTION_COMPRESSION=rtk

# Abort budget (ms) for MCP-server internal management reads (health, resilience,
# combos, quota, usage). Default: 10000. Used by: open-sse/mcp-server/fetchTimeout.ts
# OMNIROUTE_MCP_FETCH_TIMEOUT_MS=10000

# Abort budget (ms) for MCP hops that wait on a provider (route_request, web_search,
# web_fetch). Default: 60000. Used by: open-sse/mcp-server/fetchTimeout.ts
# OMNIROUTE_MCP_UPSTREAM_TIMEOUT_MS=60000

# Model catalog sync interval in hours.
# Used by: src/shared/services/modelSyncScheduler.ts — periodic model refresh.
# Default: 24
Expand Down Expand Up @@ -1361,6 +1383,14 @@ CURSOR_USER_AGENT="Cursor/3.4"
# FETCH_BODY_TIMEOUT_MS=600000 # Time to receive full response body
# FETCH_CONNECT_TIMEOUT_MS=30000 # TCP connection establishment (default: 30s)
# FETCH_KEEPALIVE_TIMEOUT_MS=4000 # Keep-alive socket idle timeout (default: 4s)
# OMNIROUTE_DIRECT_HEADERS_TIMEOUT_MS=30000 # Bounded response-start window per direct
# # (no-proxy) attempt (#10214). A silently-dropped
# # pooled keep-alive socket surfaces no transport
# # error, so without this bound a direct request can
# # stall until undici's headersTimeout (600s) or the
# # caller's deadline; on expiry the request retries
# # once on a fresh no-keep-alive socket. 0 disables
# # the bound (default: 30000 = 30s).

# Default timeout (ms) for src/shared/utils/fetchTimeout.ts. Acts as the
# fallback when FETCH_TIMEOUT_MS is unset. Default: 120000 (2 min).
Expand Down Expand Up @@ -2148,6 +2178,19 @@ APP_LOG_TO_FILE=true
# Used by: open-sse/utils/cursorAgentCliVersion.ts. Default: detect local install, else pin.
# CURSOR_AGENT_CLI_VERSION=2026.07.08-0c04a8a

# Path to the Cursor Agent binary used for image generation.
# Used by: open-sse/handlers/imageGeneration/providers (CURSOR_IMAGE.md).
# CURSOR_AGENT_BIN=/path/to/agent

# Cursor image-generation wall clock (ms). Default: 210000.
# CURSOR_IMG_TIMEOUT_MS=210000

# Shared-seat concurrency gate for Cursor image jobs. Default: 2.
# CURSOR_IMG_MAX_CONCURRENT=2

# Override Cursor CLI --model for image jobs. Default: request model / auto.
# CURSOR_IMG_MODEL=auto

# Cursor Agent CLI data directory override (versions live under <dir>/versions/).
# Used by: open-sse/utils/cursorAgentCliVersion.ts. Default: ~/.local/share/cursor-agent (unix)
# or %LOCALAPPDATA%\cursor-agent (win32). Official agent CLI also honors this var.
Expand Down
14 changes: 7 additions & 7 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,13 @@ updates:
# bumps; majors here need their own PR and a deliberate migration review.
- dependency-name: "ioredis"
update-types: ["version-update:semver-major"]
# @huggingface/transformers is HARD-PINNED at 3.5.2 (exact, no caret) — FROZEN.
# It is load-bearing for the LLMLingua ONNX compression engine (open-sse/services/
# compression/engines/llmlingua/ — worker.ts pins @huggingface/transformers@3.5.2)
# and for local memory embeddings (src/lib/memory/embedding/transformersLocal.ts),
# and was VPS-validated at 3.5.2 (#4014). 4.x breaks both, and even 3.x minors must
# be re-validated on the VPS — so freeze ALL auto-bumps (no update-types = ignore
# every version). Migrate it intentionally, not via dependabot (#4050).
# @huggingface/transformers is VPS-validated at ^4.2.0 (migrated intentionally in
# #9962). It is load-bearing for the LLMLingua ONNX compression engine (open-sse/
# services/compression/engines/llmlingua/ — @atjsh/llmlingua-2@2.0.5 peers on
# "@huggingface/transformers": "^3.5.2 || ^4.0.0") and for local memory embeddings
# (src/lib/memory/embedding/transformersLocal.ts). Further majors must be re-validated
# on the VPS — so keep auto-bumps frozen (no update-types = ignore every version).
# Migrate it intentionally, not via dependabot (#4050).
- dependency-name: "@huggingface/transformers"

- package-ecosystem: "github-actions"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ jobs:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: github/codeql-action/init@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6
- uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
with:
languages: javascript-typescript
queries: security-extended
- uses: github/codeql-action/analyze@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6
- uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
with:
category: "/language:javascript-typescript"
2 changes: 1 addition & 1 deletion .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@ jobs:
- name: Upload Trivy SARIF to Security tab
if: needs.prepare.outputs.version != 'main'
continue-on-error: true
uses: github/codeql-action/upload-sarif@v4.37.6
uses: github/codeql-action/upload-sarif@v4.37.7
with:
sarif_file: trivy-results.sarif
category: trivy-image
Expand Down
Loading
Loading