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
ZheFox
45c840b8d3
fix(providers): refresh Antigravity grouped quotas
2026-09-03 10:46:44 +08:00
zhefox
a0369cf49a
Merge remote-tracking branch 'zhefox/main' into zhefox-main
...
# Conflicts:
# crates/aether-admin/src/provider/quota.rs
# crates/aether-ai/formats/src/formats/openai/chat/stream.rs
# crates/aether-ai/formats/src/formats/openai/responses/mod.rs
# crates/aether-provider/pool/src/provider.rs
# crates/aether-provider/pool/src/quota.rs
2026-09-02 15:25:27 +08:00
zhefox
dbbe7b22ab
fix(pool): isolate dynamic model quota buckets and 429 scheduling
2026-09-02 15:23:23 +08:00
ZheFox
57abb20778
fix(pool): show Antigravity quota reset times
2026-09-01 11:29:48 +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
ec36cfbf75
Merge pull request #690 from zhefox/main
...
fix(provider): classify deleted Codex agent runtime as invalid
2026-07-23 11:22:30 +08:00
ZheFox
7bf228a33c
fix(provider): classify deleted Codex agent runtime as invalid
2026-07-23 11:21:55 +08:00
elky
3606290ac8
fix(provider): harden Agent Identity OAuth lifecycle
2026-07-23 09:33:00 +08:00
elky
fdbc2607ec
feat(provider): add dedicated Codex Agent Identity flow
2026-07-22 20:19:29 +08:00
MMEXA
405ca3e66a
fix(ci): 恢复非流式错误体边界并适配新版 Clippy
2026-07-18 03:26:53 +08:00
elky
f65ed2795c
fix(codex): support dynamic quota windows
2026-07-17 20:18:04 +08:00
ZheFox
f009fb73c3
缓存问题修复
2026-07-16 18:55:28 +08:00
MMEXA
63936aa110
fix(gateway): route format rules through serving facade
2026-07-12 03:56:53 +08:00
MMEXA
2316df5c9a
feat(codex): align Search and execution protocol
2026-07-12 03:04:15 +08:00
Start
f31c9e03e2
Merge branch 'fawney19:main' into main
2026-07-09 15:11:44 +08:00
yangrs
192dc6c20d
Fix provider key response time overflow
2026-07-09 14:40:48 +08:00
MMEXA
2122660a5c
对齐原生 Antigravity 控制面与显示模型
2026-07-08 22:34:29 +08:00
MMEXA
c17c78ad4b
修正 Antigravity Gemini 3.5 Flash 档位展示
2026-07-08 22:34:29 +08:00
MMEXA
9ec48ab6b9
优化 Antigravity 配额展示顺序
2026-07-08 22:34:29 +08:00
MMEXA
accd250226
修正 Antigravity 配额模型标签
2026-07-08 22:34:29 +08:00
MMEXA
ef77ec04ca
增加 Codex 重置次数功能
2026-07-04 06:10:53 +08:00
elky
f1c30439ff
fix: preserve provider auth metadata
2026-06-20 22:11:42 +08:00
elky
68038c182b
Distinguish expired OAuth token status
2026-06-12 19:43:59 +08:00
Mas0nShi
9ad9858ac2
Merge origin/main into fix/gemini-cli-v1internal
2026-05-28 11:58:00 +08:00
fawney19
1be445423c
Merge remote-tracking branch 'origin/pr/558'
2026-05-25 01:22:03 +08:00
MMEXA
480579a0d5
fix(gateway): expire provider key circuit cooldowns
2026-05-25 00:40:38 +08:00
Codex
66837b7d7f
修复 ChatGPT Web 生图发起即扣额度
2026-05-24 18:50:14 +08:00
Codex
14b182d09b
修复 ChatGPT Web 生图调用起始预扣额度
2026-05-24 18:50:14 +08:00
Codex
218ca8e6eb
修复 ChatGPT Web 生图额度递减显示
2026-05-24 18:50:14 +08:00
Mas0nShi
8b7643e150
Merge remote-tracking branch 'origin/main' into fix/gemini-cli-v1internal
...
# Conflicts:
# apps/aether-gateway/src/ai_serving/transport.rs
# apps/aether-gateway/src/handlers/admin/provider/oauth/dispatch/batch/parse.rs
# apps/aether-gateway/src/handlers/shared/catalog.rs
# crates/aether-admin/src/provider/quota.rs
# crates/aether-model-fetch/src/strategy.rs
# crates/aether-provider-pool/src/lib.rs
# crates/aether-provider-pool/src/service.rs
# crates/aether-provider-transport/src/provider_types.rs
# frontend/src/features/providers/components/ProviderDetailDrawer.vue
# frontend/src/utils/__tests__/providerKeyQuota.spec.ts
# frontend/src/utils/providerKeyQuota.ts
# frontend/src/views/admin/PoolManagement.vue
2026-05-22 17:13:57 +08:00
Mas0nShi
ce02f1ae8c
Add Gemini CLI v1internal quota support
2026-05-22 16:58:04 +08:00
fawney19
97997685b5
Merge remote-tracking branch 'origin/pr/498'
2026-05-21 22:56:43 +08:00
Mas0nShi
e53d5f07e8
feat: support Gemini CLI v1internal quota
2026-05-21 15:38:10 +08:00
fawney19
e7f8b259ac
Revert "Merge pull request #517 from zhiqicloud/feat/provider-balance-query"
...
This reverts commit 7e95e769d5 , reversing
changes made to 490306c242 .
2026-05-21 01:24:17 +08:00
Entropy.Xu
129c7c90c0
fix(provider): 修复 Windsurf 原生工具桥接
2026-05-21 01:02:02 +08:00
Entropy.Xu
0226e14251
feat(provider): 原生接入 Windsurf provider
2026-05-21 01:02:02 +08:00
zhiqicloud
122daf0f87
支持 Provider Key 余额查询与自动刷新
2026-05-20 12:33:31 +08:00
mayrain
936e1ae37b
feat(grok): add admin oauth and quota support
2026-05-16 21:15:38 +08:00
fawney19
c2bf17b4dd
Fix Codex Spark quota formatting
2026-05-10 09:14:19 +08:00
Alice
757c264e3e
新增 Codex Spark 额度展示
...
解析 GPT-5.3-Codex-Spark 额度窗口,并在号池页面和提供商账号抽屉中展示 Spark 周额度与 5H 额度。Spark 额度仅用于展示,不影响普通 Codex 周额度和 5H 额度的调度与筛选逻辑。
2026-05-09 10:44:45 +08:00
fawney19
0c03c188f1
fix codex window usage stats
2026-05-07 13:35:25 +08:00
fawney19
fd44906bb7
fix provider pool quota status handling
2026-05-07 11:28:44 +08:00
fawney19
10e679bb2f
Add provider key cycle stats reset handling
2026-05-07 03:23:20 +08:00
fawney19
6c0ac2e8da
chore: omit deprecated python quota changes
2026-05-07 01:39:48 +08:00
Codex
41f75a3f19
feat: show chatgpt web image quota
2026-05-06 22:58:47 +08:00
fawney19
fce7e959e5
Add multi-database data layer
...
Introduce aether-data-schema and driver-specific schema generation for Postgres, MySQL, and SQLite.
Split data backends, lifecycle, repositories, and gateway runtime integration across database drivers.
Verified with cargo fmt --all --check, cargo clippy --workspace --all-targets -- -D warnings, and cargo test --workspace.
2026-05-05 18:27:36 +08:00
Kayphoon and fawney19
fe27fb17fb
feat: add provider-key concurrent limit ( #352 )
...
* feat: add provider-key concurrent limit
* Fix provider key concurrent limit checks
---------
Co-authored-by: fawney19 <[email protected] >
2026-05-03 01:55:23 +08:00
fawney19
e3ea2d1451
feat: configure auth channel mismatch formats
2026-05-03 00:49:22 +08:00
bfd1ea72b3
fix: codex free accounts incorrectly marked as quota exhausted ( #366 )
...
* fix: codex free accounts incorrectly marked as quota exhausted when skip_exhausted_accounts enabled
- Cross-validate stored exhausted flag against window used_ratio in snapshot reader
- Guard has_credits:false check with window data presence in upstream_metadata fallback
- Add windows.is_empty() precondition to exhausted_by_credits in snapshot builder
Free codex accounts have has_credits:false (they use window-based quotas, not credits),
but the old logic treated this as credits depleted, skipping actual window usage checks.
This caused all free accounts to be incorrectly marked exhausted.
* test: cover codex free quota windows
---------
Co-authored-by: root <[email protected] >
Co-authored-by: fawney19 <[email protected] >
2026-05-02 14:11:29 +08:00