# 自我借口拦截表（excuse → reality）

> 借 verification-before-completion 的核心姿态：**没有当场新鲜证据就不许宣称完成**。
> 大脑在临交付前最会编借口来跳过验证。下表把高频借口与其真相一一对照——
> 出现左列任何一句（无论是想出来还是写出来），都触发右列动作，**不许自我放行**。
> 用法：交付前扫一遍，凡命中即回到证据闸门重跑。

---

## A. 跳过验证类（最危险）

| # | 自我借口（红旗内心独白） | 真相 / 拦截动作 |
|---|---|---|
| 1 | 「改动很小，不用再跑了」 | 改动小≠正确。最小改动也能引入语法错/拼写/逻辑反。**当场重跑**，看 exit code。 |
| 2 | 「逻辑上应该能过（should work）」 | "should/probably/seems to" 是头号红旗词。没跑=没证据=不许说完成。 |
| 3 | 「上次跑过了，结果还在」 | 旧输出不算证据。代码/数据/环境已变。**当前轮重新跑**，不引用历史结果。 |
| 4 | 「我看了代码，确认没问题」 | 读代码≠运行代码。眼睛会跳过 bug。运行它，读完整输出。 |
| 5 | 「编译过了，应该没事」 | 编译/lint 通过只证明语法，不证明行为。要 0 失败的**测试**输出。 |
| 6 | 「子代理/工具说做完了」 | 轻信子代理报告是红旗。要看 VCS diff / 实际产物，自己核。 |
| 7 | 「时间不够，先交了再说」 | 交付粗糙=把验证成本转嫁给用户。要么完成验证，要么如实说「未验证」。 |
| 8 | 「这个 warning 应该无所谓」 | "应该无所谓"是猜测。读懂它，判定它，再决定忽略与否。 |

## B. 缩小证据范围类

| # | 自我借口 | 真相 / 拦截动作 |
|---|---|---|
| 9 | 「主路径通了就行，边界以后再说」 | 需求是逐条核对的清单，不是主路径打卡。漏的边界就是 bug。 |
| 10 | 「测试大部分都过了」 | "大部分过"=有失败。通过的定义是 **0 失败**，不是高通过率。 |
| 11 | 「这个测试本来就偶尔挂，不是我的问题」 | 先证明它与你的改动无关，否则就是在掩盖回归。 |
| 12 | 「我加的测试过了」（但没看它是否真能失败） | 永不失败的测试什么都没证明。撤掉修复必须看到它**变红**。 |
| 13 | 「数据看着对」 | 肉眼≠统计。该跑的完整性/漂移/显著性检查一项不能省（联动 m06）。 |

## C. 论文/科研主张类（结论夸大）

| # | 自我借口 | 真相 / 拦截动作 |
|---|---|---|
| 14 | 「结果挺好，可以说 significantly/SOTA」 | 结论必须被结果支撑——同行评审最经典失败点。无显著性检验不写 significant。 |
| 15 | 「这个方法很 novel」 | novel 是举证责任在你的强主张。先做相关工作核查，否则降级表述。 |
| 16 | 「相关性这么强，基本就是因果」 | 把相关当因果是最大反科学行为。无干预/无因果设计就只说相关。 |
| 17 | 「引用够多了，显得有根基」 | 堆砌引用≠根基。每条引用要相关、可核查、不臆造（CONVENTIONS §4，联动 m10）。 |
| 18 | 「审稿人大概不会注意这里」 | 赌评审疏忽=学术风险。按双盲严苛标准自审（联动 m04/m14）。 |

## D. 反馈与失败循环类

| # | 自我借口 | 真相 / 拦截动作 |
|---|---|---|
| 19 | 「评审说得对，我马上全改」（没核验） | 表演式同意=反模式。先验证意见技术上是否成立再动手（见 receiving_feedback.md）。 |
| 20 | 「再补一个补丁应该就好了」（已修 2 次） | 修≥3 次仍不行=架构问题。停手，诊断根因，换思路（systematic-debugging）。 |
| 21 | 「顺手把这块也重构了」 | 单一修复不夹带重构。范围蔓延会引入新风险且掩盖根因。 |
| 22 | 「不确定他什么意思，按我理解先做」 | 不清楚就停下要澄清，别用猜测继续（见 receiving_feedback.md 的 stop-if-unclear）。 |

## E. 完成度与审美类

| # | 自我借口 | 真相 / 拦截动作 |
|---|---|---|
| 23 | 「内容到位了，格式无所谓」 | 格式合规是硬要求（模板/字数/引用风格/编号）。致命问题排前，但格式也得过。 |
| 24 | 「图能看就行，风格不统一没关系」 | 审美不统一是可见缺陷（联动 a07）。配色/字号/术语要统一。 |
| 25 | 「这段和前面有点重，但都留着保险」 | 冗余=结构缺陷。重复段落删一处，YAGNI。 |
| 26 | 「先把功能堆上，多点配置更灵活」 | 超出任务需求的抽象/防御代码=过度工程。只做被要求的（YAGNI）。 |

---

## 一句话总则
**任何「应该 / 大概 / 估计 / 不用再 / 以后再 / 先交了」开头的念头，都是借口而非判断。** 把它换成一条当场可跑的检查，跑完读输出，再下结论。跳步就是撒谎，不是验证。
