生成时间:2026-08-07 · 数据源:model.ts (1025行) + canvas_sync.py (4834行) + PHASE_REGISTRY (phases/__init__.py)
| # | DAG 节点 | 显示名 | KMC Phase | 产出 Slot | 作用 / 意义 | 下游消费方 | 保留评估 |
|---|---|---|---|---|---|---|---|
| 1 | topic-kernel | 选题核 | P01 | topic-kernel | 选题内核,确定爆款方向 | P02 outline | ✅ 必要 |
| 2 | hook-candidates | 钩子候选 | P01 | hook-design | 钩子设计候选,3秒抓人 | P09b 审计输入 | ✅ 必要 |
| 3 | story-framework | 故事框架 | P02 | story-framework | 大纲框架,三幕/四幕结构 | P03 输入 | ✅ 必要 |
| 4 | script-draft | 剧本初稿 | P03 | script-draft | 审计通过的最终剧本 | P04/P06/P10 | ✅ 必要 |
| 5 | audit-report | 审计报告 | P03 | audit-report | 剧本质量审计(5维度评分) | Gate 决策可见性 | ⚠️ 可选 |
| 6 | character-bible | 角色设定 | P04 | character-bible | 角色圣经,含4D身份设计 | P06/P09 关键输入 | ✅ 必要 |
| 7 | turnaround-sheets | 灰底Turnaround | P04 | character-assets(L1) | 灰底紧身衣多角度转面图 | P11 间接消费(经P09解析) | ✅ 必要 |
| 8 | costume-turnarounds | 换装Turnaround | P04 | character-assets(L2) | L2 换装转面图(含服化道) | iframe-generation 直接输入 | ✅ 必要 |
| 9 | voice-design | 声纹设计 | P04 | audio modality | 角色声纹设计 | P10 voice-clips 间接消费 | 🔴 精简 |
| 10 | spatio-temporal-script | 时空剧本 | P06 | spatio-temporal-script | 运镜+终审剧本(3专家合并) | P07/P08/P09 核心输入 | ✅ 必要 |
| 11 | scene-images | 场景图 | P07 | scene-images | 场景背景图(多视角) | P08/P11 输入 | ✅ 必要 |
| 12 | style-vector | 风格向量 | P07 | style-vector | 5维风格向量参数 | P09/P12 输入 | ✅ 必要 |
| 13 | color-intent | 色彩意图 | P07 | color-intent | 色彩调色意图方案 | P13 delivery 输入 | ✅ 必要 |
| 14 | scene-selection | 场景选择 | P08 | scene-selection | 选定场景(三态模型) | P09/P11 iframe 输入 | ✅ 必要 |
| 15 | geometry-bed | 几何布局 | P08 | geometry-bed | 场景几何床(空间坐标) | P09 输入但下游无直接消费边 | 🔴 精简 |
| 16 | shot-list | 分镜表 | P09 | shot-list | 镜头清单(逐镜头元数据) | P09b/P10/P11 核心输入 | ✅ 必要 |
| 17 | e-konte-sheets | E-Konte绘卷 | P09 | e-konte-sheets | 分镜绘卷图(视觉参考) | P10b/P11 iframe 输入 | ✅ 必要 |
| 18 | transition-design | 转场设计 | P09 | transition-design* | 转场方案(非KMC标准slot) | 仅P13 输入,P09未声明 | 🔴 精简 |
| 19 | shot-audit | 镜头审计 | P09b | shot-audit | 分镜审计报告 | 门控 P10 | ⚠️ 可选 |
| 20 | voice-clips | 语音片段 | P10 | voice-clips | TTS 配音片段 | P10b/P11/P12 输入 | ✅ 必要 |
| 21 | voice-timeline | 语音时间线 | P10 | voice-timeline | 语音时间轴对齐 | P10b/P10c/P11 输入 | ✅ 必要 |
| 22 | voice-audit | 语音审计 | P10c | voice-audit | 语音质量审计 | 门控 P10b | ⚠️ 可选 |
| 23 | rapid-preview-clips | 快速预览 | P10b | rapid-preview-clips | 快速预览片段 | 门控 P11 | ⚠️ 可选 |
| 24 | iframe-generation | 条件帧生成 | P11 | video-clips 前置 | 首/尾帧条件生成(3入边汇聚) | video-clips 核心子步骤 | ✅ 必要 |
| 25 | video-clips | 视频片段 | P11 | video-clips | DAG 最大汇聚点(5入边) | P12 核心输入 | ✅ 必要 |
| 26 | lip-sync-reports | 唇形同步 | P11 | lip-sync-reports | 口型对齐校验 | P12 输入但非阻塞 | ⚠️ 可选 |
| 27 | master-timeline | 主时间轴 | P12 | master-timeline | 合成主时间轴 | P13 输入 | ✅ 必要 |
| 28 | audio-mix | 音频混音 | P12 | audio-stems | 对白+BGM+Foley 混音 | P13 输入 | ✅ 必要 |
| 29 | master-mp4 | 成片 | P13 | master-mp4 | 最终成片(交付物) | P14 输入 | ✅ 必要 |
| 30 | quality-audit | 质量审计 | P14 | quality-audit | 成片质量审计 | Gate 产物 | ⚠️ 可选 |
| 31 | feedback-loop | 反馈闭环 | P15 | feedback-log | 跨集反思(advisory) | 非阻塞 | ⚠️ 可选 |
| 类型 | 数量 | 说明 |
|---|---|---|
| 数据流边 | 61 | 基于 KMC INPUT_SLOTS / OUTPUT_SLOTS 交集自动派生 |
| 门控边 (GATE_EDGES) | 3 | 豁免 slot 校验,来自 PHASE_REGISTRY depends_on |
| 前端建模边 | 1 | scene-selection → iframe-generation(前端比KMC更细的依赖) |
| 总计 | 65 |
| 边 | 门控含义 |
|---|---|
| shot-audit → voice-clips | P09b 门控 P10 |
| voice-audit → rapid-preview-clips | P10c 门控 P10b |
| rapid-preview-clips → video-clips | P10b 门控 P11 |
这些边不依赖 slot 数据流,而是 KMC 线性执行顺序的门控依赖。
| 层 | 变量 | 作用 | 位置 |
|---|---|---|---|
| L1 | _PHASE_INDEX_MAP | phase prefix → 唯一整数 phaseIndex(解决微门共享父 index 重叠) | L1622 |
| L2 | _PHASE_TYPE_MAP | phase prefix → (canvas_type, asset_type) 元组 canvas_type: script | asset | storyboard | video | audio |
L1639 |
| L3 | on_phase_complete | phase完成 → 创建zone椭圆 + n-{phase} summary节点 + a-{out_key} 子节点 node_type由媒体扩展名动态推导 |
L846 |
a-{out_key}-{shot_id/id/name}
示例:a-turnaround-{char}-gray_base、a-shot_list-{shot_id}、a-first_last_frames-{shot_id}
→ 这正是 DAG_NODES match 规则中 idIncludes / idPrefix 匹配的依据
FlowCanvas.tsx:70 注册的 React Flow 节点类型(渲染类型,与 DAG 概念节点是两个不同层次):
| 类别 | nodeType | 用途 |
|---|---|---|
| 资产泳道 | global, script, storyboard, keyframe, video, voice, foley, bgm, mix, composite | V3 十泳道统一 AssetCardNode 渲染 |
| 结构 | eventChip, structure | 事件标记、分组结构 |
| Legacy | asset, reference, zone | 非 graph 路径兼容 |
| 默认 | default | FallbackNodeComponent |
model.ts:440-458 中定义,是 DAG_EDGES 的权威依据。
包含 17 个 phase 的完整 inputs/outputs 镜像,与 KMC 各 p0X.py 的 INPUT_SLOTS / OUTPUT_SLOTS 一一对应。
⚠️ 注释明确:"更新 KMC slot 时必须同步此处"
model.ts:978-1025,非运行时调用(避免 bundle 体积),作为 dev/CI 校验入口。
校验逻辑:
1. 跳过 3 条门控边 (GATE_EDGES)
2. 跳过 1 条前端建模边
3. 跳过同 phaseCode 内子步骤排序边
4. 其余边检查 from.outputs ∩ to.inputs 有交集
5. 不一致则记录 issue
| # | phase_id | depends_on | Gate | 主要产出 |
|---|---|---|---|---|
| 1 | p01_hook_topic | — | ✓ selection-topic-hook | topic-kernel, hook-design |
| 2 | p02_outline | p01 | ✓ story-framework-outline | story-framework |
| 3 | p03_script_audit | p02 | ✓ script-audit | script-draft, audit-report |
| 4 | p04_character_design | p03 | ✓ p04-gate | character-bible, character-assets |
| — | ~~p05_pain_discovery~~ | 已移除 (DIALOGUE-REFORM 2026-07-28),模块保留但不在 registry | ||
| 5 | p06_spatio_temporal | p04 | ✓ spatio-temporal | spatio-temporal-script, final-audit |
| 6 | p07_scene_generation | p06 | ✓ scene-design | scene-images, style-vector, color-intent, blueprint |
| 7 | p08_scene_selection | p07 | — | scene-selection, geometry-bed |
| 8 | p09_shot_breakdown | p08 | — | shot-list, e-konte-sheets |
| 9 | p09b_shot_audit | p09 | — | shot-audit |
| 10 | p10_voice | p09b | — | voice-clips, voice-timeline |
| 11 | p10c_voice_audit | p10 | — | voice-audit |
| 12 | p10b_rapid_preview | p10c | — | rapid-preview-clips, episode-meta |
| 13 | p11_video_render | p10b | ✓ render-preview | video-clips, lip-sync-reports, take-log |
| 14 | p12_composition | p11 | — | master-timeline, audio-stems, foley-stems, bgm-tracks |
| 15 | p13_delivery | p12 | ✓ final-delivery | master-mp4, delivery-package |
| 16 | p14_quality_audit | p13 | — | quality-audit |
| 17 | p15_feedback | p14 | — | feedback-log |
每个节点 = KMC 真实 slot,移除任一会断裂依赖链。不可删减。
纯审计/门控产物,不直接被下游 slot 消费。但提供流程可见性与 gate 状态。建议保留,可降为"弱节点"视觉。
voice-design:有 deriveImplicitCompletion 反推,常无独立画布节点
geometry-bed:下游无直接消费边
transition-design:非 KMC 标准 slot,P09 未声明
DAG 节点设计与 KMC slot 体系高度对齐。KMC_SLOT_REGISTRY + validateDagEdges 保证了拓扑一致性。
这个 DAG 环节是有必要保留的,理由: