SuperAPI AI 工具集

codeprobe-error-handling

通用与其它

查看项目

更新于 10-16 09:46

技能介绍

用途:作为 codeprobe 的错误处理与韧性检查子技能,扫描代码中的异常处理与容错缺陷,所有发现以 ERR- 前缀顺序编号(ERR-001、ERR-002……)。

主要能力分为七类: 一、被吞异常:空 catch 块、仅记录日志而不处理、过度宽泛的异常捕获。 二、缺失错误处理:外部 API 调用无 try/catch、未处理的 Promise 拒绝、文件 I/O 无错误处理。 三、错误信息:泛化错误消息、向 API 使用者泄露内部错误、缺少结构化错误响应。 四、重试与熔断:外部调用无超时、瞬时故障无重试、微服务间调用无熔断或降级。 五、校验:处理前缺少输入校验、隐式空值假设、类型强制转换缺陷。 六、事务安全:多步数据库操作无事务、事务缺少正确回滚。 七、日志:关键失败路径无日志、缺少关联/请求 ID。

用法(独立模式):直接调用时需先读取 ../codeprobe/shared-preamble.md 获取输出契约、执行模式与约束;再依据项目技术栈从 ../codeprobe/references/ 加载适用参考文件;除用户另有说明外默认使用 full 模式。

适用场景:需要审查错误处理、容错与一致性风险的项目,尤其涉及外部服务集成、异步流程、多步数据库写入与关键业务逻辑(支付、认证、订单)时。

限制:不检测日志中的敏感数据(归 codeprobe-security 的 SEC 前缀);不检查测试文件;不标记框架自动生成的异常处理器(如 Laravel Handler.php、Next.js error boundary);不标记有意简化的 CLI 脚本错误处理(打印加非零退出);不标记有注释说明理由的、刻意吞掉特定无害异常;主要属于安全漏洞的问题由 codeprobe-security 负责,若两者命中同一位置,由编排器去重并保留安全发现。修复建议示例包括为支付调用加 try/catch 并抛领域异常、为订单创建流程加事务、替换空 catch、为 HTTP 客户端加 timeout 与 retry 等。具体收费、价格与平台信息暂未提供。