用途:Sanity Check 用于在解决问题或提出方案前,先识别并验证自己正在依赖的假设,防止因错误前提导致“假设级联”——即从错误假设出发一路修补,越陷越深。它适合调试、排查故障、解释代码行为等非平凡问题时使用。
主要能力
- 列出假设:在给方案前,明确写出假设,如某函数存在且行为如何、某错误由什么引起、某文件被谁导入、某配置值是什么。
- 分类假设:分为存在性假设(如“应该有个配置文件”)、行为假设(如“这个函数会校验输入”)、因果假设(如“报错来自 X”)、状态假设(如“数据库有这个列”)。
- 逐条验证:对存在性假设用 find、grep、ls;对行为假设直接读真实代码;对因果假设用复现、查日志、跟踪执行;对状态假设查 schema 和实际值。
- 输出格式:以“Sanity Check”小节列出关键假设、验证方式与状态(已验证/错误/未验证),并说明将基于哪些已验证假设继续。
使用方式与限制
- 若任一关键假设被证伪,应停止并重新评估,而不是继续打补丁。
- 不要在没有验证时使用“大概”“可能”等词;不要在未复现或未查日志时诊断 bug;不要在未读代码时解释代码行为;不要盲目相信错误信息即根因。
- 该资料未提供具体安装命令、收费或平台信息。