用途:该技能的核心主张是让人犯错这件事本身无法被“表达”,而不是靠提醒和警告。它把修复分为不同层级:控制层让错误操作根本无法执行;警告层允许发生但立即暴露;检测层事后发现;第0层只是“请小心”。技能要求把每个发现落到具体装置,并说明修复前后所处的层级。
主要能力:提供两条检查轴。一是错误发生时的后果层级;二是装置如何察觉问题,包括接触式(错误是否物理上可插入)、定值式(集合是否完整)、步序式(顺序与步骤是否齐全)。还提出“在源头检查”,把校验推到值进入的边界。审计时可用内置扫描器:python3 scripts/detect_hazards.py --paths .(全树)、--staged(提交前)、--diff --json(CI,有发现时非零退出)、--severity high。无依赖,可在 CI 与 pre-commit 钩子中运行;扫描为零文件时非零退出。分类资料存放在 references/hazard-catalog.md 及语言相关文件中。
使用方式:设计新系统时从调用点出发,可采用让非法状态不可表示、解析而非重复校验、区分共享同一原语的概念、把顺序编码进类型、让破坏性路径比安全路径更窄等手法。审计已有代码时,不只找 bug,更找“可被误用”之处,按爆炸半径乘以出错容易度排序,逐条说明位置、错误、后果、现有装置、应补装置及所达层级。事后复盘要把缺陷、错误、隐患三者分开。
适用场景与限制:适合设计接口、模式、状态机,以及代码审计和事故复盘。资料提到该方法经 591 次盲评运行基准测试,在“说明设计排除了什么”这一点上从 45% 提升到 80%,但这些都是新会话首轮,测的是上限;对照的是“无任何方法”,因此不能证明增益来自该方法本身;且回应在发现页面已有具体缺陷方面略有下降。资料未提供收费、价格或平台信息。