fix: reject CMPP daily limit synchronously

This commit is contained in:
hectorzhao
2026-07-22 17:09:44 +08:00
parent 66bc230d7e
commit 55019443c0
7 changed files with 112 additions and 20 deletions
+6
View File
@@ -2219,3 +2219,9 @@ git diff --check
- 发布后`cmpp-gateway``cmpp-api`、Nginx、PostgreSQL、Redis和MinIO均active`12026/17890/8090/3000/9000/6379/5432`监听;API/Gateway health、Redis PONG均通过。2个active上游通道均恢复`connected/currentConnections=1`,Redis中7个通道权威TPS配置存在;`gateway.submit.commands` consumer group为`pending=0、lag=0`,部署后API/Gateway error journal均为0。
- 外部首页、运营登录页、客户端登录页和API health均返回HTTP 200,公网CMPP `8.160.169.106:17890` TCP连接成功。应用内Browser两次在导航/DOM读取阶段控制超时并重置,因此只记录外部HTTP入口通过,不虚报浏览器DOM、交互或console验收通过。
- 本次业务数据变更仅来自两条已审查migration;未发送或重投短信,未充值、审核、删除、禁用账号、改密或修改真实通道配置。
## 2026-07-22 CMPP日限额同步整包拒绝口径修正(待提交发布)
- 产品确认日额度按任务正式受理的北京时间自然日占用,待审核和定时任务计入受理日;后续审核拒绝、取消或发送失败不返还。号码基础校验不以号段库是否识别作为合法性条件,未知号段继续走全国或三网兼容通道。
- 修正CMPP整包日限额语义:API为每个目的号码建立`rejected/DAILY_LIMIT`审计主记录,但返回`accepted=false/result=8`Gateway同步返回唯一一个非0 `SUBMIT_RESP`且Msg_Id为0,不建立下游会话映射、不生成`SmsReceiptRecord`、不创建`CmppDownstreamDelivery`,不冻结或扣费。
- 新增API回归覆盖双号码整包超限、每号码审计记录及无回执/无冻结;新增Gateway真实CMPP2.0协议回归覆盖Bind后的`result=8`响应和不新增pending回执拉取。失败测试先在旧实现上分别暴露`accepted=true`和Gateway响应结构缺少业务结果码,修改后SendChain定向78项及Gateway inbound包通过。