# 📁 案例 012：归档 19 份只有 8 份被写回——抽签制造的是曝光，不是复验

**来源**：2026-11-02 10:00 第78次回火现场（②原理复制「归档 18 份仅 7 份带回火批注」）+ 当日 14:00 复算
**类型**：知识库维护 · 归档生命周期 · 覆盖率核验 · 抽样≠覆盖
**入库日期**：2026-11-02（16:00 统一入库 job 转正，待入库原件移入 `归档/2026-11-02/`）

---

## 一、问题

归档区是「已闭环」文件的终点站，但闭环之后没人再翻开它。2026-11-02 实测（14:00 口径）：

| 项 | 数 | 口径 |
|---|---|---|
| `归档/` 下 md 总数 | **18** | `find 归档 -name '*.md' \| wc -l` |
| 含「回火批注」段的 | **8** | `grep -rl '回火批注' 归档 --include='*.md' \| wc -l` |
| 从未被写回的 | **10** | 差集，占 56% |

10:00 报告写「7 份」，14:00 复算是 8 —— **差的这 1 份就是这份文件自己**：10:00 数的时候还没写批注，写完才变成 8。同一份收据在动作前后差 1，性质是 KB-经验-013「收据的时点」的第三次现场（不是口径错，是没标时点）。**结论方向不变：一半以上归档从未被第二只眼睛落回去（写完当日批注后仍剩 10 份空白）。**

更根上的问题：归档区唯一的翻页机制是 10:00 的随机抽签。池子当日 111 份、归档 18 份 → 任一份当天被抽中的概率 **16.2%**；且抽中后仍可能重复抽同一份（无去重清单，只能靠「有没有批注」事后判断）。**清一遍 18 份的期望天数远大于 18 天，而没有人在等这个数。**

## 二、行动（14:00 当场执行）

1. **复算覆盖率并留下口径**：上面三行数字全部带命令，任何一天可复算。
2. **把「复验」从抽签里摘出来**：在 14:00 第十一条追加「归档复验 1 份/天」——按路径排序取第一份**没有回火批注**的文件，不抽签、不复用 10:00 的 16%，写最小三问（药方是否兑现 / 原理是否复制）。
3. **同时写死退场条件**（#152 教训：进有执行点、出有退场日）：
   - 什么算闭环：`grep -rl 回火批注 归档 | wc -l` = `find 归档 -name '*.md' | wc -l`；
   - 闭环后由谁删：14:00 自己删去该句（它是条款的所有者）；
   - 依据在哪：每日报告一行 `归档批注: n/N`。
4. **不新增独立条款**：并入现有第十一条（待入库扫描）执行，避免再造一条只有入口的僵尸账。

## 三、结果

- 覆盖率账已进报告口径：**归档批注 8/18（44%）**（14:00 实测，口径 `grep -rl '回火批注'` = **提及口径**）。
- 本条的执行点不是「待 LEON 决策」：14:00 自己能抽 1 份文件、能写批注段、能计数——**这半条今天就已经落地在 prompt 里**。
- 未做：没有一次性补完 10 份（一次补 10 份等于把 10 次核验挤成 1 次形式主义，且会撑爆单次上下文）。

### 16:00 转正复算：提及 ≠ 有批注段（口径修正，不改原结论方向）

转正落盘后原地重跑：`find 归档 -name '*.md' | wc -l` = **19**，`grep -rl '回火批注'` = **9** → 9/19。但逐份看命中位置：

- 真正以 `## 回火批注（追加式，不改写原文）` 段落写回的，**归档区只有 2 份**（`归档/经验004修订稿-2026-08-31.md` 第 96 行、`归档/KB-待入库-2026-09-17-口头交接不等于执行机制.md` 第 26 行），段口径 **2/18 = 11%**。
- 其余 7 份命中全是**正文里提到「回火批注」这个词**（讨论契约、引用命令），不是被批注过。
- 回火批注的实际落点在**案例库/经验库本体**：`grep -rn '^## 回火批注'` 得案例 002 / 006 / 010 / 011（两段）、经验 005 共 5 处。

所以「归档 18 份只有 8 份被写回」这个数，是「提到过」的数，不是「被写回过」的数；真实段口径是 2/18。并且「没写回归档副本」至少有一部分是「写回了本体、没同步副本」——与 10-31「三副本没有正本」同族（副本漂移），不是同一件事。

**对退场条件的影响**：原文字面（`grep -rl` 提及口径）会在 19/19 时宣布退出，而那时可能仍有 17 份没有真批注。建议判据改段口径 `grep -rln '^## 回火批注' 归档`，并先定「补写归档副本还是补写本体」——未定前不写死补齐天数（本条不擅自替 14:00 改判据，留 11-03 14:00 当场定）。

## 四、教训

1. **抽样不是覆盖。** 随机抽中给的是曝光，不是复验；把覆盖率当成抽签的副产品，等于让 56% 的档案永远在等一个 16% 的运气。
2. **能算的覆盖率不该靠抽。** `grep -l` 一行就能数出谁没被翻开——凡是一行命令能算出的缺口，就不该交给概率。
3. **补验也要带退场。** 「每天补 1 份」若没写 18/18 的终点，10 天后就是第二件空转 41 天的事（#152）。
4. **数字必须带口径。** 7 vs 8 的差不是算错，是没写口径——同一个病灶在 KB-经验-011、KB-经验-013 已各记过一次，这是第三次。
5. **「命中」也要带口径（16:00 补）。** `grep -rl` 数的是「提到」，`grep -rln '^## 回火批注'` 数的才是「批注段」；两者今天差 7 份。凡是用词频当覆盖率，都要先问一句：命中的是动作，还是动作的名字。（KB-经验-011/013 第四次现场）

## 五、执行点

| 项 | 内容 |
|----|------|
| 谁执行 | 14:00（第十一条：待入库扫描 + 归档复验 1 份/天） |
| 何时 | 每日 14:00；按路径排序取第一份无回火批注文件 |
| 怎么核 | 每日报告写一行 `归档批注: n/N`；n 用段口径 `grep -rln '^## 回火批注' 归档` 计数（提及口径会虚高 7 份）；n=N 即退场 |
| 退场 | 14:00 自己删去该句（条款所有者），依据为当日报告那行数 |
| 留给 LEON | 无 |

**标签**：#抽样不是覆盖 #归档复验覆盖率 #退场条件 #收据的时点第三次 #grep可算就不该抽 #2026-11-02
