Entropy.Xu
0f6d4b9146
feat(embedding): 接入阿里云多模态向量端点
2026-05-28 16:05:36 +08:00
fawney19
93d3de1644
feat: improve routing policy diagnostics
2026-05-28 12:11:43 +08:00
MMEXA
480579a0d5
fix(gateway): expire provider key circuit cooldowns
2026-05-25 00:40:38 +08:00
fawney19
ab048b8a03
fix monitoring trace lookup fallback
2026-05-23 01:22:24 +08:00
fawney19
97997685b5
Merge remote-tracking branch 'origin/pr/498'
2026-05-21 22:56:43 +08:00
fawney19
ab0a90de97
fix(runtime-state): govern redis connections
2026-05-21 22:53:37 +08:00
Entropy.Xu
129c7c90c0
fix(provider): 修复 Windsurf 原生工具桥接
2026-05-21 01:02:02 +08:00
fawney19
57910f906d
Preserve usage provider identity
2026-05-20 20:56:36 +08:00
fawney19
afedd90c80
Merge commit 'refs/pull/481/head' of github-fawney19:fawney19/Aether
...
# Conflicts:
# apps/aether-gateway/src/ai_serving/api.rs
# apps/aether-gateway/src/ai_serving/planner/standard/family/request.rs
# apps/aether-gateway/src/ai_serving/planner/standard/openai/chat/decision/request.rs
# apps/aether-gateway/src/ai_serving/planner/standard/openai/responses/decision/request.rs
2026-05-19 01:46:41 +08:00
fawney19
5eed329916
Rootfix usage counter outbox
2026-05-19 00:44:37 +08:00
RWDai
24129d7f12
Merge upstream/main into feat/356-usage-record-columns
2026-05-18 20:33:05 +08:00
MMEXA
995be3781a
fix(frontend): align usage APIs with Rust routes
2026-05-17 15:37:52 +00:00
RWDai
981020a5ab
fix(ci): apply rustfmt to usage metadata handlers
2026-05-17 20:28:08 +08:00
mayrain
936e1ae37b
feat(grok): add admin oauth and quota support
2026-05-16 21:15:38 +08:00
RWDai
97cd92a1a2
Expose usage record metadata fields
2026-05-16 15:55:38 +08:00
fawney19
fa73655134
refactor: isolate dispatch scheduling core
2026-05-12 13:15:41 +08:00
fawney19
ef4cc55c9a
Record per-candidate upstream error bodies
2026-05-11 02:30:45 +08:00
fawney19
e3574e1918
Track scheduler affinity epochs and key sorting
2026-05-11 01:45:49 +08:00
fawney19
0f42a6ed82
Fix Codex image progress heartbeat merge regressions
2026-05-10 02:10:23 +08:00
fawney19
79d07ac79a
Improve request trace upstream diagnostics
2026-05-09 10:46:04 +08:00
Entropy.Xu
3b4f27f767
Add Codex image progress heartbeat
2026-05-09 01:21:26 +08:00
fawney19
6247ac3edc
refactor: extract runtime state backends
2026-05-08 00:18:12 +08:00
RWDai
44c2534f46
Fix affinity monitoring CI checks
2026-05-07 15:24:17 +08:00
RWDai
2cfeb14d88
Add session-scoped affinity deletion
2026-05-07 15:08:14 +08:00
RWDai
d5d93eda11
Fix affinity key parsing and counters
2026-05-07 15:08:07 +08:00
fawney19
6fbb867f5f
Exclude unknown providers from usage aggregations
2026-05-06 13:40:18 +08:00
fawney19
887a58d639
Fix usage provider stats and performance analysis UI
2026-05-06 09:29:12 +08:00
fawney19
cf27773582
feat: improve admin performance analysis
2026-05-06 02:01:32 +08:00
fawney19
aacab1a90c
Merge remote-tracking branch 'origin/aether-rust-pioneer' into aether-rust-pioneer
...
# Conflicts:
# crates/aether-data-contracts/src/repository/usage/mod.rs
# crates/aether-data/src/repository/global_models/postgres.rs
# crates/aether-data/src/repository/usage/postgres/mod.rs
2026-05-05 18:53:14 +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
Entropy.Xu
ff1ed8b57d
feat(stats): 添加 Provider 性能统计分析
2026-05-05 11:24:16 +08:00
fawney19
33aa70c22b
fix scheduler affinity candidate selection
2026-04-30 16:27:24 +08:00
fawney19
e751289dfb
Support per-format provider key auth
2026-04-29 15:46:50 +08:00
fawney19
17f09fc8c1
Expose ranking metadata in request trace
2026-04-27 17:24:32 +08:00
fawney19
912a92cd1a
refactor(rules): 规则引擎容错优化,无效规则条目跳过而非中止整个规则集
...
- header/body rules 的 _are_locally_supported 简化为仅检查是否为数组
- apply 逻辑中遇到格式错误/不支持的规则条目改为 continue 跳过,而非 return false
- 允许非字符串 header value,自动序列化为 JSON 字符串
- 宽松处理无效 regex flag,不再拒绝整条规则
fix(gateway): Claude CLI 路由仅检查 bearer 头,不排斥同时携带 x-api-key 的请求
feat(observability): 监控链路候选展示解密 auth_config 的账号标签和 OAuth 计划类型
2026-04-25 19:46:52 +08:00
fawney19
5148370253
fix(usage): 修复含失败信号的 pending 请求被误判为活跃的问题
...
- pending/streaming 状态含 status_code >= 400 或 error_message 时视为 failed
- 候选状态派生改为 failed 优先于 stale pending/streaming
- 活跃请求轮询时保留失败信号字段的更新
- 图片流支持 partial_image 事件转发及从 response.completed 读取最终图片
2026-04-24 03:07:11 +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
c302dfe42d
fix(usage): 完善 cache-affinity 时间线的用户名回退与模型空值兜底
...
- 当 auth 用户查询失败时回退到历史 username,避免时间线丢失用户信息
- SQL 投影对 usage.model 使用 COALESCE 兜底空值
- IntervalTimelineCard 在刷新间隔为 0 时跳过定时刷新
- Usage 页面关闭时间线卡片的自动轮询
2026-04-19 16:07:01 +08:00
fawney19
41b51f10a9
perf: 并行化 admin 聚合路由并完善前端缓存预取
...
- gateway: usage detail / provider summary / pool overview / users list 改为 tokio join 并行拉取依赖数据
- usage: interval timeline 支持自动刷新并按查询区间动态展示,取消服务端 120 分钟过滤并在 ScatterChart 统一封顶
- frontend: 新增管理端导航预取工具及 SidebarNav/MainLayout 触发,admin 读接口统一走 cachedRequest 的短期缓存
- dashboard: request detail 支持短 TTL 缓存并在 UsageRecordsTable mousedown 时预取
- data: migrate 测试在 wait_for_postgres 失败时清理子进程,避免遗留
2026-04-19 15:17:25 +08:00
fawney19
3363592751
Refactor usage body capture and stream terminal reporting
2026-04-18 17:48:21 +08:00
RWDai and fawney19
ff4e853fd3
Fix/usage transfer filter ( #307 )
...
* fix(usage): 恢复 usage 列表中的 fallback 路由信号
* fix(admin): 支持 usage 记录展示和筛选 fallback 转移
* fix(usage): 在用户 usage 记录中暴露 fallback 标记
* fix(usage): 共享 usage 页面支持 fallback 筛选
* fix(usage): 对齐 fallback 筛选相关前端类型
* fix(usage): propagate has_fallback through active polling
---------
Co-authored-by: fawney19 <[email protected] >
2026-04-17 13:38:23 +08:00
Entropy.Xu and fawney19
6964729cb7
feat(payments): 增加兑换码与支付适配框架 ( #299 )
...
* feat(payments): 增加兑换码与支付适配框架
* fix(ci): 对齐 Rust 1.95 lint 与格式要求
* fix(payments): harden redeem code wallet credits
---------
Co-authored-by: fawney19 <[email protected] >
2026-04-17 10:07:52 +08:00
fawney19
faaaec28e1
fix(clippy): 修复冗余 into_iter、sort_by 及 match 嵌套 if 等 lint 警告
2026-04-17 01:43:45 +08:00
fawney19
1e0bc61526
feat(gateway/data): 新增 usage 关键词搜索、缓存命中摘要、结算成本摘要及 dashboard 聚合查询能力
...
- 新增 UsageAuditKeywordSearchQuery,支持多关键词、用户名、API Key 交叉过滤
- 新增 UsageCacheHitSummaryQuery/StoredUsageCacheHitSummary,统计请求缓存命中率
- 新增 UsageSettledCostSummaryQuery/StoredUsageSettledCostSummary,汇总结算成本
- 新增 UsageDashboardSummaryQuery、UsageBreakdownSummaryQuery 等 dashboard 聚合类型
- SQL 层实现对应查询方法,含 list_by_ids、list_usage_audits_by_keyword_search、count_usage_audits_by_keyword_search
- 将上述能力通过 GatewayDataState / AdminAppState 暴露给 handler 层
- user_me_usage 及 dashboard_filters 切换为新查询接口,移除旧的内存过滤逻辑
- 同步更新 memory 层及测试
2026-04-17 01:00:38 +08:00
fawney19
0dce667019
feat(tunnel/usage): proxy writer 双优先级队列、hub 连接压力感知选择、usage 请求记录级别控制及 trace 页面 proxy timing 增强
2026-04-16 20:14:50 +08:00
fawney19
65cd9dc3e5
fix(admin): 修复 usage 观测全表扫描并下推聚合查询
...
- 收紧 admin usage/stats 默认时间范围和 active 轮询查询
- 将 summary/records/aggregation/time-series/leaderboard 下推到 SQL 侧
- 统一前端时间参数并补齐 admin usage/stats 回归测试
2026-04-16 17:46:19 +08:00
fawney19
9a41b2c0dc
feat: 候选排序引入 API 格式偏好, 追踪页面展示完整格式转换信息
...
- 候选排序优先同 kind (chat/cli) 再同 family, 替代原有固定顺序
- 不再隐藏 format_conversion_disabled 候选, 保留完整追踪链路
- DecisionTrace 新增 provider/endpoint/key 格式转换相关字段
- 前端追踪面板新增 Key 支持端点和转换策略展示
2026-04-16 13:00:44 +08:00
fawney19
43e7ad112f
perf(usage): user-me usage 查询避免全量加载,默认限制 7 天范围
...
- UsageAuditListQuery 新增 limit 字段,支持在 SQL 层 LIMIT
- user-me usage 端点无时间范围时默认查最近 7 天
- active usage 端点无 ids 过滤时限制查最近 1 小时
- InMemory 实现同步支持 limit truncate
2026-04-15 16:25:57 +08:00
fawney19
4087e096f2
fix(usage): 为 InMemory 仓库补充 status 过滤逻辑
2026-04-15 09:53:52 +08:00
fawney19
8827c46c33
perf(usage): 将 status 过滤下推到 SQL 查询层
...
为 UsageAuditListQuery 新增 statuses 字段,支持在数据库端按状态
筛选用量记录。admin usage summary 路由不再全量拉取后内存过滤,
改为直接查询 pending/streaming 状态的记录。
2026-04-15 09:30:42 +08:00