liuxiongfeng
|
ce1d2904c7
|
test: 为测试 stub 添加缺失的 GroupRepository 接口方法
新增 BindAccountsToGroup 和 GetAccountIDsByGroupIDs 方法的 stub 实现,
确保测试文件中的 mock 类型满足 GroupRepository 接口要求。
|
2026-02-02 22:06:37 +08:00 |
|
liuxiongfeng
|
e1a4a7b8c0
|
feat(groups): 添加从其他分组复制账号功能
- 创建分组时可选择从已有分组复制账号
- 编辑分组时支持同步账号(全量替换操作)
- 仅允许选择相同平台的源分组
- 添加完整的数据校验:去重、自引用检查、平台一致性检查
- 前端支持多选源分组,带提示说明操作行为
|
2026-02-02 21:47:47 +08:00 |
|
liuxiongfeng
|
b381e8ee73
|
refactor(billing): 简化 CalculateCostWithLongContext 逻辑
将 token 直接拆分为范围内和范围外两部分,分别调用 CalculateCost:
- 范围内:正常计费 (rateMultiplier)
- 范围外:双倍计费 (rateMultiplier × extraMultiplier)
代码更直观,便于理解和维护
|
2026-02-02 21:47:02 +08:00 |
|
liuxiongfeng
|
45e1429ae8
|
feat(billing): 添加 Gemini 200K 长上下文双倍计费功能
- 新增 CalculateCostWithLongContext 方法支持阈值双倍计费
- 新增 RecordUsageWithLongContext 方法专用于 Gemini 计费
- Gemini 超过 200K token 的部分按 2 倍费率计算
- 其他平台(Claude/OpenAI)完全不受影响
|
2026-02-02 21:47:02 +08:00 |
|
liuxiongfeng
|
4bfeeecb05
|
fix(billing): 修复 Gemini 接口缓存 token 统计
extractGeminiUsage 函数未提取 cachedContentTokenCount,
导致计费时缓存读取 token 始终为 0。
修复:
- 提取 usageMetadata.cachedContentTokenCount
- 设置 CacheReadInputTokens 字段
- InputTokens 减去缓存 token(与 response_transformer 逻辑一致)
|
2026-02-02 14:01:17 +08:00 |
|
liuxiongfeng
|
bbc7b4aeed
|
feat(gateway): Gemini API Key 账户跳过模型映射检查,直接透传
Gemini API Key 账户通常代理上游服务,模型支持由上游判断,
本地不需要预先配置模型映射。
|
2026-02-02 13:40:29 +08:00 |
|
liuxiongfeng
|
ba16ace697
|
chore: upgrade Antigravity User-Agent to 1.15.8
|
2026-01-30 08:14:52 +08:00 |
|