1. 01 Jan, 2026 1 commit
    • ianshaw's avatar
      feat(gemini): 添加 Google One 存储空间推断 Tier 功能 · 7df914af
      ianshaw authored
      ## 功能概述
      通过 Google Drive API 获取存储空间配额来推断 Google One 订阅等级,并优化统一的配额显示系统。
      
      ## 后端改动
      - 新增 Drive API 客户端 (drive_client.go)
        - 支持代理和指数退避重试
        - 处理 403/429 错误
      - 添加 Tier 推断逻辑 (inferGoogleOneTier)
        - 支持 6 种 tier 类型:AI_PREMIUM, GOOGLE_ONE_STANDARD, GOOGLE_ONE_BASIC, FREE, GOOGLE_ONE_UNKNOWN, GOOGLE_ONE_UNLIMITED
      - 集成到 OAuth 流程
        - ExchangeCode: 授权时自动获取 tier
        - RefreshAccountToken: Token 刷新时更新 tier (24小时缓存)
      - 新增管理 API 端点
        - POST /api/v1/admin/accounts/:id/refresh-tier (单个账号刷新)
        - POST /api/v1/admin/accounts/batch-refresh-tier (批量刷新)
      
      ## 前端改动
      - 更新 AccountQuotaInfo.vue
        - 添加 Google One tier 标签映射
        - 添加 tier 颜色样式 (紫色/蓝色/绿色/灰色/琥珀色)
      - 更新 AccountUsageCell.vue
        - 添加 Google One tier 显示逻辑
        - 根据 oauth_type 区分显示方式
      - 添加国际化翻译 (en.ts, zh.ts)
        - aiPremium, standard, basic, free, personal, unlimited
      
      ## Tier 推断规则
      - >= 2TB: AI Premium
      - >= 200GB: Google One Standard
      - >= 100GB: Google One Basic
      - >= 15GB: Free
      - > 100TB: Unlimited (G Suite legacy)
      - 其他/失败: Unknown (显示为 Personal)
      
      ## 优雅降级
      - Drive API 失败时使用 GOOGLE_ONE_UNKNOWN
      - 不阻断 OAuth 流程
      - 24小时缓存避免频繁调用
      
      ## 测试
      -  后端编译成功
      -  前端构建成功
      -  所有代码符合现有规范
      7df914af
  2. 26 Dec, 2025 3 commits
    • ianshaw's avatar
      feat(backend): 添加 OAuth 能力查询接口,改进 OAuth 客户端选择逻辑 · 632318ad
      ianshaw authored
      Handler 改进:
      - 添加 GET /api/v1/admin/gemini/oauth/capabilities 接口
      - 简化 GenerateAuthURL,redirect_uri 由服务层决定
      
      Repository 改进:
      - ExchangeCode/RefreshToken 根据 oauthType 选择正确的 OAuth 客户端
      - Code Assist 始终使用内置客户端,AI Studio 使用用户配置的客户端
      632318ad
    • ianshaw's avatar
      feat(backend): 添加 Gemini V1beta Handler 和路由 · 46cb82ba
      ianshaw authored
      - 新增 gemini_v1beta_handler.go: 代理原生 Google API 格式
      - 更新 gemini_oauth_handler.go: 移除 redirectUri,新增 oauthType
      - 更新 account_handler.go: 账户 Handler 增强
      - 更新 router.go: 注册 v1beta 路由
      - 更新 config.go: Gemini OAuth 通过环境变量配置
      - 更新 wire_gen.go: 依赖注入
      46cb82ba
    • ianshaw's avatar
      feat(handler): 添加 Gemini OAuth Handler 和完善依赖注入 · e36fb98f
      ianshaw authored
      - 新增 Gemini OAuth 授权处理器
      - 扩展账号和网关处理器支持 Gemini
      - 注册 Gemini 相关路由
      - 更新 Wire 依赖注入配置(所有层)
      - 更新 Docker Compose 配置
      e36fb98f