1. 30 Apr, 2026 1 commit
  2. 26 Apr, 2026 1 commit
  3. 23 Apr, 2026 4 commits
    • erio's avatar
      feat(monitor): proportion-based overall status + reusable auto-refresh · 0dcc0e05
      erio authored
      - Change overall status logic: >50% failed = UNAVAILABLE, any failed
        or degraded = DEGRADED, all ok = OPERATIONAL
      - Extract useAutoRefresh composable with localStorage persistence
      - Create AutoRefreshButton dropdown component (reusable)
      - Integrate auto-refresh into channel status page via MonitorHero
      0dcc0e05
    • erio's avatar
      revert: remove fork-only changes from release sync · 67518a59
      erio authored
      Revert payment/wechat, sora/claude-max cleanup, fork-only migrations,
      and cosmetic changes that were brought in by the release sync commit.
      Keep only channel-monitor related improvements:
      - PublicSettingsInjectionPayload named struct with drift test
      - ChannelMonitorRunner graceful shutdown in wire
      - image_output_price in SupportedModelChip
      - Simplified buildSelfNavItems in AppSidebar
      - Gateway WARN logs for 503 branches
      67518a59
    • erio's avatar
      chore: remove test files deleted in release · 49787269
      erio authored
      HelpTooltip.spec.ts and PaymentProviderDialog.spec.ts were removed
      in release/custom-0.1.115; commit the deletion.
      49787269
    • erio's avatar
      sync: bring over remaining release/custom-0.1.115 changes · 748a84d8
      erio authored
      - Extract PublicSettingsInjectionPayload named struct with drift test
      - Add channel_monitor_default_interval_seconds to SSR injection
      - Add image_output_price to SupportedModelChip
      - Simplify AppSidebar buildSelfNavItems (admins see available channels)
      - Add gateway WARN logs for 503 no-available-accounts branches
      - Wire ChannelMonitorRunner into provideCleanup for graceful shutdown
      - Add migrations 130/131 (CC template userid fix + mimicry field cleanup)
      - Clean up fork-only features (sora, claude max simulation, client affinity)
      - Remove ~320 obsolete i18n keys
      - Add codexUsage utility, WechatServiceButton, BulkEditAccountModal
      - Tidy go.sum
      748a84d8
  4. 22 Apr, 2026 1 commit
  5. 21 Apr, 2026 1 commit
    • erio's avatar
      feat(sidebar+groups): available-channels above channel-status; show rate for subscription groups · 9dae6c7a
      erio authored
      - Sidebar user-side order: /available-channels now sits directly above
        /monitor (渠道状态) for regular users, mirroring the admin section where
        it sits above /admin/channels.
      - GroupBadge gains an alwaysShowRate prop. Subscription groups default to
        a "订阅"/days-remaining label; the new flag swaps that for the rate
        multiplier while keeping the subscription theme color, so the Available
        Channels page can surface rates on every group type.
      9dae6c7a
  6. 12 Apr, 2026 1 commit
  7. 10 Apr, 2026 2 commits
  8. 09 Apr, 2026 3 commits
    • IanShaw027's avatar
      5f8e60a1
    • IanShaw027's avatar
    • IanShaw027's avatar
      fix(ui): 修复在 macOS 系统下数据表格横向滚动条闪隐和消失的问题 · fe211fc5
      IanShaw027 authored
      问题原因:
      原本的 `style.css` 代码全局使用了 W3C 标准属性 (`scrollbar-width`)。而在 Chrome 121+ 以及 Safari 环境下,一旦匹配到 W3C 标准属性,浏览器就会放弃 WebKit 的定制样式,全面交由操作系统原生渲染。因为 macOS 原生的滚动条特性就是“不滚动时自动隐藏”,加之原本又配置了全局 hover 时才显色的透明度逻辑,最终导致在苹果系统下数据表常常无法明显看出横向滚动条。
      
      修复方式:
      1. 在 `style.css` 中增加 `@supports (-moz-appearance:none)`,将对全局 `scrollbar-width` 的干预严格隔离限制在 Firefox 浏览器内,防止误伤 Chrome 等 WebKit 系浏览器。
      2. 移除旧版代码中对 `.table-wrapper` 直接定义的 `scrollbar-width` 和透明覆盖。
      3. 在 `DataTable.vue` 内部,通过 `!important` 将 Webkit 专属定制外观(12px高度,实心圆角灰色轨道)的优先权推至最高,强制覆盖透明隐身规则。
      4. 为底层 table 添加了 `min-w-max` 属性,强制阻止内容宽度受限于屏幕边界带来的收缩,充分保证合理超出范围而触发常驻横向溢出。
      fe211fc5
  9. 05 Apr, 2026 1 commit
  10. 02 Apr, 2026 1 commit
  11. 25 Mar, 2026 2 commits
    • QTom's avatar
      feat(antigravity): 从 LoadCodeAssist 复用 TierInfo 提取 plan_type · f6fd7c83
      QTom authored
      复用已有 GetTier() 返回的 tier ID(free-tier / g1-pro-tier /
      g1-ultra-tier),通过 TierIDToPlanType 映射为 Free / Pro / Ultra,
      在 loadProjectIDWithRetry 中顺带提取并写入 credentials.plan_type;
      前端增加 Abnormal 异常套餐红色标记。
      
      Made-with: Cursor
      f6fd7c83
    • QTom's avatar
      feat(antigravity): 自动设置隐私并支持后台手动重试 · c2965c0f
      QTom authored
      新增 Antigravity OAuth 隐私设置能力,在账号创建、刷新、导入和后台
      Token 刷新路径自动调用 setUserSettings + fetchUserInfo 关闭遥测;
      持久化后同步内存 Extra,错误处理改为日志记录。
      
      Made-with: Cursor
      c2965c0f
  12. 19 Mar, 2026 2 commits
  13. 18 Mar, 2026 2 commits
    • erio's avatar
      perf(frontend): add virtual scrolling to DataTable · a20c2111
      erio authored
      Replace direct row rendering with @tanstack/vue-virtual. The table
      now only renders visible rows (~20) via padding <tr> placeholders,
      eliminating the rendering bottleneck when displaying 100+ rows with
      heavy cell components.
      
      Key changes:
      - DataTable.vue: integrate useVirtualizer (always-on), virtual row
        template with measureElement for variable row heights, defineExpose
        virtualizer/sortedData for external access, overflow-y/flex CSS
      - useSwipeSelect.ts: dual-mode support via optional
        SwipeSelectVirtualContext — data-driven row index lookup and
        selection range when virtualizer is present, original DOM-based
        path preserved for callers that don't pass virtualContext
      a20c2111
    • QTom's avatar
      feat(admin): 分组管理新增容量列(并发/会话/RPM 实时聚合) · d4cc9871
      QTom authored
      
      
      复用 GroupCapacityService,在 admin 分组列表中添加容量列,
      显示每个分组的实时并发/会话/RPM 使用量和上限。
      Co-Authored-By: default avatarClaude Opus 4.6 (1M context) <noreply@anthropic.com>
      d4cc9871
  14. 16 Mar, 2026 1 commit
  15. 14 Mar, 2026 1 commit
    • SsageParuders's avatar
      refactor: merge bedrock-apikey into bedrock with auth_mode credential · 4644af2c
      SsageParuders authored
      Consolidate two separate channel types (bedrock + bedrock-apikey) into
      a single "AWS Bedrock" channel. Authentication mode is now distinguished
      by credentials.auth_mode ("sigv4" | "apikey") instead of separate types.
      
      Backend:
      - Remove AccountTypeBedrockAPIKey constant
      - IsBedrock() simplified; IsBedrockAPIKey() checks auth_mode
      - Add IsAPIKeyOrBedrock() helper to eliminate repeated type checks
      - Extend pool mode, quota scheduling, and billing to bedrock
      - Add RetryableOnSameAccount to handleBedrockUpstreamErrors
      - Add "bedrock" scope to Beta Policy for independent control
      
      Frontend:
      - Merge two buttons into one "AWS Bedrock" with auth mode radio
      - Badge displays "Anthropic | AWS"
      - Pool mode and quota limit UI available for bedrock
      - Quota display in account list (usage bars, capacity badges, reset)
      - Remove all bedrock-apikey type references
      4644af2c
  16. 13 Mar, 2026 1 commit
  17. 12 Mar, 2026 1 commit
  18. 09 Mar, 2026 2 commits
    • kyx236's avatar
      fix: OpenAI临时性400错误支持池模式同账号重试 & HelpTooltip层级修复 · 5fa22fdf
      kyx236 authored
      1. 识别OpenAI "An error occurred while processing your request" 临时性400错误
         并触发failover,同时在池模式下标记RetryableOnSameAccount,允许同账号重试
      2. ForwardAsAnthropic路径同步支持临时性400错误的识别和同账号重试
      3. HelpTooltip组件使用Teleport渲染到body,修复在dialog内被裁切的问题
      5fa22fdf
    • QTom's avatar
      feat: 从 OpenAI JWT 提取 chatgpt_plan_type 并在前端展示 · a582aa89
      QTom authored
      OAuth 授权和 token 刷新时从 id_token 的 OpenAI auth claim 中
      提取 chatgpt_plan_type(plus/team/pro/free),存入 credentials,
      账号管理页面 PlatformTypeBadge 显示订阅类型。
      a582aa89
  19. 08 Mar, 2026 2 commits
    • bayma888's avatar
      feat(ui): 优化分组选择器交互体验 · 2ebbd4c9
      bayma888 authored
      - 分组下拉添加搜索框,支持按名称/描述快速筛选
      - 新建/编辑密钥弹窗的分组选择也支持搜索
      - 智能弹出方向:底部空间不足时自动向上弹出
      - 倍率独立为平台配色的圆角标签,更醒目
      - 分组名称加粗,名称与描述之间增加间距
      - 分组选项之间添加分隔线,视觉更清晰
      - 切换图标旁增加"选择分组"文字提示
      - 下拉宽度自适应内容长度
      - i18n: 新增 searchGroup、noGroupFound 词条 (en/zh)
      2ebbd4c9
    • bayma888's avatar
      fix(ui): improve group selector dropdown width and visibility · 785115c6
      bayma888 authored
      - Increase Select dropdown max-width from 320px to 480px for better content display
      - Change KeysView group selector from fixed 256px to adaptive 280-480px width
      - Make group switch icon always visible (60% opacity, 100% on hover)
      - Allow group description to wrap to 2 lines instead of truncating
      - Improve user experience for group selection in API keys page
      785115c6
  20. 07 Mar, 2026 2 commits
  21. 02 Mar, 2026 2 commits
  22. 14 Feb, 2026 1 commit
  23. 13 Feb, 2026 1 commit
    • wucm667's avatar
      修复:StatCard 数值溢出问题 · be56a282
      wucm667 authored
      - 添加 title 属性,鼠标悬停时显示完整数值
      - 添加 truncate 类防止数值溢出
      - 优化长数值的显示效果
      be56a282
  24. 09 Feb, 2026 1 commit
    • erio's avatar
      fix: pass platform prop to GroupBadge in GroupSelector · 470b37be
      erio authored
      GroupBadge in GroupSelector was missing the platform prop, causing all
      group badges in account edit/detail pages to use fallback colors instead
      of platform-specific colors (e.g. Claude=orange, Gemini=blue).
      470b37be
  25. 06 Feb, 2026 1 commit
  26. 05 Feb, 2026 2 commits