1. 08 Feb, 2026 3 commits
    • shaw's avatar
      feat(ui): OpenAI OAuth 账号支持批量 RT 输入创建 · 8a0a8558
      shaw authored
      新增通过手动输入 Refresh Token 创建 OpenAI OAuth 账号功能,
      参考 Anthropic sessionKey 批量创建方式:
      
      - useOpenAIOAuth 添加 validateRefreshToken 方法
      - accounts.ts 添加 refreshOpenAIToken API
      - AuthInputMethod 类型新增 refresh_token 选项
      - 支持多行输入 RT(每行一个)批量创建账号
      - 账号名称自动累加后缀 #1, #2 等
      - UI 显示 RT 数量徽章和批量创建提示
      - 添加中英文 i18n 翻译
      8a0a8558
    • shaw's avatar
      fix(ui): unify admin table toolbar layout with search and buttons in single row · b1c30df8
      shaw authored
      Standardize filter bar layout across admin pages to place search/filters
      on left and action buttons on right within the same row, improving
      visual consistency and space utilization.
      b1c30df8
    • erio's avatar
      refactor(upstream): replace upstream account type with apikey, auto-append /antigravity · fb58560d
      erio authored
      Upstream accounts now use the standard APIKey type instead of a dedicated
      upstream type. GetBaseURL() and new GetGeminiBaseURL() automatically append
      /antigravity for Antigravity platform APIKey accounts, eliminating the need
      for separate upstream forwarding methods.
      
      - Remove ForwardUpstream, ForwardUpstreamGemini, testUpstreamConnection
      - Remove upstream branch guards in Forward/ForwardGemini/TestConnection
      - Add migration 052 to convert existing upstream accounts to apikey
      - Update frontend CreateAccountModal to create apikey type
      - Add unit tests for GetBaseURL and GetGeminiBaseURL
      fb58560d
  2. 07 Feb, 2026 10 commits
  3. 06 Feb, 2026 4 commits
  4. 05 Feb, 2026 7 commits
  5. 03 Feb, 2026 9 commits
  6. 02 Feb, 2026 7 commits
    • bayma888's avatar
      feat(admin): add user balance/concurrency history modal · 606e29d3
      bayma888 authored
      - Add new API endpoint GET /admin/users/:id/balance-history with pagination and type filter
      - Add SumPositiveBalanceByUser for calculating total recharged amount
      - Create UserBalanceHistoryModal component with:
        - User info header (email, username, created_at, current balance, notes, total recharged)
        - Type filter dropdown (all/balance/admin_balance/concurrency/admin_concurrency/subscription)
        - Quick deposit/withdraw buttons
        - Paginated history list with icons and colored values
      - Add instant tooltip on balance column for better UX
      - Add z-index prop to BaseDialog for modal stacking control
      - Update i18n translations (zh/en)
      606e29d3
    • song's avatar
      chore: apply stashed changes · 3ecadf4a
      song authored
      3ecadf4a
    • song's avatar
      merge upstream main · 0170d19f
      song authored
      0170d19f
    • liuxiongfeng's avatar
      feat(groups): 添加从其他分组复制账号功能 · e1a4a7b8
      liuxiongfeng authored
      - 创建分组时可选择从已有分组复制账号
      - 编辑分组时支持同步账号(全量替换操作)
      - 仅允许选择相同平台的源分组
      - 添加完整的数据校验:去重、自引用检查、平台一致性检查
      - 前端支持多选源分组,带提示说明操作行为
      e1a4a7b8
    • shaw's avatar
      fix(types): 添加缺失的 ignore_invalid_api_key_errors 类型定义 · 7b1d63a7
      shaw authored
      OpsAdvancedSettings 接口缺少 ignore_invalid_api_key_errors 字段,
      导致 TypeScript 编译报错。
      7b1d63a7
    • Zero Clover's avatar
      feat(ops): 支持过滤无效 API Key 错误,不写入错误日志 · ad1cdba3
      Zero Clover authored
      新增 IgnoreInvalidApiKeyErrors 开关,启用后 INVALID_API_KEY 和
      API_KEY_REQUIRED 错误将被完全跳过,不写入 Ops 错误日志。
      这些错误由用户错误配置导致,与服务质量无关。
      ad1cdba3
    • 小北's avatar
      feat: 向用户显示管理员调整余额的备注 · ae18397c
      小北 authored
      - 为RedeemCode DTO添加notes字段(仅用于admin_balance/admin_concurrency类型)
      - 更新mapper使其有条件地包含备注信息
      - 在用户兑换历史UI中显示备注
      - 备注以斜体显示,悬停时显示完整内容
      
      用户现在可以看到管理员调整其余额的原因说明。
      
      Changes:
      - backend/internal/handler/dto/types.go: RedeemCode添加notes字段
      - backend/internal/handler/dto/mappers.go: 条件性填充notes
      - frontend/src/api/redeem.ts: TypeScript接口添加notes
      - frontend/src/views/user/RedeemView.vue: UI显示备注信息
      ae18397c