mt21625457
|
d11bdb13f5
|
feat(security-audit): add OpenAI-compatible prompt auditing
|
2026-07-17 00:39:39 +08:00 |
|
shaw
|
0408bdb34f
|
Merge remote-tracking branch 'origin/main' into feat/upstream-rate-scheduling
# Conflicts:
# backend/internal/handler/openai_gateway_handler.go
|
2026-07-16 10:31:21 +08:00 |
|
 Wesley LiddickandGitHub
|
f3138ceb43
|
Merge pull request #4384 from wp-a/fix/openai-model-scoped-transient-cooldown
[codex] scope OpenAI transient cooldowns by model
|
2026-07-16 09:33:09 +08:00 |
|
Tian Lee
|
90ee85f3ef
|
feat: 按上游计费倍率调度 OpenAI 账号
|
2026-07-16 00:40:46 +08:00 |
|
siyuan
|
776f3f0de7
|
fix(openai): align alpha search PAT forwarding
|
2026-07-16 00:36:38 +08:00 |
|
王鹏
|
40b8f04a6a
|
fix(openai): scope transient cooldowns by model
|
2026-07-15 22:52:35 +08:00 |
|
shaw
|
a0593b0bf8
|
fix(gateway): 客户端断开后 failover 静默终止,不再误报 502 账号耗尽
上游请求经 detachUpstreamContext(WithoutCancel) 有意脱离客户端取消(保
计费),但 failover 循环仍用原始 c.Request.Context() 重新选号:客户端
断开后上游返回 520 等可 failover 错误时,重新选号必然得到 context
canceled,被误判为账号耗尽,记录并返回通用 502。
修复:客户端已断开 ⇒ failover 静默终止。
- 新增 failoverClientGone(c):请求 ctx 已取消时先停 compact 心跳
(建立 happens-before,对齐其它终结路径),响应未提交则标 499
(statusClientClosedRequest,与并发槽取消路径同惯例)
- 7 个 OpenAI 内联 failover 循环(Responses/Messages/chat_completions/
embeddings/images/grok_media/alpha_search)加双 guard:换号前 +
选号失败分支入口;guard 位于 ReportOpenAIAccountScheduleResult(false)
之后、RecordOpenAIAccountSwitch/池模式重试之前,账号健康副作用
(service 层 detached ctx)不受影响
- FailoverState.HandleFailoverError/HandleSelectionExhausted 入口加
ctx.Err() 检查返回 FailoverCanceled,取消不再改动 failover 状态;
全部 10 个 FailoverCanceled 分支统一调用 failoverClientGone 归类 499
- 上游 detach 与计费设计不变;真实上游 520 事件仍完整落 ops
(面板显示码 COALESCE(upstream_status_code,status_code)=520,
错误率/告警口径不变)
测试:新增 openai_responses_failover_cancel_test.go 复现 issue 场景
(520+取消 ⇒ 不切号、499、无 502 终态)+ 在线客户端对照(正常切换、
耗尽 502);failover_loop_test.go 补入口取消用例并修正取消语义断言。
Fixes #4257
|
2026-07-15 09:29:05 +08:00 |
|
Heatherm Huang
|
b32b815e46
|
fix(grok): harden OAuth pool recovery
|
2026-07-14 14:55:30 +08:00 |
|
shaw
|
7cbb36f278
|
feat(billing): Codex alpha/search 网页搜索按次计费
- alpha/search 成功请求(上游 2xx)按次计费落 usage_logs(billing_mode=per_request),
上游错误透传/failover 不计费;使用 mandatory 池提交,池满同步兜底不丢扣费
- 单价默认 0.01 USD/次(官方 $10/1000 次),分组新增 web_search_price_per_call
覆盖价(0=免费,负数/留空=默认价),实际扣费叠加分组费率倍数(与 token 口径一致)
- 分组字段全链路:ent schema + 迁移 174 + 端口快照 v15 + admin 创建/更新 + DTO
- 前端分组表单(openai 平台)新增单次价格配置,实时预览应用当前倍率后的单次价格
- 该端点鉴权维持仅 OpenAI 分组(非 OpenAI 分组 404)
|
2026-07-13 09:54:51 +08:00 |
|
Tian Lee
|
52071d391b
|
fix(openai): 转发 Codex alpha/search 独立搜索端点
|
2026-07-11 20:31:33 +08:00 |
|