Repository navigation
v2026.10.25
·
96 commits
to main
since this release
版本概览
- v2026.10.25 合并了经过兼容审查和完整验证的上游更新。
- 已完成工作树内容层面的合并审查与整合,解决两处文本冲突,并修正发布前置检查的 Bun 版本遗漏及任务超时文档不一致。本轮相对 origin/main 涉及 29 个文件;自 v2026.10.23 到当前候选累计涉及 53 个文件,均纳入审查。发布说明草稿已写入 .github/release-notes/v2026.10.24.md,保留六项已核实的既有限制。
新增功能
- 本轮:保留 Chat 请求中的 Gemini 图像配置:GeneralOpenAIRequest 新增可选 imageConfig 原始 JSON 字段,经过序列化复制后,Chat 转 Gemini 会将其写入 generationConfig.imageConfig。有效的 extra_body.google.image_config 继续优先覆盖;空配置保留顶层配置;省略时不额外发送。相关回归覆盖图像尺寸、宽高比、配置优先级和省略行为。
- 本轮:异步任务默认硬超时延长至 72 小时:TASK_TIMEOUT_MINUTES 默认值从 1440 改为 4320,环境变量示例同步更新。显式配置仍优先,0 仍禁用硬超时。连续轮询失败阈值、404/410 终态处理、状态竞争控制和退款路径保持原规则;新增回归区分运行 60 小时与超过 73 小时的任务。
- 本轮:升级 Bun 并切换类型检查入口:Bun 升级至 1.4.4,类型检查改为 bun check -b,移除 @typescript/native-preview 及对应平台包,更新 CI、平台发布、Electron、Docker、开发规范和各语言 README。渠道操作请求保留 auto_ban 参数及统一错误处理配置,相关测试补充 ApiRequestConfig 类型。
- 本轮:更新前端运行依赖:锁定版本更新为 axios 1.20.0、i18next 26.5.3、react-i18next 17.1.0、input-otp 1.5.0、react-resizable-panels 4.14.6;同步更新相关传递依赖并移除不再需要的 void-elements。保留本项目额外依赖和既有安全版本覆盖,没有改写请求、认证或翻译接口契约。
- 累计未发布:访问日志查询凭据脱敏:累计接入查询串脱敏,隐藏密钥、令牌、密码和签名等敏感值,同时处理编码键、重复键及无效编码。保留本项目 OAuth、SSO 回调整段查询串隐藏逻辑;仅改变日志输出,不改写业务处理收到的 URL 或 RequestURI。
- 累计未发布:修复编辑抽屉跨记录残留:API 密钥、兑换码和模型抽屉关闭后重置默认值,避免上一条记录的到期时间或供应商残留到下一条记录。空到期时间在表单中使用 null,提交时仍分别转换为 API 密钥的 -1 和兑换码的 0;模型未分配供应商时提交 vendor_id=0。保留加载期间禁止保存和忽略过期响应的行为。
功能改进
- 接口与协议兼容:Chat 请求中的顶层 imageConfig 不再因 DTO 复制而丢失,Gemini 将收到所选图像参数;既有 extra_body 配置优先级保留。没有新增必填请求字段或改变现有接口路径。
- 任务配置与费用占用:未显式配置超时的部署允许任务等待至 72 小时,因此真正停滞任务的硬超时退款可能比原来晚两天。管理员已有超时配置继续生效,连续失败阈值仍可能更早结束任务。退款金额、按秒结算、按次结算及表达式价格快照规则未改变。
- 累计用户界面与国际化:编辑不同记录不再继承旧到期时间或供应商。渠道监控改善窄屏布局、矮屏滚动、搜索恢复和指标选择;智力测试历史改为响应式卡片并保留复制、详情和删除确认。核对累计改动的 15 个前端生产文件,其静态翻译键在七种语言中均存在。
- 日志与权限:访问日志减少查询凭据暴露,原始业务请求保持不变。stream_status 仍完整采用上游公开字段与原始内容;其他渠道信息、上游请求 ID、中间重试日志、执行轨迹和管理员字段继续执行原有权限过滤。
- 部署与发布:构建环境统一使用 Bun 1.4.4,本项目新增的发布前置检查也同步升级,避免继续使用旧运行时执行新类型检查命令。标签顺序、发布说明校验、构建前置依赖、下载重试和产物检查保留。发布说明仅作为候选草稿保存。
- 数据与数据库兼容:累计范围未修改数据库模型、迁移定义、GORM 或数据库驱动版本。表单继续提交原有日期和供应商字段约定,任务超时沿用既有查询、状态更新和退款机制。SQLite、MySQL、PostgreSQL 的完整运行验证仍由外层执行,不据此宣称数据库验证完成。
问题修复
- Gemini 图像请求:客户端可在 Chat 请求顶层传递 imageConfig;转换后进入 Gemini generationConfig。有效的 Google extra_body 图像配置优先,空配置不会抹去顶层值。
- 长时间异步任务:默认允许等待 72 小时,超过硬期限的任务按原有状态竞争和退款规则处理;显式超时配置和连续轮询失败截止规则继续生效。
- 编辑与监控界面:切换 API 密钥、兑换码或模型记录时使用各自数据;监控图表可用鼠标和键盘选择指标并至少保留一项,智力测试历史可复制标识、查看详情并确认删除已结束任务。
- 日志可见性:用户继续看到完整上游 stream_status;渠道诊断、上游请求链、执行轨迹等字段按原有角色权限返回。访问日志中的查询凭据被脱敏,OAuth 和 SSO 查询串不输出。
- 构建与发布准备:前端采用 Bun 1.4.4 和 bun check -b,所有相关构建入口版本一致。候选发布说明覆盖本轮与累计更新,并原样列出六项既有限制;提交、暂存、完整验证和实际发布由外层流程负责。
移除与调整
- web/AGENTS.md:采用 bun check -b,同时完整保留启动前核对服务、复用已有实例、禁止随意换端口、清理临时进程和重启前核验要求。
- web/src/features/channels/components/tests/priority-order.test.tsx:整合为单一带类型的 mock,使用本项目实际请求路径,保留排序逻辑及双方回归断言,没有直接选择任一整文件版本。
- .github/workflows/release.yml、web/package.json:将发布前置检查同步升级为 Bun 1.4.4,保留全部既有校验步骤和发布任务依赖。
- docs/plugin-api/v1.md、common/init.go、.env.example:更新现有文档为默认 4320 分钟、即 72 小时,并明确 0 禁用硬超时;未改变插件接口或计费事实结构。
- 已知限制:DeepSeek 固定工作日峰谷价格不识别中国法定节假日,管理员可按实际价格政策配置覆盖。
- 已知限制:大型日志表建立联合索引可能产生耗时、资源消耗与锁竞争,升级时需安排合适的迁移窗口。
- 已知限制:缓存用量仅从升级后开始记录,历史数据不回填;跨升级时间范围的缓存统计不代表完整历史用量,界面保留相应提示。
- 已知限制:旧面板令牌在首次迁移后的三十天窗口结束后失效,这是上游迁移设计;需迁移至 PAT,重启不会重置退役期限。
- 已知限制:Responses custom tool 经 Chat function 转换后,grammar 保留为描述提示,不能保证原协议的语法强约束。
- 已知限制:Sobek 切换到 moejs 后,第三方插件仍可能需要适配;本轮未改变该运行时迁移影响。
自上次正式发布以来的累计提交
- d1cd535 feat(web): refine channel monitoring and intelligence history
- a70da1e merge: synchronize upstream 33c61a2
- 5876b96 fix(channels): restore upstream Sora model discovery behavior
本次候选包含上述已合并但尚未正式发布的更新,以及本报告审查的新增变更。