step-3-review-gate.md 3.1 KB

Step 3 Review Gate

调用约束(硬规则)

  • 必须使用 Task 调用审查 subagent,禁止主流程直接内联“自审结论”。
  • 审查任务可并行发起,必须在全部返回后统一聚合。
  • overall_score 必须来自聚合结果,不可主观估分。
  • 单章写作场景下,统一传入:{chapter, chapter_file, project_root}

审查路由模式

  • 标准/--fastauto 路由(核心 3 个 + 条件命中)。
  • --minimal:固定核心 3 个(不启用条件审查器)。

核心审查器(始终执行):

  • consistency-checker
  • continuity-checker
  • ooc-checker

条件审查器(仅 auto 命中时执行):

  • reader-pull-checker
  • high-point-checker
  • pacing-checker

Auto 路由判定信号

输入信号来源:

  1. Step 1.5 合同(是否过渡章、追读力设计、核心冲突)。
  2. 本章正文(战斗/反转/高光/章末未闭合问题等信号)。
  3. 大纲标签(关键章/高潮章/卷末章/转场章)。
  4. 最近章节节奏(连续主线、情感线断档、世界观线断档)。

路由规则:

  • reader-pull-checker:当满足任一条件时启用
    • 非过渡章;
    • 有明确未闭合问题/期待锚点;
    • 用户显式要求“追读力审查”。
  • high-point-checker:当满足任一条件时启用
    • 关键章/高潮章/卷末章;
    • 正文出现战斗、反杀、打脸、身份揭露、大反转等高光信号。
  • pacing-checker:当满足任一条件时启用
    • 章号 >= 10;
    • 最近章节存在明显节奏失衡风险;
    • 用户显式要求“节奏审查”。

Task 调用模板(示意)

selected = ["consistency-checker", "continuity-checker", "ooc-checker"]

if mode != "minimal":
  if trigger_reader_pull: selected.append("reader-pull-checker")
  if trigger_high_point: selected.append("high-point-checker")
  if trigger_pacing: selected.append("pacing-checker")

parallel Task(agent, {chapter, chapter_file, project_root}) for agent in selected

输出契约(统一)

每个 checker 返回值必须遵循 .claude/references/checker-output-schema.md

  • 必含:agentchapteroverall_scorepassissuesmetricssummary
  • 允许扩展字段(如 hard_violationssoft_suggestions),但不得替代必填字段

聚合输出最小字段:

  • chapter(单章)
  • start_chapterend_chapter(单章时二者都等于 chapter
  • selected_checkers
  • overall_score
  • severity_counts
  • critical_issues
  • issues(扁平化聚合)
  • dimension_scores(按已启用 checker 计算)

汇总输出模板

审查汇总 - 第 {chapter_num} 章
- selected_checkers: {list}
- critical issues: {N}
- high issues: {N}
- overall_score: {score}
- 可进入润色: {是/否}

审查指标落库(必做)

python -m data_modules.index_manager save-review-metrics --data '{...}' --project-root "${PROJECT_ROOT}"

进入 Step 4 前闸门

  • overall_score 已生成。
  • save-review-metrics 已成功。
  • 审查报告中的 issuesseverity_counts 可被 Step 4 直接消费。