PR REVIEW EVIDENCE

需求3230:系统版本发布撤回校验与提醒回退修复

hemo-backend #1361

  1. PR 提交时间2026-09-30 21:57:45
  2. 审核结束时间2026-10-07 21:59:32
  3. 固定版本a499f6310362
  4. 模型链gpt-5.6-terra → gpt-5.6-terra
  5. 门禁blocked
  6. 结果success

难度分

58
  • code_volume42涉及三个生产层、一个 Mapper XML 和多组单元及并发集成测试,变更量中等。
  • architecture_complexity58发布状态事务锁、提醒读取链路和用户已读水位跨控制层、服务层与数据访问层协作。
  • domain_knowledge67需要理解版本发布撤回语义、历史已读数据兼容性及版本号排序规则。
  • impact_scope62影响系统版本管理人员及所有接收系统更新提醒的用户,但不涉及特定医院或患者诊疗数据。
  • risk_level61状态转换具备并发保护和测试覆盖,但提醒逻辑对历史草稿确认数据存在可达的漏提醒风险。

完成分

94
  • correctness80最终风险固定扣分:medium 1×20;合计 -20
  • completeness100本次静态审核未发现该维度的确认问题;不代表绝对完善
  • code_quality100本次静态审核未发现该维度的确认问题;不代表绝对完善
  • security100本次静态审核未发现该维度的确认问题;不代表绝对完善
  • details100本次静态审核未发现该维度的确认问题;不代表绝对完善

固定范围

目标分支 SHA
d5abefa621cf41a66917f4fa8fffa52d0f4ddfe1
共同祖先 SHA
c409f52d6b275174548f98b40a3357c19f42f66e
PR head SHA
a499f6310362765830d18cc289e5ed96802068fb
轻量检查
passed · 轻量检查通过

风险与证据

medium · 已确认 · 已计入完成分

历史草稿确认记录会屏蔽后续已发布版本提醒

曾在旧接口中确认过普通草稿的用户,可能收不到仍应查看的已发布系统更新提醒,导致版本说明未被及时查看。

证据:src/main/java/com/data/hemodialysis/service/impl/SystemVersionServiceImpl.java:113 SystemVersion checkedVersion = systemVersionMapper .selectByCodeForAlertIncludingDeleted(checkedVersionCode); if (checkedVersion == null || (checkedVersion.getVersionIsReleased() != null && !Integer.valueOf(0).equals(checkedVersion.getVersionIsReleased()))) { return latest; } return SystemVersionOrderComparator.DESCENDING.compare(checkedVersion, latest) < 0 ? null : latest;

建议:在抑制提醒前仅接受可证明曾发布的确认记录;对历史已读码进行迁移核对,或将无法证明曾发布的草稿确认按未确认处理。