Compare
Sorry, something went wrong.
No results found
fix: 修复官方余额「已用额度」恒为 0(周期级数据优先 + Precise 回退)
上游 get-user-resource 对 CodeBuddy 免费/裂变包按月周期计费:账户级
CapacityUsed 恒为 0,真实已用额度落在周期级 CycleCapacityUsed。旧实现
仅提取账户级,导致前端「已用」一栏恒显 0、进度条恒满,无法反映真实用量。
主要变更
- admin: processResources 分别提取账户级与周期级容量字段,存在周期数据
(CycleCapacityRemain 或 CycleCapacityUsed > 0)时 capacity_* 展示值
优先取周期级,否则回退账户级,与 references/wicm84266964 effective_remain
语义一致;周期总量缺失回退账户总量
- admin: 新增 numField helper,按 Precise → 非Precise 顺序取首个有值字段
(nil/空串/解析失败回退,"0" 不回退),修复上游只返回非 Precise 字段或
Precise 为空串时数值恒为 0 的健壮性缺陷
- admin: resourceAccount 新增 CycleUsed/CycleSize 字段供前端细分展示
- admin: 新增 TestProcessResourcesCyclePreferred(周期优先 3 场景)、
TestProcessResourcesCapacityFallback(Precise 回退 4 场景)、
TestNumField(容错 8 场景)回归测试
- admin: 修复测试日志 days_left 用 %v 打印 *int 指针地址的问题,
新增共享 daysLeftStr helper
- admin: 新增 env 门控的实时集成测试 TestLiveResources(默认 skip,
BUDDY2API_LIVE=1 启用,用真实令牌对照上游响应与加工结果)
影响范围
- 仅 internal/admin 余额加工逻辑与测试,不涉及数据库 schema、API 形状
(capacity_* 字段名不变,仅值变准)、前端、指纹头、上游请求与鉴权路径
- 真实令牌实测验证:体验版包已用额度从恒显 0 修正为实时周期值(实测
204→310 credits,随使用增长),裂变包未用保持 0