用途:这是 codeprobe 体系下的错误处理与韧性检查子技能,用于在代码中定位错误处理与容错缺陷,所有发现统一使用 ERR- 前缀顺序编号(ERR-001、ERR-002 等)。
主要能力:检测吞异常(空 catch、仅记录日志不处理、过宽异常捕获);缺少错误处理(外部 API 调用未包裹 try/catch、未处理的 Promise 拒绝、文件 I/O 无错误处理);错误信息问题(泛化错误消息、向 API 消费者泄露内部错误、缺少结构化错误响应);重试与熔断(外部调用无超时、瞬时失败无重试、微服务调用无熔断或降级);校验(处理前缺少输入校验、隐式 null 假设、类型强制转换缺陷);事务安全(多步数据库操作无事务、事务缺少回滚);日志(关键失败路径无日志、缺少关联/请求 ID)。
使用方式:独立调用时需先读取 ../codeprobe/shared-preamble.md(相对本 SKILL.md 所在位置解析,即同级 codeprobe 技能目录,而非用户项目),获取输出契约、执行模式与约束;再依据项目技术栈从 ../codeprobe/references/ 加载适用参考文件。除用户另有指定外,默认使用 full 模式。
不检测范围:日志中的敏感数据(由 codeprobe-security 的 SEC 前缀负责,本技能只标记缺少日志与缺少关联 ID 等结构问题);测试文件;框架生成的异常处理器(如 Laravel Handler.php、刻意精简的 Next.js 错误边界);刻意简单处理错误的 CLI 脚本(打印并退出);有注释说明理由的、故意吞掉已知无害异常的 catch 块;主要属于安全漏洞的问题(如认证绕过、注入、数据暴露),即使也涉及错误处理,仍由 codeprobe-security 负责,若两者标记同一位置,由编排器去重并保留安全发现为主。
限制:资料未提供具体安装命令、收费方式、支持平台与运行环境要求。