fawney19
|
e2d5fc9dfb
|
Preserve usage data in system imports
|
2026-05-24 21:40:48 +08:00 |
|
fawney19
|
2b32b9a445
|
Fix system data import export flows
|
2026-05-22 02:46:49 +08:00 |
|
fawney19
|
f76bbaab52
|
feat: support api key ip restriction rules
|
2026-05-20 16:11:49 +08:00 |
|
RWDai
|
bdc848b19e
|
Merge upstream main into feat/500-api-key-ip-whitelist
|
2026-05-20 10:26:56 +08:00 |
|
fawney19
|
9fc9c334c9
|
Merge remote-tracking branch 'origin/pr/487'
# Conflicts:
# crates/aether-data/src/lifecycle/bootstrap/postgres.rs
# crates/aether-data/src/lifecycle/migrate/tests.rs
# crates/aether-data/src/repository/oauth_providers/postgres.rs
# crates/aether-data/src/repository/oauth_providers/sqlite.rs
# frontend/src/views/admin/OAuthSettings.vue
|
2026-05-19 02:27:39 +08:00 |
|
RWDai
|
d8f68c1d9a
|
Preserve allowed IP defaults in admin key imports
|
2026-05-18 20:47:57 +08:00 |
|
dalamudx
|
48deff15c4
|
fix(oauth): fix login failures and add provider icon_url config
- Fix FIND_OAUTH_LINKED_USER_SQL missing allowed_providers_mode columns
- Fix TOUCH_OAUTH_LINK_SQL json/jsonb type mismatch in COALESCE
- Add icon_url field to OAuth provider config (DB, API, frontend)
- Fix admin OAuth test: accept 404 as reachable, use system proxy
|
2026-05-17 21:33:02 +08:00 |
|
mayrain
|
936e1ae37b
|
feat(grok): add admin oauth and quota support
|
2026-05-16 21:15:38 +08:00 |
|
fawney19
|
f59cf1090d
|
feat(admin): unify system data management and aggregate import/export
|
2026-05-16 02:16:53 +08:00 |
|
fawney19
|
509bd30252
|
Redesign sensitive info protection settings
|
2026-05-14 11:14:20 +08:00 |
|
fawney19
|
e251a63cb3
|
Merge remote-tracking branch 'pr-434/fix-provider-model-test-compat' into aether-rust-pioneer
|
2026-05-14 01:28:33 +08:00 |
|
fawney19
|
e7471f44b0
|
fix provider oauth endpoint reconciliation
|
2026-05-12 22:46:20 +08:00 |
|
mayrain
|
fca3f24d91
|
fix: preserve legacy admin config imports
|
2026-05-12 20:10:27 +08:00 |
|
Entropy.Xu
|
9e705ff603
|
Fix legacy user policy modes for empty lists
|
2026-05-10 19:35:09 +08:00 |
|
fawney19
|
d246f6b42c
|
fix: align user group access controls
|
2026-05-10 17:28:23 +08:00 |
|
fawney19
|
84a84e3f31
|
Merge pull request #404 from RWDai/fix/python-v063-user-import-compat
Preserve Python user import compatibility
|
2026-05-08 14:20:08 +08:00 |
|
RWDai
|
141a81d4a3
|
Preserve Python user import compatibility
|
2026-05-08 13:37:32 +08:00 |
|
RWDai
|
738031696b
|
fix(users): thread rate limit presence through gateway
|
2026-05-07 19:16:49 +08:00 |
|
fawney19
|
33ed7c0737
|
Fix admin import export version checks
|
2026-05-06 16:06:45 +08:00 |
|
fawney19
|
e751289dfb
|
Support per-format provider key auth
|
2026-04-29 15:46:50 +08:00 |
|
fawney19
|
a5e6bd3b62
|
feat(stats): 新增聚合读路径与回填机制并重构 dashboard/usage 读取链路
- 新增 stats_user_summary 及 user_daily_provider/api_format/cost_savings 等聚合表
- 扩展 stats_daily/hourly 有效 token 与响应时间等字段,maintenance runtime 同步写入
- 新增 backfill 模块与 --apply-backfills 命令补齐历史聚合数据
- 重写 dashboard_filters、usage_heatmap、user_rollups 查询改走聚合表
- 同步更新 baseline_v2.sql 与 migration 集,README/dev.sh 补充回填用法
|
2026-04-22 17:29:39 +08:00 |
|
fawney19
|
063ef02306
|
fix(oauth): 系统导入时清理失效标记并强制刷新 refresh_token,前端徽章优先使用 account_id
- 后端 admin 系统导入 OAuth 凭据时重置 expires_at 与失效标记,并在存在 refresh_token 时触发一次本地刷新
- 前端 OAuth 徽章改为优先展示 account_id,采用去前缀后 5 字符的紧凑格式
|
2026-04-21 18:06:39 +08:00 |
|
 RWDaiandfawney19
|
b8702ae124
|
Fix/api key concurrency runtime miss (#309)
* test(cli): 覆盖 API key 并发等待与超时路径
* feat(scheduler): API key 并发饱和时等待可用槽位
* fix(proxy): 区分 API key 并发受限与真正的 runtime miss
* fix(outcome): runtime miss 仅归因真实执行候选
* feat(api-keys): 统一 concurrent_limit 默认值与校验辅助
* feat(admin): 独立 Key 接口支持 concurrent_limit
* feat(admin): 用户 API Key 路由支持 concurrent_limit
* feat(public): 自助 API Key 路由支持 concurrent_limit
* feat(import): 导入与存储层持久化 concurrent_limit
* feat(frontend): 同步 API Key concurrent_limit 类型定义
* feat(frontend): 独立 Key 表单支持 concurrent_limit
* feat(frontend): 管理员用户 API Key 表单支持 concurrent_limit
* feat(frontend): 自助 API Key 页面支持 concurrent_limit
* chore(fmt): 统一 runtime 归因相关 Rust 格式
* chore(fmt): 统一 admin API key 路由 Rust 格式
* chore(fmt): 统一 public 路由与相关测试 Rust 格式
* fix(test): 对齐 no-execution usage 归因断言
* test(middleware): 固定 access log tracing 用例线程模型
* fix(frontend): 提取用户 API Key payload 默认并发辅助
* fix(frontend): 保留用户 Key 的 concurrent_limit 默认值
* fix(api-keys): remove hardcoded concurrent limit default
---------
Co-authored-by: fawney19 <[email protected]>
|
2026-04-17 14:21:43 +08:00 |
|
fawney19
|
a4e7ac1df6
|
feat(proxy): 重构 Proxy 节点管理与隧道系统
- 重构 proxy_nodes 管理端,支持节点注册、心跳、隧道生命周期管理
- 增强 tunnel 嵌入式 hub 和隧道协议
- 重构 aether-proxy 配置、隧道客户端、心跳和调度机制
- 调整 admin OAuth/配额/导入等处理器的参数传递
- 扩展数据迁移模块
- 补充 proxy nodes、OAuth、配额、系统导入等测试
- 更新前端 proxy nodes 视图和 API
|
2026-04-14 22:51:02 +08:00 |
|
fawney19
|
861ae81ff0
|
feat(admin): 完善代理节点与 OAuth 授权管理
|
2026-04-14 14:09:24 +08:00 |
|
fawney19
|
5bb08e6aa4
|
feat(gateway): 重构 usage 数据层、迁移系统与系统导入
数据库迁移:
- 引入 baseline v2 bootstrap,空库首次启动自动初始化
- 服务启动不再自动执行迁移,需显式 `--migrate` 运行
- 新增 pending migration 检测,schema 落后时拒绝启动
Usage 数据层:
- usage body 存储外部化为独立 blob 表
- 新增 HTTP audit 表拆分存储请求/响应头与 body ref
- 后台清理任务支持 legacy body ref 元数据迁移
- usage runtime 写入迁移到专用 tokio runtime(独立线程池, 8MB 栈)
系统导入/导出:
- 支持用户、API Keys、钱包数据的完整导入
- 兼容 legacy 与 v1.3+ 两种导出格式
其他改进:
- executor outcome 增加 runtime miss 诊断上下文
- 主 tokio runtime 栈大小调整为 8MB
- 前端 provider 管理支持 base URL 配置
- dev.sh 支持 --migrate 参数
|
2026-04-13 14:01:22 +08:00 |
|
fawney19
|
7c5bb7f383
|
fix(admin): 修复系统配置导入的多项兼容性问题
- 引入 serde_path_to_error,反序列化失败时返回精确字段路径
- 为所有浮点字段新增数字字符串兼容反序列化器,支持 Python 序列化格式
- 修复 OAuth provider key 导入:正确写入加密的 api_key 和 auth_config
- 优化代理节点跳过提示,区分手动 URL 代理与 node_id 引用代理
- 新增测试覆盖上述场景
|
2026-04-11 23:10:25 +08:00 |
|
fawney19
|
a9f610fa69
|
feat(admin): 实现系统数据导入导出功能,支持提供商和模型批量配置
|
2026-04-11 21:39:04 +08:00 |
|