AI有声书 v2 - 系统不变量
不可违反的系统边界。违反其中任何一条 = CRITICAL Bug。
每条不变量应注明:能否自动化?当前状态(已有测试 / 无测试 / 人工检查)
安全边界
- INV-1: 用户只能操作自己的书籍(权限校验)— 状态:人工检查
- INV-2: 反馈内容需经过滤敏感词 — 状态:无测试
数据隔离
- INV-3: 播放进度只能被对应用户读取/修改 — 状态:人工检查
- INV-4: 书籍发布状态变更需记录操作人 — 状态:无测试
接口契约
- INV-5: 前后端 API 字段名必须与 api-contracts.md 一致 — 状态:人工检查
- INV-6: WebSocket 事件数据格式必须与 api-contracts.md 一致 — 状态:无测试
生成流程
- INV-7: 音频未完成时不显示视频相关按钮 — 状态:前端逻辑,人工检查
- INV-8: 批量生成中断后已完成的步骤保留 — 状态:无测试
当识别到反复出现的 Bug 模式,考虑将其添加为正式不变量。