Repository navigation
v1.2.18
✨ 新增功能
GET /credits/summary:API-key 级鉴权的只读积分汇总(issue #21)——给下游集成(如网关池面板)展示各账号池余额用。- 鉴权走
_key_ok()(API Key 或面板会话均可,未设 Key 时放行),刻意不放进_is_panel_route()—— 否则就会要求X-Panel-Token,与用途相反; - 只返回本地已登记的
credits,绝不触发任何上游查询 —— 这是本 issue 的核心约束(对照GET /accounts/credits:那个会逐号fetch_credits()强刷,适合作者手动点、不适合机器轮询); - 返回
{ by_realm, totals, accounts[], note },每行含{uid, nickname, realm, credits_remain, credits_used, credits_size, registered_at}; - 新鲜度语义写在字段名与
note里:返回的是「上次登记时的值」(签到写权威值 + 每次消耗回写),不是实时余额; - 未登记过积分的账号照常列出但
credits_*/registered_at为null且不计入汇总;空池 /POOL=None返回空结构而非报错。
- 鉴权走
🐛 问题修复:无
🎨 体验优化:无
- README 的接口一览与说明补上该路由(含「为什么不能拿
/accounts/credits轮询」的对照)。
验证
- 全量 647 checks / 0 failed([38] 段 12 条);
- 命门:
fetch_credits()桩计数 = 0 —— 且这次用真实 handler 验证(ThreadingHTTPServer+ 后台线程 +urllib真请求,鉴权 / 路由匹配 / JSON 写出全走真代码路径); - 能红证据:把实现改成「先
fetch_credits()再返回」→ 命门断言必红(变异下桩被调 3 次 = 3 个账号各一次); - 鉴权矩阵:有效 key 200 / 无效 key 401 / 无凭据 401 / 面板会话 200 / 未设 key 放行 200(全部 0 次 fetch);
- 边界:空池 /
POOL=None/ 无 credits 账号 / 部分 credits 全绿。