IanShaw
d1c6456d08
合并上游最新主分支兼容修复
2026-08-19 23:15:50 -07:00
IanShaw
c374ff2951
完善 OpenAI 网关切换与运维错误语义
2026-08-19 23:13:40 -07:00
IanShaw
acce29af27
补齐 OpenAI 与 Grok 协议兼容处理
2026-08-19 23:13:29 -07:00
Wesley Liddick
752b3d8574
Merge pull request #5881 from X-T-E-R/codex/promote-grok-tool-search-discoveries
...
fix(grok): promote Codex tool-search discoveries into callable tools
2026-08-20 14:00:17 +08:00
Wesley Liddick
fb94fd352b
Merge pull request #5834 from xuhaihan/feat/configurable-proxy-probe-targets
...
feat(proxy): allow configurable probe targets
2026-08-20 13:40:35 +08:00
Nai Long 7th
06fc0055cd
Merge remote-tracking branch 'origin/main' into codex/promote-grok-tool-search-discoveries
2026-08-20 12:37:45 +08:00
Nai Long 7th
9ede0f7165
fix(grok): promote tool-search discoveries into callable tools
2026-08-20 12:37:39 +08:00
Wesley Liddick
1b5dc676a9
Merge pull request #5851 from IanShaw027/feat/channel-pricing-tier-multipliers
...
fix(billing): restore Fast tier pricing under channel overrides, add configurable multipliers
2026-08-20 10:13:17 +08:00
Wesley Liddick
394b12afdc
Merge pull request #5875 from hansnow/fix/admin-platform-filter-options
...
fix(admin): 补全平台筛选选项
2026-08-20 10:07:46 +08:00
hansnow
1f2a87adb0
fix(admin): 补全平台筛选选项
2026-08-20 10:00:09 +08:00
Nai Long 7th
5b2089c5a3
fix(grok): lower Codex tool-search discovery outputs
2026-08-20 06:55:47 +08:00
IanShaw
cf3577a3c5
fix(openai): harden Responses compatibility
2026-08-19 09:03:37 -07:00
IanShaw
d536795e93
测试:同步长上下文计费断言
2026-08-19 06:35:11 -07:00
IanShaw
7dae055f2a
计费:识别并记录 Anthropic Fast 请求
2026-08-19 06:35:11 -07:00
IanShaw
5b2a386ed7
计费:应用渠道倍率与上下文区间价格
2026-08-19 06:35:11 -07:00
IanShaw
fce90ecf89
渠道定价:持久化服务层级与区间倍率
2026-08-19 06:35:11 -07:00
xuhaihan
1ab3256783
fix(proxy): format validated probe targets
2026-08-19 21:31:11 +08:00
xuhaihan
ec5a345935
fix(proxy): validate configurable probe targets
2026-08-19 21:10:08 +08:00
Wesley Liddick
32ecd5cc62
Merge pull request #5847 from wucm667/feat/issue-5826-cn-header-overrides
...
feat(accounts): support header overrides for CN providers
2026-08-19 20:28:36 +08:00
Wesley Liddick
b7fe8ebaad
Merge pull request #5762 from jaxxjj/codex/perf-usage-stats-grouping-sets
...
perf(usage): aggregate admin stats in one scan
2026-08-19 20:27:42 +08:00
xuhaihan
d5484866fa
fix(config): register proxy probe URLs default
2026-08-19 19:52:10 +08:00
Wesley Liddick
23dc9377bc
Merge pull request #5844 from lyen1688/fix/grok-inline-image-view-image
...
fix(grok): 避免内联图片与 view_image 工具冲突
2026-08-19 19:22:08 +08:00
lyen1688
b0cdea303a
补全 Grok 多入口内联图片工具适配
...
raw Chat 绕过 Responses 公共补丁,需按 Chat schema 单独移除当前轮内联图片对应的冗余 view_image;同时补充 Chat、raw Chat 与 Messages 真实出站回归测试。
2026-08-19 19:04:53 +08:00
wucm667
1b30a2d747
feat(accounts): support header overrides for CN providers
2026-08-19 19:03:39 +08:00
Vincent Cui and Kinso
82cbe6aff7
fix(openai): resume later websocket turns after 429
...
Port the safe current-turn replay from #4622 onto current main.
Co-authored-by: Kinso <kinsolee@users.noreply.github.com >
2026-08-19 18:51:21 +08:00
lyen1688
99a8b84701
修复 Grok 内联图片与 view_image 冲突
2026-08-19 18:36:53 +08:00
hank
b0464a9863
feat(proxy): allow configurable probe targets
2026-08-19 16:47:50 +08:00
Wesley Liddick
ae62854abc
Merge pull request #5815 from 771373073/fix/grok46-xhigh
...
fix(grok): preserve xhigh effort for grok-4.6
2026-08-19 16:42:52 +08:00
Wesley Liddick
89d28037f2
Merge pull request #5822 from hansnow/fix/ws-http-bridge-followup-client-tools
...
fix(openai): 修复 WS HTTP bridge 多轮客户端工具回放
2026-08-19 16:42:28 +08:00
Wesley Liddick
e8b53c9195
Merge pull request #5801 from MokoYee/fix/openai-chat-buffered-stream-failover
...
fix(openai): 修复 Chat 非流式缓冲读取错误未触发故障转移
2026-08-19 16:41:33 +08:00
hansnow
fefd0d5145
test(apicompat): avoid unchecked tool history assertions
2026-08-19 15:31:18 +08:00
hansnow
e4896c41d2
test(apicompat): satisfy client tool type assertions
2026-08-19 15:26:19 +08:00
shaw
499a8ee423
fix(composite): exempt resolved grok/CN targets from messages dispatch gate
...
sanitizeGroupMessagesDispatchFields forces AllowMessagesDispatch=false for
every non-openai platform including composite, and the gate checked only the
group platform — so composite requests resolved to grok/CN targets were
rejected 403 on /v1/messages and /v1/messages/count_tokens before reaching
the composite target whitelist, leaving the CN rollout unusable for
Claude-protocol clients.
- allowOpenAICompatibleMessagesDispatch: composite groups resolved to a
grok/CN target get the same exemption as the standalone platforms;
openai-resolved and unresolved targets keep requiring the switch
- resolveOpenAIMessagesDispatchMappedModel: skip the group-level dispatch
model mapping (openai-specific gpt defaults) for composite grok/CN
targets — model rewriting stays with account-level model_mapping
2026-08-19 15:24:26 +08:00
hansnow
b94e484e23
fix(openai): preserve client tools across WS bridge turns
2026-08-19 15:19:33 +08:00
shaw
aa673062e2
fix(composite): keep CN rollout on fully supported paths
...
- Responses WebSocket composite whitelist stays openai+grok: CN accounts
cannot pass the WSv2 ingress transport filter and the WS HTTP bridge
has no Responses conversion for them, so admitting CN targets only
turns a clear policy rejection into a misleading no-available-account
- widen the responses/input_tokens and messages/count_tokens composite
gates to the shared openai-compatible text whitelist so CN targets get
the same local-estimate token counting as generation
- restore the Claude default-model fallback for standalone CN groups
(admin candidates and custom models list) while keeping composite
listings limited to CN account mapping keys
- refresh the scheduler bulk-rebuild comment and bucket capacity hints
for the 8-platform canonical set
2026-08-19 14:58:32 +08:00
shaw
bd1ccd9736
Merge remote-tracking branch 'origin/main' into fix/issue-5796-composite-new-platforms
2026-08-19 14:47:34 +08:00
Wesley Liddick
7d9c958482
Merge pull request #5810 from Pluviobyte/codex/fix-responses-input-tokens
...
fix(codex): handle Responses input token preflight
2026-08-19 14:43:33 +08:00
Wesley Liddick
2a5ae2b2dc
Merge pull request #5816 from kingsleydon/fix/composite-codex-support
...
feat(composite): support Codex endpoints
2026-08-19 14:19:26 +08:00
wucm667
4d3b300a25
test(scheduler): update CN platform expectations
2026-08-19 14:05:52 +08:00
Wesley Liddick
e943f817b1
Merge pull request #5729 from lbyxiaolizi/fix/responses-chat-reasoning-content-passback
...
fix(openai-compat): Responses→Chat 桥接按 reasoning item id 缓存回注 reasoning_content (#5520 )
2026-08-19 14:03:03 +08:00
wucm667
b171bb0e4a
fix(composite): support CN providers
...
Extend composite routing, pricing, migrations, and admin options for Kimi, GLM, and DeepSeek.
2026-08-19 13:01:25 +08:00
Kingsley
58e147fba6
feat(composite): support Codex endpoints
2026-08-19 04:40:32 +00:00
boooot
892787723f
fix(grok): preserve xhigh effort for grok-4.6
2026-08-19 03:38:11 +00:00
Rain
bfac49fef9
fix(codex): handle responses input token preflight
2026-08-19 11:34:18 +08:00
Wesley Liddick
e61595fb35
Merge pull request #5780 from Randark-JMT/fix/channel-monitor-p2
...
fix(monitor): P2 audit follow-ups — credential/balance semantics, capability checks, single account load, quota placeholder UI
2026-08-19 11:21:35 +08:00
Wesley Liddick
c6f4fbde49
Merge pull request #5676 from Perfecto23/agent/openai-capacity-failover
...
fix(openai): recover message-only capacity failures before output
2026-08-19 11:11:23 +08:00
MokoYee
b228b93e9c
fix(openai): 修复 Chat 非流式缓冲读取错误未触发故障转移
2026-08-19 10:41:47 +08:00
Wesley Liddick
359fd12b2e
Merge pull request #5749 from Randark-JMT/chore/remove-sora-leftovers
...
chore: remove leftover Sora references after platform removal
2026-08-19 09:41:25 +08:00
UnlastingR
ac6208de16
fix(accounts): route CN provider chat tests correctly
2026-08-18 08:46:28 -04:00
Randark
e2dfb3b8cb
refactor(monitor): pass loaded account through quota sources (single load per fetch)
...
配额 fetcher 缓存未命中时账号被加载两次:fetchUncached GetByID 一次,
下游数据源(GetUsage / CN QueryUsage / CN QueryBalance)按 ID 再各自
GetByID 一次——每次 GetByID 含 proxies/groups 联查,纯属重复劳动。
统一改为「路由前加载一次、指针直传」:
- fetcher 三个数据源接口签名改收 *Account:
GetUsageForAccount / QueryUsageForAccount / QueryBalanceForAccount
- AccountUsageService 暴露 GetUsageForAccount 直通(getUsageForAccount
既有逻辑零改动)
- CN 两侧服务抽 validateCodingPlanAccount / validatePayGAccount
(加载后校验原样),新 ForAccount 入口 = NOT_CONFIGURED 守卫 → 校验 →
singleflight → 探测;ID 入口 = load + 委托,语义不变
- singleflight key 保持 "cn_quota:<id>" / "cn_balance:<id>":ForAccount
与 admin handler 的 ID 入口并发探测仍按账号合并
- cn_provider_balance_check_service.checkOne 刻意留在 ID 入口:调度器
路径按 ID 取的是最新凭据,不复用可能已过期的已加载账号
校验移到 flight 之外且 ForAccount 复用同一套校验,直传无法绕过
平台/模式检查;专项测试固化(无效账号零出站请求、单次加载指针直传
require.Same)。
2026-08-18 10:28:28 +00:00