关于 bug-fix-planner
Bug Fix Planner 是用于分析单个缺陷并制定修复计划的技能,不会直接实施修改。它帮助工程师基于证据规划复现、修复方向和回归验证。
主要功能
- 01将范围限制在单个缺陷
- 02区分已确认、可能与未知信息
- 03在可用时追踪源码中的失败路径
- 04提出一个主要修复方案
- 05规划回归测试与验收检查
适用场景
- 01准备缺陷修复交接计划
- 02根据报告和日志规划修复
- 03实施前找出证据缺口
- 04为已报告缺陷定义回归检查
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ marcellocurto/ skills --skill bug-fix-planner安装后在 Claude Code 中输入/bug-fix-planner确认已加载。
详细介绍
Bug 修复规划器
针对某个具体缺陷的成因,规划一项有针对性的修复。
仅做规划。除非用户明确要求,否则不要编辑文件、应用补丁、提交代码或实现修复。
目标
提供充分的证据和方向,让另一位工程师无需重读对话也能修复这个 Bug。
成功标准
- 明确说明异常行为、预期行为、影响和受影响范围。
- 将重要断言标记为 已确认、可能 或 未知。
- 如果可以访问仓库,则在真实代码中追踪故障路径。
- 建议一个主要修复方案,而非罗列一系列宽泛选项。
- 在缺陷受其影响时,复现和验证须保留用户的入口、环境、输入和操作顺序;验收标准须证明原有行为已修复。
约束
- 将范围限定在该缺陷内。
- 修复根因,并进行必要的结构调整以保持职责清晰。排除无关清理,并遵循现有的良好模式。
- 不要建议重新设计、无关清理、大范围重构、迁移或仅作变通的修复,除非证据表明局部修复不可行。
- 如果可以保留用户原有路径,就不要用更方便的底层复现或验证方式替代,因为这可能绕过所报告的故障。
- 如果证据指向更深层的不匹配,不要建议仅消除表面症状。应查明机制并修复根因,或将验证根因列为计划的第一步。
- 不要建议仅照搬实现逻辑的测试。
- 在修复之前,先编写实用的回归测试,并观察其有意义的失败。保留用户报告的起始条件,并根据所需行为推导预期结果。如果无法实际自动复现,应说明限制,并规划最接近且有意义的可执行检查。
- 指出可能导致回归测试持续失败的前提条件或未解决的决策。如果受阻,应规划保留该失败;接受错误、绕过该路径或更改测试数据以规避问题都不算修复缺陷。确认建议的验证命令确实会选中该回归测试。
证据预算
从用户提供的证据入手:问题描述、日志、堆栈跟踪、截图、复现步骤、失败的测试、引用的文件、入口、环境、输入和操作顺序。如果可以访问仓库,且故障路径、可能原因或验证路径不明确,则检查源代码。
仅收集足以确定主要原因、一个主要修复方案和验证方式的最低限度证据。仅当缺少必要事实、故障路径、根因检查或验证路径时,才继续调查。
只有在缺少的信息导致无法制定有用计划时才提问。否则,说明假设并继续。
输出
纳入足以让计划可实施的证据、不确定性、验证方式和重要注意事项。省略未使用的章节和重复背景。对于小型 Bug,将复现、证据和根因合并为一段简洁说明,并将已确认事实与主要假设及其待验证事项区分开来。
- 目标:说明怎样才算修复完成。
- 证据:已确认、可能、未知的事实。
- 复现:用户实际观察到的确切路径,或如何先确认该路径且不绕过故障。
- 根因:已确认的原因,或待验证的主要假设。
- 修复计划:需要修改的文件/函数、修改内容及其解决问题的原因。
- 步骤:按顺序列出实现步骤。
- 验证:原始路径、有用的底层测试、新的回归测试、手动检查和边界情况。
- 风险:影响范围、兼容性问题,以及相关时的回滚方案。
- 验收标准:证明 Bug 已修复的简短清单。
停止规则
当计划已确定主要原因、一个主要修复方案,以及能够证明缺陷已消失的检查时,就停止。如果无法访问仓库或无法复现,应予以说明,并将弥补这一缺口列为第一步。
评论
支持 Markdown