绿勾只覆盖它自己那张清单 · v1
一句话律:一个从实现里抽出检查项的体检器,只能发现”坏了”,永远发现不了”少了”—— 要查缺项,清单必须来自意图(剧本 / 需求 / 分镜表),不能来自代码。
入档:2026-08-26 验证状态:⚠️ 初次发现(单项目,但同一次里咬了两口,见「实证」) 来源:2026-08-26_擦干净_剧本口径审计与补图承接位_复盘_v1
为什么这条骗得过人
体检器报 70/70,缺失 0,✅ 全部命中。
这个绿勾在心理上会被读成”资产齐了”。它的真实含义只有一句: “我清单上的每一项,文件都在。”
而它的清单是这样来的——正则扫代码里的 asset / video 字段、扫 staticFile('...')、扫音频 file。
清单出自被检对象自己。
于是它天然只有一种能力:查损坏(引用了但文件不在)。 另一种失败——缺失(该有但从没被引用)——在它的视野里连条目都不存在。
用实现自身生成的清单去检查实现,是一个闭环。闭环里查不出漏项,只查得出破损。
实证
《擦干净》B 站互动短片,v45 已渲染。同一批资产,两套口径:
| 口径 | 清单来源 | 结论 |
|---|---|---|
asset_check.cjs | 扫 videoConfig.ts / Scene.tsx / audioLayers.ts | 70/70,0 缺失 |
| 人工照剧本逐镜过 | 擦干净_完整剧本_v1.md | 4 条 P0 |
那 4 条是:
- 露脸三次闭环零素材——剧本附录列为”不可违反”第一条,称”全片最重要视觉等式”;三份 MJ prompt 清单里没有任何一条”下半脸特写”条目,且其中两条的尾参在主动排除人脸(
no face details/no face visible) - S26 的 0.3s 卧室闪现无素材也无代码——剧本自称”最重要伏笔”,
videoConfig的note里记了这条意图,Scene.tsx里搜不到实现 - 双结局零画面素材——四镜
asset/video全空,是纯 CSS 渐变 + 文字卡;码率佐证:主线 5.30 Mbps,结局 A 0.49、结局 B 1.27 - 第二幕”唯独这一件是线条画”当前为零——旧叠加路线已删、新融合底图未出图,中间态
这四条没有一条能被体检器发现,因为它们从来没写进过 videoConfig。
同一次里的第二口
审计做完后,为验证新机制渲了一张对照帧,肉眼发现:S17 的底图里少年是清晰正脸, 而剧本要求”逆光剪影、脸全黑”,项目红线写着”全程不露全脸”。
这条我自己的审计也没查出来——因为我的清单同样是从文本层(config + prompt 清单)抽的, 查得出”某个 asset 字段错配”,查不出”这张图本身违规”。 层次换了,律没变:清单来自哪一层,盲区就在哪一层之外。
操作规则
- 先问”这张清单是谁生成的”。出自被检对象 → 它只能查损坏;出自需求文档 / 分镜表 / 验收标准 → 它才能查缺失
- 两轮审计,清单来源必须不同。先跑自动体检(快、免费、查损坏),再拿意图文档人工逐条过(慢、查缺失)。第二轮如果也从代码出发,那是第一轮的复读
- 报告口径要写进结论里。别写”资产齐了”,写”引擎引用的 70 个文件都在”。措辞含糊会让下游读成前者
- 缺项的形状是”沉默”:没有报错、没有 404、没有异常帧。它唯一的表现是某个东西本该在那里而不在——这只有拿着原始意图对照才看得见
- 意图文档要能被逐条索引。剧本按镜头号 S01-S37 分段,才有可能逐镜核对;一段散文式的需求描述做不了这件事
边界
- 这条不是”自动体检没用”。体检器把损坏挡得很好,成本几乎为零,该跑照跑
- 也不是”人工审计更强”。人工审计同样受清单来源限制——见上面第二口
- ⚠️ 单项目样本。它在代码化影片项目上成立,在测试覆盖率、清单核对、库存盘点上看起来同构,但未在本库验证过
- 与 自动化产出双重验收_机器验参数人眼验内容_v1 是互补面,不是重复: 那条讲深度(机器只到参数层,内容层要人眼);本条讲广度(清单只覆盖被引用项,未引用项是盲区)。 一个查得不够深,一个查得不够全,两种失败可以同时发生
关联文档
- 2026-08-26_擦干净_剧本口径审计与补图承接位_复盘_v1 —— 来源案例,含完整 4 条 P0
- 自动化产出双重验收_机器验参数人眼验内容_v1 —— 互补面(深度 vs 广度)
- 素材审片也能蒙眼_盲选靠标题定案靠眼睛_v1 —— 同族:文件名这张清单只配盲选
- 交接文档不是需求原文_接手先回溯上游_v1 —— 强同构:转述层生成的清单,同样查不出与原文的偏差
- 蒙眼剪辑法_方法论笔记 —— 母方法论:机器做量,人做裁决
- 04_方法论与洞察索引