song
d2aaf0b491
refactor(service): 将 AccountUsageService 的包级缓存改为依赖注入
2026-01-03 13:10:43 +08:00
song
4543a6f043
refactor(antigravity): 统一额度刷新机制与 Claude 一致
...
将 Antigravity 的额度刷新从后台定时刷新改为按需获取模式,与 Claude 统一:
- 删除 AntigravityQuotaRefresher 后台服务
- 新增 QuotaFetcher 接口和 AntigravityQuotaFetcher 实现
- 前端改为调用 usage API 获取额度,支持 loading/error 状态
- 统一使用内存缓存(10 分钟 TTL)
2026-01-02 22:41:55 +08:00
Edric Li
3c3fed886f
feat(backend): add user custom attributes system
...
Add a flexible user attribute system that allows admins to define
custom fields for users (text, textarea, number, email, url, date,
select, multi_select types).
- Add Ent schemas for UserAttributeDefinition and UserAttributeValue
- Add service layer with validation logic
- Add repository layer with batch operations support
- Add admin API endpoints for CRUD and reorder operations
- Add batch API for loading attribute values for multiple users
- Add database migration (018_user_attributes.sql)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-01 18:58:34 +08:00
shaw
2a395d12a6
Merge branch 'feature/atomic-scheduling'
2026-01-01 11:05:22 +08:00
IanShaw027
06d483fa8d
feat(backend): implement gemini quota simulation and rate limiting
...
- feat: add local quota tracking for gemini tiers (Legacy/Pro/Ultra)
- feat: implement PreCheckUsage in RateLimitService
- feat: align gemini daily reset window with PST
- fix: sticky session fallback logic
2026-01-01 04:29:22 +08:00
IanShaw027
592d2d0978
feat(gateway): 实现负载感知的账号调度优化
...
- 新增调度配置:粘性会话排队、兜底排队、负载计算、槽位清理
- 实现账号级等待队列和批量负载查询(Redis Lua 脚本)
- 三层选择策略:粘性会话优先 → 负载感知选择 → 兜底排队
- 后台定期清理过期槽位,防止资源泄漏
- 集成到所有网关处理器(Claude/Gemini/OpenAI)
2026-01-01 04:01:51 +08:00
song
08ce6de4db
feat(antigravity): 添加配额窗口显示功能
...
后端:
- 新增 AntigravityQuotaRefresher 定时刷新配额
- Client 添加 FetchAvailableModels 方法获取模型配额
- 配额数据存入 account.extra.quota 字段
前端:
- AccountUsageCell 支持显示 Antigravity 账户配额
- UsageProgressBar 新增 amber 颜色
- 显示 G3P/G3F/G3I/C4.5 四个配额进度条
2025-12-28 22:29:01 +08:00
song
1d085d982b
feat: 完善 Antigravity 多平台网关支持,修复 Gemini handler 分流逻辑
2025-12-28 17:48:52 +08:00
song
6648e6506c
feat: 添加 Antigravity (Cloud AI Companion) OAuth 授权支持
2025-12-28 15:54:42 +08:00
noreply
cbfce49aa1
feat: Schedule batch update for account last_used_at
...
Implement deferred batch update mechanism to reduce database load:
- Add DeferredService for batching account last_used_at updates
- Add TimingWheelService for efficient recurring task scheduling
- Integrate with GatewayService and OpenAIGatewayService
- Implement BatchUpdateLastUsed repository method using CASE...WHEN SQL
- Fix golangci-lint error: Replace interface{} with any
Benefits:
- Reduces database writes by batching updates (10-second intervals)
- Improves request throughput by deferring non-critical updates
- Maintains accurate account usage tracking for scheduling
2025-12-28 09:49:54 +08:00
ianshaw
e36fb98fb9
feat(handler): 添加 Gemini OAuth Handler 和完善依赖注入
...
- 新增 Gemini OAuth 授权处理器
- 扩展账号和网关处理器支持 Gemini
- 注册 Gemini 相关路由
- 更新 Wire 依赖注入配置(所有层)
- 更新 Docker Compose 配置
2025-12-26 00:09:46 -08:00
Forest
57fd172287
refactor: 调整 server 目录结构
2025-12-26 10:42:35 +08:00
Forest
f51ad2e126
refactor: 删除 ports 目录
2025-12-25 17:15:01 +08:00
ianshaw
6553828008
feat(account): 添加从 CRS 同步账户功能
...
- 添加账户同步 API 接口 (account_handler.go)
- 实现 CRS 同步服务 (crs_sync_service.go)
- 添加前端同步对话框组件 (SyncFromCrsModal.vue)
- 更新账户管理界面支持同步操作
- 添加账户仓库批量创建方法
- 添加中英文国际化翻译
- 更新依赖注入配置
2025-12-24 08:48:58 -08:00
Forest
836c4dda2b
refactor: 重命名 go module
2025-12-24 21:07:21 +08:00
Forest
bbf4024dc7
refactor(usage): 移动 usage 查询到 services
2025-12-24 08:41:31 +08:00
shaw
6c469b42ed
feat: 新增支持codex转发
2025-12-22 22:58:31 +08:00
shaw
adebd941e1
fix: 修复Oauth账号自动刷新token失败的bug
2025-12-20 13:01:58 +08:00
Forest
cceada7dae
refactor(backend): service http ports
2025-12-20 11:57:02 +08:00
Forest
236908c03d
refactor(backend): 拆分 Wire ProviderSet
2025-12-19 00:03:29 +08:00