🔍 KMC 管线审计 — Hell Grind 黄金对照

审计日期: 2026-08-06 | Fork: kaiger666888/Hell-Grind-AIGC-Skill | 审计方法: 2 路并行子代理深读两个代码库

15
🔴 Critical 差距
18
🟡 Moderate 差距
6
🟢 Minor / KMC 更强
7
建议修复项
审计方法:2 路并行子代理(GLM-5.2 1M context),分别审计 Prompt 工程体系 + 项目管理/资产/连续性体系。子代理逐行实读了 Hell Grind Skill 全部 8 个 reference 文档 + 13 个模板文件,以及 KMC 管线的 SKILL.md (765行) + prompt_injector + visual_executor + cinematographer + script_auditor + continuity_auditor + p09_shot_breakdown.py + p11_video_render.py + asset-chain-audit + asset-management-v2 等 30+ 文件。

Part A: Prompt 工程体系差距

🔴 Critical A1: 完全没有 Prompt 质量评分门

Hell Grind: 9 维 100 分制,prompt 生成后→送入模型前评分,<80 分先修复。

KMC 现状: 有 5 个审计层,但没有一个审计 prompt 文本质量。

KMC 审计层审计对象审计 prompt?
script_auditor (5维100分)剧本叙事结构否
quality-rubric (6维100分)成片发布前否
post-production-audit (5层)交付后否
continuity_auditor (4维)生成结果否
P14 quality_audit管线数据完整性否
影响:Prompt 质量问题只能在生成结果(最昂贵的环节)后被发现。Prompt 文本是整个管线中唯一没有被审计的环节。

🔴 Critical A2: 针对性负面约束完全反向

Hell Grind: per-shot,只列本镜头最可能出现的错误(身份漂移/额外人物/错误口型/物理穿模)。

KMC 现状: 全局通用 ban list(cartoon, anime, oversaturated, HDR, plastic skin),对所有镜头一刀切。

问题:通用 ban list 对 LTX-2.3 / dreamina 5.0 几乎无效(这些模型不会生成 anime 风格)。真正需要的 per-shot 风险(身份漂移、额外人物、错误口型、物理穿模)完全没有覆盖。 碎片证据:R11a 的 duplicate person, two people 和 R5 的 BGM ban 已验证有效性,但散落在 case-by-case 经验里,没有系统化。

shot-list 缺失 negative_prompt 字段

p09_shot_breakdown.py 的 _CROSS_CUTTING_INSTRUCTION 要求 6 个字段(character_refs/scene_ref/style_prefix/color_guidance/physics_state/start/end_frame_description),没有 negative_prompt。

🟡 Moderate A3: 缺少 Prompt 丰富度分级

Hell Grind: 精简/标准/导演三档,关键镜头用导演版(含时间线/表演/物理/声音细节)。

KMC 现状: 一刀切 — 所有镜头 prompt 结构相同,4000 token 硬上限。没有"这是 hook 镜头,需要导演级 detail"或"这是过场镜头,可以精简"的分级机制。

影响:(1) 关键镜头(hook/climax)prompt 不够丰富,生成质量不足;(2) 过场镜头 prompt 过度详细,浪费 token 预算和模型注意力。

🟡 Moderate A4: 缺少意图保护/约束账本

Hell Grind: 约束账本区分硬约束(不可改)/可增强/歧义/缺失,润色时输出修改摘要。

KMC 现状: 无显式意图保护机制。已造成真实生产事故:Volvo V3 中 p11 _goal_for_shot() 静默漏掉对白注入 → 39 个视频全部无声。

根因:prompt_injector 把 visual_intent + style_genome + character_assets 组装成 model_prompts 时,不区分哪些是硬约束 vs 可增强。没有"修改摘要"机制让迭代可追踪。

🟢 Minor A5: 视频 12 段契约 — KMC 覆盖 10/12 且超出

HG 12 段KMC 对应字段覆盖
#1 叙事功能shot_intent.felt_intent✅
#2 角色数量+IDcharacter_refs[]✅
#3 外观状态character_refs + L2 fittings⚠️ 部分
#4 场景道具scene_ref + scene_id✅
#5 动作时间线timeline_breakdown.elements[]✅ KMC更精细
#6 摄影机契约camera_intent (size/move/axis)✅
#7 光线色彩lighting_intent + color_guidance✅ 无天气
#8 表演物理physics_state (6值enum)⚠️ 粗粒度
#9 连续性shot_intent.continuity✅
#10 对白声音audio_cue / dialogue_ref✅
#11 针对性负面—缺失
#12 交付规格duration / fps / resolution✅

KMC 独有超出:首尾帧条件(start_frame/end_frame_description)、转场设计(transition_method/visual_hook)、timeline 多要素编排。KMC 在编排复杂度上优于 Hell Grind。

Part B: 项目管理 / 资产 / 连续性差距

🔴 Critical B1: 无 generation-log — 生成记录全生命周期断裂

Hell Grind: generation-log.csv 每次模型调用追加一行:generation_id / shot_id / prompt_version / provider / model / seed / status / output_path / cost / notes。包含失败尝试。

KMC 现状: 无等价机制。最接近的是 prompt-log.jsonl(只记 delegate goal 文本,不含 seed/model/output_path/cost)和 asset-manifest.jsonl。生成参数散落在各模板脚本的 SEED_BASE offset。

直接后果:KMC 无法回答"这个镜头用了什么 seed/参数生成的"、"这个生成花了多少 credit"、"失败了哪些尝试"。asset-management-v2 V2.1 的 provenance schema 是方向性回应,但依赖 subagent 自报,覆盖率不可控。

🔴 Critical B2: 无 selection-log — 选片决策不可追溯

Hell Grind: selection-log.csv:selection_id / shot_id / generation_id / decision / reviewer / reviewed_at / notes。标准 decision 词汇:shortlist / reject / select / supersede。

KMC 现状: P08 scene_selection 只记最终选定结果,不记选择过程(拒绝了什么、为什么选 A 不选 B)。shot-list 无 selected_generation_id 字段 — 镜头与其最终选定生成结果之间无显式链接。

影响:无法回溯决策链。当最终成片有问题时,无法定位"是选错了还是生成质量问题"。

🔴 Critical B3: 连续性只有事后检测,无前置声明

Hell Grind: continuity-matrix.csv 是前置声明:每个镜头生成前就声明服装/伤势/道具/环境状态。

KMC 现状: continuity_auditor 是事后检测(ArcFace/CIELAB/CLIP/IoU 4 维量化),能力很强但只能检测已生成结果的问题,无法在生成前声明约束。

哲学差异:Hell Grind = "先声明每个镜头的连续性状态,再检查"(预防性);KMC = "生成后审计"(检测性)。KMC 的检测维度更精细(4 维量化 + 阈值),但缺少前置约束声明导致 prompt 中连续性信息不完整。

🔴 Critical B4: 无全局稳定资产 ID 体系

Hell Grind: CHR-001 / CRT-001 / PROP-007 / LOC-003 / VFX-002 — 5 类资产,ID 不变性原则。

KMC 现状: 角色用中文名(如 shenzhiyao),shot 用 S01-1 或 S02_B02(格式因 episode 而异),场景用 scene_S01。无统一格式约束。

影响:asset-chain-integrity-audit 已发现 3 种资产断裂模式(turnaround_path 指错/scene_ref 全 None/character_refs 断裂),根源之一就是无稳定 ID 约束。prop/vfx/creature 无独立 ID 体系。

🔴 Critical B5: 无 validate_project.py 式全局结构验证

Hell Grind: validate_project.py 检查目录结构 / CSV 表头 / ID 格式 / 引用完整性 — 全局结构门。

KMC 现状: 有 _validate_phase_outputs(AssetBus Layer 3,只检查 slot 是否写入),但不检查 ID 格式 / 引用完整性 / 表头完整性。3 个 asset-chain-audit 子 skill 是检测性补救,不是前置约束。

🔴 Critical B6: 无镜头级状态机

Hell Grind: planned → prompt_ready → generated → reviewed → selected → locked(单向推进,返工记录原因不覆盖旧版本)。

KMC 现状: 状态管理在 phase 级别(P01→P13),shot 级别无 status 字段流转。无法回答"这个镜头现在处于什么状态"。版本管理是目录级快照(project-vN/),非 shot 级版本。

🟡 Moderate B7: 资产事实分散在 34 个 slot — 违反单一数据源

Hell Grind: 6 个 CSV 表,每类事实一个表(assets/scenes/shots/generations/selections/continuity)。

KMC 现状: 34 个 AssetBus slot,资产事实分散在 character-bible.json + character-assets.json + scene-images.json + 多个 slot 中。

权衡:KMC 的 slot 体系粒度更细,利于管线流转,但牺牲了单一数据源。Hell Grind 的 CSV 设计利于审计和查询。两者是不同哲学的 trade-off。

🟡 Moderate B8: write-once 是测试约定非系统强制

Hell Grind: CSV 天然 append-only,旧版本不覆盖。

KMC 现状: JSON slot 用 os.replace(覆盖式),write-once 是测试约定(test_p01_write_once.py 等),AssetBus.write 无硬 write-once guard。如果重跑 phase,旧数据被覆盖。

🟢 KMC 更强 B9: Gate 数量和覆盖超出

KMC 有 11 个 gate(8 HIL + 3 auto-detect redline),Hell Grind 有 5 层门。KMC 在交付(P13 + compliance_gate)和内容合规(CN 规则 + AIGC 标识)上更强。

但有一个已知 Bug:GATE_ID vs gates.yaml 不匹配(2026-07-16 发现),所有 9 个 gate 的模块常量与 YAML 配置不匹配,--no-gates 缺失时管线崩溃。

修复优先级建议

P0 立即修复 — 高 ROI

1. Per-shot negative_prompt 字段

2. Prompt 质量评分门(P09 后 / P11 前)

3. Gate ID 不匹配 Bug 修复

P1 短期改进 — 中 ROI

4. 生成记录追踪(generation-log)

5. 丰富度分级

6. 约束账本 + 修改摘要

7. 选片记录(selection-log)

P2 长期增强 — 低 ROI


核心洞察

KMC 管线在编排复杂度(13 phase + 34 slot + 11 gate + 15 expert)上远超 Hell Grind 的 CSV 驱动工作流。
但 Hell Grind 在Prompt 文本工程纪律和项目管理可追溯性上有 3 个 KMC 完全缺失的机制:

① Prompt 质量评分(KMC 有 5 个 audit 层但没有一个审计 prompt 本身)
② 针对性负面约束(KMC 用通用 ban list,Hell Grind 用 per-shot 风险驱动)
③ 全生命周期审计链(generation-log + selection-log,KMC 只有最终结果无过程记录)

这三者的共同特征:在生成模型调用前(最昂贵的环节)拦截质量问题,
而 KMC 当前的所有审计都在生成后或交付后才运行。