目标
输出必须至少包含:
- 页面级验收清单
- 场景级验收清单
- 异常态 / 空态检查项
- 风险点
- 当前是否能开工
- 需要补什么
强制规则
- 不要只说“可以 / 不可以”
- 验收清单要可执行
- 至少覆盖页面、接口、状态流转、异常态、权限
- 明确哪些是 P0 必补,哪些是可后补
- 必须单独检查单一真源是否成立:字段合同、状态机、排序规则是否只有一个最终口径
- 必须单独检查搜索是否已定版纳入 MVP,不能留“可做可不做”
- 必须单独检查 Dashboard 是否明确为动态聚合,而不是静态假数据
- 必须单独检查“新增跟进 + 同步改状态”复合操作的成功/失败/回写链路是否完整
- 必须单独检查 detail、list、dashboard 刷新是否同源联动
- 对 409 / 422 异常流,不要只写“操作失败”;必须尽量对齐 API 合同里的具体业务断言与错误码
- 必须单独检查 sales owner 越权处理是否唯一:列表页 current_user_id 强制收口;详情/状态更新/跟进提交对非本人 lead 一律 403
- 必须单独检查详情接口是否仍保持单接口:GET /api/leads/:id 返回 lead + followups;前端 query key 拆分不得被误写成第二接口
最小输出结构
- 当前版本是否能开工
- 页面级验收清单
- 场景级验收清单
- 异常态 / 空态检查项
- 风险点
- P0 必补项
- 可后补项
必查 P0 项
输出中必须逐条判断:
- final field contract 是否唯一
- transition map / meta options 是否唯一
- 默认排序规则是否写死
- Dashboard 聚合规则是否写死
- sync_status=true 复合提交后的字段回写与错误码是否写死
- 422 INVALID_STATUS_TRANSITION、409 TERMINAL_STATUS_SYNC_FORBIDDEN、422 NEXT_STATUS_REQUIRED、422 NEXT_STATUS_SHOULD_BE_EMPTY 是否被清楚断言
- sales owner 越权处理是否只有一套规则
- 详情是否只有单接口合同而非双接口合同
常见坑
- 只有风险,没有检查项
- 检查项太泛,不能执行
- 没覆盖异常态和空态
- 没有优先级
验证方式
输出里至少要能直接回答:
- 现在缺什么
- 哪些问题会阻塞开工
- QA 拿什么就能开始验