RWDai
44c2534f46
Fix affinity monitoring CI checks
2026-05-07 15:24:17 +08:00
RWDai
cb9d9944e3
Improve affinity list display
2026-05-07 15:08:30 +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
RWDai
657f9f0be1
fix: carry session affinity through Gemini files
2026-05-05 12:25:07 +08:00
RWDai
628329e493
fix: scope scheduler effects by session
2026-05-05 12:25:07 +08:00
RWDai
82e7a0080e
fix: prefer client session adapters
2026-05-05 12:25:07 +08:00
RWDai
17b06bd4d6
refactor: abstract model fetch strategies
2026-05-05 11:23:54 +08:00
RWDai
5fcb49b08e
feat: wire specialized planner session affinity
2026-05-05 11:23:54 +08:00
RWDai
044ef59d81
feat: wire OpenAI responses session affinity
2026-05-05 11:23:54 +08:00
RWDai
51b191ad2c
feat: wire OpenAI chat session affinity
2026-05-05 11:23:54 +08:00
RWDai
e890a5c2f1
feat: wire standard family session affinity
2026-05-05 11:23:54 +08:00
RWDai
591dcf5cf2
feat: carry session affinity through candidate materialization
2026-05-05 11:23:54 +08:00
RWDai
58d6b2add6
feat: scope planner affinity cache by session
2026-05-05 11:23:54 +08:00
RWDai
bcd542f7ee
feat: pass session affinity through planner inputs
2026-05-05 11:23:54 +08:00
RWDai
37da4e245a
feat: scope tunnel affinity by client session
2026-05-05 11:23:54 +08:00
RWDai
9ef7952da5
fix: keep scheduler affinity out of runtime checks
2026-05-05 11:23:54 +08:00
RWDai
eb8878695a
feat: thread session affinity through scheduler selection
2026-05-05 11:23:54 +08:00
RWDai
c596d82dec
feat: pass session scope into scheduler cache
2026-05-05 11:23:54 +08:00
RWDai
96dd3fa4ca
feat: add gateway session affinity adapters
2026-05-05 11:23:54 +08:00
RWDai
14eeff8f75
fix: keep affinity out of scheduler eligibility
2026-05-05 11:23:54 +08:00
RWDai
2cbbd9ca36
feat: add session-aware scheduler keys
2026-05-05 11:23:54 +08:00
RWDai and fawney19
2b5247b9a8
fix(data): repair request candidate epoch created_at ( #343 )
...
Co-authored-by: fawney19 <[email protected] >
2026-04-30 09:23:21 +08:00
RWDai
b8205b5a09
Fix/usage json entity escaping ( #333 )
...
* fix(usage): 修复 JSON 视图实体转义显示
* fix(usage): 解码 OpenAI 工具参数实体
2026-04-25 16:41:25 +08:00
RWDai
cf7d129595
fix(proxy-nodes): allow management tokens with json null allowed_ips ( #317 )
...
* fix(proxy-nodes): allow management tokens with json null allowed_ips
* style(proxy-nodes): format regression test
2026-04-20 21:50:48 +08:00
RWDai and fawney19
425227509a
Fix/provider query cli model tests ( #312 )
...
* fix(admin): support openai cli provider-query model tests
* fix(admin): support claude and gemini cli provider-query model tests
* fix(admin): preserve provider-query prompts on cli fallback
* test(usage): relax async status wait for local usage checks
* fix(gateway): align provider-query CLI auth and headers
* fix(gateway): resolve provider-query clippy lint
---------
Co-authored-by: fawney19 <[email protected] >
2026-04-18 23:05:39 +08:00
RWDai and fawney19
dd4641d618
Fix/provider query non kiro tests ( #311 )
...
* fix(admin): enable local provider-query tests for non-kiro providers
* test(admin): cover non-kiro provider-query model execution
* fix(admin): preserve provider-query test errors and failover retries
* fix(admin): handle provider-query test alias and HTTP retry edges
* fix(admin): extend provider-query failover coverage and fallback behavior
* fix(admin): prefer supported endpoints for provider-query tests
* fix(admin): prefer provider-query endpoints with compatible keys
* fix(admin): fall back to compatible provider-query endpoints
* fix(admin): align provider-query local tests with transport policy
---------
Co-authored-by: fawney19 <[email protected] >
2026-04-17 19:45:20 +08:00
RWDai and fawney19
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
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
RWDai and fawney19
96a25d058b
Fix OpenAI family local auth to use bearer ( #302 )
...
* Fix OpenAI family local auth to use bearer
* test(gateway): fix bearer auth assertions for openai local flows
* test(usage): make local usage status wait resilient
* style(gateway): apply rustfmt to usage test helper
---------
Co-authored-by: fawney19 <[email protected] >
2026-04-17 11:10:05 +08:00
RWDai
37bb120d20
feat(aether-proxy): 支持 Alpine 主机服务安装与 musl 发布 ( #291 )
...
* feat(aether-proxy): 支持 Alpine 主机服务安装与 musl 发布
* fix(aether-proxy): address alpine support review findings
2026-04-13 17:20:22 +08:00
RWDai
ddd6adbcf7
feat(provider): support custom prompts for model tests ( #242 )
2026-03-19 13:11:54 +08:00
RWDai
b90d5095f1
Fix replay fallback when model mapping is missing
2026-03-18 23:54:19 +08:00
RWDai
a4505b1281
Fix usage replay model remapping
2026-03-18 23:54:19 +08:00
RWDai
3a5d687f08
fix: 配置导入导出版本号统一常量管理,移除前端硬编码版本校验
2026-02-11 17:06:06 +08:00
RWDai
3e4309eba3
Enhance LDAP auth config handling
2026-01-04 16:27:02 +08:00
RWDai
414f45aa71
Fix LDAP authentication stability
2026-01-04 13:09:55 +08:00
RWDai
ebdc76346f
revert: 回滚 _version.py 版本号变更
2026-01-04 11:25:58 +08:00
RWDai
64bfa955f4
feat(ldap): 完善 LDAP 认证功能和安全性
...
- 添加 LDAP 配置类型定义,移除 any 类型
- 首次配置 LDAP 时强制要求设置绑定密码
- 根据认证类型区分登录标识验证(本地需邮箱,LDAP 允许用户名)
- 添加 LDAP 过滤器转义函数防止注入攻击
- 增加 LDAP 连接超时设置
- 添加账户来源冲突检查,防止 LDAP 覆盖本地账户
- 添加用户名冲突自动重命名机制
2026-01-04 11:18:28 +08:00
RWDai
612992fa1f
Merge remote-tracking branch 'origin/master' into feature/ldap-authentication
2026-01-04 10:48:36 +08:00
RWDai
9bfb295238
feat: add ldap login
2026-01-02 16:17:24 +08:00
RWDai and Claude Sonnet 4.5
6bd8cdb9cf
feat: 实现邮箱验证注册功能
...
添加完整的邮箱验证注册系统,包括验证码发送、验证和限流控制:
- 新增邮箱验证服务模块(email_sender, email_template, email_verification)
- 更新认证API支持邮箱验证注册流程
- 添加注册对话框和验证码输入组件
- 完善IP限流器支持邮箱验证场景
- 修复前端类型定义问题,升级esbuild依赖
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Sonnet 4.5 <[email protected] >
2025-12-30 17:15:48 +08:00