mcpField
B
bug-fix-protocol

bug-fix-protocol

github.com/codealive-ai测试与质量16744 次安装今天更新
代码仓库

关于 bug-fix-protocol

面向开发者的生产及客户环境缺陷修复流程技能,要求同时修复代码和发现测试系统的缺口。流程覆盖复现、测试、根因分析、最小修复及测试体系审查,完整规范位于 `PROTOCOL.md`。

主要功能

  1. 01先确认实际与预期行为
  2. 02先写失败测试再修复
  3. 03追踪根因并做最小改动
  4. 04运行测试、lint 和类型检查
  5. 05审查并补足测试覆盖层

适用场景

  1. 01处理已到达生产环境的缺陷
  2. 02修复预发布环境中的问题
  3. 03调查客户环境缺陷并防止同类问题重现

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/codealive-ai/ai-driven-development --skill bug-fix-protocol

安装后在 Claude Code 中输入/bug-fix-protocol确认已加载。

附带文件PROTOCOL.md

详细介绍

Bug 修复协议

一次 Bug 修复包含两项修复:修复代码,并且修复导致 Bug 漏过的测试系统。跳过第二步,就意味着同一类 Bug 会再次发布。

完整协议(理念、附带示例的八个步骤、审查清单、反模式)见 PROTOCOL.md。应用前请先阅读。

何时应用

每当缺陷进入生产环境、预发布环境或客户环境时,都应使用此协议。不要将其用于正常开发期间在本地发现的 Bug——这些属于编写过程的一部分,并非测试系统失效。

八个步骤(摘要)

  1. 分析并还原需求。 弄清实际行为与预期行为的确切差异;确定最简复现路径;对于有歧义之处,先询问用户,不要猜测。
  2. 编写失败测试(红)。 将 Bug 编写为一个能因正确原因而失败的测试。此时不要修改代码。
  3. 追溯根因。 沿着失败测试追查整个系统。找到最小的修改点:只要修改该处,测试就能通过。
  4. 应用最小修复。 只做尽可能小的修改,不要顺手重构。
  5. 在本地验证通过(绿)。 失败的测试现在应能通过,其他测试也不能因此出现回归。
  6. 运行完整测试套件、代码检查和类型检查。 捕获间接回归。
  7. 记录修复。 提交信息和 PR 描述各用一句话说明症状、根因和修复。
  8. 审查测试系统(最重要的一步)。 思考:哪一层本应发现这个问题,为什么没有发现? 然后修改这一层,让它能捕获下一次同类问题——新增测试类型、测试夹具、代码检查规则、属性测试或契约断言。缺少第 8 步的修复并不完整。

交付要求

应用此协议时,请提供:

  • 复现测试(先失败,再通过)。
  • 最小代码修复。
  • 一段关于第 8 步审查的说明,指出遗漏的覆盖层,以及为弥补缺口所做的修改。

如果第 8 步的结论是“我们本来就无法发现这个问题”,请继续调查——这个答案几乎总是错的,接受这种说法只会让测试系统停滞不前。

参考

完整内容:PROTOCOL.md。

评论

支持 Markdown