mcpField
F
fixing-root-causes

fixing-root-causes

github.com/bostonaholic开发264 次安装1 天前更新
代码仓库

关于 fixing-root-causes

fixing-root-causes 是一项指导调试工作追查根因而非症状的技能,强调先复现问题、调查实际证据,并检查其他位置是否存在相同模式。

主要功能

  1. 01修复前先复现问题
  2. 02从症状追溯根本原因
  3. 03通过插桩获取证据而非猜测
  4. 04查找并修复重复出现的模式

适用场景

  1. 01调查反复出现的软件故障
  2. 02调试重启后才出现的问题

安装

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

$npx skills add https://github.com/bostonaholic/skills --skill fixing-root-causes

安装后在 Claude Code 中输入/fixing-root-causes确认已加载。

附带文件agents/openai.yamlshared/docs-vs-code.md

详细介绍

修复根本原因

调试时,不要只修复症状。要追查每个问题的根本原因,并从根源上解决。

原因: 症状修复会不断累积。每个权宜之计都会让系统更难理解,而真正的 bug 仍然存在。修复根本原因前期会花更多时间,但能减少调试的总耗时。

做法:

  • 先复现问题
  • 当文档与代码不一致时,根据 文档与代码规则 判断哪一方有问题
  • 不断追问“为什么”,直到找到根本原因
  • 不要添加防护措施(添加 nil 检查来避免崩溃只是修复症状)
  • 如果某个权宜之计需要用一段话来解释其合理性,那代码就有问题(应修复代码,而不是注释)
  • 检查问题模式,而不只是单个实例(用 grep 搜索相同模式,并修复所有实例)
  • 遇到困难时,添加检测手段。不要猜测(添加日志,读取实际错误)

重启后出现的 bug:先怀疑状态,再怀疑代码

当某个问题“在重启后出现”时,应先怀疑陈旧的持久化状态:配置文件、缓存、锁文件、序列化状态。如果清除某个状态文件后行为恢复正常,应优先将状态校验作为修复方案。

评论

支持 Markdown