Files
junhong_cmp_fiber/.scratch/ur37-wecom-approval-foundation/issues/06-scene-pause-template-switch-and-validation.md
2026-07-22 16:58:26 +09:00

22 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 06 — 完成场景安全暂停、模板换版与失效检测
**What to build:** 超级管理员可以把场景安全切换到暂停中,停止新提交租约并等待已有租约释放后完成暂停,再发布新的不可变模板版本并恢复场景;后台定期发现启用模板不可访问或指纹变化时会自动暂停场景并告警。
**Blocked by:**
- 03 — 发布审批场景与首个模板版本
- 05 — 完成附件上传与企微异步提交闭环
**Status:** ready-for-agent
**架构通道:** 复杂写 Application + Domain模板验证调度为辅助 Infrastructure。
**完整业务边界:** 本票收口场景暂停状态机、租约排空、模板原子切换、恢复和定期有效性检查。明确不停止暂停前已经创建的审批同步或终态处理,不自动发现新的企微模板 ID。
- [ ] 状态接口只接受目标已暂停或启用以及必填原因;暂停中由系统维护,前端不能直接写入,非法转换或乐观锁冲突安全失败。
- [ ] 进入暂停中后立即拒绝新业务前置检查和新提交租约,但已有有效租约可以续租直至完成;所有未过期租约消失后才进入已暂停。
- [ ] 新版本发布前重新读取和验证企微模板;事务内停用旧版本、写新版本、切换当前版本并恢复场景,任一步失败保持场景暂停且旧事实不被改写。
- [ ] 后台按十分钟默认间隔验证启用模板;模板不可访问或指纹变化时标记版本失效、暂停对应场景并产生安全告警,不猜测替代模板 ID。
- [ ] 场景暂停和恢复不影响已创建实例继续接收回调、轮询和终态处理;历史实例始终使用创建时冻结的版本和映射。
- [ ] 测试覆盖暂停等待、停止发租约、租约续期/自然释放、首次与再次发布、发布回滚、模板失效、指纹变化、并发状态更新和 Audit Event 完整性。