zhefox
|
dbbe7b22ab
|
fix(pool): isolate dynamic model quota buckets and 429 scheduling
|
2026-09-02 15:23:23 +08:00 |
|
AAEE86
|
71b54070e8
|
feat(gateway): Codex/OpenAI Responses WebSocket 代理模式
在 /v1/responses 上支持 WebSocket 升级,把客户端帧中继到上游 Codex /
OpenAI Responses WebSocket 端点,同时保持既有的路由、鉴权、配额与用量
语义:
- 路由与准入:control/route/ai.rs 识别 WebSocket 升级请求;
websocket/ingress.rs 复用 API Key 鉴权、IP 规则与并发许可,并引入
独立的 WebSocket 连接许可
- 中继:websocket/responses/* 按 connection / session / turn 分层,
帧解析归一化、socket 写入有界、continuation 保持调度亲和性
- 配额:orchestration/codex_quota_breaker.rs 在账号配额耗尽时熔断并
自动恢复,不再直接断开客户端连接
- 用量:每个 turn 的终态用量落库,request_metadata 记录
websocket_mode / websocket_transport,管理端与 usage 视图暴露
is_websocket
- 管理端:provider 可配置 Responses WebSocket 开关
|
2026-08-17 14:50:33 +08:00 |
|
elky
|
4148ab1931
|
fix(routing): harden routed pool scheduling
|
2026-07-27 22:06:28 +08:00 |
|
fawney19
|
88f03aaef2
|
Keep key circuit breaker out of pool scoring
|
2026-05-28 17:18:42 +08:00 |
|
fawney19
|
5d1460e051
|
refactor: extract provider pool abstractions
|
2026-05-13 18:19:15 +08:00 |
|