56 Commits
Author SHA1 Message Date
tbphp dad1f05016 feat(codex): support standalone search (#674)
* feat(codex): 支持订阅渠道独立搜索

* fix(codex): 保留搜索读体失败的响应状态

* feat(logs): 添加独立搜索请求图标
2026-09-17 16:58:58 +08:00
tbphp 9d38793dd0 fix(affinity): 统一缓存标识亲和并补齐 Codex 缓存分组 (#635) 2026-09-13 01:25:45 +08:00
tbphp c4c8452e6c fix(execution): 保留原生消息前缀并保护转换语义 (#631)
* fix(execution): 补齐原生消息透传并保留对话结构

* fix(execution): 保护转换请求的指令和执行约束

* fix(execution): 补齐无角色历史后的系统指令保护
2026-09-12 17:55:22 +08:00
tbphp 1b50c77673 fix(usage): 统一修正 Anthropic 流式输入与缓存用量 (#630)
* fix(cpa): 修正 Anthropic 流式转换的输入用量统计

* fix(usage): 统一 Anthropic 流式用量修正

* fix(usage): 保留原生流未采集时的执行层用量
2026-09-12 17:08:44 +08:00
tbphp b64a389823 feat(ultrafast): 支持请求层级转发与独立计价 (#624)
* fix(codex): 统一快速模式出站参数为 fast

* feat(ultrafast): 支持请求层级转发与独立计价
2026-09-11 13:10:29 +08:00
tbphp 7cbd2e672d feat(responses): 实现响应状态续接路由 (#609)
* feat(responses): 实现响应状态续接路由

* fix(responses): 限制响应 ID 长度并兼容缺失字段删除

* fix(responses): 按协议存储能力匹配续接路由
2026-09-09 23:13:41 +08:00
tbphp fe4b6ac159 feat(gateway): 接入原生文本重排序协议 (#607) 2026-09-09 15:06:50 +08:00
tbphp 7ed01e668b feat(images): 支持 Antigravity 与 Gemini 共享生图转换 (#605)
* feat(antigravity): 支持 Images 单向生图转换

* feat(images): 复用转换并支持 Gemini 渠道生图

* fix(images): 修正生图转换失败分类并恢复候选回退
2026-09-09 13:20:10 +08:00
tbphp 1898d8ee64 fix(gateway): 修复协议查询参数与零输出边界 (#603) 2026-09-09 11:18:20 +08:00
tbphp 0b8ee145f6 fix(gateway): 兼容 Responses store 无状态降级 (#527)
* fix(gateway): 兼容 Responses store 无状态降级

* fix(responses): 收紧无状态降级边界
2026-09-02 05:31:56 +08:00
tbphp aee2111290 feat(gateway): 支持 OpenAI Embeddings API (#496)
新增原生 OpenAI Embeddings 端点,覆盖首期 API Key 渠道,并复用现有路由、健康、用量、日志与管理流程。
2026-08-30 00:45:19 +08:00
tbphp d4bbb9193a feat: 升级 Go 与 SDK 版本 (#485)
* feat(gateway): 升级 SDK 并封口兼容合同

* fix: 修正升级后的格式与模型过滤

* fix(ci): 更新 Go 漏洞扫描器

* fix(gateway): 拒绝非标准服务层级字段
2026-08-27 22:48:16 +08:00
tbphp a710acab1e feat(usage): 接入 OpenAI 图片用量计价 (#483)
* feat(usage): 接入 OpenAI 图片用量计价

* fix(usage): 修复图片响应计量采集

* fix(usage): 减少图片流式解析分配

* fix(usage): 收口图片用量解析内存
2026-08-27 18:44:35 +08:00
tbphp e9e88dce99 feat(images): 接入 OpenAI 图片生成与编辑 (#476)
* feat(images): 接入 OpenAI 图片生成与编辑

* fix(images): 补齐响应容量与边界处理

* fix(images): 修正协议观测与响应上限覆盖

* fix(stream): 保证取消优先于流关闭

* fix(images): 修正空 SSE 错误对象判定

* fix(images): 避免媒体数据触发凭据误判

* fix(images): 阻止流式响应泄漏凭据

* fix(images): 校验完整流事件后再转发

* fix(images): 修正响应模型观测
2026-08-27 15:11:52 +08:00
tbphp f80c768180 Merge branch 'v2' into fix/claude-channel-hardening
# Conflicts:
#	internal/control/route_inspect.go
#	internal/control/route_inspect_test.go
#	web/src/features/monitor/InspectorTab.vue
2026-08-17 16:12:07 +08:00
tbphp 41adc5c8ef feat(monitor): 简化路由检查交互 2026-08-17 12:07:41 +08:00
tbphp 3333f49f36 fix(claude): 补全订阅渠道能力 2026-08-17 09:38:45 +08:00
tbphp a48ad669ea feat(pricing): 支持 Fast 模式计价与日志标识 2026-08-16 12:00:07 +08:00
tbphp 2e7bbf1421 feat(gateway): 增加全局自动软亲和 2026-08-12 08:40:33 +08:00
tbphp e7de10ec73 feat(route): 支持有损协议转换与参数追踪 2026-08-11 17:42:10 +08:00
tbphp 8a7c4615df fix(v2): 收口协议执行与流式边界 2026-08-11 08:56:59 +08:00
tbphp 6f6f7c3efc refactor(channel): 切换为 Bifrost 渠道执行架构 2026-08-10 08:22:15 +08:00
tbphp dc7510a879 feat(requestlog): 增加返回模型一致性提示 2026-08-08 12:47:31 +08:00
tbphp 59a3c58c4f feat(models): 优化全局模型价格管理 2026-08-07 17:16:29 +08:00
tbphp bae6d65e29 feat(monitor): 记录并展示请求思考配置 2026-08-06 19:59:44 +08:00
tbphp fadf9303bf fix(monitor): 修复监控数据与页面交互 2026-08-06 12:10:28 +08:00
tbphp 0c33cd4a57 refactor(gateway): 统一请求响应内容编码边界 2026-08-04 07:39:49 +08:00
tbphp 6ae94cd147 fix(pricing): 修复价格同步与完整度边界 2026-08-03 11:09:27 +08:00
tbphp c25c3525b5 feat(pricing): 重构模型目录与价格同步 2026-08-03 08:37:16 +08:00
tbphp 18a6898671 feat(upstream): 统一上游 Base URL 路径解析 2026-08-02 15:22:16 +08:00
tbphp 62cf5f4a3d feat(home): 重建统计存储与首页接口 2026-07-30 23:22:11 +08:00
tbphp 1e9a8ffb63 refactor(protocol): 统一 OpenAI Completions 协议命名 2026-07-30 21:31:24 +08:00
tbphp 0cf8983d07 feat(responses): 支持 OpenAI Responses 协议 2026-07-30 09:16:11 +08:00
tbphp 97b9f76feb fix(dialect): 修正 OpenAI 流式用量终态 2026-07-29 18:55:08 +08:00
tbphp b89dd9471e fix(v2): 完成全量审查修复 2026-07-28 11:24:29 +08:00
tbphp a3c4b3723e feat(config): 接入用量注入配置 2026-07-26 14:35:02 +08:00
tbphp eb82dc35ef refactor(dialect): 收敛流式用量诊断状态 2026-07-26 10:39:03 +08:00
tbphp 20e5e8f94a fix(dialect): 完善 Gemini 流式终态 2026-07-26 10:22:03 +08:00
tbphp a4a419f183 feat(dialect): 实现 Gemini 用量抽取 2026-07-26 10:12:14 +08:00
tbphp 4cd75d4380 test(dialect): 补齐 Anthropic 缺失用量覆盖 2026-07-26 10:04:05 +08:00
tbphp 154e85877a fix(dialect): 修正 Anthropic 用量边界 2026-07-26 10:00:29 +08:00
tbphp 376385d0df feat(dialect): 实现 Anthropic 用量抽取 2026-07-26 09:46:36 +08:00
tbphp b8d448fb48 fix(dialect): 完善 OpenAI 用量边界 2026-07-26 09:35:29 +08:00
tbphp 4c233fa6f9 feat(dialect): 实现 OpenAI 用量抽取 2026-07-26 09:22:39 +08:00
tbphp c7fc040a14 feat(m2): 实现定时验活恢复 2026-07-22 16:28:49 +08:00
tbphp 78373f135e fix(m2): 修复流式与失败处置边界 2026-07-21 11:14:55 +08:00
tbphp 36bcca8eb0 feat(m2): 实现失败分类与处置决策 2026-07-21 08:17:18 +08:00
tbphp d25d845d89 feat(m2): 实现模型别名与改写 2026-07-20 23:24:09 +08:00
tbphp 6b61a82467 fix: 加固 M1 安全与资源边界 2026-07-20 12:16:59 +08:00
tbphp 9da62f6a9a refactor: 收敛 M0/M1 实现与公开文档 2026-07-20 02:56:59 +08:00