Repository navigation
v1.2.19
✨ 新增功能:无
🐛 问题修复
- usage 记录(与面板)的 credit 统计恒为 0(issue #22,by @jianjiuss):
_extract_usage()读的是单数usage.get("credit"),而上游给的是复数credits(附original_credits/billable)——usage.get("credit")恒为 None,于是所有 usage 记录都记成 0(报告者实测 426 条流式 + 16 条非流式全部为 0)。- 现在复数
credits优先、保留单数兜底(防其它区域字段差异); - 顺带记录
original_credits(参与聚合 —— 折扣时段对账要用)与billable(仅写进行、不进聚合 —— 布尔求和没有意义)。
- 现在复数
🎨 体验优化:无
- 历史数据不可回填:修复只影响此后写入的行;此前记录里的那个 0 是永久性的(当时的原始
credits从未落盘)。我们不会在日志或文档里暗示它可恢复。
验证
- 全量 657 checks / 0 failed([39] 段 10 条);
- 修复前的红色证据已留存(落盘前抓到的原始输出:复数
credits=97.96→credit: 0;两者都有时旧实现取单数)—— 没有它,这个回归网就是空转; - 变异自证 4 条:改回只读单数 → 必红;单数优先 → 必红;抽掉
original_credits→ 必红;把billable塞进聚合表 → 必红; - 面板不受影响(已 grep 确证:它读的是账号对象的
credits.remain、模型元数据的credits、签到侧的earned_credit,没有一处读 usage 行的credit); - 未覆盖(如实):
credits为字符串或None的形态(or链会把"0"当假值,属理论边界)。