Files
MetaSkill/skills/le-spec/references/acceptance.md
T

37 lines
2.4 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.
# Phase 4:需求反向验收规程
**问题意识**:Phase 4 检查的不是"文档漂不漂亮",而是**需求是否明确到足以形成规格**。核心一问:
> "一个完全没有参与讨论的资深工程师现在接手开发,哪些重要产品行为仍然需要他自己猜测?哪些必须回头找需求负责人确认?"
## 执行方式(按优先级)
1. **子代理独立审查(首选)**:用 Agent 工具派 fresh-context 子代理(general-purpose 或 Explore)。提示词要点:
- 角色:资深开发工程师,第一次见到这个项目;
- 输入:只给 state.md 路径(+ 已有 openspec specs 路径,如有)——**不给会话历史、不给 Le SPEC 的阶段叙事**,确保视角独立;
- 任务:逐条检查下列清单,输出"我会被迫猜测/必须确认"的清单,每条注明影响哪个功能点与后果严重度;
- 产出格式:问题列表(问题/影响/严重度建议/建议澄清方式)。
2. **无子代理能力时的降级**:自审前显式重置角色("放下前文立场,作为首次接手的工程师仅凭 state.md 判断"),只允许引用 state.md 与项目文件内容。**必须在产出中声明"本轮为同上下文自审,独立性弱于子代理审查"**——不装作独立。
## 检查清单
- [ ] 用户流程有断点(走不到下一步/回不去)
- [ ] 功能之间缺关联规则(A 发生时 B 如何)
- [ ] 数据关系歧义(谁拥有谁、一对多还是多对多、删除级联)
- [ ] 状态机不完整(缺状态、缺转换、缺终态)
- [ ] 权限与业务边界不明(谁能做什么、越界怎样)
- [ ] 异常场景缺处理原则(失败/超时/并发/空数据)
- [ ] 需求间冲突(同一对象两种定义)
- [ ] 未经确认的重要默认假设(state.md 里的 [默认] 项逐条复核用户知情度)
- [ ] 验收判据缺失(做完了怎么算"对")
## 分级与处置
| 级别 | 判定 | 处置 |
|---|---|---|
| blocking | 不澄清就无法实现核心行为 / 两种理解导致完全不同的产品 | 终止回合向用户澄清(用 grilling 单轮格式,记账本) |
| major | 影响正确性但可从已确认决策推导 | 推导入 state.md 并标注依据;推导不了升 blocking |
| minor | 边缘场景、可延后 | 记开放问题,进 SPEC 的"非阻塞事项" |
更新后**只复核受影响项**,不重跑全清单。清零 blocking → 进 Phase 5。