自动化与脚本
在实现 PRD 或功能规格前做预检:识别并解决阻塞性问题…
在动手实现 PRD/功能规格前,快速预检并暴露关键问题,只在缺失选择会实质影响行为、架构、数据或外部副作用时才询问用户。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 49/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
在实现 PRD 或功能规格前做预检:识别通用
解决思路
- 定位 PRD 及其引用的所有文件。
- 对 PRD 做预检,并用 1-2 句话总结其意图。
- 列出发现的问题和疑问,把阻塞项放在最前面;如果没有实质性阻塞,就说明假设并继续。
- 当存在阻塞项时,先与用户解决再开始实现。
- 进行验证(测试或手动步骤),或说明哪些没有运行。
- 基础检查——范围:识别过大的改动,建议更小、更有针对性的方案。
- 基础检查——一致性:标记与现有模式或架构的冲突,并提出替代方案。
- 基础检查——依赖:指出缺失的 hooks/providers/数据源或归属不清的问题。
- 基础检查——行为:确认流程和边界情况已明确,对缺口提问。
- 基础检查——风险:指出性能、回归或迁移风险。
- 基础检查——测试:检查成功标准和测试覆盖,模糊时要求具体说明。
- 边界情况覆盖检查——数据边界:检查是否处理 null/空值、是否定义边界值(min/max)及边界行为、如何检测和处理重复数据、是否校验输入格式及特殊字符。
- 边界情况覆盖检查——状态边界:检查是否定义所有合法状态转换、非法状态变更如何处理、并发修改如何处理、操作能否回滚及如何回滚。
- 边界情况覆盖检查——错误边界:检查 API 调用失败时如何处理、是否定义超时及重试策略、部分失败(如三步中第二步失败)时前序步骤如何处理、是否定义面向用户的错误信息。
- 边界情况覆盖检查——UX 边界:检查空数据时用户看到什么、如何指示加载状态、用户如何得知操作成功、用户缺少权限时如何处理。
- 代码库一致性检查:扫描代码库验证 PRD 与现有模式一致,例如运行 grep -r "pattern_from_prd" src/ --include="*.ts"。
- 代码库一致性检查——删除策略:确认 PRD 是否符合现有软删除/硬删除模式。
- 代码库一致性检查——错误处理:确认 PRD 是否使用相同的错误展示机制。
- 代码库一致性检查——组件复用:确认 PRD 是否复用现有组件。
- 代码库一致性检查——API 模式:确认 PRD 是否遵循现有 API 约定。
- 按模板输出预检报告:包含 Summary(1-2 句总结)、✅ Covered Edge Cases、⚠️ Missing Edge Cases 表格(列:Edge Case、Category、Suggested Default、Needs Confirmation)、🔴 Blockers、🟡 Warnings、Questions for User,并以“Proceed as-is, or update the PRD?”结尾。
- 输出期望:提供简洁的预检报告,包含问题与风险;仅当答案会实质性改变实现时才问“Proceed as-is, or update the PRD?”;如果没有阻塞项,说明假设并继续,不做多余的确认轮次。
适用边界 · 注意事项
- 需求已经非常清晰且没有任何实质性阻塞时,不要进行多余的确认轮次。
- 缺失的选择不会实质影响行为、架构、数据或外部副作用时,不要打断用户提问。