github-actions[bot]
0b8e5eec32
chore: sync VERSION to 0.1.143 [skip ci]
2026-07-02 11:48:20 +00:00
Wesley Liddick
9caa3c9c5e
Merge pull request #3635 from JRBaggins/hotfix/openai-oauth-count-tokens-latest
...
fix: handle OpenAI OAuth count_tokens scope errors
v0.1.143
2026-07-02 17:41:43 +08:00
Wesley Liddick
3020652fa1
Merge pull request #3565 from zy6p/zy6p/pr-openai-ws-http-bridge
...
feat(openai-ws): 支持 http_bridge ingress 模式
2026-07-02 17:40:32 +08:00
Wesley Liddick
537bd50469
Merge pull request #3638 from infinityf4p/show-reset-credit-expiration
...
feat(openai): show reset credit expiration
2026-07-02 17:39:17 +08:00
Wesley Liddick
6bc6998b0e
Merge pull request #3627 from alfadb/fix/ollama-anthropic-bearer-auth
...
fix(anthropic): 支持 API Key Bearer 认证方式
2026-07-02 17:37:30 +08:00
Wesley Liddick
4e23c77ece
Merge pull request #3626 from DanisJiang/fix/claude-code-stream-keepalive
...
fix: prevent Claude Code stream keepalive stalls
2026-07-02 17:35:48 +08:00
Wesley Liddick
821399ade1
Merge pull request #3622 from deqiying/feat/subscription-revoke-restore
...
支持恢复已撤销订阅
2026-07-02 17:34:20 +08:00
Wesley Liddick
441b8ec2e2
Merge pull request #3614 from heathermhuang/codex/grok-media-group-gate-fix
...
fix: enable Grok media generation groups
2026-07-02 17:34:09 +08:00
Wesley Liddick
fafdd8342f
Merge pull request #3641 from infinityf4p/fix/openai-plan-type-workspace
...
fix(openai): avoid inactive workspace plan type overrides
2026-07-02 17:33:59 +08:00
Wesley Liddick
50dff6762c
Merge pull request #3630 from seng1e/fix/codex-image-bridge-skip-compact
...
fix(openai): skip Codex image bridge injections for /responses/compact
2026-07-02 17:32:43 +08:00
Wesley Liddick
e63492090a
Merge pull request #3609 from phoenixikkifullstack/fix/antigravity-gemini-3.1-pro-high
...
fix: Handle invalid arguments correctly for Gemini reasoning models
2026-07-02 17:32:32 +08:00
Wesley Liddick
51b5142af7
Merge pull request #3612 from StarryKira/codex/fix-user-model-stats-requested-model
...
[codex] fix user model stats requested aggregation
2026-07-02 17:32:19 +08:00
Wesley Liddick
634b0eee48
Merge pull request #3430 from chaochaoweb3/codex/remove-claude-oauth-expires-in
...
fix: omit expires_in from Claude OAuth token exchange
2026-07-02 17:32:09 +08:00
Wesley Liddick
fd66ae1ecb
Merge pull request #3642 from infinityf4p/fix/openai-subscription-expiry-save
...
fix(openai): persist subscription expiration from OAuth
2026-07-02 17:31:58 +08:00
Wesley Liddick
a32196eedd
Merge pull request #3615 from DaydreamCoding/feat/usage-ip-geolocation
...
feat(usage): add IP geolocation lookup to usage tables
2026-07-02 16:42:06 +08:00
Wesley Liddick
3302146759
Merge pull request #3643 from bestony/feat/admin-group-column-settings
...
feat(admin): add group column settings
2026-07-02 16:40:59 +08:00
shaw
41af8e8e11
chore: update sponsors
2026-07-02 16:29:34 +08:00
shaw
11a3da65c0
fix(group): harden peak-rate config handling and label peak windows with server timezone
...
Follow-up fixes to #3569 based on code audit:
- Expose server_timezone / server_utc_offset in public settings (and the
__APP_CONFIG__ injection payload) and label every peak-window display
with the server UTC offset, so users don't misread the billing window
as browser-local time
- Unify CreateGroup/UpdateGroup peak-config sanitization via a single
NormalizePeakRateConfig chokepoint: non-subscription groups always get
peak fields cleared; unparseable window strings and negative
multipliers are scrubbed when peak is disabled
- Replace hot-path time.Parse in PeakMultiplierAt with a manual HH:MM
parser (accept set verified byte-for-byte identical to
time.Parse("15:04") by exhaustive fuzzing) and reuse it in validation
- Revert the zero-behavior CalculateCost indirection churn in
billing_service/gateway_service introduced by #3569
- Remove dead GetGroupPlatformMap and the duplicate deref helper in the
admin handler package
- Share frontend peak formatting via utils/peak-rate.ts, unify the ×N
label format, and move hardcoded Chinese tooltips to i18n keys
2026-07-02 16:11:07 +08:00
Heatherm Huang
99a8d8ad28
fix: normalize grok imagine image alias
2026-07-02 15:04:40 +08:00
Bestony@Homelab
5436d0bf10
feat(admin): add group column settings
2026-07-02 15:04:36 +08:00
Wesley Liddick
a632cb0050
Merge pull request #3569 from xueshiji/main
...
feat(group): 订阅分组新增可选的高峰时段倍率,以支持智谱等coding plan的高峰时段
2026-07-02 14:55:34 +08:00
infinityf4p
df59b8b966
fix: persist OpenAI subscription expiration
2026-07-02 14:38:08 +08:00
infinityf4p
d0b8760eb9
fix: preserve OpenAI plan type from inactive workspaces
2026-07-02 14:37:30 +08:00
zy6p
5fe4ee1da1
style(test): gofmt oauth passthrough tests
2026-07-02 14:33:55 +08:00
infinityf4p
dfb36e45f1
show reset credit expiration
2026-07-02 13:27:58 +08:00
JRBaggins
c4128580f2
fix: handle OpenAI OAuth count_tokens scope errors
2026-07-02 11:42:10 +08:00
seng1e
c797159bf5
fix(openai): skip Codex image bridge injections for /responses/compact
...
The Codex image_generation bridge block in Forward injects
tools:[image_generation] and tool_choice:"auto" (since #3498 ) into every
Codex request, including /responses/compact. The upstream compact endpoint
rejects tool_choice with 400 "Unknown parameter: 'tool_choice'", so every
remote compaction fails once the bridge is enabled. Guard the whole image
generation block with !isCompactRequest.
Fixes #3629
2026-07-02 11:09:50 +08:00
alfadb
7869b7fe38
fix(anthropic): 支持 API Key Bearer 认证方式
2026-07-02 10:43:08 +08:00
Yuhao Jiang
a5781fe31d
fix Claude Code stream keepalive stalls
2026-07-01 21:01:11 -05:00
deqiying
b26dcc3da2
feat(subscription): 支持恢复已撤销订阅
2026-07-01 22:19:21 +08:00
DaydreamCoding
0ff93aca7a
feat: add usage IP geolocation lookup
2026-07-01 21:49:49 +08:00
Heatherm Huang
9934bd2572
fix: default grok group media generation
2026-07-01 20:55:53 +08:00
Heatherm Huang
0435417f43
fix: enable grok media generation groups
2026-07-01 20:31:32 +08:00
github-actions[bot]
7dc7cfce1d
chore: sync VERSION to 0.1.142 [skip ci]
2026-07-01 11:06:15 +00:00
shaw
98be187d56
chore: update sponsors
2026-07-01 19:04:40 +08:00
Haruka
e236bff1ed
fix: aggregate user model stats by requested model
2026-07-01 19:01:30 +08:00
phoenix
45be32b254
fix: remove space lines
2026-07-01 18:51:33 +08:00
shaw
60da9ba178
fix(frontend): refine grok icon, palette and i18n
v0.1.142
2026-07-01 18:49:33 +08:00
xueshiji
be26e6ff2c
fix: test
2026-07-01 18:09:20 +08:00
phoenix
f5b2961270
fix: Handle invalid arguments correctly for Gemini reasoning models
2026-07-01 18:08:25 +08:00
xueshiji
a0eaf12a01
fix: test
2026-07-01 17:54:39 +08:00
Wesley Liddick
5eb9da9c93
Merge pull request #3593 from heathermhuang/codex/grok-media-routing
...
fix: route Grok media endpoints
2026-07-01 17:49:27 +08:00
xueshiji
5e99561d6e
Merge branch 'Wei-Shaw:main' into main
2026-07-01 17:48:42 +08:00
xueshiji
1034f576d7
fix: 高峰倍率全链路透传、计费术语修正与边界处理
...
- 高峰倍率信息透传至可用渠道、支付计划、结算信息等 API,前端
GroupBadge / GroupOptionItem / SubscriptionPlanCard / PaymentView /
SubscriptionsView 统一展示高峰时段与倍率标签
- 修正计费术语:"文本倍率" → "token 倍率",明确高峰倍率同时作用于
token 计费的图片 token,图片按次计费不受高峰影响
- 允许高峰倍率 multiplier=0,支持高峰时段免费策略
- 切换分组类型为 standard 时自动清除高峰倍率配置
- 长上下文计费与标准计费路径改用内部实现,移除冗余中间调用
- 前端高峰倍率相关控件文案改为 i18n
- 新增多组高峰倍率相关单元测试
2026-07-01 17:46:12 +08:00
zy6p
71c16b7230
fix(test): correct passthrough failover assertions
2026-07-01 17:20:55 +08:00
Heatherm Huang
aac3261c69
fix: convert grok image edit uploads
2026-07-01 16:31:33 +08:00
Heatherm Huang
f77cf6b477
Revert "feat: add LLM media tester"
...
This reverts commit a34d4967e6 .
2026-07-01 16:08:21 +08:00
shaw
8c2d9b9a12
chore(openai): remove gpt-5.3-codex from OpenAI default model list
...
移除 OpenAI OAuth 账号默认模型列表中的 gpt-5.3-codex(后端 DefaultModels、前端 openai 白名单及 UseKeyModal 目录),保留 gpt-5.3-codex-spark 与计费/别名/messages-dispatch 相关逻辑不变。
2026-07-01 15:54:34 +08:00
Heatherm Huang
c9fb221a31
fix: satisfy grok media lint
2026-07-01 15:42:00 +08:00
Wesley Liddick
0a9146c3d1
Merge pull request #3586 from deqiying/codex/fix-subscription-revoke-soft-delete
...
修复订阅撤销操作实际上是软删除的bug
2026-07-01 15:38:45 +08:00