# 引用 locator 审计

最危险的引用错误不是"引了不存在的文献"（那个 verify_refs.py 能抓），而是**引了真实文献、但它并不支撑你说的那句话**——断章取义、过度引申、张冠李戴。这种错误 DOI 核验查不出来，审稿人却一眼看穿。locator 审计专门治这个。

## 核心要求

正文里每一处引用，都要能回答：**被引文献的哪一处（locator），真的说了我这句话声称的内容？**

locator = 能定位到原文具体位置的锚点：页码、章节号、图/表号、定理/公式号，或一段原文片段。给不出 locator，往往说明这条引用是"凭印象引"的，高危。

## 三态判定

逐条引用，对照被引文献原文，落到三态之一：

| 判定 | 含义 | 处理 |
|------|------|------|
| `supports` | 原文该 locator 处确实支撑正文这句话 | 保留，记下 locator |
| `partial` | 沾边，但正文夸大了、或只取了片面结论、或语境不同 | **改写正文**到原文真正支撑的程度，或换更贴的引用 |
| `unsupported` | 原文根本没说这个意思 / 张冠李戴 / 记错了文献 | **删除或替换**，绝不"大概是这篇" |

## 审计动作清单

对每条要审计的引用：

1. **定位**：打开被引文献，找到与正文声称最相关的位置，记下 locator。找不到任何相关位置 → 直接判 `unsupported`。
2. **比对**：把正文那句话和原文该处并排读。问三个问题：
   - 原文是否真的下了这个结论？（不是"读起来好像支持"）
   - 正文有没有把"在某条件下成立"写成"普遍成立"？（过度引申 → `partial`）
   - 方向对不对？（原文说 A 导致 B，正文别写成 B 导致 A）
3. **判定 + 留痕**：记 `{citation_key, locator, verdict, note}`。`partial`/`unsupported` 必须附改法。

## 优先级（不必每条都全审，但高危必审）

精力有限时，优先审这些：
- 支撑**核心论点 / 贡献声明**的引用（错了最致命）。
- "前人已证明 X" / "X 是公认的" 这类**借他人权威背书**的句子。
- 数字、比例、SOTA 声明的来源（对接 M3 幻觉结果）。
- 二手引用（你引的文献又转引自别处）——优先回到一手来源。

低危的（如"领域综述见 [N]"这类泛指）可抽样。

## 与既有核验的分工

| 工具 / 流程 | 管什么 |
|------|--------|
| `verify_refs.py` | 文献**真实存在**吗（DOI/标题/作者/年份）|
| `verify_citation_edge.py` | "A 引用了 B"这条**被引关系**成立吗 |
| **locator 审计（本文）** | 被引文献**真的支撑**正文那句话吗 |

三者互补：前两个核"引用本身对不对"，locator 审计核"引用用得对不对"。一篇论文投稿前，核心论点的引用应过 locator 审计。这一步也是 paper-drafting 诚信门里 M2 的延伸——key/DOI 只是溯源字段，不等于论点被支撑。
