1. 31 Jan, 2026 1 commit
  2. 30 Jan, 2026 1 commit
    • yangjianbo's avatar
      feat(账号): 添加 Sora 账号双表同步与创建 · 99dc3b59
      yangjianbo authored
      - 新增 sora_accounts 表与 accounts.extra GIN 索引\n- OpenAI OAuth 支持同时创建 Sora 账号并同步配置\n- Token 刷新同步关联 Sora 账号凭证与扩展表\n- 增加 Sora 账号连通性测试与前端开关文案
      99dc3b59
  3. 29 Jan, 2026 1 commit
    • yangjianbo's avatar
      feat(sora): 新增 Sora 平台支持并修复高危安全和性能问题 · 13262a56
      yangjianbo authored
      
      
      新增功能:
      - 新增 Sora 账号管理和 OAuth 认证
      - 新增 Sora 视频/图片生成 API 网关
      - 新增 Sora 任务调度和缓存机制
      - 新增 Sora 使用统计和计费支持
      - 前端增加 Sora 平台配置界面
      
      安全修复(代码审核):
      - [SEC-001] 限制媒体下载响应体大小(图片 20MB、视频 200MB),防止 DoS 攻击
      - [SEC-002] 限制 SDK API 响应大小(1MB),防止内存耗尽
      - [SEC-003] 修复 SSRF 风险,添加 URL 验证并强制使用代理配置
      
      BUG 修复(代码审核):
      - [BUG-001] 修复 for 循环内 defer 累积导致的资源泄漏
      - [BUG-002] 修复图片并发槽位获取失败时已持有锁未释放的永久泄漏
      
      性能优化(代码审核):
      - [PERF-001] 添加 Sentinel Token 缓存(3 分钟有效期),减少 PoW 计算开销
      
      技术细节:
      - 使用 io.LimitReader 限制所有外部输入的大小
      - 添加 urlvalidator 验证防止 SSRF 攻击
      - 使用 sync.Map 实现线程安全的包级缓存
      - 优化并发槽位管理,添加 releaseAll 模式防止泄漏
      
      影响范围:
      - 后端:新增 Sora 相关数据模型、服务、网关和管理接口
      - 前端:新增 Sora 平台配置、账号管理和监控界面
      - 配置:新增 Sora 相关配置项和环境变量
      Co-Authored-By: default avatarClaude Sonnet 4.5 <noreply@anthropic.com>
      13262a56
  4. 23 Jan, 2026 1 commit
  5. 20 Jan, 2026 3 commits
  6. 19 Jan, 2026 6 commits
  7. 18 Jan, 2026 5 commits
  8. 17 Jan, 2026 1 commit
    • ianshaw's avatar
      fix(ops): 统一 request-errors 和 SLA 的错误分类逻辑 · bc1d7edc
      ianshaw authored
      修复 request-errors 接口与 Dashboard Overview SLA 计算不一致的问题:
      - errors 视图现在只排除业务限制错误(余额不足、并发限制等)
      - 上游 429/529 错误现在包含在 errors 视图中,与 SLA 计算保持一致
      - excluded 视图现在只显示业务限制错误
      
      这确保了 request-errors 接口和 Dashboard 的 error_count_sla 使用相同的过滤逻辑。
      bc1d7edc
  9. 16 Jan, 2026 5 commits
  10. 15 Jan, 2026 9 commits
  11. 14 Jan, 2026 7 commits
    • IanShaw027's avatar
      feat(ops): 添加用户信息显示和搜索功能 · 2a6fb1e4
      IanShaw027 authored
      - 在错误日志列表和详情中显示用户邮箱
      - 在 GetErrorLogByID 中关联 users 表获取用户邮箱
      - 在 OpsErrorLogFilter 中添加 UserQuery 字段
      - 在 buildOpsErrorLogsWhere 中添加用户邮箱搜索条件
      - 在 GetErrorLogs handler 中支持 user_query 参数
      2a6fb1e4
    • IanShaw027's avatar
      fix(ops): 错误详情中显示账号和分组名称 · f25f992a
      IanShaw027 authored
      - 在 GetErrorLogByID 查询中添加 LEFT JOIN 关联查询
      - 关联 accounts 和 groups 表获取名称
      - 填充 AccountName 和 GroupName 字段
      f25f992a
    • IanShaw027's avatar
      fix(lint): 修复 golangci-lint 检查问题 · 841d7ef2
      IanShaw027 authored
      - 格式化代码(gofmt)
      - 修复空指针检查(staticcheck)
      - 删除未使用的函数(unused)
      841d7ef2
    • IanShaw027's avatar
      fix(ops): 优化错误日志查询和详情展示 · 9584af5c
      IanShaw027 authored
      - 新增 GetErrorLogByID 接口用于获取单个错误日志详情
      - 优化 GetErrorLogs 过滤逻辑,简化参数处理
      - 简化前端错误详情模态框代码,提升可维护性
      - 更新相关 API 接口和 i18n 翻译
      9584af5c
    • longgexx's avatar
      fix(test): 更新集成测试以匹配新的筛选参数签名 · 6fabddcb
      longgexx authored
         更新 usage_log_repo_integration_test.go 中的测试用例,
         使其与 GetUsageTrendWithFilters 和 GetModelStatsWithFilters
         方法的新签名保持一致。
      6fabddcb
    • longgexx's avatar
      fix(admin): 修复使用记录页面趋势图筛选联动和日期选择问题 · 806f402b
      longgexx authored
         修复两个问题:
         1. Token使用趋势图和模型分布图未响应筛选条件
         2. 上午时段选择今天刷新后日期回退到前一天
      
         前端修改:
         - 更新 dashboard API 类型定义,添加 model、account_id、group_id、stream 参数支持
         - 修改 UsageView 趋势图加载逻辑,传递所有筛选参数到后端
         - 修复日期格式化函数,使用本地时区避免 UTC 转换导致的日期偏移
      
         后端修改:
         - Handler 层:接收并解析所有筛选参数(model、account_id、group_id、stream)
         - Service 层:传递完整的筛选参数到 Repository 层
         - Repository 层:SQL 查询动态添加所有过滤条件
         - 更新接口定义和所有调用点以保持一致性
      
         影响范围:
         - /admin/dashboard/trend 端点现支持完整筛选
         - /admin/dashboard/models 端点现支持完整筛选
         - 用户在后台使用记录页面选择任意筛选条件时,趋势图和模型分布图会实时响应
         - 日期选择器在任何时区下都能正确保持今天的选择
      806f402b
    • LLLLLLiulei's avatar
      feat: enhance proxy management · 9bdb45be
      LLLLLLiulei authored
      9bdb45be