1. 24 Feb, 2026 1 commit
  2. 11 Feb, 2026 1 commit
    • sususu98's avatar
      fix: include Gemini thoughtsTokenCount in output token billing · d21d70a5
      sususu98 authored
      Gemini 2.5 Pro/Flash thinking models return thoughtsTokenCount separately
      from candidatesTokenCount in usageMetadata, but this field was not parsed
      or included in billing calculations, causing thinking tokens to be
      unbilled.
      
      - Add ThoughtsTokenCount field to GeminiUsageMetadata struct
      - Include thoughtsTokenCount in OutputTokens across all 3 Gemini usage
        parsing paths (non-streaming, streaming, compat layer)
      - Add tests covering thinking token scenarios
      
      Closes #554
      d21d70a5
  3. 10 Feb, 2026 1 commit
    • yangjianbo's avatar
      perf(backend): 使用 gjson/sjson 优化热路径 JSON 处理 · 58912d4a
      yangjianbo authored
      
      
      将 API 网关热路径中的 json.Unmarshal+json.Marshal 替换为 gjson 零拷贝查询和 sjson 精准写入:
      - unwrapV1InternalResponse 性能提升 22x(4009ns→182ns),内存分配减少 28.5x
      - unwrapGeminiResponse、extractGeminiUsage、estimateGeminiCountTokens、ParseGeminiRateLimitResetTime 改为接收 []byte 使用 gjson 提取
      - ParseGatewayRequest 的 model/stream/metadata/thinking/max_tokens 改用 gjson 类型安全提取
      - Handler 层(sora/openai)改用 gjson 提取字段、sjson 注入/修改字段,移除 map[string]any 中间变量
      - Sora Client 响应解析改用 gjson ForEach 遍历,减少内存分配
      - 新增约 100 个单元测试用例,所有改动函数覆盖率 >85%
      Co-Authored-By: default avatarClaude Opus 4.6 <noreply@anthropic.com>
      58912d4a
  4. 08 Feb, 2026 1 commit
  5. 07 Feb, 2026 1 commit
    • erio's avatar
      feat(antigravity): comprehensive enhancements - model mapping, rate limiting, scheduling & ops · 5e98445b
      erio authored
      Key changes:
      - Upgrade model mapping: Opus 4.5 → Opus 4.6-thinking with precise matching
      - Unified rate limiting: scope-level → model-level with Redis snapshot sync
      - Load-balanced scheduling by call count with smart retry mechanism
      - Force cache billing support
      - Model identity injection in prompts with leak prevention
      - Thinking mode auto-handling (max_tokens/budget_tokens fix)
      - Frontend: whitelist mode toggle, model mapping validation, status indicators
      - Gemini session fallback with Redis Trie O(L) matching
      - Ops: enhanced concurrency monitoring, account availability, retry logic
      - Migration scripts: 049-051 for model mapping unification
      5e98445b
  6. 06 Feb, 2026 1 commit
  7. 27 Jan, 2026 1 commit
  8. 23 Jan, 2026 1 commit
  9. 04 Jan, 2026 2 commits
    • IanShaw027's avatar
      fix(backend): 修复 CI 失败问题 · 06216aad
      IanShaw027 authored
      修复内容:
      1. 修复 6 个 golangci-lint 错误
         - 3 个 errcheck 错误:在 gateway_request_test.go 中添加类型断言检查
         - 3 个 gofmt 格式化问题:修复代码格式
      2. 修复 API 契约测试失败
         - 在测试中添加缺失的字段:enable_identity_patch 和 identity_patch_prompt
      
      所有测试和 linter 检查现已通过。
      06216aad
    • IanShaw027's avatar
      fix(backend): 改进 thinking/tool block 签名处理和重试策略 · 87426e5d
      IanShaw027 authored
      主要改动:
      - request_transformer: thinking block 缺少签名时降级为文本而非丢弃,保留内容并在上层禁用 thinking mode
      - antigravity_gateway_service: 新增两阶段降级策略,先处理 thinking blocks,如仍失败且涉及 tool 签名错误则进一步降级 tool blocks
      - gateway_request: 新增 FilterSignatureSensitiveBlocksForRetry 函数,支持将 tool_use/tool_result 降级为文本
      - gateway_request: 改进 FilterThinkingBlocksForRetry,禁用顶层 thinking 配置以避免结构约束冲突
      - gateway_service: 实现保守的两阶段重试逻辑,优先保留内容,仅在必要时降级工具调用
      - 新增 antigravity_gateway_service_test.go 测试签名块剥离逻辑
      - 更新相关测试用例以验证降级行为
      
      此修复解决了跨平台/账户切换时历史消息签名失效导致的请求失败问题。
      87426e5d