stabey and Claude Opus 5.5
2257c3959f
fix(xai): track the official Grok CLI version for cli-chat-proxy
...
cli-chat-proxy.grok.com started rejecting every request on 2026-10-01
with HTTP 426 "Your Grok CLI version (0.2.120) is outdated. Please
update to version 1.0.13 or later", because x-grok-client-version and
the xai-grok-workspace user agent were pinned to 0.2.120.
Replace the pin with a runtime-published version (built-in fallback
1.0.46) and add a gateway worker, modelled on the Codex profile worker,
that prewarms at startup and refreshes every 3h:
- read the official stable channel https://x.ai/cli/stable , falling
back to npm @xai-official/grok/latest (deployments that cannot reach
x.ai directly), requiring all six platform binaries at one version;
- never roll back, persist the verified version in runtime KV and
restore it on restart;
- AETHER_XAI_CLIENT_VERSION pins a version, and
AETHER_XAI_CLIENT_PROFILE_REFRESH=off disables the network check.
Endpoint header rules still win over the injected identity headers.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-01 14:53:26 +08:00
ZheFox
1b8f78a992
Merge pull request #846 from RWDai/review/pr-02-user-bulk-balance
...
feat(admin): batch adjust user wallet balances
2026-09-29 10:05:01 +08:00
RWDai
bcd121d447
fix(admin): make bulk wallet batches idempotent
2026-09-23 19:43:18 +08:00
RWDai
75471ae4a4
fix(admin): classify bulk wallet adjustment failures
2026-09-23 17:27:34 +08:00
RWDai
30bb0c3130
fix: harden bulk wallet balance adjustment
2026-09-23 16:29:47 +08:00
AAEE86
7e033d0571
feat(codex): add dynamic CLI client profile
2026-09-23 15:57:37 +08:00
fawney19
95e4d0149c
Merge pull request #809 from AAEE86/feat-detail-log
...
fix(gateway): redact sensitive error details in logs
2026-09-10 09:56:45 +08:00
elky
ecc16673eb
fix: harden concurrency limits and high-RPM runtime paths
...
Bound request, stream, queue, and shutdown resource lifetimes. Reduce scheduler and Redis hot-path work and isolate database maintenance. Include regression coverage, load probes, and concurrency audit results.
2026-09-10 08:14:58 +08:00
AAEE86
33ea4ebf15
fix(gateway): redact sensitive error log details
2026-09-09 13:27:20 +08:00
elky
522b979052
refactor(transport): remove provider DNS filtering and allowlist settings
2026-09-07 12:07:50 +08:00
elky
e15ea0d5d3
fix(security): configure trusted Fake-IP DNS hosts
2026-09-05 14:05:07 +08:00
elky
579f2c7cc1
feat(security): harden gateway boundaries and usage policies
...
Consolidate subscription usage policy enforcement, privacy-safe persistence, and gateway security hardening into one reviewable change.
Includes bounded HTTP and execution envelopes, header and protocol guards, DNS and relay validation, authentication and secret projection hardening, secure backup/install paths, and regression coverage.
2026-09-04 03:45:52 +08:00
fawney
2cb4d554aa
feat(routing): consolidate scheduling strategy configuration
2026-09-03 11:05:59 +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
beb003b7ad
feat(models): add external catalog proxy selection
2026-07-31 09:32:25 +08:00
elky
fc92c4f431
perf(gateway): scale request hot paths for 20k streams
...
Shard and singleflight hot-path caches, batch and prioritize candidate and usage lifecycle persistence, and extend database and pressure-test instrumentation for 20k concurrent streams.
2026-07-22 02:11:08 +08:00
elky
9a47267545
fix(usage): bound terminal event persistence
...
Add end-to-end terminal admission, bounded database fallback, and observable overload handling. Preserve first-byte lifecycle state across asynchronous runtime and frontend updates.
2026-07-16 13:12:30 +08:00
elky
8616fe6ee2
refactor(workspace): enforce layered crate boundaries
2026-07-15 23:47:19 +08:00
elky
e58621a735
Merge PR #669 : align GPT-5.6 and Codex request protocols
2026-07-12 21:50:20 +08:00
elky
7f61bb43c7
feat(security): harden gateway request and runtime controls
2026-07-12 14:10:54 +08:00
MMEXA
2316df5c9a
feat(codex): align Search and execution protocol
2026-07-12 03:04:15 +08:00
MMEXA
0b30cc6b0f
feat(openai): unify tier authorization and settlement
2026-07-11 12:27:05 +08:00
elky
f179ee72f9
chore: update gateway pressure observability
2026-06-30 17:01:39 +08:00
elky
7e9424008f
Add usage queue worker autoscaling
2026-06-26 14:02:57 +08:00
elky
6f00e9fc67
Improve gateway transport and usage runtime
2026-06-25 22:36:27 +08:00
elky
d336d1a7fa
Improve gateway scheduling and runtime admission
2026-06-24 01:53:45 +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
fawney19
ccfc4cbddc
Cache provider catalog lookups
2026-05-27 13:56:39 +08:00
Kayphoon
84c8bc960e
feat(admin): add configurable S3 backups
2026-05-26 14:41:56 +08:00
MMEXA
b347f1816d
Fix native Antigravity stream envelope handling
2026-05-25 09:39:55 +08:00
fawney19
e2d5fc9dfb
Preserve usage data in system imports
2026-05-24 21:40:48 +08:00
fawney19
d18b13a91a
fix: harden frontdoor and usage ingestion
2026-05-22 23:57:38 +08:00
fawney19
3714c211dc
Merge pull request #534 from RWDai/fix/issue-528-cache-affinity-health
...
fix(gateway): preserve cache affinity during health updates
2026-05-22 02:10:45 +08:00
fawney19
d5e64d6ad9
Merge branch 'pr-503'
...
# Conflicts:
# apps/aether-gateway/src/handlers/admin/provider/summary/value.rs
# apps/aether-gateway/src/lib.rs
# apps/aether-gateway/src/maintenance/mod.rs
# apps/aether-gateway/src/maintenance/runtime/workers.rs
# frontend/src/api/endpoints/types/provider.ts
2026-05-22 00:19:23 +08:00
fawney19
ab0a90de97
fix(runtime-state): govern redis connections
2026-05-21 22:53:37 +08:00
RWDai
965a8c79af
fix(gateway): preserve cache affinity during health updates
2026-05-21 15:51:56 +08:00
fawney19
5eed329916
Rootfix usage counter outbox
2026-05-19 00:44:37 +08:00
yangrs and Claude Opus 4.7
6c16f399d4
feat: 重要通知模块、Server 酱独立配置与额度提醒
...
- 新增重要通知统一模块(邮件 + Server 酱)作为后台任务通知出口
- 拆出独立的 Server 酱 配置页(SendKey + Markdown 模板,支持 {title}/{body} 变量替换),通过仪表盘内置工具入口进入
- 新增提供商额度提醒后台 worker:余额低于阈值时通过重要通知推送,提供商配置页加入额度提醒开关与阈值
- 重要通知页加入配置可用性守卫:未配置任一通道时禁用总开关,未配置邮件/SendKey 时禁用对应通道开关
- 测试通知端点支持 channel 过滤(all/email/server_chan),并绕过总开关与通道开关,便于配置阶段先验证通道
- 修复:测试通知路由未在 buffered-body 白名单导致 channel 参数丢失、测试时邮件分支被误触发
- 修复:sub2api 验证响应中 username 为 null 时正确回退到 email,避免误报"验证响应缺少: 用户信息"
Co-Authored-By: Claude Opus 4.7 <[email protected] >
2026-05-18 23:51:14 +08:00
fawney19
d53546d56f
Make pool probing request-driven
2026-05-16 00:18:47 +08:00
fawney19
b09fd48eee
Merge remote-tracking branch 'origin/pr/462'
2026-05-15 22:28:40 +08:00
fawney19
54a8312e46
feat: add adaptive pool metrics and self-check
2026-05-15 02:21:11 +08:00
Entropy.Xu
85f48123b6
feat(auth): 添加 Turnstile 注册防护
2026-05-15 01:54:20 +08:00
fawney19
fa73655134
refactor: isolate dispatch scheduling core
2026-05-12 13:15:41 +08:00
fawney19
b9e62d1667
Implement generic pool member scoring and probing
2026-05-12 01:46:22 +08:00
fawney19
e3574e1918
Track scheduler affinity epochs and key sorting
2026-05-11 01:45:49 +08:00
fawney19
209322b499
feat(gateway): unify background task runtime and storage
2026-05-09 21:19:29 +08:00
fawney19
e21fb58479
chore(proxy): guard metrics retention cleanup
2026-05-08 22:57:00 +08:00
fawney19
a703acd1fe
feat(proxy): record tunnel stability metrics
2026-05-08 22:03:17 +08:00
fawney19
31d142effc
Merge remote-tracking branch 'origin/pr/395' into aether-rust-pioneer
2026-05-08 02:47:07 +08:00