elky
6630856061
fix: harden routing failover, model testing, and wallet queries
2026-09-09 10:38:25 +08:00
elky
a893bd0557
refactor(data): reuse payment order query
2026-09-09 09:21:09 +08:00
elky
f2839ae6a7
feat(routing): add strategy failover controls
2026-09-09 09:12:09 +08:00
elky
e58570d79d
feat(routing): make client disconnect behavior strategy-scoped
2026-09-08 23:11:37 +08:00
elky
99f6499b2b
fix(conversion): improve stream failures and diagnostic exports
2026-09-08 21:04:22 +08:00
elky
17d01d7fe0
fix(dns): unify provider resolution and bound SMTP and tunnel egress
...
Share provider DNS policy across WebSocket and connection probes, handle bracketed IPv6 literals, and preserve bounded address sets for outbound clients.
Bound SMTP DNS and TCP setup with multi-address fallback. Add opt-in trusted proxy DNS for tunnel upstreams while retaining default IP ACLs and origin isolation.
Document DNS policy boundaries and verify 809 gateway, tunnel, and HTTP regression tests.
2026-09-08 17:44:59 +08:00
elky
c7e403b410
fix: restore container logging compatibility and normalize legacy policies
2026-09-08 11:43:51 +08:00
elky
7113d04f8a
fix(usage): preserve original captured HTTP headers
2026-09-08 08:49:35 +08:00
elky
099b810a2f
feat: optimize usage body viewing and provider card layout
2026-09-08 02:49:06 +08:00
elky
a90d564931
fix: restore security hardening compatibility and validation
...
Restore authorized rule reveal, explicit full HTTP capture and retention, video task business fields, and valid payment URLs. Add opt-in credential preservation for trusted recovery, fix frontend type contracts and async races, and eliminate PostgreSQL test fixture resource leaks. Document audit coverage and successful fmt and CI-scoped Clippy checks.
2026-09-07 21:14:27 +08:00
elky
14f96c9fa0
fix(providers): preserve health in redacted key summaries
2026-09-07 08:53:41 +08:00
elky
d1b5eb08ee
fix(providers): correct endpoint health aggregation and display
2026-09-06 18:24:27 +08:00
ZheFox
e2b003af24
fix(formats): preserve Responses namespace tools through Chat
2026-08-26 00:43:50 +08:00
ZheFox
2cd20da1ec
fix(gateway): support current Codex Realtime live routes
2026-08-23 02:51:49 +08:00
ZheFox
2c89202001
feat(gateway): add Codex Live and OpenAI Realtime
...
Implement preflighted Live/Realtime WebSocket transports, protocol-aware authentication, usage auditing, UI filtering, and legacy Codex permission migration.
2026-08-21 04:27:34 +08:00
ZheFox
4185ad1b1e
feat(gateway): add Codex Live transport
2026-08-20 21:59:05 +08:00
ZheFox
654f798d25
fix(ws): harden Responses continuation state
2026-08-20 08:51:16 +08:00
ZheFox
c8118edf36
fix(ws): harden Responses connection lifecycle
...
Revalidate control policy per turn, isolate downstream credentials, and make planner/turn ownership cancellation-safe.
Preserve opaque protocol events, align configurable timeout semantics, and extend end-to-end security and settlement coverage.
2026-08-17 18:50:29 +08:00
AAEE86
a498875591
feat(gateway): Responses WebSocket 连通性探针
...
新增 aether-codex-ws-probe 与 aether-openai-responses-ws-probe 两个
二进制,用于在不暴露凭据的前提下验证上游 WebSocket 端点可用性:凭据
只从环境变量读取,不写入日志。公共流程放在
bin/support/responses_ws_probe.rs,各 profile 只负责自己的鉴权与
请求头要求。
2026-08-17 14:51:18 +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
ZheFox
118f441029
feat(gateway): persist OpenAI Responses continuation history
2026-07-30 19:26:52 +08:00
ZheFox
615ac99ad7
fix(formats): ignore Responses client transport metadata
2026-07-23 12:16:44 +08:00
elky
8616fe6ee2
refactor(workspace): enforce layered crate boundaries
2026-07-15 23:47:19 +08:00
MMEXA
dfa121dd5b
feat(openai): align GPT-5.6 and Codex request contracts
2026-07-11 07:40:12 +08:00
elky
a0f7074e59
chore: disable Redis persistence by default, document triage and policy
2026-07-01 14:15:16 +08:00
elky
f179ee72f9
chore: update gateway pressure observability
2026-06-30 17:01:39 +08:00
elky
5b7805181b
perf: queue request candidate persistence
2026-06-22 02:49:17 +08:00
elky
f75894acbb
perf: reduce gateway db pressure under load
2026-06-22 00:08:48 +08:00
elky
63a2fd4dcf
Merge origin/main into dev
2026-06-06 03:11:38 +08:00
elky
7a19891c60
fix: distinguish unaudited conversion fields
2026-06-06 00:35:27 +08:00
elky
465476985b
fix: preserve provider schema drift safely
2026-06-03 22:29:24 +08:00
elky
da5624c98e
chore: add format field coverage generator
2026-06-03 21:44:33 +08:00
elky
b2f68bbaf7
feat: enforce full format field coverage audit
2026-06-03 21:18:49 +08:00
elky
7507af5829
feat: audit strict format conversion contracts
2026-06-03 20:27:15 +08:00
Entropy.Xu
0f6d4b9146
feat(embedding): 接入阿里云多模态向量端点
2026-05-28 16:05:36 +08:00
fawney19
e2b5c3acc8
docs: remove simple query inventory
2026-05-27 00:45:03 +08:00
fawney19
42693c2c52
chore: remove s3 backup docs
2026-05-27 00:07:37 +08:00
Kayphoon
84c8bc960e
feat(admin): add configurable S3 backups
2026-05-26 14:41:56 +08:00
Kayphoon
72d43878ef
fix(install): remove pg single-node migration entrypoint
2026-05-25 01:14:37 +08:00
fawney19
ab0a90de97
fix(runtime-state): govern redis connections
2026-05-21 22:53:37 +08:00
fawney19
69af74b1e0
Merge PR #488 and #489
2026-05-19 03:16:35 +08:00
MMEXA
5ed8325592
fix(gateway): use Vertex model garden catalog endpoint
2026-05-18 17:06:42 +00:00
fawney19
5eed329916
Rootfix usage counter outbox
2026-05-19 00:44:37 +08:00
MMEXA
b480f3aaff
fix(gateway): normalize Gemini Vertex embedding transport
2026-05-18 15:39:29 +00:00
fawney19
d51b44d642
Merge remote-tracking branch 'origin/pr-485'
...
# Conflicts:
# crates/aether-data/src/repository/provider_catalog/sqlite.rs
2026-05-18 19:44:18 +08:00
MMEXA
66f154a251
fix(gateway): avoid low OpenAI-compatible test token cap
2026-05-18 03:06:46 +00:00
MMEXA
f50f26e599
fix(gateway): cover Google OpenAI-compatible roots
2026-05-18 02:15:23 +00:00
MMEXA
b004a02e4a
fix(gateway): harden Gemini endpoint routing
2026-05-18 00:53:34 +00:00
Kayphoon
f29cca72ba
refactor(data): limit query abstraction to postgres and sqlite
2026-05-17 15:40:44 +08:00
Kayphoon
77640d51a6
refactor(data): add select query abstraction
2026-05-17 15:04:35 +08:00