Wesley Liddick
e8cb019fab
Merge pull request #6078 from YogaSakti/fix/responses-custom-tool-call-id
...
fix(openai): keep restored tool-call item IDs typed
v0.1.183
2026-08-25 21:32:34 +08:00
Wesley Liddick
7a7bd3729c
Merge pull request #6166 from jyking/fix/email-bind-alias-dedup
...
fix(auth): 邮箱换绑增加别名与并发守卫
2026-08-25 21:31:39 +08:00
Wesley Liddick
49ad7021d7
Merge pull request #6164 from jimbirthday/fix/openai-sticky-capacity-spillover
...
fix(openai): preserve sticky binding on capacity spillover
2026-08-25 21:28:38 +08:00
Wesley Liddick
4952b919a4
Merge pull request #6204 from wucm667/fix/issue-6203-kimi-concurrency-403
...
fix(kimi): keep concurrency-limit 403 recoverable
2026-08-25 21:28:08 +08:00
Wesley Liddick
fa0685a4a3
Merge pull request #6175 from wucm667/feat/issue-6172-antigravity-token-clamp
...
fix(antigravity): clamp compatible token limits
2026-08-25 21:27:57 +08:00
Wesley Liddick
8040428716
Merge pull request #6201 from xuhaihan/fix/codex-session-id-affinity
...
fix(openai): honor Codex session-id header
2026-08-25 21:27:24 +08:00
Wesley Liddick
4ff136cfd9
Merge pull request #6193 from antTing/codex/fix-channel-monitor-v2-nullif
...
fix(channel-monitor-v2): fix composite platform aggregation SQL
2026-08-25 21:26:32 +08:00
Wesley Liddick
832cf4df65
Merge pull request #6208 from Wei-Shaw/fix/openai-oauth-429-quota-scheduling
...
fix(openai): pause OAuth accounts on exhausted quota 429
2026-08-25 20:41:41 +08:00
shaw
f1aadd48d5
fix(openai): pause OAuth accounts on exhausted quota 429
2026-08-25 20:25:22 +08:00
wucm667
3802268e2d
fix(kimi): keep concurrency 403 recoverable
2026-08-25 19:40:39 +08:00
hank
8e60d57475
fix(openai): honor Codex session-id header
2026-08-25 17:08:27 +08:00
暴走的小笼包
b20f29d115
fix(channel-monitor-v2): fix composite platform aggregation SQL
2026-08-25 16:36:04 +08:00
wucm667
1a9898a6a4
fix(antigravity): clamp compatible token limits
2026-08-25 13:13:08 +08:00
github-actions[bot]
aa2c4e8d13
chore: sync VERSION to 0.1.182 [skip ci]
2026-08-25 04:47:52 +00:00
Wesley Liddick
5a7d469622
Merge pull request #6157 from LiPu-jpg/fix/issue-6147-responses-lite-parallel
...
fix(openai): enforce Responses Lite parallel tool calls across account types
v0.1.182
2026-08-25 12:31:32 +08:00
shaw
095b525360
fix(openai): pin Responses Lite parallel tool calls
2026-08-25 12:14:52 +08:00
Wesley Liddick
027d442f9b
Merge pull request #6101 from jianjianai/fix/composite-group-channel-monitor-v2
...
fix(monitor-v2): 修复Composite分组错误事实未解析到真实账号平台导致渠道监控V2无效
2026-08-25 11:27:03 +08:00
Wesley Liddick
810d50a00f
Merge pull request #6155 from HypoxanthineOvO/fix/composite-kimi-k3-routing
...
fix(composite): route Kimi Code K3 model IDs
2026-08-25 11:13:59 +08:00
Wesley Liddick
41d712be09
Merge pull request #5658 from william-drakemond/fix/opencode-go-usage-limit-reset
...
fix(openai): honor OpenCode Go usage reset durations
2026-08-25 11:05:15 +08:00
Wesley Liddick
3c714d8736
Merge pull request #6152 from ranxi2001/fix/payment-result-balance-refresh
...
fix(payment): refresh balance after fulfillment
2026-08-25 11:04:10 +08:00
Wesley Liddick
636d7debf9
Merge pull request #6132 from wucm667/fix/issue-6125-anthropic-cache-ttl
...
fix: prevent duplicate Anthropic cache TTL billing
2026-08-25 11:02:29 +08:00
Wesley Liddick
3dd717ab0d
Merge pull request #5920 from wucm667/fix/issue-5884-antigravity-sonnet46
...
fix(antigravity): define Sonnet 4.5 to 4.6 compatibility routing
2026-08-25 11:01:34 +08:00
Wesley Liddick
1dc1b44268
Merge pull request #6149 from SipengXie2024/fix/oauth-image-verbatim-prompt
...
fix(openai): preserve OAuth image prompts verbatim
2026-08-25 11:01:20 +08:00
jyking
4ca86c52e3
fix(auth): 邮箱换绑增加别名与并发守卫
2026-08-25 10:40:02 +08:00
超级英雄吉姆
e55727d4c8
fix(openai): preserve sticky binding on capacity spillover
2026-08-25 10:27:48 +08:00
shaw
3b7753a8e4
chore: update sponsors
2026-08-25 08:51:58 +08:00
Jiao Ziang
d5e43ef7d1
fix(openai): normalize Lite requests in WS HTTP bridge
2026-08-25 03:46:46 +08:00
Jiao Ziang
d6012b0b35
fix(openai): preserve numeric precision in Lite payloads
2026-08-25 01:05:28 +08:00
Jiao Ziang
53d76ad800
fix(openai): enforce Responses Lite tool call mode
2026-08-25 00:21:29 +08:00
HypoxanthineOvO
4347e5555b
fix(composite): route Kimi Code K3 model IDs
2026-08-24 23:09:30 +08:00
SipengXie2024
329b92ef04
fix(openai): preserve OAuth image prompts verbatim
2026-08-24 14:37:48 +00:00
github-actions[bot]
e2d9b823f6
chore: sync VERSION to 0.1.181 [skip ci]
2026-08-24 14:35:57 +00:00
ranxi2001
eb594eefc9
fix(payment): refresh balance after fulfillment
2026-08-24 22:30:24 +08:00
Wesley Liddick
3af5443b22
Merge pull request #6116 from wucm667/fix/issue-6110-gemini-tool-schema
...
fix(gemini): sanitize unsupported tool schema fields
v0.1.181
2026-08-24 22:19:07 +08:00
Wesley Liddick
7ba3e1ac52
Merge pull request #6150 from Wei-Shaw/fix/grok-upstream-user-agent
...
fix(grok): use official CLI user agent
2026-08-24 22:18:02 +08:00
shaw
9fb260439f
fix(grok): use official CLI user agent
2026-08-24 22:14:45 +08:00
Wesley Liddick
07931bbb18
Merge pull request #6143 from akihitohyh/fix/rejected-status-strip-all
...
fix(openai): clear the rejected input status for the whole item type
2026-08-24 22:01:14 +08:00
Wesley Liddick
2307aa5ca7
Merge pull request #6148 from 759502416/fix/responses-lite-parallel-tool-calls
...
fix(openai): keep parallel_tool_calls for Responses Lite additional_tools
2026-08-24 21:49:01 +08:00
759502416 and Claude Opus 5
1563db3f82
fix(openai): keep parallel_tool_calls for Responses Lite additional_tools
...
normalizeOpenAIParallelToolCallsWithoutTools only looked at the top-level
"tools" array, but normalizeOpenAIResponsesLiteTools moves namespace tools
into an input item of type "additional_tools" and deletes the top-level key.
A Responses Lite request that carries tools therefore looks like it has none,
and the parallel_tool_calls:false that ensureOpenAIResponsesLiteParallelToolCalls
had just pinned gets deleted on the way out.
OpenAI then applies its default of true and rejects the request:
400 unsupported_value: "X-OpenAI-Internal-Codex-Responses-Lite requires
`parallel_tool_calls` to be false."
Note the field cannot simply be pinned to false unconditionally: without tools
OpenAI rejects it with "'parallel_tool_calls' is only allowed when 'tools' are
specified", so the two constraints have to be honoured together.
Reuse the same tool-detection standard the Lite path already uses by adding
openAIRequestBodyHasTools, the []byte counterpart of openAIResponsesLiteHasTools,
so both sides of the repo agree on what "has tools" means.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-24 21:15:39 +08:00
akihitohyh and Claude Opus 5
e440ac48c7
fix(openai): clear the rejected input status for the whole item type
...
The upstream names one offending index per response, but a replayed
conversation routinely carries dozens of items of the same type, each with a
status the upstream schema does not accept. Clearing a single index per round
trip needs one retry per item, so a conversation with more than
maxOpenAIResponsesRejectedFieldRetries such items exhausts the bounded budget
and the 400 reaches the client. Reported against tool_search_output items,
where the rejection surfaced as "Unknown parameter: 'input[60].status'".
Clear the status of every input item sharing the rejected item's type in the
same pass. Items of other types keep theirs: the rejection only proves that
the rejected item's type has no status field. When the rejected item carries
no type to match on, fall back to clearing the named index alone.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-24 17:03:44 +08:00
wucm667
71aa6e3574
fix(antigravity): preserve explicit Sonnet 4.5 routing
2026-08-24 16:07:27 +08:00
wucm667
99ec347eaf
fix(antigravity): migrate legacy Sonnet tests to 4.6
2026-08-24 15:58:47 +08:00
github-actions[bot]
03e8ab4134
chore: sync VERSION to 0.1.180 [skip ci]
2026-08-24 07:30:34 +00:00
Wesley Liddick
c40edb4070
Merge pull request #6139 from xz-dev/fix/configurable-model-list-read-limit
...
feat(gateway): configure model list read limit
v0.1.180
2026-08-24 15:04:50 +08:00
Wesley Liddick
7bb9c0ed7d
Merge pull request #6079 from okbexx/fix/codex-analytics-account-affinity
...
fix(openai): scope Codex identity to OAuth account
2026-08-24 14:54:05 +08:00
Wesley Liddick
5f43696a9a
Merge pull request #6121 from creamtea47/codex/feat-openai-auto-reset-credit
...
feat: OpenAI 重置卡按用量阈值自动使用
2026-08-24 14:39:59 +08:00
Xiangzhe
847c0c4526
feat(gateway): configure model list read limit
...
Add gateway.models_list_read_max_bytes with the existing 8 MiB behavior as its default, and apply it consistently to generic, Codex, and Antigravity model-list reads.
Read one sentinel byte for Codex manifests so oversized responses return an explicit bounded upstream error instead of malformed JSON.
2026-08-24 14:20:18 +08:00
Wesley Liddick
4a02d80543
Merge pull request #6136 from alfadb/fix/flaky-tool-schema-alloc-guard
...
fix(openai): harden flaky alloc guard in tool schema sanitize test
2026-08-24 14:17:15 +08:00
Wesley Liddick
bd17411d0e
Merge pull request #6129 from alfadb/feature/openai-fast-service-tier
...
feat(openai): Fast 档位请求校验、响应透传与按上游实际档位计费
2026-08-24 14:16:47 +08:00
Wesley Liddick
c4ae3550dd
Merge pull request #6119 from feeeei/feat/go1.27.0
...
feat(go1.27.0): 升级 Go 1.27.0,默认启用 jsonv2 ,并同步 CI/Dockerfile
2026-08-24 14:11:03 +08:00