SuperAPI AI 工具集

find-bug-root-cause

测试与质量

查看项目

更新于 10-16 03:58

技能介绍

find-bug-root-cause 是一个针对程序缺陷排查的技能协议,来源为 willsigmon/sigstack。它面向“功能损坏”时的调试场景,主张不要只是添加日志或加 try/catch,而应找到并修复真正的问题。

用途 该技能用于在功能出现异常时进行深度调查,定位缺陷的根本原因,而不停留在症状层面。资料开篇即明确:当功能损坏时,不要只添加日志——找到并修复真正的问题。

主要能力与方法 资料给出了一个“根因分析协议”,按步骤展开:

理解症状:明确用户看到或体验到什么、本应发生什么、实际发生了什么。

追踪数据流:从 UI → ViewModel → Service → Backend 跟踪代码执行,逐层检查失败点,并用断点逻辑进行脑内推演。

检查依赖:确认服务是否已初始化(示例写法为 DIContainer.shared.service)、数据库与索引是否就绪、异步操作是否完成、错误是否被吞掉。

找到缺陷:不要停在“加 try/catch”或“加日志”,而是找到逻辑失败的确切代码行并理解失败原因。

正确修复:修复根因而非症状;只有在核心问题修复之后才添加防御性检查;并测试修复逻辑。

验证:确认修复是否针对根因、是否存在边界情况、是否能防止复发。

使用方式 资料以协议形式描述流程,并给出一个具体示例:“搜索返回无结果”。错误做法是只添加日志:记录搜索开始,执行搜索,记录返回结果数量。正确做法是先找出搜索返回空的原因,例如:ScriptureDatabase 是否已初始化、索引是否已构建、查询是否被处理,然后修复实际问题(例如首次启动时索引未构建),之后再添加日志以预防未来问题。

适用场景 适合在移动或分层架构(UI、ViewModel、Service、Backend)中排查功能异常、搜索无结果、依赖未就绪或异步操作异常等缺陷,强调用系统化追踪代替盲目加日志。

限制与未提供信息 资料未提供该技能的具体安装命令、运行环境、平台限制、收费或价格信息,也未提供除“搜索返回无结果”之外的其他示例。协议中提到的初始化写法(如 DIContainer.shared.service)属于示例,具体实现细节暂未提供。