<!-- 受众: 人(你自己) | 用途: AI出错时，你先快速判断是哪类问题、该发哪条给它 -->
<!-- 这些是给你（人）看的判断表。发给 AI 去修的完整内容在 ../给AI看/错误自查手册.md 。 -->
# 🔎 排错速查（给你自己看）

> AI 出错、或你怀疑它把项目改坏时，先用这张表**判断是哪类问题**，
> 然后去 `给AI看/错误自查手册.md` 找对应编号，把那一条发给 AI 让它修。
> 你不用懂技术，只要能对上「症状」，就知道发哪条。

---

## 第一反应：先止血，别慌着让 AI 继续改

```
1) 先让 AI 停手，别再改文件。
2) 你自己敲一句只读体检（不会改任何东西）：
   node services/backend/bin/khy.js maintain freshness
3) 如果它刚提交过而你担心改坏了，看《命脉自保清单》里的"怎么回退"。
```

---

## 症状 → 对应错误编号（去「错误自查手册」发那条给 AI）

| 你看到/感觉到的症状 | 大概是哪类 | 发给 AI 的编号 |
| --- | --- | --- |
| AI 说"已经做完/已接入"，但功能根本没生效 | 假装做完 | **P1** |
| 发现有两套做同一件事的代码 | 重复造轮子 | **P2** |
| 改动没法一键关掉、关不掉恢复不了原样 | 忘了加开关 | **P3 / P4** |
| AI 查了半天只说"下一步我会…"就停了，没给结果 | 只报进度不交付 | **P5 / W8** |
| AI 想用 `--no-verify` 跳过提交检查 | 想绕守卫 | **P6**（禁止它这么做） |
| AI 引用了一个根本不存在的文件/函数 | 幻觉 | **P8** |
| 某个文件越来越大、几千行 | 上帝组件 | **P9 / T2 任务卡** |
| 小模型跑着跑着输出被截断/答非所问 | 小模型上下文 | **W1 / W2** |
| 小模型报错拒收工具消息、或工具调用解析失败 | 小模型格式 | **W3 / W4** |
| 中文网站抓下来是乱码 | 字符集 | **B9** |
| 选了 auto 模型报 404 / model_not_found | 模型名泄漏 | **G1** |
| 换了新版 API key 报"格式无效" | 鉴权过时 | **G3** |
| 新模型的某能力(如深度思考)线上打不出来 | 请求字段丢了 | **G4** |
| 图片识别莫名退回本地 OCR | 视觉误判 | **G5** |
| 改好的东西 pip 用户拿不到 | 没重新打包 | **E2** |
| 发布后版本号对不上 | 版本不一致 | **E3** |
| `git commit` 被钩子挡住不让提交 | 守卫红了 | **E5** |
| 跑测试出现莫名其妙的失败 | 测试框架混用 | **E6** |
| 在 cache/data/.tmp 里找不到源码 | 找错地方 | **E7** |

> 找不到完全对上的？把 AI 的**完整报错**、**它改了哪些文件**、**跑了什么命令**原样发给它，
> 并说「对照错误自查手册逐条自审，别臆测硬改」。

---

## 让 AI 自己体检的一句话（复制发给它）

```
对照 ../给AI看/错误自查手册.md 逐条自审你刚才的改动，命中哪条就修哪条，
并按"诚实收尾模板"告诉我：测了什么、几个绿、守卫是否全绿、有没有没做完的。
```

---

## 三条你要盯死的红线（AI 最容易在这翻车）

1. **它说"做完了"时，追问一句**：「这个改动接到 executeTool / toolUseLoop / aiManagementServer 哪个入口了？」
   答不上来 = 没真生效（错误 P1）。
2. **它改完时，让它证明能回退**：「把 KHY_那个开关 设成 off，行为和改之前一样吗？」
   不一样 = 破坏了回退（错误 P4）。
3. **守卫红了别妥协**：它想 `--no-verify` 绕过时，坚决不许，让它先把守卫修绿。

---

*完整修复步骤在 `给AI看/错误自查手册.md`；怕改坏/要发布看 `命脉自保清单-给人.md`。*
