Luis Pater
779e6c2d2f
Merge pull request #2231 from 7RPH/fix/responses-stream-multi-tool-calls
...
fix: preserve separate streamed tool calls in Responses API
2026-03-28 20:53:19 +08:00
Luis Pater
10b824fcac
fix(security): validate auth file names to prevent unsafe input
2026-03-28 04:48:23 +08:00
Luis Pater
1e6bc81cfd
refactor(config): replace auto-update-panel with disable-auto-update-panel for clarity
2026-03-25 10:31:44 +08:00
Luis Pater
1a149475e0
Merge pull request #2293 from Xvvln/fix/management-asset-security
...
fix(security): harden management panel asset updater
2026-03-25 10:22:49 +08:00
Luis Pater
e5166841db
Merge pull request #2310 from shellus/fix/claude-openai-system-top-level
...
fix: preserve OpenAI system messages as Claude top-level system
2026-03-25 10:21:18 +08:00
Luis Pater
76c064c729
Merge pull request #2335 from router-for-me/auth
...
Support batch upload and delete for auth files
2026-03-25 09:34:44 +08:00
Luis Pater
d2f652f436
Merge pull request #2333 from router-for-me/codex
...
feat(codex): pass through codex client identity headers
2026-03-25 09:34:09 +08:00
hkfires
9e5693e74f
feat(api): support batch auth file upload and delete
2026-03-25 09:20:17 +08:00
hkfires
528b1a2307
feat(codex): pass through codex client identity headers
2026-03-25 08:48:18 +08:00
hkfires
fee736933b
feat(openai-compat): add per-model thinking support
2026-03-24 14:21:12 +08:00
GeJiaXiang
09c92aa0b5
fix: keep a fallback turn for system-only Claude inputs
2026-03-24 13:54:25 +08:00
GeJiaXiang
8c67b3ae64
test: verify remaining user message after system merge
2026-03-24 13:47:52 +08:00
GeJiaXiang
000e4ceb4e
fix: map OpenAI system messages to Claude top-level system
2026-03-24 13:42:33 +08:00
trph
cc32f5ff61
fix: unify Responses output indexes for streamed items
2026-03-24 08:59:09 +08:00
trph
fbff68b9e0
fix: preserve choice-aware output indexes for streamed tool calls
2026-03-24 08:54:43 +08:00
trph
7e1a543b79
fix: preserve separate streamed tool calls in Responses API
2026-03-24 08:51:15 +08:00
Luis Pater
d475aaba96
Fixed : #2274
...
fix(translator): omit null content fields in Codex OpenAI tool call responses
2026-03-24 01:00:57 +08:00
Luis Pater
0906aeca87
Merge pull request #2254 from clcc2019/main
...
refactor: streamline usage reporting by consolidating record publishi…
2026-03-24 00:39:31 +08:00
Xvvln
7333619f15
fix: reject oversized downloads instead of truncating; warn on unverified fallback
...
- Read maxAssetDownloadSize+1 bytes and error if exceeded, preventing
silent truncation that could write a broken management.html to disk
- Log explicit warning when fallback URL is used without digest
verification, so users are aware of the reduced security guarantee
2026-03-24 00:27:44 +08:00
Luis Pater
97c0487add
Merge pull request #2223 from cnrpman/fix/codex-responses-web-search-preview-compat
...
fix: normalize web_search_preview for codex responses
2026-03-24 00:25:37 +08:00
Xvvln
2db8df8e38
fix(security): harden management panel asset updater
...
- Abort update when SHA256 digest mismatch is detected instead of
logging a warning and proceeding (prevents MITM asset replacement)
- Cap asset download size to 10 MB via io.LimitReader (defense-in-depth
against OOM from oversized responses)
- Add `auto-update-panel` config option (default: false) to make the
periodic background updater opt-in; the panel is still downloaded
on first access when missing, but no longer silently auto-updated
every 3 hours unless explicitly enabled
2026-03-24 00:10:04 +08:00
Luis Pater
a000eb523d
Merge pull request #2213 from TTTPOB/ua-fix
...
feat(claude): stabilize device fingerprint across mixed Claude Code and cloaked clients
2026-03-23 22:53:51 +08:00
Luis Pater
18a4fedc7f
Merge pull request #2126 from ailuntz/fix/watcher-auth-cache-memory
...
perf(watcher): reduce auth cache memory
2026-03-23 22:47:34 +08:00
Luis Pater
5d6cdccda0
Merge pull request #2268 from sususu98/fix/sanitize-tool-names
...
fix(translator): sanitize tool names for Gemini function_declarations compatibility
2026-03-23 21:42:22 +08:00
Luis Pater
1b7f4ac3e1
Merge pull request #2252 from sususu98/fix/antigravity-empty-thought-text
...
fix(antigravity): always include text field in thought parts to prevent Google 500
2026-03-23 21:41:25 +08:00
Luis Pater
afc1a5b814
Fixed : #2281
...
refactor(claude): centralize usage token calculation logic and add tests for cached token handling
2026-03-23 21:30:03 +08:00
dslife2025
0ed2d16596
Merge branch 'router-for-me:main' into main
2026-03-23 09:50:43 +08:00
sususu98
e8bb350467
fix: extend tool name sanitization to all remaining Gemini-bound translators
...
Apply SanitizeFunctionName on request and RestoreSanitizedToolName on
response for: gemini/claude, gemini/openai/chat-completions,
gemini/openai/responses, antigravity/openai/chat-completions,
gemini-cli/openai/chat-completions.
Also update SanitizedToolNameMap to handle OpenAI format
(tools[].function.name) in addition to Claude format (tools[].name).
2026-03-22 14:06:46 +08:00
Supra4E8C
5331d51f27
fix(auth): ensure absolute paths for auth file handling
2026-03-22 13:58:16 +08:00
sususu98
755ca75879
fix: address review feedback - init ToolNameMap eagerly, log collisions, add collision test
2026-03-22 13:24:03 +08:00
sususu98
2398ebad55
fix(translator): sanitize tool names for Gemini function_declarations compatibility
...
Claude Code and MCP clients may send tool names containing characters
invalid for Gemini's function_declarations (e.g. '/', '@', spaces).
Sanitize on request via SanitizeFunctionName and restore original names
on response for both antigravity/claude and gemini-cli/claude translators.
2026-03-22 13:10:53 +08:00
clcc2019
c1bf298216
refactor: streamline usage reporting by consolidating record publishing logic
...
- Introduced a new method `buildRecord` in `usageReporter` to encapsulate record creation, improving code readability and maintainability.
- Added latency tracking to usage records, ensuring accurate reporting of request latencies.
- Updated tests to validate the inclusion of latency in usage records and ensure proper functionality of the new reporting structure.
2026-03-20 19:44:26 +08:00
sususu
e005208d76
fix(antigravity): always include text field in thought parts to prevent Google 500
...
When Claude sends redacted thinking with empty text, the translator
was omitting the "text" field from thought parts. Google Antigravity
API requires this field, causing 500 "Unknown Error" responses.
Verified: 129/129 error logs with empty thought → 500, 0/97 success
logs had empty thought. After fix: 0 new "Unknown Error" 500s.
2026-03-20 18:59:25 +08:00
Junyi Du
d1df70d02f
chore: add codex builtin tool normalization logging
2026-03-20 14:08:37 +08:00
hkfires
636da4c932
refactor(auth): replace manual input handling with AsyncPrompt for callback URLs
2026-03-20 12:24:27 +08:00
hkfires
cccb77b552
fix(auth): avoid blocking oauth callback wait on prompt
2026-03-20 11:48:30 +08:00
Luis Pater
2bd646ad70
refactor: replace sjson.Set usage with sjson.SetBytes to optimize mutable JSON transformations
2026-03-19 17:58:54 +08:00
tpob
52c1fa025e
fix(claude): learn official fingerprints after custom baselines
2026-03-19 13:59:41 +08:00
tpob
680105f84d
fix(claude): refresh cached fingerprint after baseline upgrades
2026-03-19 13:28:58 +08:00
tpob
f7069e9548
fix(claude): pin stabilized OS arch to baseline
2026-03-19 13:07:16 +08:00
Junyi Du
793840cdb4
fix: cover dated and nested codex web search aliases
2026-03-19 03:41:12 +08:00
Junyi Du
8f421de532
fix: handle sjson errors in codex tool normalization
2026-03-19 03:36:06 +08:00
Junyi Du
be2dd60ee7
fix: normalize web_search_preview for codex responses
2026-03-19 03:23:14 +08:00
tpob
8179d5a8a4
fix(claude): avoid racy fingerprint downgrades
2026-03-19 01:03:41 +08:00
tpob
6fa7abe434
fix(claude): keep configured baseline above older fingerprints
2026-03-19 01:02:04 +08:00
tpob
dd64adbeeb
fix(claude): preserve legacy user agent overrides
2026-03-19 00:03:09 +08:00
tpob
616d41c06a
fix(claude): restore legacy runtime OS arch fallback
2026-03-19 00:01:50 +08:00
tpob
e0e337aeb9
feat(claude): add switch for device profile stabilization
2026-03-18 19:31:59 +08:00
tpob
d52839fced
fix: stabilize claude device fingerprint
2026-03-18 18:46:54 +08:00
Luis Pater
be3f8dbf7e
Merge pull request #2187 from Darley-Wey/fix/claude-disable-parallel-tool-calls
...
fix(claude): honor disable_parallel_tool_use
2026-03-17 21:06:08 +08:00