审计元文本的扫描隔离
lesson method 审计收口账本 内容作用域哈希校验 占位符审计的责任分层
占位符或 REF 扫描不能只看全局命中数,应先隔离投稿正文、参考文献、审计 JSON、文件路径、正则定义等文本作用域,只把属于目标交付正文的命中判为 blocker。否则 审计收口账本 中的元文本自引用或历史文件名会干扰 内容作用域哈希校验 的收口判断。
可重跑扫描应排除自身输出并检查交付物哈希
当审计脚本会把命中的 token 写入 JSON/MD 账本时,应把这些声明的输出文件从下一次扫描中排除,或固定为独立的前后两阶段扫描;否则输出文件会自我增加命中数,导致不可重跑。收口账本还应记录目标稿件的 before/after SHA256、与上一验证 JSON 的 output SHA256 是否一致,以及脚本是否只写审计产物而未改动 clean manuscript。这样才能把“全包残留 REF-like 命中存在”与“投稿正文/参考文献仍有 blocker”分清。
收口决策要用零/非零正文 blocker 门控
当分类 JSON 报告大量残留 REF-like 命中但
clean_manuscript_body_or_reference_hit_count=0、patch_v0_8_required_hit_count=0 且所有命中 decision 均为 ledger/audit/path/historical 类时,正确结论是 append-only closure PASS,而不是为了清理历史审计文件名或元数据中的 REF 字符串去改 clean manuscript。最终账本应同时列出分类 JSON/ledger/clean manuscript/validation 的 SHA256,并显式记录“非零全包命中 ≠ 非零正文 blocker”。关闭后复核应独立重算而不是信任闭包文件
在最终 closure JSON/MD 已经生成后,最后一轮工程审计仍应把 closure JSON、源 classification JSON、classification ledger、validation JSON 和 clean manuscript 当作只读输入,重新计算 SHA256/size、从源 hits 派生 scope_counts/decision_counts、直接扫描 clean manuscript 的 REF-like/非数字 bracket/unsafe token,并核对 closure MD 是否含有当前 JSON 自身 hash。只有这些字段全一致时才 task_done;否则报告不一致字段,不应改写正文。