github-actions[bot]
fa2fc2fb16
chore: sync VERSION file with release v1.1.236 [skip ci]
v1.1.236
2025-12-19 07:50:25 +00:00
Wesley Liddick
6d56601550
Merge pull request #821 from guoyongchang/feat/cron-test-support
...
feat: Claude账户定时测试功能
2025-12-19 02:50:08 -05:00
guoyongchang
dd8a0c95c3
fix: use template literals instead of string concatenation
...
- Convert string concatenation to template literals per ESLint prefer-template rule
- Fixes ESLint errors in sessionKeyPrefix logging (lines 281, 330)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2025-12-19 15:46:38 +08:00
guoyongchang
126eee3712
feat/cron-test-support format fix.
2025-12-19 14:59:47 +08:00
guoyongchang
26bfdd6892
[feat/cron-test-support]optimize.
2025-12-19 14:03:31 +08:00
guoyongchang
cd3f51e9e2
refactor: optimize cron test support feature
...
**优化内容:**
1. **验证和安全性加强**
- 移除cron验证重复,统一使用accountTestSchedulerService.validateCronExpression()方法
- 添加model参数类型和长度验证(max 256 chars)
- 限制cronExpression长度至100字符防止DoS攻击
- 双层验证:service层和route层都进行长度检查
2. **性能优化**
- 优化_refreshAllTasks()使用Promise.all()并行加载所有平台配置(之前是顺序加载)
- 改进错误处理,平台加载失败时继续处理其他平台
3. **数据管理改进**
- 为test config添加1年TTL过期机制(之前没有过期设置)
- 保证test history已有30天TTL和5条记录限制
4. **错误响应标准化**
- 统一所有API响应格式,确保error状态都包含message字段
- 改进错误消息的可读性和上下文信息
5. **用户体验改进**
- Vue组件使用showToast()替代原生alert()
- 移除console.error()改用toast通知用户
- 成功保存时显示成功提示
6. **代码整理**
- 移除未使用的maxConcurrentTests变量及其getStatus()中的引用
- 保持代码整洁性
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2025-12-19 13:39:39 +08:00
guoyongchang
9977245d59
feat/cron-test-support package lock fix.
2025-12-19 13:32:16 +08:00
guoyongchang
09cf951cdc
[feat/cron-test-support]done.
2025-12-19 10:25:43 +08:00
Wesley Liddick
53cda0fd18
Merge pull request #806 from XiaoXice/main [skip ci]
...
fix: 全时间api-token统计因为日token记录过期导致不准的问题
2025-12-16 19:34:35 -05:00
Wesley Liddick
151cb7536c
Merge pull request #808 from SilentFlower/fix/openai-scheduler-priority [skip ci]
...
fix(scheduler): 恢复OpenAI 账号选择支持 priority + lastUsedAt
2025-12-16 19:33:18 -05:00
huajiwuyan
052e236a93
fix(scheduler): 恢复OpenAI 账号选择支持 priority + lastUsedAt
2025-12-15 23:17:44 +08:00
XiaoXice
c79ea19aa1
fix: 全时间api-token统计因为日token记录过期导致不准的问题
2025-12-15 15:14:09 +08:00
github-actions[bot]
79f2cebdb8
chore: sync VERSION file with release v1.1.235 [skip ci]
v1.1.235
2025-12-15 01:48:14 +00:00
Wesley Liddick
bd7b8884ab
Merge pull request #801 from miraserver/fix/cost-calculation-and-ui-display
...
fix: correct API key cost calculation and UI display issues
2025-12-14 20:48:00 -05:00
github-actions[bot]
38e0adb499
chore: sync VERSION file with release v1.1.234 [skip ci]
v1.1.234
2025-12-15 01:44:56 +00:00
shaw
7698f5ce11
chore: 增加opus4.5快捷映射按钮
2025-12-15 09:44:36 +08:00
shaw
ce13e5ddb1
fix: console账号转发使用白名单透传header
2025-12-15 09:38:51 +08:00
John Doe
baafebbf7b
fix: correct API key cost calculation and UI display issues
...
- Fix admin panel cost display for "all time" period using permanent Redis key
- Fix user statistics total cost limit to show complete history
- Fix restricted models list overflow with scrollable container
Backend changes:
- src/routes/admin/apiKeys.js: Use allTimeCost for timeRange='all' instead of scanning TTL keys
- src/routes/apiStats.js: Prioritize permanent usage:cost:total key over monthly keys
Frontend changes:
- web/admin-spa/src/components/apistats/LimitConfig.vue: Add overflow-visible and scrolling to model list
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-12 18:11:02 +03:00
github-actions[bot]
87426133a2
chore: sync VERSION file with release v1.1.233 [skip ci]
v1.1.233
2025-12-12 06:58:37 +00:00
Wesley Liddick
60f5cbe780
Merge pull request #800 from DaydreamCoding/feature/concurrency-queue
...
feat: enhance concurrency queue with health check and admin endpoints
2025-12-12 01:58:24 -05:00
Wesley Liddick
86d8ed52d7
Merge pull request #799 from kikii16/main [skip ci]
...
尝试自定义请求体maxSize大小
2025-12-12 01:58:12 -05:00
DaydreamCoding
07633ddbf8
feat: enhance concurrency queue with health check and admin endpoints
...
- Add queue health check for fast-fail when overloaded (P90 > threshold)
- Implement socket identity verification with UUID token
- Add wait time statistics (P50/P90/P99) and queue stats tracking
- Add admin endpoints for queue stats and cleanup
- Add CLEAR_CONCURRENCY_QUEUES_ON_STARTUP config option
- Update documentation with troubleshooting and proxy config guide
2025-12-12 14:32:09 +08:00
kikii16
dd90c426e4
Update docker-compose.yml
2025-12-12 11:38:31 +08:00
kikii16
059357f834
Update .env.example
2025-12-12 11:36:01 +08:00
kikii16
ceee3a9295
Update auth.js
2025-12-12 11:34:46 +08:00
Wesley Liddick
403f609f69
Merge pull request #797 from thejoven/patch-1 [skip ci]
...
修改提醒内容:新版 gemini-cli 的 Access Token 位置和文件名已变更
2025-12-11 21:10:07 -05:00
thejoven
304c8dda4e
Update AccountForm.vue
...
新版 gemini-cli 的 Access Token 位置和文件名已变更
2025-12-12 00:43:11 +08:00
github-actions[bot]
c4d923c46f
chore: sync VERSION file with release v1.1.232 [skip ci]
v1.1.232
2025-12-11 02:46:31 +00:00
Wesley Liddick
fa9f9146a2
Merge pull request #793 from qq790716890/main
...
fix:修复codex统计token问题
2025-12-10 21:46:15 -05:00
Wesley Liddick
dc9409a5a6
Merge pull request #788 from atoz03/main [skip ci]
...
fix: 账户列表默认显示限额/限流账号并加固加载健壮性
2025-12-10 21:44:55 -05:00
LZY
51aa8dc381
fix:修复codex统计token问题
2025-12-10 22:56:25 +08:00
github-actions[bot]
5061f4d9fd
chore: sync VERSION file with release v1.1.231 [skip ci]
v1.1.231
2025-12-10 12:11:39 +00:00
Wesley Liddick
4337af06d4
Merge pull request #791 from DaydreamCoding/feature/log-opt
...
fix: improve logging for client disconnections in relay services
2025-12-10 07:11:24 -05:00
Wesley Liddick
d226d57325
Merge pull request #790 from DaydreamCoding/patch-4 [skip ci]
...
fix(security): add authenticateAdmin middleware to concurrency routes
2025-12-10 07:11:07 -05:00
Wesley Liddick
9f92c58640
Merge pull request #789 from DaydreamCoding/feature/user-message-queue-optimize [skip ci]
...
feat(queue): 优化用户消息队列锁释放时机
2025-12-10 07:10:38 -05:00
QTom
8901994644
fix: improve logging for client disconnections in relay services
...
当客户端主动断开连接时,改为使用 INFO 级别记录而不是 ERROR 级别,
因为这是正常情况而非错误。
- ccrRelayService: 区分客户端断开与实际错误
- claudeConsoleRelayService: 区分客户端断开与实际错误
- claudeRelayService: 区分客户端断开与实际错误
- droidRelayService: 区分客户端断开与实际错误
2025-12-10 14:18:44 +08:00
QTom
e3ca555df7
fix(security): add authenticateAdmin middleware to concurrency routes
...
fix(security): add authenticateAdmin middleware to concurrency routes
All concurrency management endpoints were missing authentication,
allowing unauthenticated access to view and clear concurrency data.
2025-12-10 13:59:25 +08:00
QTom
3b9c96dff8
feat(queue): 优化用户消息队列锁释放时机
...
将队列锁释放时机从"请求完成后"提前到"请求发送后",因为 Claude API
限流(RPM)基于请求发送时刻计算,无需等待响应完成。
主要变更:
- 移除锁续租机制(startLockRenewal、refreshUserMessageLock)
- 所有 relay 服务在请求发送成功后立即释放锁
- 流式请求通过 onResponseStart 回调在收到响应头时释放
- 调整默认配置:timeoutMs 60s→5s,lockTtlMs 120s→5s
- 新增 USER_MESSAGE_QUEUE_LOCK_TTL_MS 环境变量支持
2025-12-10 01:26:00 +08:00
github-actions[bot]
cb94a4260e
chore: sync VERSION file with release v1.1.230 [skip ci]
v1.1.230
2025-12-09 10:59:05 +00:00
Wesley Liddick
ac9499aa6d
Merge pull request #787 from DaydreamCoding/feature/user-message-queue-fix
...
feat: 修复 userMessageQueue 配置缺失导致的 500 错误
2025-12-09 05:58:35 -05:00
atoz03
fc25840f95
fix: 账户列表默认显示限额/限流账号并加固加载健壮性
...
- 将账户页状态筛选默认值从 normal 改为 all,额度满/限流/异常账号默认可见
- appendAccounts 使用 Array.isArray 兜底接口响应,避免空/异常数据导致“加载账户失败”
- 便于在额度耗尽场景查看并处理账号
2025-12-09 18:49:57 +08:00
QTom
b409adf9d8
feat: 修复 userMessageQueue 配置缺失导致的 500 错误
...
- 在 config.example.js 添加缺失的 userMessageQueue 配置段
- 在 userMessageQueueService.js 添加防御性代码,当配置未定义时使用默认值
修复 #783 合并后新用户安装报错:
Cannot read properties of undefined (reading 'enabled')
2025-12-09 18:41:13 +08:00
github-actions[bot]
b76776d7b0
chore: sync VERSION file with release v1.1.229 [skip ci]
v1.1.229
2025-12-09 09:49:01 +00:00
Wesley Liddick
8499992abd
Merge pull request #783 from DaydreamCoding/feature/user-message-queue
...
feat: 添加用户手动输入的消息串行队列功能,防止同账户并发请求触发限流&封号
2025-12-09 04:48:49 -05:00
QTom
dc96447d72
style: 格式化文件以符合 Prettier 规范
2025-12-09 17:18:43 +08:00
QTom
f5d1c25295
feat: 添加用户消息串行队列功能,防止同账户并发请求触发限流
...
- 新增 userMessageQueueService.js 实现基于 Redis 的队列锁机制
- 在 claudeRelayService、claudeConsoleRelayService、bedrockRelayService、ccrRelayService 中集成队列锁
- 添加 Redis 原子性 Lua 脚本:acquireUserMessageLock、releaseUserMessageLock、refreshUserMessageLock
- 支持锁续租机制,防止长时间请求锁过期
- 添加可配置参数:USER_MESSAGE_QUEUE_ENABLED、USER_MESSAGE_QUEUE_DELAY_MS、USER_MESSAGE_QUEUE_TIMEOUT_MS
- 添加 Web 管理界面配置入口
- 添加 logger.performance 方法用于结构化性能日志
- 添加完整单元测试 (tests/userMessageQueue.test.js)
2025-12-09 17:04:01 +08:00
github-actions[bot]
95870883a1
chore: sync VERSION file with release v1.1.228 [skip ci]
v1.1.228
2025-12-08 13:05:52 +00:00
shaw
aa71c58400
fix: 修复强制会话绑定首次会话的bug
2025-12-08 21:05:21 +08:00
github-actions[bot]
698f3d7daa
chore: sync VERSION file with release v1.1.227 [skip ci]
v1.1.227
2025-12-08 08:10:44 +00:00
shaw
5af5e55d80
chore: trigger release [force release]
...
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-08 16:10:09 +08:00