SuperAPI AI 工具集

pipeline-auditor

写作与研究

查看项目

更新于 10-16 04:40

技能介绍

用途

Pipeline Auditor(草稿审计 + 回归)是“证据优先”综述写作流水线中的确定性回归测试工具。当 output/DRAFT.md 已存在、且希望在生成 LaTeX/PDF 之前获得一份确定性的 PASS/FAIL 报告时使用。触发词包括:auditor、audit、regression test、quality report、审计、回归测试。

它回答以下问题:是否泄漏了占位符或规划者口吻;引用范围是否漂移;草稿是否回退到生成器口吻(导航/叙述模板);引用密度/健康度是否足以支撑综述类草稿。

该技能仅做分析,不编辑内容。对于所有 survey 家族 profile,风格/引用形态违规默认阻断。

输入与输出

输入:

  • output/DRAFT.md
  • outline/outline.yml

可选(推荐):

  • outline/evidence_bindings.jsonl
  • citations/ref.bib

输出:

  • output/AUDIT_REPORT.md
  • output/TEMPLATE_RESIDUE_SCORECARD.json

主要检查项(确定性)

A150++ 引用目标(审计器使用):

  • 每个 H3:至少 12 个唯一引用(deep 至少 14 个)。
  • 全局:整篇草稿至少 150 个唯一引用(推荐目标 165;deep 下限 165)。

课程论文目标:

  • 每个 H3:至少 4 个唯一引用,且至少 1600 个非引用字符。
  • 全局:至少 24 个唯一引用(推荐目标 32)。

占位符泄漏:省略号(...、…)、TODO 标记、脚手架标签。

大纲对齐:章节/小节顺序与 outline/outline.yml 对比。

综述表格:course_paper 要求至少 1 个 Markdown 表格,survey/deep 要求至少 2 个(由 section-merger 从 outline/tables_appendix.md 插入;索引表保持内部)。

论文口吻反模式:

  • 叙述模板(This subsection ...、In this subsection ...)
  • 幻灯片导航(Next, we move ...、We now turn to ...)
  • 明显的流水线口吻(this run、this workspace)
  • 歧义术语如 this pipeline、this stage、quality gate:仅当同一句包含 Harness 锚点(如 checkpoint、Unit ID、Harness lock、attempt ledger 或 template residue)时阻断;普通主题用法保持为非阻断警告。

证据政策免责声明刷屏:H3 正文中重复出现“abstract-only/title-only/provisional”样板文字。

元综述指导措辞:survey synthesis/comparisons should ....

合成句式重复:重复出现 Taken together, ... 及类似高信号生成器句式。

数字声明上下文:数字缺少最小评估上下文词(benchmark/dataset/metric/budget/cost)。

引用健康度(若 citations/ref.bib 存在):未定义键、重复、基本格式红旗。

引用形态硬门槛:不允许相邻引用块([@a] [@b]),不允许同一块内重复键([@a; @a])。句中引用比例:course_paper 至少 20%,survey/deep 至少 30%。

引用范围(若 outline/evidence_bindings.jsonl 存在):每个 H3 使用的引用应保持在绑定的证据集内。

全稿确定性模板残留:拆分英文与 CJK 面向读者的散文,将每个句子与本次 Run 所选模板资产中的固定片段比较,超过 Workflow 限制则拒绝。

模板来源溯源:要求 output/FRONT_MATTER_CONTEXT.json 记录所选 front-matter 资产与哈希,然后要求三个拥有模板的 Skill 实现与 .harness/harness.lock.json 匹配;缺失溯源、旧锁和仓库漂移均阻断验收。

JSON 记分卡记录测量比例、计数、阈值、所选资产哈希、标题感知示例和实现锁结果。在正常 Harness 执行期间,Completion 将其判定与维度投影到 .harness/evaluations/ledger.jsonl,包括失败的 Attempt,使 Run Audit 能暴露最新测量而非仅归结为 PASS/FAIL。记分卡文件仍是完整证据对象;ledger 有意更小。当前 10% 限制是初始策略目标。已发布的 Survey replay 以 0/226 残留完成当前 31 项检查契约,证明对一组保留 Artifact 可达。从零开始的干净执行、无关主题和跨 profile 校准仍待验证。

使用方式

将 output/AUDIT_REPORT.md 视为“下一步修什么”的路由表。

常见 FAIL 家族 -> 负责阶段/技能:

占位符/泄漏脚手架

  • 修复:C2–C4 产物不干净。路由到 subsection-briefs / evidence-draft / writer-context-pack,然后重写受影响章节。

缺少概览表(低于所选 profile 的表格下限)

  • 修复:确保 table-schema + appendix-table-writer 生成 outline/tables_appendix.md(course-paper 至少 1 个表;survey/deep 至少 2 个表;有引用支撑、无占位符),然后重跑 section-merger。

过渡/叙述桥中的规划者口吻

  • 修复:重跑 transition-weaver(并确保 briefs 包含 bridge_terms / contrast_hook),然后重新合并。

H3 内的叙述模板/幻灯片导航

  • 修复:通过 writer-selfloop(本地、章节级)或 subsection-polisher 重写失败章节/S*.md。

证据政策免责声明刷屏

  • 修复:在 Intro/Related Work(front matter)保留一次证据政策,删除 H3 中的重复(使用 draft-polisher 或本地章节重写)。

引用范围漂移(越界 bibkey)

  • 修复:要么 (a) 重写小节保持范围内,要么 (b) 修复映射/绑定(section-mapper → evidence-binder)并重新生成 packs。

全局唯一引用过低

  • 修复:citation-diversifier → citation-injector(不新增事实),然后 draft-polisher。

Intro/Related Work 过薄/引用过少

  • 修复:通过 writer-selfloop(front-matter 路径)重写对应 sections/S<sec_id>.md front-matter 文件,使用密集定位 + 方法段落。

全稿模板残留超过 Workflow 限制

  • 修复:使用每个记分卡示例的标题、章节类型、章节所有者和模板所有者定位负责的 front matter、章节引导或 H3 区域;重写其源章节,重新生成合并草稿,并重跑审计器。不要削弱或重命名模板资产来让现有 Run 通过。

预防指导(上游写作者应做什么)

若希望审计器无需繁重打磨循环即可 PASS:

  • 每个 H3 以内容主张 + 论点开头(避免叙述模板)。
  • 使用明确对比和至少一个评估锚点段落。
  • 按主张嵌入引用(避免尾部引用堆砌)。
  • 将证据政策限制放在 front matter 一次,而非每个 H3。

脚本

快速开始:

uv run python .codex/skills/pipeline-auditor/scripts/run.py --help

uv run python .codex/skills/pipeline-auditor/scripts/run.py --workspace <workspace>

全部选项:

  • --workspace <dir>
  • --unit-id <U###>(可选;用于日志)
  • --inputs <semicolon-separated>(罕见覆盖;优先默认)
  • --outputs <semicolon-separated>(罕见覆盖;默认写 output/AUDIT_REPORT.md 和 output/TEMPLATE_RESIDUE_SCORECARD.json)
  • --checkpoint <C#>(可选)

示例:在 global-reviewer 之后、LaTeX/PDF 之前运行审计:

uv run python .codex/skills/pipeline-auditor/scripts/run.py --workspace <workspace>

故障排除

问题:审计因未定义引用失败

  • 修复:用 citation-verifier 重新生成引用,确保 citations/ref.bib 包含每个被引键。

问题:审计因叙述式导航短语失败

  • 修复:在失败的 sections/* 文件中改写为论证桥(承载内容的交接,无导航评论),然后重新合并。

问题:审计因“唯一引用过低”失败

  • 修复:运行 citation-diversifier 生成 output/CITATION_BUDGET_REPORT.md;通过 citation-injector 应用(编辑 output/DRAFT.md,写 output/CITATION_INJECTION_REPORT.md);然后运行 draft-polisher → global-reviewer → auditor。

适用场景与限制

适用场景:证据优先综述写作流水线中,在生成 LaTeX/PDF 之前对草稿进行确定性质量审计与回归检查;按失败类型路由到相应修复阶段。

限制:该技能仅做分析,不编辑内容;部分检查依赖可选输入(citations/ref.bib、outline/evidence_bindings.jsonl)存在时才执行;当前 10% 模板残留限制为初始策略目标;从零开始的干净执行、无关主题和跨 profile 校准仍待验证。