Luis Pater
34c8ccb961
Fixed : #437
...
feat(runtime): strip `service_tier` in GitHub Copilot response normalization
2026-03-13 11:50:21 +08:00
Luis Pater
d08e164af3
chore(runtime): remove unused FetchAntigravityModels function from executor
2026-03-13 11:38:44 +08:00
Luis Pater
86d5db472a
Merge branch 'main' into plus
2026-03-13 11:28:52 +08:00
hkfires
c3d5dbe96f
feat(model_registry): enhance model registration and refresh mechanisms
2026-03-13 10:56:39 +08:00
Luis Pater
817cebb321
Merge pull request #2082 from router-for-me/antigravity
...
Refactor Antigravity model handling and improve logging
2026-03-12 10:39:13 +08:00
Luis Pater
683f3709d6
Merge pull request #2076 from aikins01/fix/backfill-empty-function-response-names
...
fix: backfill empty functionResponse.name from preceding functionCall
2026-03-12 10:35:44 +08:00
hkfires
dbd42a42b2
fix(model_updater): clarify log message for model refresh failure
2026-03-12 10:32:04 +08:00
hkfires
dea3e74d35
feat(antigravity): refactor model handling and remove unused code
2026-03-12 09:24:45 +08:00
Aikins Laryea
a6c3042e34
refactor: remove redundant bounds checks per code review
2026-03-12 00:12:43 +00:00
Aikins Laryea
861537c9bd
fix: backfill empty functionResponse.name from preceding functionCall
...
when Amp or Claude Code sends functionResponse with an empty name in Gemini
conversation history, the Gemini API rejects the request with 400
"Name cannot be empty". this fix backfills empty names from the
corresponding preceding functionCall parts using positional matching.
covers all three Gemini translator paths:
- gemini/gemini (direct API key)
- antigravity/gemini (OAuth)
- gemini-cli/gemini (Gemini CLI)
also switches fixCLIToolResponse pending group matching from LIFO to
FIFO to correctly handle multiple sequential tool call groups.
fixes #1903
2026-03-12 00:00:38 +00:00
Luis Pater
89d7be9525
Merge branch 'dev' into codex/custom-useragent-request
2026-03-11 22:55:50 +08:00
LuxVTZ
2bb686f594
Add GitLab Duo management OAuth and PAT endpoints
2026-03-11 17:58:34 +04:00
lang-911
70988d387b
Add Codex websocket header defaults
2026-03-11 00:34:57 -07:00
Luis Pater
ddaa9d2436
Fixed : #2034
...
feat(proxy): centralize proxy handling with `proxyutil` package and enhance test coverage
- Added `proxyutil` package to simplify proxy handling across the codebase.
- Refactored various components (`executor`, `cliproxy`, `auth`, etc.) to use `proxyutil` for consistent and reusable proxy logic.
- Introduced support for "direct" proxy mode to explicitly bypass all proxies.
- Updated tests to validate proxy behavior (e.g., `direct`, HTTP/HTTPS, and SOCKS5).
- Enhanced YAML configuration documentation for proxy options.
2026-03-11 11:08:02 +08:00
Luis Pater
7b7b258c38
Fixed : #2022
...
test(translator): add tests for handling Claude system messages as string and array
2026-03-11 10:47:33 +08:00
LuxVTZ
dcb1c9be8a
feat(gitlab): route duo openai via gateway
2026-03-10 22:19:36 +04:00
LuxVTZ
a24f4ace78
feat(gitlab): route duo anthropic via gateway
2026-03-10 22:19:36 +04:00
LuxVTZ
c631df8c3b
feat(gitlab): add duo streaming transport
2026-03-10 22:19:36 +04:00
LuxVTZ
54c3eb1b1e
Add GitLab Duo auth and executor support
2026-03-10 22:19:36 +04:00
LuxVTZ
bb28cd26ad
Add GitLab Duo OAuth and PAT support
2026-03-10 22:18:54 +04:00
Luis Pater
046865461e
Merge PR #424 from router-for-me/main
2026-03-10 19:19:29 +08:00
hkfires
e333fbea3d
feat(updater): update StartModelsUpdater to block until models refresh completes
2026-03-10 14:41:58 +08:00
hkfires
efbe36d1d4
feat(updater): change models refresh to one-time fetch on startup
2026-03-10 14:18:54 +08:00
hkfires
30d5c95b26
feat(registry): refresh model catalog from network
2026-03-10 14:02:54 +08:00
hkfires
d1e3195e6f
feat(codex): register models by plan tier
2026-03-10 11:20:37 +08:00
Luis Pater
05a35662ae
Merge branch 'router-for-me:main' into main
2026-03-09 23:05:51 +08:00
Dominic Robinson
a1e0fa0f39
test(executor): cover string system prompt handling in checkSystemInstructionsWithMode
2026-03-09 12:40:27 +00:00
Dominic Robinson
5c9997cdac
fix: Preserve system prompt when sent as a string instead of content block array
2026-03-09 07:38:11 +00:00
Luis Pater
7739738fb3
Merge branch 'main' into plus
2026-03-09 09:33:22 +08:00
Luis Pater
99d1ce247b
Merge pull request #420 from Skadli/codex/responses-computer-tool
...
Fixed: preserve Responses computer tool passthrough
2026-03-09 09:31:30 +08:00
Kirill Turanskiy
338321e553
fix: use camelCase systemInstruction in OpenAI-to-Gemini translators
...
The Gemini v1internal (cloudcode-pa) and Antigravity Manager endpoints
require camelCase "systemInstruction" in request JSON. The current
snake_case "system_instruction" causes system prompts to be silently
ignored when routing through these endpoints.
Replace all "system_instruction" JSON keys with "systemInstruction" in
chat-completions and responses request translators.
2026-03-08 15:59:13 +03:00
Luis Pater
182b31963a
Merge branch 'router-for-me:main' into main
2026-03-08 20:48:05 +08:00
Luis Pater
4f48e5254a
Merge pull request #1957 from router-for-me/thinking
...
fix(translator): pass through adaptive thinking effort
2026-03-08 20:46:58 +08:00
hkfires
424711b718
fix(executor): use aiplatform base url for vertex api key calls
2026-03-08 20:13:12 +08:00
skad
91a2b1f0b4
Fixed: preserve Responses computer tool passthrough
...
Keep the OpenAI Responses computer tool intact when normalizing requests for the GitHub Copilot executor.
This change preserves built-in computer tool definitions instead of dropping them as non-function tools, keeps explicit computer tool_choice selections unchanged, and classifies computer_call / computer_call_output items as assistant and tool turns when deriving the initiator header.
Together these adjustments allow Responses requests that use the computer tool to reach the upstream executor without losing tool metadata or switching turn ownership unexpectedly.
2026-03-08 13:59:32 +08:00
Luis Pater
b9153719b0
Merge pull request #1925 from shenshuoyaoyouguang/pr/openai-compat-pool-thinking
...
fix(openai-compat): improve pool fallback and preserve adaptive thinking
2026-03-08 01:05:05 +08:00
Luis Pater
631e5c8331
Merge pull request #1922 from shenshuoyaoyouguang/pr/model-registry-safety
...
fix(registry): clone model snapshots and invalidate available-model cache
2026-03-07 23:01:42 +08:00
Luis Pater
e9c60a0a67
Merge pull request #1910 from thebtf/fix/gemini-oauth-error-messages
...
fix: surface upstream error details in Gemini CLI OAuth onboarding UI
2026-03-07 22:25:18 +08:00
Luis Pater
98a1bb5a7f
Merge pull request #1900 from rex-zsd/feature/add-gemini-3.1-flash-image-preview
...
feat(registry): add gemini-3.1-flash-image-preview model definition
2026-03-07 22:17:10 +08:00
Luis Pater
ca90487a8c
Merge branch 'main' into feature/add-gemini-3.1-flash-image-preview
2026-03-07 22:16:09 +08:00
Luis Pater
1042489f85
Merge pull request #1893 from thebtf/fix/normalize-ttl-byte-preservation-mainline
...
fix: preserve original JSON bytes in normalizeCacheControlTTL
2026-03-07 22:14:13 +08:00
Luis Pater
38277c1ea6
Merge pull request #1875 from woqiqishi/fix/tool-use-id-sanitize
...
fix: sanitize tool_use.id to comply with Claude API regex ^[a-zA-Z0-9_-]+$
2026-03-07 22:06:36 +08:00
Luis Pater
ee0c24628f
Merge branch 'router-for-me:main' into main
2026-03-07 20:42:22 +08:00
chujian
3a18f6fcca
fix(registry): clone slice fields in model map output
2026-03-07 18:53:56 +08:00
chujian
099e734a02
fix(registry): always clone available model snapshots
2026-03-07 18:40:02 +08:00
chujian
97ef633c57
fix(registry): address review feedback
2026-03-07 17:36:57 +08:00
chujian
dae8463ba1
fix(registry): clone model snapshots and invalidate available-model cache
2026-03-07 16:59:23 +08:00
chujian
7c1299922e
fix(openai-compat): improve pool fallback and preserve adaptive thinking
2026-03-07 16:54:28 +08:00
Luis Pater
7e6bb8fdc5
Merge origin/dev into pr-1774-review and resolve watcher conflicts
2026-03-07 11:12:42 +08:00
Luis Pater
9cee8ef87b
Merge pull request #1684 from alexey-yanchenko/fix/input-audio-from-openai-to-antigravity
...
fix: preserve input_audio content parts when proxying to Antigravity
2026-03-07 10:12:28 +08:00