Wesley Liddick
2061508ad8
Merge pull request #7072 from Brisbanehuang/codex/fix-scheduler-metrics
...
fix(scheduler): 修复选号耗时返回值和粘性命中率重复计数
2026-09-15 08:58:58 +08:00
Wesley Liddick
fb90414c05
Merge pull request #7126 from xO-ox-ai/codex/fix-responses-lite-namespace
...
fix(openai): 保留 Responses Lite namespace 工具调用
2026-09-15 08:58:25 +08:00
Wesley Liddick
9fade3e8c2
Merge pull request #6769 from alfadb/feature/ollama-rate-limit-reset
...
feat(ollama): 根据用量窗口异步更新限流恢复时间
2026-09-15 08:57:43 +08:00
Wesley Liddick
1920a7d687
Merge pull request #7091 from SavitarC/feat/subscription-bulk-actions
...
feat: 支持订阅管理批量操作
2026-09-15 08:57:27 +08:00
Wesley Liddick
150c52b8de
Merge pull request #6689 from tunsuy/fix/antigravity-codex-web-search-mixed-tools
...
fix(antigravity): drop mixed web_search when client tools present
2026-09-15 08:54:40 +08:00
Wesley Liddick
3e4b6a09b2
Merge pull request #6925 from reed-yang/fix/recover-responses-text
...
fix(apicompat): recover Responses text from done and terminal events
2026-09-15 08:54:21 +08:00
Wesley Liddick
dd2e6b3680
Merge pull request #7076 from Shen-An/fix/antigravity-refresh-warning
...
fix(admin): surface partial Antigravity refresh warnings
2026-09-15 08:54:06 +08:00
Wesley Liddick
d4439129a7
Merge pull request #7094 from liuyuzhou666/fix/responses-chat-developer-role-mapping
...
fix(apicompat): 修复 Responses 降级 Chat Completions 时的 system 消息顺序问题
2026-09-15 08:53:50 +08:00
Wesley Liddick
1e1d15cca5
Merge pull request #7082 from ggllzz04/fix/antigravity-token-cache-isolation
...
fix(antigravity): isolate OAuth token cache key by account ID to prevent 429 collision
2026-09-15 08:53:32 +08:00
Wesley Liddick
f7e959ae5f
Merge pull request #7111 from ouchihao/codex/bug-proxy-clear-credentials
...
fix(proxy): allow explicitly clearing stored credentials
2026-09-15 08:52:58 +08:00
Wesley Liddick
008391f699
Merge pull request #7085 from r266-tech/codex/sub2api-f352188cb784
...
fix(openai): strip internal metadata from OAuth input items
2026-09-15 08:52:30 +08:00
xO-ox-ai
13c1d4cde2
test(openai): 覆盖 Lite 命名空间工具回传
2026-09-14 11:46:41 +08:00
xO-ox-ai
4bd7132ba9
fix(openai): 保留 Responses Lite namespace 调用
2026-09-14 11:35:03 +08:00
chihao.ou
28a4ea914d
fix(proxy): allow explicitly clearing stored credentials
2026-09-13 17:23:24 +08:00
liuyuzhou666
52558381c6
fix(apicompat): merge leading system messages and downgrade mid-conversation system from Responses bridge
...
The Responses to Chat Completions bridge mapped both the instructions field and role developer items to system messages. Codex always sends both, and also injects developer notices mid-conversation when switching models, so the forwarded request contained consecutive leading system messages and mid-conversation system messages. Strict Qwen-family upstreams reject this with HTTP 400 "System message must be at the beginning."
Leading system/developer messages are now merged into a single leading system message, and later system/developer messages are downgraded to user so the content is preserved without violating upstream role ordering.
2026-09-13 14:08:57 +08:00
SavitarC
e3cce574d7
fix: serialize subscription extensions
2026-09-13 12:33:35 +08:00
SavitarC
3d6c207723
feat: 支持订阅管理批量操作
2026-09-13 11:49:03 +08:00
alfadb
a1d5968b24
feat(ollama): async rate-limit reset for Ollama Cloud usage windows
...
Real Ollama Cloud 429s are driven by ollama.com usage windows, not by
response headers that OpenAI/Anthropic/CN rate-limit parsing understands.
Handle them separately: apply a never-shortening temporary cooldown first,
then schedule an async probe that learns the true usage-window reset point
with a controlled, coalesced per-api_key refresh.
- ratelimit_service: route real Ollama Cloud usage accounts to a dedicated
429 path before the CN-provider branch.
- ollama_cloud_usage: add a background probe coordinator (started in Start,
waited by Stop) that fans out model-429 probes to one controlled refresh
per api_key group, reusing the recent group snapshot for coalesced members.
- repository/account_repo: add SetRateLimitedIfUnchanged, a write-back CAS
counterpart to ClearRateLimitIfObserved, so an async reset never overwrites
a newer 429, an admin clear, a re-armed generation, or a key/state change
observed by another writer between read and write.
- wire: inject OllamaCloudUsageService into RateLimitService.
Tests: unit tests for service and repository pass; targeted race tests pass;
build and vet clean; git diff --check clean. The CAS integration test compiles
but is not run (no Docker available).
2026-09-13 10:41:47 +08:00
r266-tech
e5272c130c
test(openai): check input type before metadata assertion
2026-09-13 07:13:31 +08:00
r266-tech
196c15b5cd
fix(openai): strip internal metadata from OAuth input items
2026-09-13 07:00:50 +08:00
郭兰鑫
62635532a6
fix(antigravity): explicitly invalidate legacy project-based token cache
2026-09-13 03:45:12 +08:00
郭兰鑫
bc8da78150
fix(antigravity): isolate OAuth token cache key by account ID to prevent collision
2026-09-13 03:40:47 +08:00
Brisbanehuang
d2c2b46c9e
fix(batch-image): 修正批量生图账号优先级排序方向
...
按较小 priority 优先选择账号,保留同优先级 ID 排序及现有资格过滤。补充选择回归,并将定价夹具对齐实际选中的账号,不改变计费公式。
2026-09-12 09:06:33 -04:00
Brisbanehuang
7e152e4279
fix(scheduler): 修复选号耗时返回值和粘性命中率重复计数
...
使用命名返回值传回 defer 中记录的选号耗时;按每次选号累计任意粘性命中,保留两类独立计数。增加成功、失败及双粘性回归,不改变调度策略。
2026-09-12 09:03:52 -04:00
Wesley Liddick
bdb42e22f8
Merge pull request #7064 from xlplbo/codex/openai-ws-v2-pool-capacity
...
fix(openai-ws): 对齐新版 ctx_pool 连接容量计算
2026-09-12 20:13:03 +08:00
Wesley Liddick
9383e0b154
Merge pull request #7057 from Sjeary/codex/issue-7042-max-context-window
...
fix(codex): 保留本地模型目录的最大上下文窗口
2026-09-12 20:11:40 +08:00
Wesley Liddick
c7ed614240
Merge pull request #7001 from SavitarC/feat/ops-token-stats-all-platforms
...
feat(ops): 扩展 Token 请求统计至所有平台
2026-09-12 19:34:45 +08:00
Wesley Liddick
a59f0c7fac
Merge pull request #5833 from xuhaihan/fix/openai-fast-missing-tier
...
fix(openai): force priority when fast tier is omitted
2026-09-12 19:31:21 +08:00
Wesley Liddick
3a070ec1bf
Merge pull request #7010 from xpflying/fix/openai-privacy-client-cf-challenge
...
fix(openai): 隐私/账号检查客户端改用 Firefox 指纹,规避 chatgpt.com Cloudflare 质询
2026-09-12 19:28:09 +08:00
Wesley Liddick
749cd7c354
Merge pull request #7062 from wc4440222/fix/channel-monitor-minimax-provider
...
fix(channel-monitor): add missing minimax to provider allowlists
2026-09-12 19:27:46 +08:00
Wesley Liddick
eaa4083e23
Merge pull request #6995 from alfadb/fix/claude-mid-conversation-output-config
...
fix(claude): 修复对话中 output_config 的 beta 兼容问题
2026-09-12 19:27:21 +08:00
Wesley Liddick
3873215908
Merge pull request #7049 from xlplbo/perf/openai-ws-pool-queue-wake
...
perf(openai): WS 连接池排队等待者按账号池变更重选连接
2026-09-12 19:26:56 +08:00
Wesley Liddick
2a4f3d1a71
Merge pull request #7043 from xlplbo/fix/openai-ws-max-conns-factor-default
...
fix(openai-ws): ctx_pool 每账号连接上限系数默认值改为 5.0
2026-09-12 19:26:26 +08:00
Wesley Liddick
f78c4b241e
Merge pull request #7011 from ouchihao/codex/issue-7003-compact-default-model
...
fix(config): use GPT-5.5 as the default compact model
2026-09-12 19:25:43 +08:00
Wesley Liddick
e67ffda7ae
Merge pull request #7012 from ouchihao/codex/issue-6982-easypay-upstream-type-dots
...
fix(payment): allow periods in EasyPay upstream types
2026-09-12 19:24:48 +08:00
Wesley Liddick
ba57ea914b
Merge pull request #7052 from ouchihao/codex/issue-2912-transient-auth-failures
...
fix(auth): preserve sessions during temporary service failures
2026-09-12 19:23:12 +08:00
Wesley Liddick
5948988aae
Merge pull request #7022 from ouchihao/codex/issue-3623-accept-encoding-header
...
fix(gateway): avoid duplicate Accept-Encoding headers
2026-09-12 19:22:44 +08:00
xlplbo
956f4672e4
fix(openai-ws): 对齐 OpenAI 新版上下文池容量计算
2026-09-12 16:13:16 +08:00
Wesley Liddick
6206ce940e
Merge pull request #6929 from feeeei/fix/gemini-inband-response-signals
...
fix(gemini): 原生路径登记 2xx 响应里的带内错误信号
2026-09-12 16:08:26 +08:00
Zichen Wang
5968fd0ed9
fix(channel-monitor): add missing minimax to provider allowlists
...
Fixes #7061
monitorProviders and probeCapableProviders were missing
MonitorProviderMiniMax even though the constant, adapter, ent schema and
error message all already included minimax, so provider=minimax was
rejected by validateProvider.
2026-09-12 15:30:43 +08:00
Shen-An and Claude Sonnet 5
c6727ed4c9
fix(admin): surface partial Antigravity refresh warnings
...
Return the updated account alongside partial refresh warnings so the admin UI can keep its state current and tell operators when project ID retrieval must retry.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-09-12 15:19:19 +08:00
chihao.ou
781a02aea7
fix(auth): preserve sessions during temporary service failures
2026-09-12 13:41:16 +08:00
xlplbo
7cf90c79d6
perf(openai): WS 连接池排队等待者按账号池变更重选连接
2026-09-12 13:01:43 +08:00
Sjeary
195a331322
fix(codex): preserve maximum context window in model catalogs
2026-09-11 21:56:25 -07:00
xlplbo
29371b0819
fix(openai-ws): ctx_pool 每账号连接上限系数默认值改为 5.0
2026-09-12 11:39:05 +08:00
xuhaihan (cc)
8e7954438d
fix(openai): force priority when service tier is omitted
2026-09-11 21:16:12 +08:00
chihao.ou
213de0797e
fix(gateway): avoid duplicate Accept-Encoding headers
2026-09-11 19:19:40 +08:00
alfadb
d8326fccfc
fix(claude): preserve mid-conversation output config beta
2026-09-11 18:44:41 +08:00
xpflying and Claude Fable 5.1
9eb120dd40
fix(openai): 隐私/账号检查客户端改用 Firefox 指纹,规避 chatgpt.com Cloudflare 质询
...
chatgpt.com 的 Cloudflare 会对 req 内置的 ImpersonateChrome(TLS/HTTP2 指纹与 UA 均为
Chrome/120)返回 403 cf-mitigated=challenge,导致 accounts/check、subscriptions、
account_user_setting 三个 backend-api 调用长期失败:订阅到期时间不再更新、隐私开关显示 Fail。
仅改 UA 版本号无效(指纹仍是 120),Firefox 伪装在同一出口下稳定通过,故切换。
同时:
- 用 cf-mitigated 响应头识别质询页,隐私设置失败时正确标记为 training_set_cf_blocked
- accounts/check / subscriptions 失败日志由 Debug 提升为 Warn 并附 cf_challenge 字段,不再静默
Closes #4825
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-11 18:10:15 +08:00
Wesley Liddick
4726bdd08b
Merge pull request #6890 from slovx2/feat/openai-images-75be
...
feat(openai): route OAuth image requests through native Codex Images
2026-09-11 17:29:54 +08:00