Wesley Liddick
|
dfa83fbe93
|
Merge pull request #6986 from feeeei/feat/site-billing-mode
feat(settings): 新增「站点类型」开关(充值 & 订阅 / 仅充值 / 仅订阅)
|
2026-09-11 16:34:46 +08:00 |
|
Wesley Liddick
|
2dff7af0f9
|
Merge pull request #6954 from feeeei/fix/quota
fix(quota): 修复仪表盘默认会给所有人分配显示所有平台卡片的问题
|
2026-09-11 16:34:18 +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
|
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 |
|
xlplbo
|
613722eee4
|
fix(openai): HTTP 转发的执行作用域改从原始请求计算
|
2026-09-11 11:36:29 +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 |
|
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
|
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 |
|
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
|
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 |
|
xlplbo
|
cd1ee1d1ad
|
fix(openai): WS 接入会话状态改用执行作用域键
|
2026-09-10 17:50:24 +08:00 |
|
xlplbo
|
9e7c2d713c
|
fix(openai): WS 会话抢占改用执行作用域键
|
2026-09-10 17:50:24 +08:00 |
|
xlplbo
|
06b61ba96f
|
feat(openai): 解析 codex 线程标识派生 WS 执行作用域
|
2026-09-10 17:50:23 +08:00 |
|
feeeei
|
4a4b50d807
|
fix(quota): 平台限额表只保存已配置限额的记录,仪表盘按用量与限额展示平台
user_platform_quotas 只保存至少配置了一档限额的记录;不存在的行等价于不限额。
- 注册播种只为配置了限额的平台建行,一个都没有时不写入
- IncrementUsageWithReset 无行时不再 fail-open 建行
- BatchSnapshotUsage 改为只更新既有活跃行,不再插入无限额的新行
- 仓储 BulkInsertInitial/UpsertForUser 把三档全空的记录视为未配置;
管理员全量替换接口同样剔除,清空限额即软删并放弃累计用量
- 迁移 238 删除三档全 NULL 的历史行
- 用户仪表盘平台卡片 = 有用量的平台 ∪ 配置了限额的平台,计数改为卡片数
- 管理员限额弹窗对未保存限额的平台禁用"重置窗口"
|
2026-09-10 16:41:58 +08:00 |
|
nekocode
|
a4edda36d5
|
fix(gateway): 不再剥离客户端 system 上的 cache_control
OAuth mimic 路径无条件删除 system[*].cache_control,不打日志也不报错。
把稳定前缀锚在 system 上的客户端因此拿到 cache_creation 与 cache_read
双 0 —— 不是没命中,是连写都没写。
这个动作是 46e5ac9 引进时「system 必然被整个重写」的配套:客户端的
system 内容都搬进 messages 了,残留断点指着空气,删它是对的。后来
system 注入变成可配置,于是长出了原设计里不存在的组合 —— system 没被
重写,断点照删。剥离失去了赖以成立的前提,代码却还在。
三处调用点里 count_tokens 那处还是硬编码 true,与另两处的
!systemRewritten 语义不一致。
直接移除该选项而不是再加一个开关:注入开启时 system 已被整个替换、
留在上面的断点是我们自己拼进去的稳定锚点;注入关闭时断点就是客户端的
缓存意图。两种情形都没有删它的理由,而需要开关的是有取舍的行为。
顺带补上 count_tokens 的 4 块上限兜底:五条出口里只有它没在自己的转发
路径上调过 enforceCacheControlLimit,原先那句 strip 是这条路上唯一压制
断点数量的东西。拿掉之后「客户端 system + 客户端 messages + 刚注入的
tools[-1]」实测顶到 5 块,而上游对超限是 400。
messages 层的同类改写见 #2369,那次只落地了 messages 一半。
此前该行为零测试覆盖(stripSystemCacheControl 在 _test.go 里零命中),
本次补 4 个用例,其中上限兜底那条撤掉修复即红。
Claude-Session: https://claude.ai/code/session_01WnTW52pmELGy3g7KPEUXj2
|
2026-09-10 15:48:17 +08:00 |
|
smyyyyy
|
4e5632c3e3
|
fix: validate Codex User-Agent before identity parsing
|
2026-09-10 03:18:31 +08:00 |
|
chihao.ou
|
21323c31f8
|
fix(monitor): support upstream base URL paths
|
2026-09-09 20:02:25 +08:00 |
|
hansnow
|
7ccc8a6f50
|
fix(openai): 支持 Image 2.5 并修复 OAuth 生图主控模型
|
2026-09-09 11:04:59 +08:00 |
|
lcy
|
29a36a10be
|
Merge upstream/main into feat/antigravity-gemini-3.8-flash
Resolve comment-wording conflict in normalizeGeminiThinkingTierAlias by
keeping upstream's phrasing. Function body and behavior are unchanged.
|
2026-09-09 01:49:32 +08:00 |
|
Wesley Liddick
|
d9efbf8229
|
Merge pull request #6839 from mason0510/fix/grok-external-web-access
fix(grok): 移除 Chat Completions 中不支持的 external_web_access 参数
|
2026-09-08 20:47:25 +08:00 |
|
Wesley Liddick
|
233f3dffe6
|
Merge pull request #6281 from wuji-labs/feat/http2-long-stream-keepalive
feat(upstream): add HTTP/2 PING keepalive for long LLM generation streams
|
2026-09-08 20:47:07 +08:00 |
|
Wesley Liddick
|
6f0d0ababc
|
Merge pull request #6320 from spongehah/fix/runtime-block-honor-persisted-cooldown
fix(schedule): 选号按持久化冷却条件清除本机账号级阻断
|
2026-09-08 20:46:07 +08:00 |
|
Wesley Liddick
|
52f7bcaedd
|
Merge pull request #6759 from ssharkkky/feat/cmv2-user-ranking-toggle
feat(channel-monitor-v2): add user ranking toggle and keep missing TTFT neutral
|
2026-09-08 20:44:07 +08:00 |
|
Wesley Liddick
|
95acbf1f03
|
Merge pull request #6424 from cyhhao/fix/bound-ops-system-log-storage
fix(ops): bound database-backed system log growth
|
2026-09-08 20:43:54 +08:00 |
|
Wesley Liddick
|
43569bb44c
|
Merge pull request #6434 from swjturay/codex/upstream-client-disconnect-drain
fix(openai-ws): drain upstream after client disconnect
|
2026-09-08 20:42:59 +08:00 |
|
Wesley Liddick
|
15557e7796
|
Merge pull request #6235 from StarryKira/codex/fix-6232-channel-cache-invalidation
fix: broadcast channel cache invalidations across instances
|
2026-09-08 20:42:45 +08:00 |
|
Wesley Liddick
|
e2fd418a96
|
Merge pull request #6372 from clansty/fix/openai-oauth-429-fallback-disabled
fix: 修复关闭 429 默认回避后仍触发 OAuth 运行时冷却
|
2026-09-08 20:42:35 +08:00 |
|
Wesley Liddick
|
4e9b01fd59
|
Merge pull request #6838 from atogumo/fix/claude-code-probe-any-model
fix(gateway): accept Claude Code max_tokens=1 probes for any model
|
2026-09-08 20:42:24 +08:00 |
|
Wesley Liddick
|
aa167a25a7
|
Merge pull request #6775 from xlplbo/fix/plugin-zip-handle-windows
fix(plugin): 提交插件包前先关闭 ZIP 读取器,修正 Windows 下两例单测
|
2026-09-08 20:12:42 +08:00 |
|
Wesley Liddick
|
1e6114c270
|
Merge pull request #6812 from Pluviobyte/codex/fix-model-plaza-subscriptions
fix(model-plaza): include active subscription groups
|
2026-09-08 20:10:42 +08:00 |
|
Wesley Liddick
|
9e7039ebca
|
Merge pull request #6811 from Pluviobyte/codex/fix-proxy-partial-update
fix(proxies): preserve omitted expiry and fallback settings
|
2026-09-08 20:10:20 +08:00 |
|
Wesley Liddick
|
b638445234
|
Merge pull request #6754 from ccemoji/codex/minimal-upstream-fix
fix: cancel streaming upstream before closing body
|
2026-09-08 20:09:37 +08:00 |
|
Wesley Liddick
|
979fe247f9
|
Merge pull request #6821 from 22zyfeng-collab/fix/antigravity-oauth-plan-type
fix(antigravity): preserve OAuth plan_type when saving accounts
|
2026-09-08 20:09:12 +08:00 |
|