关于 ds-verify-loop
用于通过真实检查验证代码变更的开发 skill,检查可包括测试、类型检查、构建或运行应用。它引导开发者先测基线、针对问题修复,再扩大验证,并设定明确的停止条件。
主要功能
- 01编辑前选择针对性检查
- 02条件允许时运行基线检查
- 03依据完整错误输出修复
- 04变更后重复运行同一检查
- 05通过后运行更广泛检查
- 06达到失败限制时停止
适用场景
- 01诊断失败的测试或构建
- 02验证小型代码变更
- 03决定何时停止反复修复
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aicodeking/ deepseek-stack --skill ds-verify-loop安装后在 Claude Code 中输入/ds-verify-loop确认已加载。
详细介绍
ds-verify-loop
通过运行实际检查并修复检查报告的问题来证明更改有效,而不是修复你认为检查会报告的问题。
步骤
- 编辑前先选定检查:选择能证明更改有效的最精简实际命令,例如针对单个测试文件运行测试、执行类型检查或构建,或向应用发送一个请求。记下命令。
- 如果可以,编辑前先运行一次,了解基线状态(已经失败、已经通过,或因其他原因出错)。
- 进行能够通过检查的最小更改。
- 运行完全相同的命令。阅读完整错误输出,包括第一个错误、文件和行号,以及代码中的堆栈帧。不要只看最后一行。
- 根据输出用一句话说明根本原因。如果无法说明,就添加一条打印语句或日志,或者阅读出错代码,然后重新运行。不要猜测。
- 修复原因,而不是症状。不要针对测试使用的单个输入添加特例。
- 重新运行相同的命令。计为一次迭代。
- 精简检查通过后,再运行一次范围更广的检查(完整测试套件、构建或 lint),以发现其他地方的问题。
- 在回复或 PROGRESS.md 中粘贴最终通过时的输出(命令及其最后几行)。
停止条件
- 检查通过且已粘贴输出。没有输出的说法不算数。
- 连续 5 次迭代仍未通过。停止编辑,报告最后一个错误,并切换到 ds-unstick。
- 两次不同的修复后出现相同的错误。立即切换到 ds-unstick,不要等到第 5 次迭代。
规则
- 绝不要为了通过检查而削弱、跳过、删除或放宽测试、断言、类型或 lint 规则。如果测试有误,说明原因并先询问。
- 绝不要把被测对象 mock 掉。
- 每次都运行实际命令。不要推测命令会输出什么。
- 每次迭代只改一处,以便确认是什么修复了问题。
- 如果没有现成的检查,就编写一个最小检查,使其在没有你的更改时失败,然后使用这个循环。
评论
支持 Markdown