yuming
|
c7bdd3770a
|
补上43101保留原始错误信息的区分性断言,修复wx测试的恢复时机
- reminder.test.js:43101用例新增对 remind_logs.error 的断言,区分
「真发送失败」(应为微信原始错误信息)与「因halted被跳过」(应为
quota_exhausted兜底文案),此前该区别完全没有测试覆盖
- wx.test.js:把恢复 axios.get/post 的语句移入 try/finally,避免断言
先抛错时污染同进程内后续用例
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-08-16 09:14:50 +08:00 |
|
yuming
|
57470ade4f
|
补充发送侧分组与错误分支的测试覆盖,保留43101原始错误信息的修复
- reminder.js:43101 跳过日志改为记录微信原始错误信息,便于和「额度耗尽」的
兜底文案区分排查(前一实施者已验证,此次原样带入提交)
- reminder.test.js:新增 runOnce 按 openid 分组结算用例,验证多用户额度互不
串号;将「非额度类错误」用例扩到 2 条数据,证明该分支不会误中止后续发送
- 新建 wx.test.js:验证 sendSubscribeMessage 在微信返回非 0 errcode 时,
抛出的 Error 对象确实带有正确的 errcode 属性
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-08-16 09:07:46 +08:00 |
|
yuming
|
6548577a98
|
定时任务改为按用户分组、按优先级发送,额度耗尽即停
|
2026-08-15 18:04:12 +08:00 |
|
yuming
|
b1949ac73e
|
新增 /api/subscribe 接口:授权上报与风险查询
- grantQuota/getQuotaStatus 从 index.js 导出供测试直接调用
- app.listen 加 require.main 守卫,避免测试 require 本文件时
真的起服务占用端口、cron 定时器让进程无法退出
|
2026-08-15 17:55:40 +08:00 |
|
yuming
|
3a61b7952b
|
新增订阅额度风险预警计算
|
2026-08-15 17:43:19 +08:00 |
|
yuming
|
07ee98f838
|
修复 consume 缺行不建行导致 sentTotal 丢失的问题
|
2026-08-15 17:40:31 +08:00 |
|
yuming
|
8d63b47577
|
新增订阅消息额度记账表与模块
|
2026-08-15 17:34:46 +08:00 |
|
yuming
|
68acbb3809
|
抽出日期计算纯函数模块,并搭建后端测试基建
- 新增 server/src/occurrence.js:startOfDay/getNextOccurrence/daysBetween,today 可注入
- reminder.js 改为调用新模块,删除内联的 getThisYearDate/daysBetween
- 引入 node:test 作为测试框架,加 npm test 脚本
- 新增 test/helper.js(临时库辅助,供后续任务用)和 test/occurrence.test.js(7 个用例,覆盖农历跨年等边界)
|
2026-08-15 17:30:42 +08:00 |
|