song
1067e89fab
fix(openai): address image route review findings
2026-09-11 16:30:32 +08:00
song
04c45e9dc2
test: remove incompatible upstream image model assertions
2026-09-11 15:57:49 +08:00
song
5ee436d8a2
fix(pricing): set image cache fallback rate
2026-09-11 15:57:49 +08:00
song
e5e04de137
fix: sync upstream config and model tests
2026-09-11 15:57:49 +08:00
song
fa565eafb1
fix(pricing): add image cache pricing field
2026-09-11 15:57:38 +08:00
song
eacff0a629
fix: retain upstream config and image pricing updates
2026-09-11 15:57:38 +08:00
song
c0d5119375
feat(openai): route OAuth image requests through native Codex Images
...
Use shared model routing for image forwarding and account tests, retain Luna orchestration for legacy models, and add Image 2.5 pricing and usage accounting.
2026-09-11 15:57:09 +08:00
刘佳林
22dffa1bb9
fix(opencode): apply De Morgan for staticcheck QF1001
...
golangci-lint failed on the CN/OpenCode billing-candidate guard.
2026-09-11 15:47:23 +08:00
刘佳林
efcc2252e5
fix(opencode): address review on dispatch, billing, session, and 402
...
Skip OpenAI messages-dispatch gpt-5.x defaults for OpenCode groups and
composite OpenCode targets. Filter unpriced claude-* billing candidates,
estimate count_tokens locally, sanitize body session IDs before setting
X-OpenCode-Session, and treat Zen 402 as recoverable payg cooldown.
Stop rewriting the inbound body before protocol routing so account
model_mapping applies once and usage_logs.model stays the client name.
2026-09-11 15:39:13 +08:00
刘佳林
981279c996
fix(opencode): rewrite mapped model onto all three upstream protocols
...
Apply account model_mapping to the request body before OpenCode
protocol routing so /v1/responses, /v1/chat/completions, and
/v1/messages all send the mapped ID as the real upstream model.
2026-09-11 15:07:43 +08:00
chihao.ou
c3b3072a6f
fix(payment): allow periods in EasyPay upstream types
2026-09-11 14:51:34 +08:00
chihao.ou
489968fd7a
fix(config): use GPT-5.5 as the default compact model
2026-09-11 14:50:39 +08:00
刘佳林
7c008bd8c1
fix(opencode): apply account model mapping in connection tests
...
Responses probes used the requested model as-is, so aliases like
opencode/muse-spark-* were sent upstream instead of the mapped ID.
2026-09-11 14:19:23 +08:00
Wesley Liddick
40cf3f50a6
Merge pull request #6968 from ouchihao/codex/issue-6903-deepseek-vision-modality
...
fix(codex): advertise DeepSeek vision image input
2026-09-11 14:01:36 +08:00
Wesley Liddick
75b7dd1e0b
Merge pull request #6969 from ouchihao/codex/issue-5882-peak-rate-validation
...
fix(groups): return bad request for invalid peak-rate settings
2026-09-11 14:01:14 +08:00
Wesley Liddick
642d20b8ac
Merge pull request #6988 from ZeroClover/fix/codex-manifest-display-name
...
fix(openai): keep Codex manifest display names in account model lists
2026-09-11 14:00:42 +08:00
Wesley Liddick
310f8b7fa2
Merge pull request #6964 from xlplbo/fix/apicompat-agent-message-chat-bridge
...
fix(apicompat): chat 桥保留 Codex agent_message 任务正文
2026-09-11 13:59:41 +08:00
Wesley Liddick
6254aba5e9
Merge pull request #6575 from doublepi123/feat/antigravity-gemini-3.8-flash
...
feat(antigravity): support Gemini 3.7 and 3.8 Flash models
2026-09-11 13:58:54 +08:00
Wesley Liddick
7145484fde
Merge pull request #6971 from ouchihao/codex/issue-1890-ttft-request-details
...
fix(ops): show first-token latency in TTFT request details
2026-09-11 13:58:37 +08:00
Wesley Liddick
fd300ab6f3
Merge pull request #6974 from alfadb/fix/deepseek-v41-flash-pricing
...
fix(billing): 适配 DeepSeek V4.1-Flash 新价与 pro→Flash 计费切换
2026-09-11 13:58:23 +08:00
Wesley Liddick
88011a6a2e
Merge pull request #6783 from asmoyou/fix/large-image-request-memory
...
perf(gateway): reduce memory amplification for large Responses image requests
2026-09-11 13:58:11 +08:00
Wesley Liddick
14029e50aa
Merge pull request #6661 from whhphd/fix/grok-media-slot-release
...
fix(grok): release abandoned media slots and preserve video ownership
2026-09-11 13:57:07 +08:00
Wesley Liddick
3fb03cdac1
Merge pull request #6960 from xlplbo/fix/openai-ws-exec-scope-preemption
...
fix(openai-ws): ctx_pool 会话抢占与会话状态按 codex 线程隔离
2026-09-11 13:56:52 +08:00
Wesley Liddick
8f9a9a255b
Merge pull request #6965 from xlplbo/fix/openai-ws-pool-reader-loop
...
fix(openai-ws): 连接池常驻读循环应答上游 ping,根治空闲连接 1011 keepalive ping timeout
2026-09-11 13:56:23 +08:00
xlplbo
4543ddc5c1
fix(openai): WS 执行作用域按 request_kind 分道
2026-09-11 13:37:59 +08:00
matt
5af7e7438a
fix(ci): check deferred sql.DB.Close errors in setup tests
...
PR #6499 merged without CI ever running on its head commit (fork run stayed
action_required), landing three bare `defer db.Close()` calls in
internal/setup/setup_test.go. The repo's errcheck config sets
disable-default-exclusions: true, so those are reported and golangci-lint has
been red on main ever since, failing every subsequent PR run.
Switch them to the codebase's existing convention
`defer func() { _ = db.Close() }()`.
2026-09-11 11:45:59 +08:00
xlplbo
613722eee4
fix(openai): HTTP 转发的执行作用域改从原始请求计算
2026-09-11 11:36:29 +08:00
SavitarC
66a10d4939
fix(setup): handle mock database cleanup errors in tests
2026-09-11 10:31:03 +08:00
xlplbo
d0ca057ca4
fix(openai): WS 会话被抢占时先发关闭帧再取消
2026-09-11 10:25:50 +08:00
xlplbo
e4c369bd56
fix(openai): HTTP 经 WS 池转发按执行作用域取会话状态键
2026-09-11 10:25:50 +08:00
SavitarC
1035a4daf0
feat(ops): support token request stats across all platforms
2026-09-11 10:16:32 +08:00
刘佳林
242907854d
feat(opencode): add OpenCode platform with Zen and GO account types
...
Keep the internal platform ID opencode_go. Product surface is OpenCode
with account_mode zen|go, model-aware routing across Chat Completions,
Responses, and Anthropic Messages, and X-OpenCode-Session derived from
prompt_cache_key / metadata.user_id so prompt cache can hit.
Unmatched models fall back to /v1/chat/completions. Related to #6742 .
2026-09-11 10:05:24 +08:00
Wesley Liddick
f4dd88b001
Merge pull request #6847 from ouchihao/codex/issue-4064-custom-page-button-visibility
...
feat(settings): allow hiding the custom page open button
2026-09-11 09:34:11 +08:00
Wesley Liddick
2493b0dc31
Merge pull request #6924 from smyyyyy2025/fix/codex-user-agent-validation
...
fix: validate Codex User-Agent before identity parsing
2026-09-11 09:33:19 +08:00
Wesley Liddick
264cbbec26
Merge pull request #6499 from soulxyz/fix/setup-database-bootstrap
...
fix(setup): avoid hardcoded postgres connection
2026-09-11 09:32:01 +08:00
Wesley Liddick
87e01596b7
Merge pull request #6850 from reallyfeishi/fix/channel-monitor-utc-buckets
...
fix: anchor channel monitor date_bin buckets to UTC
2026-09-11 09:31:22 +08:00
Wesley Liddick
43f9383d40
Merge pull request #6869 from Garfielk/codex/fix-heartbeat-envelope-fields
...
fix(openai): accept full heartbeat bootstrap envelopes
2026-09-11 09:30:45 +08:00
Wesley Liddick
685e97a3a6
Merge pull request #6904 from m11y/fix-scheduling-threshold-snapshot
...
fix(scheduler): preserve threshold metadata
2026-09-11 09:30:00 +08:00
Wesley Liddick
e71d291b39
Merge pull request #6917 from ouchihao/codex/issue-2149-monitor-base-path
...
fix(monitor): support upstream base URL paths
2026-09-11 09:29:25 +08:00
Wesley Liddick
4adcef4ff4
Merge pull request #6943 from xiuai-labs/fix/keep-client-system-cache-control
...
fix(gateway): 不再剥离客户端 system 上的 cache_control / stop stripping client system cache_control
2026-09-11 09:28:55 +08:00
Zero Clover
6feefb7aec
fix(openai): keep Codex manifest display names in account model lists
2026-09-11 03:18:00 +08:00
feeeei
9d475f9edb
feat(settings): 新增「站点类型」三态开关,关闭订阅后用户端收起所有「订阅」入口与文案
...
后台功能开关页新增「站点类型」单选:充值 & 订阅(默认,即现状)/ 仅充值 / 仅订阅。
它由两个后端开关派生并在保存时同时写回:
- subscription_enabled(新增;默认 true,缺省/空值视为开启,仅显式 false 关闭),按既有
开关模式贯通常量、公共设置、SSR 注入载荷、默认值、更新写入、DTO、审计 diff 与前端注册表;
- payment_balance_disabled(支付配置里既有的 BALANCE_PAYMENT_DISABLED,此前只能走接口/数据库
改),补进公共设置与注入载荷,让用户端在任何鉴权请求之前就能推导站点类型。
两者都关闭是接口层可表达但 UI 不提供的组合,前端归为「仅充值」,后台保存时会把余额充值重新打开。
「仅充值」时的表现:
- 用户侧边栏隐藏「我的订阅」,「充值/订阅」入口收窄为「充值」;管理端侧边栏隐藏「订阅管理」
入口(页面仍可通过地址访问);
- 购买页不再渲染「订阅」tab,只剩单个 tab 时顶部切换器随之隐藏;tab 列表变化时当前 tab
自动收敛到可用项(关闭订阅回到充值、仅订阅站点重新打开订阅进入订阅),列表为空时展示
「充值与订阅均暂未开放」而不是一个必定被后端拒绝的充值表单;
- /purchase 的页头标题/描述与 document.title 改走 resolveRouteMetaKeys 按站点类型切换;
- /subscriptions 路由新增 requiresSubscription 守卫,直达时重定向到仪表盘;
- 顶栏订阅进度徽章不再挂载,App.vue、PaymentView 与徽章组件都不再预加载/轮询订阅接口;
- 用量页隐藏「计费类型(余额/订阅)」筛选,Key 用量公开页「订阅类型」行改为「计费方式」。
「仅订阅」时侧边栏入口与页头显示为「订阅」,购买页只剩订阅 tab(余额下单由后端既有逻辑拒绝)。
购买订阅接口、已有订阅的计费、兑换码发放订阅与管理端订阅管理页面本身均不受影响。
featureFlags 抽出纯函数 resolveFeatureFlag,新增 utils/siteBillingMode 承载三态派生与反解,
PaymentView 测试改用响应式 store mock 覆盖开关双向切换。
2026-09-11 00:50:17 +08:00
alfadb
ab9bd9e877
fix(billing): 适配 DeepSeek V4.1-Flash 新价与 pro→Flash 切换
...
- flash 低谷价更新为 $0.15/$0.60/$0.003 per MTok(2026-09-10 官方降价)
- deepseek-v4-pro 自 2026-09-14 04:00 UTC 起按 Flash 价计费(上游路由变更)
- 计费时点显式驱动 pro→Flash 切换,定价展示与计费两条路径同源
- deepseek-flash 保留 reasoning_effort=max;补 Codex 模型清单与前端白名单
- 价表 JSON 新增 deepseek-flash 条目并同步 flash 系价格
2026-09-10 22:10:29 +08:00
chihao.ou
b112805ffa
test(ops): align query matcher formatting with gofmt
2026-09-10 21:21:08 +08:00
chihao.ou
d3bd614ba7
test(groups): initialize a valid rate multiplier in peak validation case
2026-09-10 21:17:42 +08:00
chihao.ou
e9f5add97c
fix(ops): show first-token latency in TTFT request details
2026-09-10 21:13:17 +08:00
chihao.ou
ab3b398b5f
fix(groups): return bad request for invalid peak-rate settings
2026-09-10 21:05:47 +08:00
chihao.ou
5032d06697
fix(codex): advertise DeepSeek vision image input
2026-09-10 21:04:56 +08:00
xlplbo
bed1e3c362
fix(openai): 重试强制新建连接并放宽轮次预检超时
2026-09-10 20:35:53 +08:00
xlplbo
a5b07b2960
feat(openai): WS 连接池常驻读循环应答上游 ping
2026-09-10 20:35:53 +08:00