• IanShaw027's avatar
    fix(gemini): 修复 P0/P1 级别问题(429误判/Tier丢失/expires_at/前端一致性) · e4928177
    IanShaw027 authored
    P0 修复(Critical - 影响生产稳定性):
    - 修复 429 判断逻辑:使用 project_id 判断而非 account.Type
      防止 AI Studio OAuth 被误判为 Code Assist 5分钟窗口
    - 修复 Tier ID 丢失:刷新时始终保留旧值,默认 LEGACY
      防止 fetchProjectID 失败导致 tier_id 被清空
    - 修复 expires_at 下界:添加 minTTL=30s 保护
      防止 expires_in <= 300 时生成过去时间引发刷新风暴
    
    P1 修复(Important - 行为一致性):
    - 前端 isCodeAssist 判断与后端一致(支持 legacy)
    - 前端日期解析添加 NaN 保护
    - 迁移脚本覆盖 legacy 账号
    
    前端功能(新增):
    - AccountQuotaInfo 组件:Tier Badge + 二元进度条 + 倒计时
    - 定时器动态管理:watch 监听限流状态
    - 类型定义:GeminiCredentials 接口
    
    测试:
    -  TypeScript 类型检查通过
    -  前端构建成功(3.33s)
    -  Gemini + Codex 双 AI 审查通过
    
    Refs: #gemini-quota
    e4928177
gemini_messages_compat_service.go 65.6 KB