小说精查
查错标准 + 改错记录标准 + 本项目踩坑库,三合一闭环。
一句话信条:审稿的价值不在夸,在于在读者发现问题之前先发现;改稿的价值不在改,在于下一轮的人知道你已经改过、且不会改回去。
配套文件:references/*.md(查错标准细则 + 踩坑库)、scripts/audit_scan.py(零依赖统计与体检)。
〇、总览:三个文件解决三个真实痛点
| 文件 | 解决什么 |
|---|---|
| 逐字精查标准(本文件第三节) | 稿子有没有错 |
| 修订说明标准(本文件第四节) | 这轮改了什么、还剩什么没做 |
踩坑库(references/pitfalls.md) |
已经踩过的坑别再踩 |
三个痛点都是真实踩过的:① 同一个"待办"在两万字说明里找不到("第 4 章必须给打水老头名字"埋了整整两轮);② 已修项在下一轮被重新当成问题提出来;③ 正文已解决、但后置台账里另写一套,导致审稿人追一个不存在的 bug(木牌背面)。
一、三条铁律(审稿侧)
铁律 1 · 引文必须精确,行号必须可核。
每条问题都要给:原句 + 行号 + 为什么错 + 怎么改。不许转述原句。批量核数一律用正则统计,不靠目测。
铁律 2 · 区分"错了"和"我不喜欢"。
分三级:必改(读者能抓住的硬错)/ 建议改(专业可信度、质感)/ 打磨(文笔节奏)。不许把三级混在一起排。
铁律 3 · 先剔已修项。
若项目里已有前几轮的修改说明、台账、设定文件,必须先读,把已修项目排除;对"我怀疑但其实已改对"的项目要明说"确认无问题",不许拿旧问题凑数。这条是审稿的信用底线。
二、两条铁律(修订侧)
铁律 4 · 编号一旦给出,永不复用、永不重排。
第 3 轮的第 12 条,到第 9 轮仍然叫 3-12。跨轮引用一律写 3-12 这种带轮次的编号。一轮一份,不覆盖旧轮(文件名带轮次与日期)。
铁律 5 · 遗留清单每轮必核,状态只有三种。
⏳ 未做(必须写"为什么留")/ ✅ 已完成(必须去正文确认现状)/ ❌ 已作废(必须写理由,不许悄悄删)。
> 教训来源:3-13 给打水老头命名 在第 3 轮提出、到第 5 轮还挂在清单上,而正文其实第 4 章已经命名"甘三"。只看清单不看正文的人会再去命名一次。
三、逐字精查工作流(按序执行)
第 0 步 · 前置准备
- 读稿,确认章数与总行数。行号一律以原始文件为准,格式统一
L1234。 Glob抓出同目录下的修改说明、改动对照表、审读报告、台账、设定文件,全部读一遍,建立"已修项清单"与"设定基线"。- 判断稿件形态:
## 第 N 章结构的 md 可直接跑闸门;纯 TXT 必须先切片。
第 1 步 · 机器闸门实测
先跑前置体检,再跑闸门(顺序不能反):
PY="C:/Users/Chairman/.workbuddy/binaries/python/versions/3.13.12/python.exe"
SCAN="C:/Users/Chairman/.workbuddy/skills/xiaoshuo-jingcha/scripts/audit_scan.py"
AUDIT="C:/Users/Chairman/.workbuddy/skills/tomato-viral-novel/scripts/viral_novel_audit.py"
# ① 前置体检:章节标记 / `## 正文` 标记 / 相邻章钩子同型 / 引号配对
"$PY" "$SCAN" --file 合并稿.md --markdown
# ② 整包闸门
"$PY" "$AUDIT" --file 合并稿.md --kind opening --protagonist 主角名
# ③ 单章 / 笔法专项
"$PY" "$AUDIT" --file ch7.md --kind chapter --chapter-index 7 --protagonist 主角名
"$PY" "$AUDIT" --file ch7.md --kind prose
为什么必须先跑 ①:viral_novel_audit.py 只认 ## 正文 字面标题;缺它时 body = text,整篇(含六台账、钩子注释、## 标记)都算正文字数,章节字数直接爆表,且会出现"主角名 506 字才出现"这类假报警。详见 references/machine-gate.md。
必报指标:汉字数(2000—3000/章)、最长段落(≤60 汉字)、对话占比(≥25%)、微钩子密度(≥1/500 字)、爽点密度(建议 ≥1/3000 字)、章末钩子(须存在且相邻章不同型)、AI 味密度(≤3 处/千字)、然后体(≤30%)、感官/微动作(≥3 处/章且 ≥3 种)、首章附加(冲突 ≤300 字、主角名 ≤500 字)。
指标口径、三类假报警、段落超长与对话占比的修复手法见 references/machine-gate.md。
第 2 步 · 六本故事账
模块 1 查不出来的部分,也是长篇崩盘的地方。每本账都出表,每格标 ✅/⚠️/❌ 与出处行号。
- 时间线账——查同一事件被记成两个时间/时间跳空未交代/给定天数塞不下的工作量。
- 人数账——各处人数交叉相加能否闭合/中途进出的人有没有回原位/同一队伍前后章是否一致。
- 物品账——被夺走的物件有无交代去向/已消耗的又出现/关键工具凭空出现/规格前后不一致。
- 身体与能力账——伤、失能、能力代价逐章推进,不许跳章也不许回退(含隐蔽回退:已失觉的部位又被用来做精细动作);金手指规则须在正文里被验证过。
- 人物与称呼账——关键数字自洽/人物是否写丢/说话习惯是否串味/称呼是否一致。
- 伏笔与呼应账——出「已埋待收」「已回收」两栏,查埋而不收(超 50 章未动)、临时新增、该呼应却没呼应。
账与账之间必须交叉核对(账1×账4 代价推进速度、账3×账2 消耗量与人头、账6×账1 回收时机)。完整检查项与判定口径见 references/six-ledgers.md。
第 3 步 · 数字与因果
凡出现数字、单位、算账对白,必须验算。
- 验算每一个"算过"——主角说"我算过",读者就会拿计算器按,逐条写出算式核对。
- 用几何尺寸反推量感——"舀了两个时辰见底了"这类描述,反推出数量级差。
- 单位换算(丈/尺/步/里/瓢/升)。
- 工期与人力——改了条件(六天→五天)以后,旧算式必须跟着改。
- 因果单向性——动作 A 发生前前提 B 是否成立/同一动作是否出现两次/人物行为有无动机/闪回是否给了时间锚。
见 references/numbers-and-causality.md。
第 4 步 · 专业知识可信度
只要正文说了"某某册上有""我背过",就要按真实常识验一遍:材料工艺(温度/配比/工序)、物理方向(密度/渗透)、过滤与分离、生物学分布、时代与器物。
每条问题都要给"最小改法":不新增设定、能顺势出戏的改法优先。见 references/domain-knowledge.md。
第 5 步 · AI 味与笔法
先报数(破折号、省略号、对话中"为什么"、"我明白了"、"不是A是B"、语气词分布),再判断结构(单句段是否通篇化、对话是否沦为问答机器、是否用解释性对白把读者当学生、是否有叙述者事后总结/前向预叙)。
报数之外还要给判断:AI 味密度达标 ≠ 文字好;密度低但节奏均匀仍然是"平",必须指出哪些地方该重、哪些该轻。见 references/prose-and-ai-flavor.md。
第 6 步 · 网文结构件
开篇 300 字冲突/500 字主角登场并报名字/爽点节拍(每 500—800 字一节点)/情绪温度打档(憋屈勿连续超 2 章)/章末钩子型号与相邻章不同型/金手指揭示章位(3 章内验证规则)。
第 7 步 · 核数与数据来源规则
- 行号来自原始文件,统一
L1234。 - 统计一律脚本化(本技能自带
scripts/audit_scan.py)。 - 同一问题只报一次,合并同类项并列出全部行号。
- 可疑但不确定的标 "待确认",不当结论。
- 报告末尾必须给 "确认无问题"清单。
四、修订说明工作流(改完之后必做)
一轮一份,文件名带轮次与日期:第N轮修改说明_YYYY-MM-DD.md。固定九节模板:
# 《书名》第 X—Y 章 · 第 N 轮修改说明
## 0. 头部
- 轮次 / 日期 / 对象(改前,文件名+汉字数)/ 产出(改后,文件名+汉字数)
- 是否可发布:是 / 否(否的话写明还差哪几条)
- 改动总量:必改 a 条 | 建议改 b 条 | 打磨 c 条
- 一句话摘要:这一轮主要解决了什么
## 1. 用户点名的问题(逐条回应)
### 1-1 【用户原话摘引】
- 现象 / 病根(为什么会出现)/ 改法(改前 → 改后)/ 涉及行号 / 连带影响
## 2. 本轮新查出的硬伤(必改)
### N-1 【一句话标题】
- 级别:必改
- 原句 + L 行号:
- 为什么错:
- 改后(可直接粘贴):
- 连带影响:
- 复验:已跑闸门 / 已核数 / 待复验
## 3. 本轮新查出的软问题(建议改)
(同上格式,级别写"建议改")
## 4. 去 AI 味 / 文风调整
| 项目 | 改前 | 改后 | 说明 |
|---|---|---|---|
| 破折号 / 省略号 / 对话中"为什么" / 解说标签 / 语气词数量 / 引号格式 | | | 语气词只加配角口语,主角叙述句不加 |
## 5. 数值验证(这一节不许空着)
| 项目 | 数值 | 验算过程 | 结论 |
| 字数 / 对话占比 / 最长段落 / 人数账 / 时间线 / 容量工程量 | | | |
## 6. 台账同步(正文改了,这里必须跟着改)
- 人设卡 / 能力代价阶梯 / 伏笔台账 / 时间线 / 关系网 / 情绪账
- **正文与后置台账的差异核查**:本轮的改动是否让源稿里某段"设定注记/工料板/木牌注"过时了?
## 7. 遗留清单(跨轮次追踪,最重要的一节)
| 编号 | 首次提出 | 目标章 | 内容 | 为什么留到现在 | 状态 |
## 8. 本轮刻意不改的(说明理由)
- 项目 / 不做的理由 / 若将来要改,正确的位置在第 N 章
## 9. 复验结果
- 机器闸门:通过 / 未通过(列出未过项)
- 逐字精查:新查出 N 条
- 自检清单:逐条打勾
开头附可粘贴精简版(5 秒看懂这轮干了什么):
【第 N 轮 · YYYY-MM-DD】
本轮:必改 a / 建议改 b / 打磨 c | 可发布:是/否
解决:①②③
未解决:3-13、5-2
新增遗留:N-1(目标第 X 章)
字数:改前 → 改后 | 对话占比:→ | 闸门:过/未过
一句话:……
完整示范案例(绳长算错怎么记、遗留项 3-13 的教训、木牌背面正文与台账脱节怎么记)见 references/revision-log.md。
五、本项目踩坑库(发稿前硬闸门)
这 24 条是真实踩出来的,不是想象出来的。任何一轮改稿,发稿前必须逐条过。 完整版(含现象、根因、正确做法、检查命令)见 references/pitfalls.md。
A 类 · 结构格式坑
| # | 坑 | 一句话根因 |
|---|---|---|
| A1 | 台账被算进正文字数,章节字数爆表 | 缺 ## 正文 标记时 body = text,整篇都算正文。必须用四区块模板:## 第N章 <名> / ## 正文 / ## 章末钩子(下挂 <!-- 钩子型号:HN -->)/ ## 本章台账更新 |
| A2 | 相邻两章章末钩子同型 | 闸门报 ERROR。钩子型号必须显式标注且相邻不同型 |
| A3 | 加了感官词补 WARN,结果字数顶爆 | 加词必带字数,要和压字数一起算账,不能只做一步就重跑 |
| A4 | 删段误替换,导致段落丢失+重复 | 删段必须用精确 old_string 匹配,改完立即复算段落数;一次只改一处 |
| A5 | 文档里残留 HTML 注释 / 元数据头 / "去AI化定稿"字样 | 发布前必需全清:<!-- ... -->、视角/温度行、"人工改写版"、"(三章完)" |
| A6 | ASCII 直引号混入正文 | 发布版引号必须全中文弯引号且配对 |
| A7 | 文件污染导致假报警(主角名 506 字才出现) | 重复书名行、元数据行、文末台账都算进正文,先剔再算 |
B 类 · 数字因果坑
| # | 坑 | 一句话根因 |
|---|---|---|
| B1 | 改了条件,旧算式没跟着改 | 工期/人数一变动,全篇引用同一数字的地方都要复算(连带影响必写) |
| B2 | 单位换算错位(三十丈≈六十步 vs 三十步) | 丈/尺/步必须换算到底再核 |
| B3 | 量感描述差数量级(千瓢写成十五瓢) | 用几何尺寸反推 |
| B4 | 同一动作出现两次(撂下门板 → 放下门板) | Grep 动作动词定位重复 |
| B5 | 人物行为无动机(船工凭什么毁自己工具) | 必须给动机,或改掉该行为 |
| B6 | 前提未成立就先发生(人扑倒时桨还没插好) | 关键动作排成行号序列,逐条问"依赖的东西在前面哪一行出现过" |
C 类 · 设定一致性坑
| # | 坑 | 一句话根因 |
|---|---|---|
| C1 | 身体/能力代价跳章或回退 | 列代价进度表逐章核;隐蔽回退(已失觉的部位又做精细动作)最难发现 |
| C2 | 关键工具凭空出现(陶片说"昨儿捡的"但昨天没这一笔) | 要么回上一章补一笔,要么改掉时间词 |
| C3 | 人数前后不一致(十五个 → 换三个 → 还是十五个?) | 各处人头交叉相加 |
| C4 | 水位/容量自相矛盾(涨了一尺 vs 水到一丈一 vs 半坑水) | 同一物理量的多种表述必须统一到一个数值 |
| C5 | 关键工具规格前后不一致(绳两尺 vs 八结两丈多) | 物件规格列表核对 |
| C6 | 人物特征撞车(两个配角都是瘦+指甲黑) | 每人一个独占辨识特征,并在下次出场加辨认句 |
| C7 | 时间线两套说法("昨儿来的"其实是第三天) | 建时间线基线表,全篇对齐 |
D 类 · 文风与 AI 味坑
| # | 坑 | 一句话根因 |
|---|---|---|
| D1 | 过度去 AI 味,把好句子也改平 | 去 AI 味只做该做的几件事,段落切分/三一律有剧情动机的不动 |
| D2 | 主角叙述句加语气词,破坏冷硬第一人称 | 语气词只加在配角口语 |
| D3 | 叙述者事后总结/前向预叙超限(六章两次就多了) | 破坏第一人称受限视角 |
| D4 | 通篇单句成段,重点失效 | 单句段占比超 ~40% 就偏了 |
E 类 · 修订记录坑(最贵的一类)
| # | 坑 | 一句话根因 |
|---|---|---|
| E1 | 遗留项烂在说明里("给老头命名"埋了两轮,其实正文已做) | 遗留清单每轮必须去正文确认现状 |
| E2 | 已修项被重新当问题提出 | 下一轮开工先读旧轮说明,剔除已修项 |
| E3 | 正文与后置台账各说一套(木牌背面:台账挂"待回收",正文写"平、无字") | 改正文必须同步查台账差异,二选一并写明结论 |
| E4 | 编号复用/重排,无法跨轮定位 | 编号一旦给出永不复用,跨轮写 3-12 |
六、报告输出格式(逐字精查报告)
# 《书名》第 X—Y 章 · 逐字精查报告
- 审读对象:(路径 / 行数 / 汉字数)
- 所用技能与脚本:…
- 审读方式:机器闸门实测 + 逐字人工通读 + 六台账交叉核对
- 前置说明:(本项目已有 N 轮修订,本报告已剔除已修项)
## 一、总评(3—5 条真正值得留的优点,每条给原句;再给 1 段病症定性)
## 二、机器闸门实测(逐章指标表 + 未达标项 + 假报警说明)
## 三、故事账(六张表)
## 四、必改(N 项)/五、建议改(N 项)/六、打磨(N 项)
## 七、伏笔与前后呼应清单(已回收 ✅ / 待回收 ⏳ / 未接上 ❌)
## 八、修订优先级表 | 序 | 动作 | 影响 | 成本 |
## 九、确认无问题清单
## 十、一句话结论
存为 .md 文件,与稿件同目录,用 present_files 呈现。
七、发稿前自检(两条链,各自打勾)
链一 · 审稿覆盖
- [ ] 每条问题都有精确原句与行号,且真的读过那一行
- [ ] 没有"疑似""大概",不确定的已标"待确认"
- [ ] 已读旧轮说明/台账,剔除了已修项
- [ ] 已列"确认无问题"清单
- [ ] 问题按必改/建议改/打磨分级,没有混排
- [ ] 数学都验算过(容量、人数、工期、单位换算)
- [ ] 已查物品轨迹(夺走/消耗/复现/凭空出现)
- [ ] 已查身体与能力代价是否跳章或回退
- [ ] 已查前文警告/承诺/威胁是否兑现
- [ ] 每条都给了"最小改法",尽量不新增设定
- [ ] 结尾一句话结论指得出下一步该动哪里
链二 · 修订记录完整
- [ ] 文件名带轮次与日期,旧轮未被覆盖
- [ ] 编号沿用旧编号,新条目从当前最大号往后排
- [ ] 每条改动都有:原句 + 行号 + 原因 + 可粘贴改后文本
- [ ] 每条改动都写了"连带影响"(尤其数字改后别处引用)
- [ ] 第 5 节数值验证没空着,人数账与时间线真的相加核对过
- [ ] 第 6 节台账已同步,且核对过正文与台账有没有各说一套
- [ ] 第 7 节遗留清单每条都去正文确认过现状,状态已更新
- [ ] 认为不做的写了"已作废 + 理由",没有悄悄删
- [ ] 一句话摘要在最上面,5 秒能看懂
- [ ] 已跑机器闸门,未通过项列明
- [ ] 改后字数、对话占比、最长段落有具体数值
链三 · 踩坑库逐条过
- [ ]
references/pitfalls.md的 A1—A7、B1—B6、C1—C7、D1—D4、E1—E4 逐条确认本轮未复发
八、可粘贴精简版(约 300 字,贴给任何一次审稿)
> 你是资深读者 + 网文编辑 + 逻辑校对。请对以下稿子做逐字精查,按这套标准出报告:
>
> ① 先跑前置体检(audit_scan.py:章节标记、## 正文 标记、相邻章钩子同型、引号配对),再跑闸门(viral_novel_audit.py --kind chapter/opening)。段落 ≤60 字、对话 ≥25% 是硬线。缺 ## 正文 标记时整篇都算正文,字数会爆表。
> ② 再人工建六本账并交叉核对:时间线、人数、物品轨迹、身体与能力代价、人物称呼、伏笔呼应。
> ③ 数字必须验算:凡出现"我算过"、容量、"舀两个时辰见底了",用几何尺寸反推;单位换算、工期人力也要验;改了条件,旧算式必须跟着改。
> ④ 因果必须单向:动作发生前前提是否成立、同一动作是否出现两次、人物行为有无动机、闪回有没有时间锚。
> ⑤ 专业常识要验:材料工艺、物理方向、过滤原理、生物分布、时代器物。
> ⑥ AI 味要报数:破折号、省略号、对话中"为什么"、"我明白了"、"不是A是B"、通篇单句成段。
> ⑦ 结构件:开篇 300 字冲突、500 字主角登场、爽点节拍、情绪温度、章末钩子型号、金手指揭示章位。
> ⑧ 改完必须出修订说明(编号永不复用、遗留清单每轮必核、正文与台账差异必查)。
>
> 铁律:每条问题给精确原句 + 行号 + 为什么错 + 怎么改;分「必改 / 建议改 / 打磨」三级;已有旧轮说明先读并剔除已修项,另列"确认无问题"清单;不许转述原句,不许拿旧问题凑数。
九、参考文件
references/machine-gate.md— 模块 1 指标口径、闸门脚本调用、三类假报警、段落超长与对话占比修复手法references/six-ledgers.md— 六本故事账完整检查项与账间交叉核对references/numbers-and-causality.md— 五类数字验算 + 因果单向性四查references/domain-knowledge.md— 材料工艺/物理方向/过滤/生物/时代器物五查references/prose-and-ai-flavor.md— AI 味词表、句法改造库、感官注入库references/revision-log.md— 修订说明模板全文 + 三个真实示范案例references/pitfalls.md— 本项目 24 类踩坑库(现象/根因/正确做法/检查命令)scripts/audit_scan.py— 零依赖快速统计器与格式体检器