用途
PRD Implementation Precheck 用于在功能实现之前对 PRD(产品需求文档)或功能规格进行一轮简短预检,先暴露实质性问题,再进入实现。它强调:只有当某个缺失的选择会实质改变行为、架构、数据或外部副作用时,才向用户提问。
工作流程
- 定位 PRD 及其引用的任何文件。
- 预检 PRD,并用 1-2 句话总结其意图。
- 列出发现的问题与疑问,阻塞项排在前面。如果没有实质性阻塞项,则说明假设并继续。
- 当存在阻塞项时,先与用户一起解决,再进行实现。
- 进行验证(测试或手动步骤),或说明哪些内容未运行。
主要能力
基础检查
- 范围:识别过于宽泛的改动,建议更小、更有针对性的方案。
- 对齐:标记与现有模式或架构的冲突,并提出替代方案。
- 依赖:指出缺失的 hooks/providers/数据源,或归属不清的问题。
- 行为:核实流程与边界情况是否已明确;对缺口提问。
- 风险:指出性能、回归或迁移风险。
- 测试:检查成功标准与测试覆盖;含糊时要求具体说明。
边界情况覆盖检查
核实 PRD 是否处理以下边界情况(缺失时标记为 ⚠️):
数据边界
- Null/Empty 处理——空输入或 null 值会发生什么?
- 边界值——是否定义了最小值/最大值限制?在边界处会发生什么?
- 重复数据——如何检测和处理重复数据?
- 数据格式——输入格式是否经过校验?特殊字符如何处理?
状态边界
- 状态转换——是否定义了所有有效的状态转换?
- 无效转换——非法状态变更时会发生什么?
- 并发修改——如何同时编辑如何处理?
- 回滚场景——操作能否撤销?如何撤销?
错误边界
- 网络故障——API 调用失败时会发生什么?
- 超时行为——是否定义了超时?重试策略是什么?
- 部分失败——如果三步中的第二步失败,第一步会如何?
- 错误消息——是否定义了面向用户的错误消息?
UX 边界
- 空状态——无数据时用户看到什么?
- 加载状态——加载如何指示?
- 成功反馈——用户如何知道操作成功?
- 权限拒绝——用户缺少权限时会发生什么?
代码库一致性检查
扫描代码库,核实 PRD 与现有模式是否一致,例如使用如下方式检查 PRD 提出的模式是否匹配现有代码:
# Check if PRD's proposed patterns match existing code
grep -r "pattern_from_prd" src/ --include="*.ts"
- 删除策略——PRD 是否匹配现有的软删除/硬删除模式?
- 错误处理——PRD 是否使用相同的错误展示机制?
- 组件复用——PRD 是否利用现有组件?
- API 模式——PRD 是否遵循现有 API 约定?
使用方式与输出
技能会输出一份简洁的预检报告,包含问题与风险。报告模板如下:
## PRD Precheck Report
### Summary
{1-2 sentence summary of what the PRD aims to achieve}
### ✅ Covered Edge Cases
- {List edge cases that are well-defined in the PRD}
### ⚠️ Missing Edge Cases
| Edge Case | Category | Suggested Default | Needs Confirmation |
|-----------|----------|-------------------|-------------------|
| Empty list display | UX | Use existing EmptyState | No |
| Concurrent edit | State | Last write wins | **Yes** |
### 🔴 Blockers
- {Critical issues that must be resolved before implementation}
### 🟡 Warnings
- {Non-critical issues that should be addressed}
### Questions for User
1. {Specific question about missing edge case}
2. {Specific question about ambiguous requirement}
---
**Proceed as-is, or update the PRD?**
输出预期:提供一份简洁的预检报告,包含问题与风险;只有当答案会实质改变实现时,才询问「Proceed as-is, or update the PRD?」;如果没有阻塞项,则说明假设并继续,不进行多余的确认环节。
适用场景
适用于在开发实现开始前,对 PRD 或功能规格做结构化审查,希望尽早发现需求缺口、边界情况遗漏、与现有代码库不一致等问题的场景。
限制
其效果取决于 PRD 与代码库本身的可访问性与完整度;预检报告的深度受输入资料限制。关于支持的平台、价格、具体安装命令等信息,资料中暂未提供。