1. 19 Jan, 2026 7 commits
  2. 18 Jan, 2026 7 commits
  3. 17 Jan, 2026 14 commits
  4. 16 Jan, 2026 12 commits
    • IanShaw027's avatar
      fix(openai): 使用 prompt_cache_key 兜底粘性会话 · ae21db77
      IanShaw027 authored
      opencode 请求不带 session_id/conversation_id,导致粘性会话失效。现在按 header 优先、prompt_cache_key 兜底生成 session hash,并补充单测验证优先级。
      ae21db77
    • song's avatar
      fix(antigravity): 429 时也切换 URL 重试 · ac7503d9
      song authored
      - 429 优先切换到下一个 URL 重试
      - 只有所有 URL 都返回 429 时才限流账户并返回错误
      - 与 client.go 中的逻辑保持一致
      ac7503d9
    • song's avatar
      feat(antigravity): 动态 URL 排序,最近成功的优先使用 · 69c4b17a
      song authored
      - URLAvailability 新增 lastSuccess 字段追踪最近成功的 URL
      - GetAvailableURLs 返回列表时优先放置 lastSuccess
      - 所有 Antigravity API 调用成功后调用 MarkSuccess 更新优先级
      69c4b17a
    • IanShaw027's avatar
      fix(gemini): 更新 Gemini 模型列表配置 · 28e46e0e
      IanShaw027 authored
      - 移除已弃用的 1.5 系列模型
      - 调整模型优先级顺序(2.0 Flash > 2.5 Flash > 2.5 Pro > 3.0 Preview)
      - 同步前后端模型配置
      - 更新相关测试用例和默认模型选择逻辑
      28e46e0e
    • shaw's avatar
      feat: 添加5h窗口费用控制和会话数量限制 · 73794233
      shaw authored
      - 支持Anthropic OAuth/SetupToken账号的5h窗口费用阈值控制
      - 支持账号级别的并发会话数量限制
      - 使用Redis缓存窗口费用(30秒TTL)减少数据库压力
      - 费用计算基于标准费用(不含账号倍率)
      73794233
    • song's avatar
      feat(scheduling): 兜底层账户选择策略可配置 · 1be3eaca
      song authored
      - gateway.scheduling.fallback_selection_mode: "last_used"(默认) 或 "random"
      - last_used: 按最后使用时间排序(轮询效果)
      - random: 同优先级内随机选择
      1be3eaca
    • song's avatar
      feat(gateway): 账户切换次数和 Antigravity 限流时间可配置 · 34d6b0a6
      song authored
      - gateway.max_account_switches: 账户切换最大次数,默认 10
      - gateway.max_account_switches_gemini: Gemini 账户切换次数,默认 3
      - gateway.antigravity_fallback_cooldown_minutes: Antigravity 429 fallback 限流时间,默认 5 分钟
      - Antigravity 429 不再重试,直接标记账户限流
      34d6b0a6
    • song's avatar
      fix(antigravity): 429 重试3次后限流账户 · 2055a60b
      song authored
      - 收到429后重试最多3次(指数退避)
      - 3次都失败后调用 handleUpstreamError 限流账户
      - 移除无效的 URL fallback 逻辑(当前只有一个URL)
      2055a60b
    • song's avatar
      fix(antigravity): 429 fallback 改为 5 分钟并限流整个账户 · cc892744
      song authored
      - fallback 时间从 1 分钟改为 5 分钟
      - fallback 时直接限流整个账户而非仅限制 quota scope
      cc892744
    • longgexx's avatar
      修复格式问题。 · 392a8ac7
      longgexx authored
      392a8ac7
    • longgexx's avatar
      feat(group): 添加分组级别模型路由配置功能 · 19865b86
      longgexx authored
        支持为分组配置模型路由规则,可以指定特定模型模式优先使用的账号列表。
      
        - 新增 model_routing 字段存储路由配置(JSONB格式,支持通配符匹配)
      
        - 新增 model_routing_enabled 字段控制是否启用路由
      
        - 更新后端 handler/service/repository 支持路由配置的增删改查
      
        - 更新前端 GroupsView 添加路由配置界面
      
        - 添加数据库迁移脚本 040/041
      19865b86
    • yangjianbo's avatar
      fix(定时轮): 初始化失败返回错误并补充单测 · fe71ee57
      yangjianbo authored
      - NewTimingWheelService 改为返回 error,避免 panic
      
      - ProvideTimingWheelService 透传 error 并更新 wire 生成代码
      
      - 补充定时任务调度/取消/周期任务相关单元测试
      fe71ee57