{
  "meta": {
    "package_version": "dramart_package.v3",
    "content_policy_version": "dramart_package_scope.v1",
    "project_title": "道祖是克苏鲁",
    "source_screenplay_path": "03d_screenplay.json",
    "source_entity_registry_path": "02e_entity_registry.json",
    "source_visual_cards_path": "02f_entity_visual_cards.json",
    "source_voice_cards_path": "02g_entity_voice_cards.json",
    "source_asset_bindings_path": "02h_entity_assets.json",
    "source_entity_review_state_path": "02z_entity_review_state.json",
    "episode_count": 1,
    "block_count": 2,
    "source_scene_ref_count": 2,
    "character_bio_count": 7,
    "location_asset_count": 2,
    "prop_asset_count": 0,
    "voice_suggestion_count": 7,
    "review_checklist_count": 17,
    "upload_script_char_count": 1321,
    "upload_part_count": 1,
    "single_file_upload_ready": true,
    "upload_ready_status": "pass",
    "upload_ready_issue_count": 1,
    "upload_ready_fail_count": 0,
    "upload_ready_warn_count": 0,
    "asset_ready_status": "pass",
    "asset_ready_issue_count": 0,
    "asset_ready_fail_count": 0,
    "asset_ready_warn_count": 0,
    "missing_character_visual_count": 0,
    "missing_character_voice_count": 0,
    "manual_review_blocked_character_count": 0,
    "manual_review_needs_fix_character_count": 0,
    "manual_review_locked_scope_count": 0,
    "skipped_unbound_character_ref_count": 0,
    "risk_item_count": 60,
    "risk_flag_count": 4,
    "entity_review_summary": {
      "entity": {
        "total": 11,
        "applicable": 11,
        "todo": 11,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 11
      },
      "visual": {
        "total": 11,
        "applicable": 11,
        "todo": 11,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 11
      },
      "voice": {
        "total": 11,
        "applicable": 7,
        "todo": 7,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 4,
        "locked": 0,
        "open": 7
      },
      "assets": {
        "total": 11,
        "applicable": 11,
        "todo": 11,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 11
      },
      "event_count": 0
    },
    "time_mode_counts": {
      "unknown": 1,
      "flashback": 1
    }
  },
  "content_policy": {
    "contract_version": "dramart_package_scope.v1",
    "package_roles": [
      "export_layer",
      "asset_suggestion_layer",
      "risk_reveal_layer"
    ],
    "allowed_derivations": [
      "字段兜底与格式整形",
      "episode_upload_markdown 聚合输出",
      "asset_suggestion / readiness / risk overlay 派生",
      "upload markdown 的大纲与导览拼装"
    ],
    "forbidden_repairs": [
      "改写 screenplay_text 正文主体",
      "重写 title / opening_hook / ending_hook 主文案",
      "用 package 文案覆盖 episode 主角色排序"
    ],
    "source_of_truth": {
      "screenplay": "03d_screenplay.json",
      "entity_registry": "02e_entity_registry.json",
      "visual_cards": "02f_entity_visual_cards.json",
      "voice_cards": "02g_entity_voice_cards.json",
      "asset_bindings": "02h_entity_assets.json"
    }
  },
  "outline": {
    "title": "道祖是克苏鲁",
    "format": "Dramart 漫剧/短剧输入包",
    "premise": "穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。",
    "core_hook": "险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？",
    "episode_count": 1,
    "block_count": 2,
    "source_scene_ref_count": 2,
    "time_mode_counts": {
      "unknown": 1,
      "flashback": 1
    },
    "main_characters": [
      "李凡",
      "穿越者心理健康维护系统",
      "童子",
      "老道",
      "修士",
      "山主",
      "玉蟾婆"
    ],
    "main_locations": [
      "墨竹山",
      "墨竹山法坛"
    ],
    "upload_notes": [
      "上传时优先使用 03e_dramart_upload_script.md 作为正文剧本。",
      "角色设定优先参考 character_bios 中的 identity_summary、appearance_core 与 voice_profile。",
      "若存在 flashback / dream / parallel 等时间模式，需在 Dramart 项目中额外标注时态切换。"
    ]
  },
  "episode_summaries": [
    {
      "episode_id": "EP0001",
      "episode_index": 1,
      "title": "墨竹山法坛",
      "logline": "穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。",
      "summary": "镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。",
      "opening_hook": "险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？",
      "ending_hook": "系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？",
      "block_count": 2,
      "block_ids": [
        "EP0001B001",
        "EP0001B002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "time_modes": [
        "unknown",
        "flashback"
      ],
      "character_names": [
        "童子",
        "李凡",
        "老道",
        "修士",
        "玉蟾婆"
      ],
      "character_display_names": [
        "童子",
        "李凡",
        "老道",
        "修士",
        "玉蟾婆"
      ],
      "character_entity_uids": [
        "E000010",
        "E000002",
        "E000001",
        "E000011",
        "E000008"
      ],
      "location_names": [
        "墨竹山",
        "墨竹山法坛"
      ],
      "location_display_names": [
        "墨竹山",
        "墨竹山法坛"
      ],
      "location_entity_uids": [
        "E000003"
      ],
      "episode_markdown": "# 墨竹山法坛\n\n一句话梗概：穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n剧情摘要：镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n开场钩子：险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？\n结尾钩子：系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？\n\n## 墨竹山险境与魔尊法坛\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转场提示：从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 【闪回】老道画圈并告诫夜间规矩\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转场提示：闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
      "episode_upload_markdown": "# 墨竹山法坛\n\n本集围绕童子、李凡、老道、修士、玉蟾婆展开，主要场面落在墨竹山、墨竹山法坛。穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n本集看点集中在“险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？”，并收在“系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？”。\n\n## 场次01 墨竹山险境与魔尊法坛\n\n场面落在墨竹山。\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转入下一场前，从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 场次02 【闪回】老道画圈并告诫夜间规矩\n\n这一场属于回忆时间层，场面落在墨竹山法坛，出场人物有李凡、童子、老道、山主、玉蟾婆、修士、穿越者心理健康维护系统。\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转入下一场前，闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
      "episode_upload_char_count": 989,
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    }
  ],
  "episodes": [
    {
      "episode_id": "EP0001",
      "episode_index": 1,
      "title": "墨竹山法坛",
      "logline": "穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。",
      "summary": "镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。",
      "opening_hook": "险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？",
      "ending_hook": "系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？",
      "block_count": 2,
      "block_ids": [
        "EP0001B001",
        "EP0001B002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "time_modes": [
        "unknown",
        "flashback"
      ],
      "character_names": [
        "童子",
        "李凡",
        "老道",
        "修士",
        "玉蟾婆"
      ],
      "character_display_names": [
        "童子",
        "李凡",
        "老道",
        "修士",
        "玉蟾婆"
      ],
      "character_entity_uids": [
        "E000010",
        "E000002",
        "E000001",
        "E000011",
        "E000008"
      ],
      "location_names": [
        "墨竹山",
        "墨竹山法坛"
      ],
      "location_display_names": [
        "墨竹山",
        "墨竹山法坛"
      ],
      "location_entity_uids": [
        "E000003"
      ],
      "episode_markdown": "# 墨竹山法坛\n\n一句话梗概：穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n剧情摘要：镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n开场钩子：险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？\n结尾钩子：系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？\n\n## 墨竹山险境与魔尊法坛\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转场提示：从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 【闪回】老道画圈并告诫夜间规矩\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转场提示：闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
      "episode_upload_markdown": "# 墨竹山法坛\n\n本集围绕童子、李凡、老道、修士、玉蟾婆展开，主要场面落在墨竹山、墨竹山法坛。穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n本集看点集中在“险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？”，并收在“系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？”。\n\n## 场次01 墨竹山险境与魔尊法坛\n\n场面落在墨竹山。\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转入下一场前，从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 场次02 【闪回】老道画圈并告诫夜间规矩\n\n这一场属于回忆时间层，场面落在墨竹山法坛，出场人物有李凡、童子、老道、山主、玉蟾婆、修士、穿越者心理健康维护系统。\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转入下一场前，闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
      "episode_upload_char_count": 989,
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    }
  ],
  "platform_status": "pass",
  "upload_ready": true,
  "asset_ready": true,
  "storyboard_ready": "unknown",
  "character_bios": [
    {
      "entity_uid": "E000002",
      "name": "李凡",
      "canonical_name": "李凡",
      "display_name": "李凡",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [
        "穿越者"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000002",
      "voice_card_id": "VO000002",
      "asset_binding_id": "AB000002",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "李凡，功能角色",
      "visual_anchor_summary": "李凡，功能角色",
      "design_keywords": [
        "李凡"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000002:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：穿越者心理健康维护系统",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "李凡；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000002:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000002:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000002:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "穿越者心理健康维护系统"
        ],
        "variant_keys": [
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "prompt_fragments": [
          "李凡：二十一童子中的穿越者；二十一人中有一个平平无奇的小童是一名穿越者",
          "李凡"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "李凡，功能角色\n本次剧本称呼：穿越者\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：李凡 - 拥有 - 穿越者心理健康维护系统",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000002",
        "visual_card_id": "VC000002",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002"
      }
    },
    {
      "entity_uid": "E000007",
      "name": "穿越者心理健康维护系统",
      "canonical_name": "穿越者心理健康维护系统",
      "display_name": "穿越者心理健康维护系统",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "系统面板",
      "subtype": "系统",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000007",
      "voice_card_id": "VO000007",
      "asset_binding_id": "AB000007",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "穿越者心理健康维护系统，系统",
      "visual_anchor_summary": "穿越者心理健康维护系统，系统",
      "design_keywords": [
        "穿越者心理健康维护系统",
        "系统"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持界面样式、排版和提示层级一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：李凡",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "system",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "穿越者心理健康维护系统；系统 / 未知性别呈现 / 未知年龄感；合成提示音感",
        "timbre": [
          "合成提示音感",
          "信息传达清晰"
        ],
        "pitch": "mid",
        "pace": "medium",
        "speaking_style": [
          "节律稳定"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "提示/播报优先清晰度与节律一致性"
        ],
        "casting_tags": [
          "系统",
          "未知性别呈现",
          "未知年龄感",
          "合成提示音感",
          "信息传达清晰",
          "节律稳定"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000007:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000007:alert",
            "label": "警报播报",
            "pace": "fast",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定",
              "提示性更强"
            ],
            "notes": "适用于提醒、预警和状态变更播报。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "system",
        "priority": "minor",
        "required_visual_assets": [
          "标准参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "李凡"
        ],
        "variant_keys": [
          "VO000007:default",
          "VO000007:alert"
        ],
        "prompt_fragments": [
          "穿越者心理健康维护系统，系统",
          "穿越者心理健康维护系统",
          "系统"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 1,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "穿越者心理健康维护系统，系统\n声音建议：合成提示音感；信息传达清晰；节律稳定\n配音约束：锁定基础音色，不因场景切换改变发声位置；提示/播报优先清晰度与节律一致性\n建议资产：标准参考图\n主要出现集次：EP0001\n补充：关系上下文：李凡 - 拥有 - 穿越者心理健康维护系统",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000007",
        "visual_card_id": "VC000007",
        "voice_card_id": "VO000007",
        "asset_binding_id": "AB000007"
      }
    },
    {
      "entity_uid": "E000010",
      "name": "童子",
      "canonical_name": "童子",
      "display_name": "童子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [
        "金童"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000010",
      "voice_card_id": "VO000010",
      "asset_binding_id": "AB000010",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "童子，功能角色",
      "visual_anchor_summary": "童子，功能角色",
      "design_keywords": [
        "童子"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000010:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老道",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "童子；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000010:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000010:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000010:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老道"
        ],
        "variant_keys": [
          "VC000010:state:age",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "prompt_fragments": [
          "童子中有一个实在是装不下去了；被挑选的孩童",
          "童子"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "童子，功能角色\n本次剧本称呼：金童\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：老道 - 告知 - 童子",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000010",
        "visual_card_id": "VC000010",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010"
      }
    },
    {
      "entity_uid": "E000001",
      "name": "老道",
      "canonical_name": "老道",
      "display_name": "老道",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "老道士"
      ],
      "appeared_as_names": [
        "老道士"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000001",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [
          "老道士"
        ],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士",
      "visual_anchor_summary": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士",
      "design_keywords": [
        "老道",
        "法坛前只有个墨帻法褐的老道"
      ],
      "design_prompt_fragments": [
        "法坛前只有个墨帻法褐的老道",
        "墨竹山法坛前的老道士"
      ],
      "appearance_core": [],
      "clothing_core": [
        "法坛前只有个墨帻法褐的老道"
      ],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000001:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [],
          "clothing": [
            "法坛前只有个墨帻法褐的老道"
          ],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [
        {
          "variant_id": "VC000001:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：老道 / 老道士",
        "常见关联对象：朱木剑、修士、童子",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "child",
        "voice_anchor_summary": "老道；角色 / 男性向 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "法坛前只有个墨帻法褐的老道"
        ],
        "owner_candidates": [
          "朱木剑",
          "修士",
          "童子"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:age",
          "VO000001:default",
          "VO000001:low",
          "VO000001:high"
        ],
        "prompt_fragments": [
          "法坛前只有个墨帻法褐的老道",
          "老道"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士\n本次剧本称呼：老道士\n服饰母题：法坛前只有个墨帻法褐的老道\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：老道 - 拥有 - 朱木剑；修士 - 告知 - 老道；老道 - 告知 - 童子",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "VC000001",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      }
    },
    {
      "entity_uid": "E000011",
      "name": "修士",
      "canonical_name": "修士",
      "display_name": "修士",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000011",
      "voice_card_id": "VO000011",
      "asset_binding_id": "AB000011",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "修士，角色姓名",
      "visual_anchor_summary": "修士，角色姓名",
      "design_keywords": [
        "修士",
        "角色姓名"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：铜钱剑、老道"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "修士；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000011:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000011:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000011:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "铜钱剑",
          "老道"
        ],
        "variant_keys": [
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "prompt_fragments": [
          "修士，角色姓名",
          "修士",
          "角色姓名"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "修士，角色姓名\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：修士 - 拥有 - 铜钱剑；修士 - 告知 - 老道",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000011",
        "visual_card_id": "VC000011",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011"
      }
    },
    {
      "entity_uid": "E000009",
      "name": "山主",
      "canonical_name": "山主",
      "display_name": "山主",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "职位称号",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000009",
      "voice_card_id": "VO000009",
      "asset_binding_id": "AB000009",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "山主，功能角色",
      "visual_anchor_summary": "山主，功能角色",
      "design_keywords": [
        "山主"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "山主；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000009:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000009:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000009:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VO000009:default",
          "VO000009:low",
          "VO000009:high"
        ],
        "prompt_fragments": [
          "墨竹山的主人；和山主弈棋输了",
          "山主"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "山主，功能角色\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000009",
        "visual_card_id": "VC000009",
        "voice_card_id": "VO000009",
        "asset_binding_id": "AB000009"
      }
    },
    {
      "entity_uid": "E000008",
      "name": "玉蟾婆",
      "canonical_name": "玉蟾婆",
      "display_name": "玉蟾婆",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "生物种族",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000008",
      "voice_card_id": "VO000008",
      "asset_binding_id": "AB000008",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "玉蟾婆：瑶光洞的妖怪",
      "visual_anchor_summary": "瑶光洞的妖怪",
      "design_keywords": [
        "玉蟾婆"
      ],
      "design_prompt_fragments": [
        "瑶光洞的妖怪"
      ],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000008:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持物种体态、皮毛鳞甲或躯体特征一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "creature",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "玉蟾婆；异类 / 未知性别呈现 / 幼年感；非人声线倾向",
        "timbre": [
          "非人声线倾向",
          "保留可辨识度"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "保留异类质感"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "保留异类质感，但要保证关键台词仍可辨识",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "异类",
          "未知性别呈现",
          "幼年感",
          "非人声线倾向",
          "保留可辨识度",
          "保留异类质感"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000008:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000008:threat",
            "label": "威胁态",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感",
              "威慑感更强"
            ],
            "notes": "适用于威吓、攻击前摇或危险提示。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "creature",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VC000008:state:age",
          "VO000008:default",
          "VO000008:threat"
        ],
        "prompt_fragments": [
          "瑶光洞的玉蟾婆来观里作客吃了不少童子；瑶光洞的妖怪",
          "玉蟾婆"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "玉蟾婆：瑶光洞的妖怪\n状态候选：幼年感\n声音建议：非人声线倾向；保留可辨识度；保留异类质感\n配音约束：锁定基础音色，不因场景切换改变发声位置；保留异类质感，但要保证关键台词仍可辨识\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000008",
        "visual_card_id": "VC000008",
        "voice_card_id": "VO000008",
        "asset_binding_id": "AB000008"
      }
    }
  ],
  "characters": [
    {
      "entity_uid": "E000002",
      "name": "李凡",
      "canonical_name": "李凡",
      "display_name": "李凡",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [
        "穿越者"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000002",
      "voice_card_id": "VO000002",
      "asset_binding_id": "AB000002",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "李凡，功能角色",
      "visual_anchor_summary": "李凡，功能角色",
      "design_keywords": [
        "李凡"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000002:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：穿越者心理健康维护系统",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "李凡；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000002:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000002:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000002:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "穿越者心理健康维护系统"
        ],
        "variant_keys": [
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "prompt_fragments": [
          "李凡：二十一童子中的穿越者；二十一人中有一个平平无奇的小童是一名穿越者",
          "李凡"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "李凡，功能角色\n本次剧本称呼：穿越者\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：李凡 - 拥有 - 穿越者心理健康维护系统",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000002",
        "visual_card_id": "VC000002",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002"
      }
    },
    {
      "entity_uid": "E000007",
      "name": "穿越者心理健康维护系统",
      "canonical_name": "穿越者心理健康维护系统",
      "display_name": "穿越者心理健康维护系统",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "系统面板",
      "subtype": "系统",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000007",
      "voice_card_id": "VO000007",
      "asset_binding_id": "AB000007",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "穿越者心理健康维护系统，系统",
      "visual_anchor_summary": "穿越者心理健康维护系统，系统",
      "design_keywords": [
        "穿越者心理健康维护系统",
        "系统"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持界面样式、排版和提示层级一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：李凡",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "system",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "穿越者心理健康维护系统；系统 / 未知性别呈现 / 未知年龄感；合成提示音感",
        "timbre": [
          "合成提示音感",
          "信息传达清晰"
        ],
        "pitch": "mid",
        "pace": "medium",
        "speaking_style": [
          "节律稳定"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "提示/播报优先清晰度与节律一致性"
        ],
        "casting_tags": [
          "系统",
          "未知性别呈现",
          "未知年龄感",
          "合成提示音感",
          "信息传达清晰",
          "节律稳定"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000007:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000007:alert",
            "label": "警报播报",
            "pace": "fast",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定",
              "提示性更强"
            ],
            "notes": "适用于提醒、预警和状态变更播报。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "system",
        "priority": "minor",
        "required_visual_assets": [
          "标准参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "李凡"
        ],
        "variant_keys": [
          "VO000007:default",
          "VO000007:alert"
        ],
        "prompt_fragments": [
          "穿越者心理健康维护系统，系统",
          "穿越者心理健康维护系统",
          "系统"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 1,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "穿越者心理健康维护系统，系统\n声音建议：合成提示音感；信息传达清晰；节律稳定\n配音约束：锁定基础音色，不因场景切换改变发声位置；提示/播报优先清晰度与节律一致性\n建议资产：标准参考图\n主要出现集次：EP0001\n补充：关系上下文：李凡 - 拥有 - 穿越者心理健康维护系统",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000007",
        "visual_card_id": "VC000007",
        "voice_card_id": "VO000007",
        "asset_binding_id": "AB000007"
      }
    },
    {
      "entity_uid": "E000010",
      "name": "童子",
      "canonical_name": "童子",
      "display_name": "童子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [
        "金童"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000010",
      "voice_card_id": "VO000010",
      "asset_binding_id": "AB000010",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "童子，功能角色",
      "visual_anchor_summary": "童子，功能角色",
      "design_keywords": [
        "童子"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000010:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老道",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "童子；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000010:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000010:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000010:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老道"
        ],
        "variant_keys": [
          "VC000010:state:age",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "prompt_fragments": [
          "童子中有一个实在是装不下去了；被挑选的孩童",
          "童子"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "童子，功能角色\n本次剧本称呼：金童\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：老道 - 告知 - 童子",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000010",
        "visual_card_id": "VC000010",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010"
      }
    },
    {
      "entity_uid": "E000001",
      "name": "老道",
      "canonical_name": "老道",
      "display_name": "老道",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "老道士"
      ],
      "appeared_as_names": [
        "老道士"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000001",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [
          "老道士"
        ],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士",
      "visual_anchor_summary": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士",
      "design_keywords": [
        "老道",
        "法坛前只有个墨帻法褐的老道"
      ],
      "design_prompt_fragments": [
        "法坛前只有个墨帻法褐的老道",
        "墨竹山法坛前的老道士"
      ],
      "appearance_core": [],
      "clothing_core": [
        "法坛前只有个墨帻法褐的老道"
      ],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000001:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [],
          "clothing": [
            "法坛前只有个墨帻法褐的老道"
          ],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [
        {
          "variant_id": "VC000001:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：老道 / 老道士",
        "常见关联对象：朱木剑、修士、童子",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "child",
        "voice_anchor_summary": "老道；角色 / 男性向 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "法坛前只有个墨帻法褐的老道"
        ],
        "owner_candidates": [
          "朱木剑",
          "修士",
          "童子"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:age",
          "VO000001:default",
          "VO000001:low",
          "VO000001:high"
        ],
        "prompt_fragments": [
          "法坛前只有个墨帻法褐的老道",
          "老道"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士\n本次剧本称呼：老道士\n服饰母题：法坛前只有个墨帻法褐的老道\n状态候选：幼年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：老道 - 拥有 - 朱木剑；修士 - 告知 - 老道；老道 - 告知 - 童子",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "VC000001",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      }
    },
    {
      "entity_uid": "E000011",
      "name": "修士",
      "canonical_name": "修士",
      "display_name": "修士",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000011",
      "voice_card_id": "VO000011",
      "asset_binding_id": "AB000011",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "修士，角色姓名",
      "visual_anchor_summary": "修士，角色姓名",
      "design_keywords": [
        "修士",
        "角色姓名"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：铜钱剑、老道"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "修士；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000011:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000011:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000011:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "铜钱剑",
          "老道"
        ],
        "variant_keys": [
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "prompt_fragments": [
          "修士，角色姓名",
          "修士",
          "角色姓名"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "修士，角色姓名\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：修士 - 拥有 - 铜钱剑；修士 - 告知 - 老道",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000011",
        "visual_card_id": "VC000011",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011"
      }
    },
    {
      "entity_uid": "E000009",
      "name": "山主",
      "canonical_name": "山主",
      "display_name": "山主",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "职位称号",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000009",
      "voice_card_id": "VO000009",
      "asset_binding_id": "AB000009",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "山主，功能角色",
      "visual_anchor_summary": "山主，功能角色",
      "design_keywords": [
        "山主"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "山主；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000009:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000009:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000009:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VO000009:default",
          "VO000009:low",
          "VO000009:high"
        ],
        "prompt_fragments": [
          "墨竹山的主人；和山主弈棋输了",
          "山主"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "山主，功能角色\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000009",
        "visual_card_id": "VC000009",
        "voice_card_id": "VO000009",
        "asset_binding_id": "AB000009"
      }
    },
    {
      "entity_uid": "E000008",
      "name": "玉蟾婆",
      "canonical_name": "玉蟾婆",
      "display_name": "玉蟾婆",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "appeared_as_names": [],
      "type": "生物种族",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000008",
      "voice_card_id": "VO000008",
      "asset_binding_id": "AB000008",
      "merge_suspect": {},
      "resolution_overlay": {
        "resolved_aliases": [],
        "applied_manual_split_override_ids": [],
        "applied_alias_override_ids": [],
        "has_manual_split_override": false,
        "has_alias_override": false
      },
      "identity_summary": "玉蟾婆：瑶光洞的妖怪",
      "visual_anchor_summary": "瑶光洞的妖怪",
      "design_keywords": [
        "玉蟾婆"
      ],
      "design_prompt_fragments": [
        "瑶光洞的妖怪"
      ],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000008:state:age",
          "label": "幼年感",
          "variant_type": "age",
          "signals": [
            "幼年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持物种体态、皮毛鳞甲或躯体特征一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "creature",
        "gender_presentation": "unknown",
        "age_impression": "child",
        "voice_anchor_summary": "玉蟾婆；异类 / 未知性别呈现 / 幼年感；非人声线倾向",
        "timbre": [
          "非人声线倾向",
          "保留可辨识度"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "保留异类质感"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "保留异类质感，但要保证关键台词仍可辨识",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "异类",
          "未知性别呈现",
          "幼年感",
          "非人声线倾向",
          "保留可辨识度",
          "保留异类质感"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000008:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000008:threat",
            "label": "威胁态",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感",
              "威慑感更强"
            ],
            "notes": "适用于威吓、攻击前摇或危险提示。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "creature",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VC000008:state:age",
          "VO000008:default",
          "VO000008:threat"
        ],
        "prompt_fragments": [
          "瑶光洞的玉蟾婆来观里作客吃了不少童子；瑶光洞的妖怪",
          "玉蟾婆"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "玉蟾婆：瑶光洞的妖怪\n状态候选：幼年感\n声音建议：非人声线倾向；保留可辨识度；保留异类质感\n配音约束：锁定基础音色，不因场景切换改变发声位置；保留异类质感，但要保证关键台词仍可辨识\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000008",
        "visual_card_id": "VC000008",
        "voice_card_id": "VO000008",
        "asset_binding_id": "AB000008"
      }
    }
  ],
  "asset_ready_summary": {
    "status": "pass",
    "issue_count": 0,
    "fail_count": 0,
    "warn_count": 0,
    "info_count": 0,
    "character_count": 7,
    "priority_character_count": 0,
    "character_ready_count": 7,
    "priority_character_ready_count": 0,
    "character_primary_visual_ready_count": 7,
    "character_variant_ready_count": 7,
    "character_voice_ready_count": 0,
    "missing_character_visual_count": 0,
    "missing_character_voice_count": 0,
    "priority_character_visual_gap_count": 0,
    "priority_character_voice_gap_count": 0,
    "priority_character_variant_gap_count": 0,
    "character_manual_blocked_count": 0,
    "character_manual_needs_fix_count": 0,
    "location_asset_count": 2,
    "location_ready_count": 1,
    "location_visual_gap_count": 0,
    "location_scene_mapping_gap_count": 0,
    "location_manual_blocked_count": 0,
    "prop_asset_count": 0,
    "prop_ready_count": 0,
    "prop_visual_gap_count": 0,
    "prop_usage_mapping_gap_count": 0,
    "prop_manual_blocked_count": 0,
    "voice_suggestion_count": 7,
    "voice_binding_gap_count": 7,
    "voice_reference_gap_count": 7,
    "character_asset_suggestion_count": 7
  },
  "asset_ready_issues": [],
  "upload_ready_summary": {
    "status": "pass",
    "issue_count": 1,
    "fail_count": 0,
    "warn_count": 0,
    "info_count": 1,
    "episode_count": 1,
    "block_count": 2,
    "character_bio_count": 7,
    "named_episode_count": 1,
    "episode_with_summary_count": 1,
    "episode_with_opening_hook_count": 1,
    "episode_with_ending_hook_count": 1,
    "episode_with_upload_text_count": 1,
    "recommended_upload_mode": "single_file",
    "upload_script_char_count": 1321,
    "single_file_within_limit": true,
    "part_count": 1,
    "oversized_episode_count": 0,
    "oversized_part_count": 0,
    "has_global_preface": true,
    "time_layer_annotation_recommended": true
  },
  "upload_ready_issues": [
    {
      "code": "non_mainline_time_mode",
      "severity": "info",
      "title": "存在非主线时间层",
      "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传时建议显式标注，以免平台误解时态切换。",
      "target_type": "package",
      "target_id": "",
      "source_refs": [
        "flashback"
      ],
      "recommended_action": "在分集标题、场次标题或正文中显式提示时间层切换。"
    }
  ],
  "skipped_unbound_character_refs": [],
  "locations": [
    {
      "entity_uid": "E000003",
      "name": "墨竹山",
      "canonical_name": "墨竹山",
      "display_name": "墨竹山",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "山岳/洞天",
      "importance": "background",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B001"
      ],
      "visual_card_id": "VC000003",
      "asset_binding_id": "AB000003",
      "identity_summary": "墨竹山：仙侠修真地点；人烟罕至的险地",
      "visual_anchor_summary": "墨竹山地方三千里两山十四峰",
      "design_prompt_fragments": [
        "墨竹山地方三千里两山十四峰",
        "墨竹山",
        "山岳/洞天"
      ],
      "location_core": [
        "墨竹山地方三千里两山十四峰"
      ],
      "landmark_core": [
        "墨竹山地方三千里两山十四峰"
      ],
      "atmosphere_core": [
        "从宏观环境切入，聚焦到异常的人造平…"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B001",
          "title": "墨竹山险境与魔尊法坛",
          "kind": "scene",
          "lead_scene_id": "S0001",
          "source_scene_ids": [
            "S0001"
          ],
          "source_group_ids": [
            "AG0001"
          ],
          "source_beat_ids": [
            "AB0001"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "background",
        "required_visual_assets": [
          "主场景参考图"
        ],
        "optional_visual_assets": [
          "关键地标补充图"
        ],
        "required_voice_assets": [],
        "usage_hints": [
          "墨竹山地方三千里两山十四峰"
        ],
        "owner_candidates": [],
        "variant_keys": [],
        "prompt_fragments": [
          "墨竹山地方三千里两山十四峰",
          "墨竹山",
          "山岳/洞天"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": false,
        "auto_needs_voice_binding": false,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": false,
        "needs_voice_binding": false,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 1,
        "required_voice_asset_count": 0,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": true,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "na",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": true,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": false
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "na",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": true,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": false
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定"
      ],
      "reason": "覆盖 1 集、命中 1 个剧本块，适合优先建主场景。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000003",
        "visual_card_id": "VC000003",
        "voice_card_id": "",
        "asset_binding_id": "AB000003"
      }
    },
    {
      "entity_uid": "",
      "name": "墨竹山法坛",
      "canonical_name": "墨竹山法坛",
      "display_name": "墨竹山法坛",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "",
      "asset_binding_id": "",
      "identity_summary": "",
      "visual_anchor_summary": "墨竹山法坛。相关场面：【闪回】老道画圈并告诫夜间规矩。画面线索：墨竹山法坛·日·外】（闪回；老道士用枯枝在童子们周围画了一个大…。",
      "design_prompt_fragments": [
        "墨竹山法坛",
        "【闪回】老道画圈并告诫夜间规矩",
        "墨竹山法坛·日·外】（闪回",
        "老道士用枯枝在童子们周围画了一个大…"
      ],
      "location_core": [
        "墨竹山法坛",
        "【闪回】老道画圈并告诫夜间规矩"
      ],
      "landmark_core": [
        "墨竹山法坛·日·外】（闪回",
        "老道士用枯枝在童子们周围画了一个大…"
      ],
      "atmosphere_core": [
        "闪回结束，回到现实时间线。李凡的尝…"
      ],
      "style_constraints": [],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ],
      "asset_profile": {},
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": false,
        "auto_needs_voice_binding": false,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": false,
        "needs_voice_binding": false,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": false,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 0,
        "required_voice_asset_count": 0,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": false
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定"
      ],
      "reason": "覆盖 1 集、命中 1 个剧本块，适合优先建主场景。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "should_build",
      "init_action_reason": "场景具备候选映射，建议按主场景之后补齐",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    }
  ],
  "props": [],
  "voices": [
    {
      "entity_uid": "E000002",
      "name": "李凡",
      "canonical_name": "李凡",
      "display_name": "李凡",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "featured",
      "voice_card_id": "VO000002",
      "asset_binding_id": "AB000002",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "李凡；角色 / 未知性别呈现 / 幼年感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定",
        "带年轻感"
      ],
      "pitch": "high",
      "pace": "fast",
      "speaking_style": [
        "吐字清晰",
        "语流更轻快"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色",
        "保持幼年感，不在不同段落间来回漂移"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "幼年感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰",
        "语流更轻快"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000002:default",
          "label": "常规对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰",
            "语流更轻快"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000002:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000002:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "穿越者心理健康维护系统"
        ],
        "variant_keys": [
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "prompt_fragments": [
          "李凡：二十一童子中的穿越者；二十一人中有一个平平无奇的小童是一名穿越者",
          "李凡"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000002",
        "visual_card_id": "",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000007",
      "name": "穿越者心理健康维护系统",
      "canonical_name": "穿越者心理健康维护系统",
      "display_name": "穿越者心理健康维护系统",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "featured",
      "voice_card_id": "VO000007",
      "asset_binding_id": "AB000007",
      "voice_role": "system",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "穿越者心理健康维护系统；系统 / 未知性别呈现 / 未知年龄感；合成提示音感",
      "timbre": [
        "合成提示音感",
        "信息传达清晰"
      ],
      "pitch": "mid",
      "pace": "medium",
      "speaking_style": [
        "节律稳定"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "提示/播报优先清晰度与节律一致性"
      ],
      "casting_tags": [
        "系统",
        "未知性别呈现",
        "未知年龄感",
        "合成提示音感",
        "信息传达清晰",
        "节律稳定"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000007:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "mid",
          "timbre": [
            "合成提示音感",
            "信息传达清晰"
          ],
          "speaking_style": [
            "节律稳定"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000007:alert",
          "label": "警报播报",
          "pace": "fast",
          "pitch": "mid",
          "timbre": [
            "合成提示音感",
            "信息传达清晰"
          ],
          "speaking_style": [
            "节律稳定",
            "提示性更强"
          ],
          "notes": "适用于提醒、预警和状态变更播报。"
        }
      ],
      "asset_profile": {
        "asset_role": "system",
        "priority": "minor",
        "required_visual_assets": [
          "标准参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "李凡"
        ],
        "variant_keys": [
          "VO000007:default",
          "VO000007:alert"
        ],
        "prompt_fragments": [
          "穿越者心理健康维护系统，系统",
          "穿越者心理健康维护系统",
          "系统"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 1,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000007",
        "visual_card_id": "",
        "voice_card_id": "VO000007",
        "asset_binding_id": "AB000007"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000010",
      "name": "童子",
      "canonical_name": "童子",
      "display_name": "童子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "featured",
      "voice_card_id": "VO000010",
      "asset_binding_id": "AB000010",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "童子；角色 / 未知性别呈现 / 幼年感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定",
        "带年轻感"
      ],
      "pitch": "high",
      "pace": "fast",
      "speaking_style": [
        "吐字清晰",
        "语流更轻快"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色",
        "保持幼年感，不在不同段落间来回漂移"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "幼年感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰",
        "语流更轻快"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000010:default",
          "label": "常规对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰",
            "语流更轻快"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000010:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000010:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老道"
        ],
        "variant_keys": [
          "VC000010:state:age",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "prompt_fragments": [
          "童子中有一个实在是装不下去了；被挑选的孩童",
          "童子"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000010",
        "visual_card_id": "",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000001",
      "name": "老道",
      "canonical_name": "老道",
      "display_name": "老道",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "featured",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "老道；角色 / 男性向 / 幼年感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定",
        "带年轻感"
      ],
      "pitch": "high",
      "pace": "fast",
      "speaking_style": [
        "吐字清晰",
        "语流更轻快"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色",
        "保持幼年感，不在不同段落间来回漂移"
      ],
      "casting_tags": [
        "角色",
        "男性向",
        "幼年感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰",
        "语流更轻快"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000001:default",
          "label": "常规对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰",
            "语流更轻快"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000001:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000001:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "minor",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "法坛前只有个墨帻法褐的老道"
        ],
        "owner_candidates": [
          "朱木剑",
          "修士",
          "童子"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:age",
          "VO000001:default",
          "VO000001:low",
          "VO000001:high"
        ],
        "prompt_fragments": [
          "法坛前只有个墨帻法褐的老道",
          "老道"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000011",
      "name": "修士",
      "canonical_name": "修士",
      "display_name": "修士",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P4",
      "role_tier": "featured",
      "voice_card_id": "VO000011",
      "asset_binding_id": "AB000011",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "修士；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000011:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000011:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000011:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "铜钱剑",
          "老道"
        ],
        "variant_keys": [
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "prompt_fragments": [
          "修士，角色姓名",
          "修士",
          "角色姓名"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000011",
        "visual_card_id": "",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000009",
      "name": "山主",
      "canonical_name": "山主",
      "display_name": "山主",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P4",
      "role_tier": "featured",
      "voice_card_id": "VO000009",
      "asset_binding_id": "AB000009",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "山主；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000009:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000009:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000009:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VO000009:default",
          "VO000009:low",
          "VO000009:high"
        ],
        "prompt_fragments": [
          "墨竹山的主人；和山主弈棋输了",
          "山主"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "entity_uid": "E000009",
        "visual_card_id": "",
        "voice_card_id": "VO000009",
        "asset_binding_id": "AB000009"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000008",
      "name": "玉蟾婆",
      "canonical_name": "玉蟾婆",
      "display_name": "玉蟾婆",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P4",
      "role_tier": "featured",
      "voice_card_id": "VO000008",
      "asset_binding_id": "AB000008",
      "voice_role": "creature",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "voice_anchor_summary": "玉蟾婆；异类 / 未知性别呈现 / 幼年感；非人声线倾向",
      "timbre": [
        "非人声线倾向",
        "保留可辨识度"
      ],
      "pitch": "high",
      "pace": "fast",
      "speaking_style": [
        "保留异类质感"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "保留异类质感，但要保证关键台词仍可辨识",
        "保持幼年感，不在不同段落间来回漂移"
      ],
      "casting_tags": [
        "异类",
        "未知性别呈现",
        "幼年感",
        "非人声线倾向",
        "保留可辨识度",
        "保留异类质感"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000008:default",
          "label": "常规对白",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "非人声线倾向",
            "保留可辨识度"
          ],
          "speaking_style": [
            "保留异类质感"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000008:threat",
          "label": "威胁态",
          "pace": "fast",
          "pitch": "high",
          "timbre": [
            "非人声线倾向",
            "保留可辨识度"
          ],
          "speaking_style": [
            "保留异类质感",
            "威慑感更强"
          ],
          "notes": "适用于威吓、攻击前摇或危险提示。"
        }
      ],
      "asset_profile": {
        "asset_role": "creature",
        "priority": "background",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [],
        "variant_keys": [
          "VC000008:state:age",
          "VO000008:default",
          "VO000008:threat"
        ],
        "prompt_fragments": [
          "瑶光洞的玉蟾婆来观里作客吃了不少童子；瑶光洞的妖怪",
          "玉蟾婆"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "visual_seed_text_ready": true,
        "voice_seed_text_ready": true,
        "dramart_asset_spec_ready": true,
        "needs_visual_seed_text": false,
        "needs_voice_seed_text": false,
        "required_visual_asset_count": 2,
        "required_voice_asset_count": 2,
        "entity_needs_review": false,
        "manual_needs_fix": false,
        "manual_blocked": false,
        "manual_needs_fix_scopes": [],
        "manual_blocked_scopes": [],
        "manual_approved_scopes": [],
        "manual_locked_scopes": [],
        "manual_override_flags": {
          "entity_ok": false,
          "visual_ok": false,
          "voice_ok": false,
          "asset_ok": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "ready_for_dramart": false,
        "ready_for_dramart_init": true
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "needs": [
        "补角色语音参考",
        "补角色音色绑定"
      ],
      "risk_flags": [
        "visual_reference_gap",
        "voice_reference_gap",
        "voice_binding_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "entity_uid": "E000008",
        "visual_card_id": "",
        "voice_card_id": "VO000008",
        "asset_binding_id": "AB000008"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "【闪回】老道画圈并告诫夜间规矩",
          "kind": "bridge",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ]
    }
  ],
  "asset_suggestions": {
    "characters": [
      {
        "entity_uid": "E000002",
        "name": "李凡",
        "canonical_name": "李凡",
        "display_name": "李凡",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000002",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002",
        "visual_anchor_summary": "李凡，功能角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000002:state:age",
            "label": "幼年感",
            "variant_type": "age",
            "signals": [
              "幼年感"
            ],
            "evidence": [],
            "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "穿越者心理健康维护系统"
          ],
          "variant_keys": [
            "VC000002:state:age",
            "VO000002:default",
            "VO000002:low",
            "VO000002:high"
          ],
          "prompt_fragments": [
            "李凡：二十一童子中的穿越者；二十一人中有一个平平无奇的小童是一名穿越者",
            "李凡"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000002",
          "visual_card_id": "VC000002",
          "voice_card_id": "VO000002",
          "asset_binding_id": "AB000002"
        }
      },
      {
        "entity_uid": "E000007",
        "name": "穿越者心理健康维护系统",
        "canonical_name": "穿越者心理健康维护系统",
        "display_name": "穿越者心理健康维护系统",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000007",
        "voice_card_id": "VO000007",
        "asset_binding_id": "AB000007",
        "visual_anchor_summary": "穿越者心理健康维护系统，系统",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "system",
          "priority": "minor",
          "required_visual_assets": [
            "标准参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "李凡"
          ],
          "variant_keys": [
            "VO000007:default",
            "VO000007:alert"
          ],
          "prompt_fragments": [
            "穿越者心理健康维护系统，系统",
            "穿越者心理健康维护系统",
            "系统"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 1,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "标准参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VO000007:default",
          "VO000007:alert"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ],
          "entity_uid": "E000007",
          "visual_card_id": "VC000007",
          "voice_card_id": "VO000007",
          "asset_binding_id": "AB000007"
        }
      },
      {
        "entity_uid": "E000010",
        "name": "童子",
        "canonical_name": "童子",
        "display_name": "童子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000010",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010",
        "visual_anchor_summary": "童子，功能角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000010:state:age",
            "label": "幼年感",
            "variant_type": "age",
            "signals": [
              "幼年感"
            ],
            "evidence": [],
            "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老道"
          ],
          "variant_keys": [
            "VC000010:state:age",
            "VO000010:default",
            "VO000010:low",
            "VO000010:high"
          ],
          "prompt_fragments": [
            "童子中有一个实在是装不下去了；被挑选的孩童",
            "童子"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000010:state:age",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000010",
          "visual_card_id": "VC000010",
          "voice_card_id": "VO000010",
          "asset_binding_id": "AB000010"
        }
      },
      {
        "entity_uid": "E000001",
        "name": "老道",
        "canonical_name": "老道",
        "display_name": "老道",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000001",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001",
        "visual_anchor_summary": "法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士",
        "design_prompt_fragments": [
          "法坛前只有个墨帻法褐的老道",
          "墨竹山法坛前的老道士"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000001:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [],
            "clothing": [
              "法坛前只有个墨帻法褐的老道"
            ],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [
          {
            "variant_id": "VC000001:state:age",
            "label": "幼年感",
            "variant_type": "age",
            "signals": [
              "幼年感"
            ],
            "evidence": [],
            "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [
            "法坛前只有个墨帻法褐的老道"
          ],
          "owner_candidates": [
            "朱木剑",
            "修士",
            "童子"
          ],
          "variant_keys": [
            "VC000001:costume:default",
            "VC000001:state:age",
            "VO000001:default",
            "VO000001:low",
            "VO000001:high"
          ],
          "prompt_fragments": [
            "法坛前只有个墨帻法褐的老道",
            "老道"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:age",
          "VO000001:default",
          "VO000001:low",
          "VO000001:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000001",
          "visual_card_id": "VC000001",
          "voice_card_id": "VO000001",
          "asset_binding_id": "AB000001"
        }
      },
      {
        "entity_uid": "E000011",
        "name": "修士",
        "canonical_name": "修士",
        "display_name": "修士",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000011",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011",
        "visual_anchor_summary": "修士，角色姓名",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "铜钱剑",
            "老道"
          ],
          "variant_keys": [
            "VO000011:default",
            "VO000011:low",
            "VO000011:high"
          ],
          "prompt_fragments": [
            "修士，角色姓名",
            "修士",
            "角色姓名"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000011",
          "visual_card_id": "VC000011",
          "voice_card_id": "VO000011",
          "asset_binding_id": "AB000011"
        }
      },
      {
        "entity_uid": "E000009",
        "name": "山主",
        "canonical_name": "山主",
        "display_name": "山主",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000009",
        "voice_card_id": "VO000009",
        "asset_binding_id": "AB000009",
        "visual_anchor_summary": "山主，功能角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VO000009:default",
            "VO000009:low",
            "VO000009:high"
          ],
          "prompt_fragments": [
            "墨竹山的主人；和山主弈棋输了",
            "山主"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VO000009:default",
          "VO000009:low",
          "VO000009:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ],
          "entity_uid": "E000009",
          "visual_card_id": "VC000009",
          "voice_card_id": "VO000009",
          "asset_binding_id": "AB000009"
        }
      },
      {
        "entity_uid": "E000008",
        "name": "玉蟾婆",
        "canonical_name": "玉蟾婆",
        "display_name": "玉蟾婆",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000008",
        "voice_card_id": "VO000008",
        "asset_binding_id": "AB000008",
        "visual_anchor_summary": "瑶光洞的妖怪",
        "design_prompt_fragments": [
          "瑶光洞的妖怪"
        ],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000008:state:age",
            "label": "幼年感",
            "variant_type": "age",
            "signals": [
              "幼年感"
            ],
            "evidence": [],
            "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "creature",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VC000008:state:age",
            "VO000008:default",
            "VO000008:threat"
          ],
          "prompt_fragments": [
            "瑶光洞的玉蟾婆来观里作客吃了不少童子；瑶光洞的妖怪",
            "玉蟾婆"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000008:state:age",
          "VO000008:default",
          "VO000008:threat"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000008",
          "visual_card_id": "VC000008",
          "voice_card_id": "VO000008",
          "asset_binding_id": "AB000008"
        }
      }
    ],
    "locations": [
      {
        "entity_uid": "E000003",
        "name": "墨竹山",
        "canonical_name": "墨竹山",
        "display_name": "墨竹山",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "山岳/洞天",
        "importance": "background",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B001"
        ],
        "visual_card_id": "VC000003",
        "asset_binding_id": "AB000003",
        "identity_summary": "墨竹山：仙侠修真地点；人烟罕至的险地",
        "visual_anchor_summary": "墨竹山地方三千里两山十四峰",
        "design_prompt_fragments": [
          "墨竹山地方三千里两山十四峰",
          "墨竹山",
          "山岳/洞天"
        ],
        "location_core": [
          "墨竹山地方三千里两山十四峰"
        ],
        "landmark_core": [
          "墨竹山地方三千里两山十四峰"
        ],
        "atmosphere_core": [
          "从宏观环境切入，聚焦到异常的人造平…"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B001",
            "title": "墨竹山险境与魔尊法坛",
            "kind": "scene",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "background",
          "required_visual_assets": [
            "主场景参考图"
          ],
          "optional_visual_assets": [
            "关键地标补充图"
          ],
          "required_voice_assets": [],
          "usage_hints": [
            "墨竹山地方三千里两山十四峰"
          ],
          "owner_candidates": [],
          "variant_keys": [],
          "prompt_fragments": [
            "墨竹山地方三千里两山十四峰",
            "墨竹山",
            "山岳/洞天"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": false,
          "auto_needs_voice_binding": false,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": false,
          "needs_voice_binding": false,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 1,
          "required_voice_asset_count": 0,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": true,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "na",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": true,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": false
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "na",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": true,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": false
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "review_notes": [
          "缺少参考图",
          "缺少视觉锁定绑定"
        ],
        "reason": "覆盖 1 集、命中 1 个剧本块，适合优先建主场景。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B001"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000003",
          "visual_card_id": "VC000003",
          "voice_card_id": "",
          "asset_binding_id": "AB000003"
        }
      },
      {
        "entity_uid": "",
        "name": "墨竹山法坛",
        "canonical_name": "墨竹山法坛",
        "display_name": "墨竹山法坛",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "",
        "asset_binding_id": "",
        "identity_summary": "",
        "visual_anchor_summary": "墨竹山法坛。相关场面：【闪回】老道画圈并告诫夜间规矩。画面线索：墨竹山法坛·日·外】（闪回；老道士用枯枝在童子们周围画了一个大…。",
        "design_prompt_fragments": [
          "墨竹山法坛",
          "【闪回】老道画圈并告诫夜间规矩",
          "墨竹山法坛·日·外】（闪回",
          "老道士用枯枝在童子们周围画了一个大…"
        ],
        "location_core": [
          "墨竹山法坛",
          "【闪回】老道画圈并告诫夜间规矩"
        ],
        "landmark_core": [
          "墨竹山法坛·日·外】（闪回",
          "老道士用枯枝在童子们周围画了一个大…"
        ],
        "atmosphere_core": [
          "闪回结束，回到现实时间线。李凡的尝…"
        ],
        "style_constraints": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {},
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": false,
          "auto_needs_voice_binding": false,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": false,
          "needs_voice_binding": false,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": false,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 0,
          "required_voice_asset_count": 0,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": false
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "review_notes": [
          "缺少参考图",
          "缺少视觉锁定绑定"
        ],
        "reason": "覆盖 1 集、命中 1 个剧本块，适合优先建主场景。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "should_build",
        "init_action_reason": "场景具备候选映射，建议按主场景之后补齐",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      }
    ],
    "props": [],
    "voices": [
      {
        "entity_uid": "E000002",
        "name": "李凡",
        "canonical_name": "李凡",
        "display_name": "李凡",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "李凡；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000002:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000002:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000002:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "穿越者心理健康维护系统"
          ],
          "variant_keys": [
            "VC000002:state:age",
            "VO000002:default",
            "VO000002:low",
            "VO000002:high"
          ],
          "prompt_fragments": [
            "李凡：二十一童子中的穿越者；二十一人中有一个平平无奇的小童是一名穿越者",
            "李凡"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000002",
          "visual_card_id": "",
          "voice_card_id": "VO000002",
          "asset_binding_id": "AB000002"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000007",
        "name": "穿越者心理健康维护系统",
        "canonical_name": "穿越者心理健康维护系统",
        "display_name": "穿越者心理健康维护系统",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000007",
        "asset_binding_id": "AB000007",
        "voice_role": "system",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "穿越者心理健康维护系统；系统 / 未知性别呈现 / 未知年龄感；合成提示音感",
        "timbre": [
          "合成提示音感",
          "信息传达清晰"
        ],
        "pitch": "mid",
        "pace": "medium",
        "speaking_style": [
          "节律稳定"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "提示/播报优先清晰度与节律一致性"
        ],
        "casting_tags": [
          "系统",
          "未知性别呈现",
          "未知年龄感",
          "合成提示音感",
          "信息传达清晰",
          "节律稳定"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000007:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000007:alert",
            "label": "警报播报",
            "pace": "fast",
            "pitch": "mid",
            "timbre": [
              "合成提示音感",
              "信息传达清晰"
            ],
            "speaking_style": [
              "节律稳定",
              "提示性更强"
            ],
            "notes": "适用于提醒、预警和状态变更播报。"
          }
        ],
        "asset_profile": {
          "asset_role": "system",
          "priority": "minor",
          "required_visual_assets": [
            "标准参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "李凡"
          ],
          "variant_keys": [
            "VO000007:default",
            "VO000007:alert"
          ],
          "prompt_fragments": [
            "穿越者心理健康维护系统，系统",
            "穿越者心理健康维护系统",
            "系统"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 1,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ],
          "entity_uid": "E000007",
          "visual_card_id": "",
          "voice_card_id": "VO000007",
          "asset_binding_id": "AB000007"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000010",
        "name": "童子",
        "canonical_name": "童子",
        "display_name": "童子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "童子；角色 / 未知性别呈现 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000010:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000010:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000010:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老道"
          ],
          "variant_keys": [
            "VC000010:state:age",
            "VO000010:default",
            "VO000010:low",
            "VO000010:high"
          ],
          "prompt_fragments": [
            "童子中有一个实在是装不下去了；被挑选的孩童",
            "童子"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000010",
          "visual_card_id": "",
          "voice_card_id": "VO000010",
          "asset_binding_id": "AB000010"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000001",
        "name": "老道",
        "canonical_name": "老道",
        "display_name": "老道",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "老道；角色 / 男性向 / 幼年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "幼年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [
            "法坛前只有个墨帻法褐的老道"
          ],
          "owner_candidates": [
            "朱木剑",
            "修士",
            "童子"
          ],
          "variant_keys": [
            "VC000001:costume:default",
            "VC000001:state:age",
            "VO000001:default",
            "VO000001:low",
            "VO000001:high"
          ],
          "prompt_fragments": [
            "法坛前只有个墨帻法褐的老道",
            "老道"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000001",
          "visual_card_id": "",
          "voice_card_id": "VO000001",
          "asset_binding_id": "AB000001"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000011",
        "name": "修士",
        "canonical_name": "修士",
        "display_name": "修士",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "修士；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000011:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000011:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000011:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "铜钱剑",
            "老道"
          ],
          "variant_keys": [
            "VO000011:default",
            "VO000011:low",
            "VO000011:high"
          ],
          "prompt_fragments": [
            "修士，角色姓名",
            "修士",
            "角色姓名"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000011",
          "visual_card_id": "",
          "voice_card_id": "VO000011",
          "asset_binding_id": "AB000011"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000009",
        "name": "山主",
        "canonical_name": "山主",
        "display_name": "山主",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000009",
        "asset_binding_id": "AB000009",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "山主；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000009:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000009:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000009:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VO000009:default",
            "VO000009:low",
            "VO000009:high"
          ],
          "prompt_fragments": [
            "墨竹山的主人；和山主弈棋输了",
            "山主"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ],
          "entity_uid": "E000009",
          "visual_card_id": "",
          "voice_card_id": "VO000009",
          "asset_binding_id": "AB000009"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000008",
        "name": "玉蟾婆",
        "canonical_name": "玉蟾婆",
        "display_name": "玉蟾婆",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000008",
        "asset_binding_id": "AB000008",
        "voice_role": "creature",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "voice_anchor_summary": "玉蟾婆；异类 / 未知性别呈现 / 幼年感；非人声线倾向",
        "timbre": [
          "非人声线倾向",
          "保留可辨识度"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "保留异类质感"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "保留异类质感，但要保证关键台词仍可辨识",
          "保持幼年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "异类",
          "未知性别呈现",
          "幼年感",
          "非人声线倾向",
          "保留可辨识度",
          "保留异类质感"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000008:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000008:threat",
            "label": "威胁态",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "非人声线倾向",
              "保留可辨识度"
            ],
            "speaking_style": [
              "保留异类质感",
              "威慑感更强"
            ],
            "notes": "适用于威吓、攻击前摇或危险提示。"
          }
        ],
        "asset_profile": {
          "asset_role": "creature",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VC000008:state:age",
            "VO000008:default",
            "VO000008:threat"
          ],
          "prompt_fragments": [
            "瑶光洞的玉蟾婆来观里作客吃了不少童子；瑶光洞的妖怪",
            "玉蟾婆"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "visual_seed_text_ready": true,
          "voice_seed_text_ready": true,
          "dramart_asset_spec_ready": true,
          "needs_visual_seed_text": false,
          "needs_voice_seed_text": false,
          "required_visual_asset_count": 2,
          "required_voice_asset_count": 2,
          "entity_needs_review": false,
          "manual_needs_fix": false,
          "manual_blocked": false,
          "manual_needs_fix_scopes": [],
          "manual_blocked_scopes": [],
          "manual_approved_scopes": [],
          "manual_locked_scopes": [],
          "manual_override_flags": {
            "entity_ok": false,
            "visual_ok": false,
            "voice_ok": false,
            "asset_ok": false
          },
          "review_overlay": {
            "scopes": {
              "entity": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "visual": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "voice": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              },
              "assets": {
                "status": "todo",
                "locked": false,
                "reviewer": "",
                "review_note": "",
                "labels": [],
                "updated_at": "",
                "is_approved": false,
                "is_na": false,
                "is_blocked": false,
                "is_needs_fix": false,
                "is_open": true
              }
            },
            "blocked_scopes": [],
            "needs_fix_scopes": [],
            "approved_scopes": [],
            "locked_scopes": [],
            "open_scopes": [],
            "manual_blocked": false,
            "manual_needs_fix": false
          },
          "ready_for_dramart": false,
          "ready_for_dramart_init": true
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "needs": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "risk_flags": [
          "visual_reference_gap",
          "voice_reference_gap",
          "voice_binding_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；语音参考缺口；音色绑定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "E000008",
          "visual_card_id": "",
          "voice_card_id": "VO000008",
          "asset_binding_id": "AB000008"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "【闪回】老道画圈并告诫夜间规矩",
            "kind": "bridge",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ]
      }
    ]
  },
  "asset_action_summary": {
    "characters": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 7
    },
    "locations": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 1,
      "ready": 1
    },
    "props": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 0
    },
    "voices": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 7
    }
  },
  "risk_summary": {
    "total_risk_item_count": 60,
    "risk_flag_count": 4,
    "flags": [
      {
        "flag": "visual_lock_gap",
        "count": 16,
        "asset_types": [
          "character",
          "location",
          "voice"
        ],
        "examples": [
          "李凡",
          "穿越者心理健康维护系统",
          "童子",
          "老道",
          "修士",
          "山主"
        ]
      },
      {
        "flag": "visual_reference_gap",
        "count": 16,
        "asset_types": [
          "character",
          "location",
          "voice"
        ],
        "examples": [
          "李凡",
          "穿越者心理健康维护系统",
          "童子",
          "老道",
          "修士",
          "山主"
        ]
      },
      {
        "flag": "voice_binding_gap",
        "count": 14,
        "asset_types": [
          "character",
          "voice"
        ],
        "examples": [
          "李凡",
          "穿越者心理健康维护系统",
          "童子",
          "老道",
          "修士",
          "山主"
        ]
      },
      {
        "flag": "voice_reference_gap",
        "count": 14,
        "asset_types": [
          "character",
          "voice"
        ],
        "examples": [
          "李凡",
          "穿越者心理健康维护系统",
          "童子",
          "老道",
          "修士",
          "山主"
        ]
      }
    ]
  },
  "review_checklist": [
    {
      "check_id": "CHK0001",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：李凡",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000002",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0002",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：李凡",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000002",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0003",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：穿越者心理健康维护系统",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000007",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0004",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：穿越者心理健康维护系统",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000007",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0005",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：童子",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000010",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0006",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：童子",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000010",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0007",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：老道",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000001",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0008",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：老道",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000001",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0009",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：修士",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000011",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0010",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：修士",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000011",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0011",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：山主",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000009",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0012",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：山主",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000009",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0013",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：玉蟾婆",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000008",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0014",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：玉蟾婆",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000008",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0015",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：墨竹山",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000003",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0016",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：墨竹山法坛",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0017",
      "category": "time_mode",
      "severity": "info",
      "status": "todo",
      "title": "存在非主线时间层",
      "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传到 Dramart 前需要显式标注。",
      "target_type": "package",
      "target_id": "outline",
      "source_refs": [
        "flashback"
      ],
      "recommended_action": "在分集文本或场次标题中明确标出时间层切换。"
    }
  ],
  "upload_bundle": {
    "contract_version": "dramart_upload_bundle.v3",
    "content_policy": {
      "contract_version": "dramart_package_scope.v1",
      "package_roles": [
        "export_layer",
        "asset_suggestion_layer",
        "risk_reveal_layer"
      ],
      "allowed_derivations": [
        "字段兜底与格式整形",
        "episode_upload_markdown 聚合输出",
        "asset_suggestion / readiness / risk overlay 派生",
        "upload markdown 的大纲与导览拼装"
      ],
      "forbidden_repairs": [
        "改写 screenplay_text 正文主体",
        "重写 title / opening_hook / ending_hook 主文案",
        "用 package 文案覆盖 episode 主角色排序"
      ],
      "source_of_truth": {
        "screenplay": "03d_screenplay.json",
        "entity_registry": "02e_entity_registry.json",
        "visual_cards": "02f_entity_visual_cards.json",
        "voice_cards": "02g_entity_voice_cards.json",
        "asset_bindings": "02h_entity_assets.json"
      }
    },
    "upload_script_filename": "03e_dramart_upload_script.md",
    "upload_script_markdown": "# 道祖是克苏鲁\n\n## 故事大纲\n故事核心：穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n核心钩子：险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？\n\n## 主要人物\n- 李凡（剧本中亦作：穿越者）：功能角色\n- 穿越者心理健康维护系统：系统\n- 童子（剧本中亦作：金童）：功能角色\n- 老道（剧本中亦作：老道士）：法坛前只有个墨帻法褐的老道；墨竹山法坛前的老道士\n- 修士：角色姓名\n- 山主：功能角色\n- 玉蟾婆：瑶光洞的妖怪\n\n## 分集导览\n- 墨竹山法坛：穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n\n## 正文剧本\n\n# 墨竹山法坛\n\n本集围绕童子、李凡、老道、修士、玉蟾婆展开，主要场面落在墨竹山、墨竹山法坛。穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n本集看点集中在“险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？”，并收在“系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？”。\n\n## 场次01 墨竹山险境与魔尊法坛\n\n场面落在墨竹山。\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转入下一场前，从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 场次02 【闪回】老道画圈并告诫夜间规矩\n\n这一场属于回忆时间层，场面落在墨竹山法坛，出场人物有李凡、童子、老道、山主、玉蟾婆、修士、穿越者心理健康维护系统。\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转入下一场前，闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
    "upload_ready": true,
    "recommended_upload_mode": "single_file",
    "validation": {
      "max_chars_per_upload": 100000,
      "single_file_char_count": 1321,
      "single_file_within_limit": true,
      "episode_count": 1,
      "part_count": 1,
      "oversized_episode_count": 0,
      "oversized_part_count": 0
    },
    "episode_uploads": [
      {
        "episode_id": "EP0001",
        "title": "墨竹山法坛",
        "filename": "03e_dramart_upload_EP0001.md",
        "char_count": 989,
        "block_count": 2,
        "time_modes": [
          "unknown",
          "flashback"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002"
        ],
        "markdown": "# 墨竹山法坛\n\n本集围绕童子、李凡、老道、修士、玉蟾婆展开，主要场面落在墨竹山、墨竹山法坛。穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n本集看点集中在“险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？”，并收在“系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？”。\n\n## 场次01 墨竹山险境与魔尊法坛\n\n场面落在墨竹山。\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转入下一场前，从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 场次02 【闪回】老道画圈并告诫夜间规矩\n\n这一场属于回忆时间层，场面落在墨竹山法坛，出场人物有李凡、童子、老道、山主、玉蟾婆、修士、穿越者心理健康维护系统。\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转入下一场前，闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        },
        "file_path": "logs/stage_artifacts/dramart_package_uploads/20260409T052728532561Z/episodes/03e_dramart_upload_EP0001.md"
      }
    ],
    "upload_parts": [
      {
        "part_id": "UP001",
        "filename": "03e_dramart_upload_part_01_EP0001_EP0001.md",
        "start_episode_id": "EP0001",
        "end_episode_id": "EP0001",
        "episode_ids": [
          "EP0001"
        ],
        "char_count": 989,
        "within_limit": true,
        "markdown": "# 墨竹山法坛\n\n本集围绕童子、李凡、老道、修士、玉蟾婆展开，主要场面落在墨竹山、墨竹山法坛。穿越者李凡与童子们被送入险恶的墨竹山，面对夜间未知的危险，他必须做出决定命运的先天气运选择。\n镜头展现原始险恶的墨竹山与山中诡异的魔尊法坛。老道接待修士送来的童子，告诫夜间规矩。穿越者李凡混迹其中，在尝试呼唤系统时，听到了选择先天气运的提示音。\n本集看点集中在“险恶群山之中，一座人力开凿的平地与诡异的魔尊法相赫然显现，究竟是谁在此建立了法坛？”，并收在“系统提示音响起，李凡必须做出关键抉择，童子们将如何度过这个危机四伏的夜晚？”。\n\n## 场次01 墨竹山险境与魔尊法坛\n\n场面落在墨竹山。\n\n【墨竹山·日·外】\n镜头从高空俯瞰，三千里墨竹山如一片凝固的墨海，两座主峰与十四座险峰刺破瘴气，山间隐约传来妖兽的嘶吼。镜头急速下坠，穿过弥漫的毒瘴，落在一处突兀的平地上——这显然是人力开凿的痕迹，与周遭原始险恶的环境格格不入。平地中央，矗立着一尊巨大的石雕法相：八条手臂扭曲伸展，六颗头颅表情各异，或怒目圆睁，或诡笑狰狞，散发着令人心悸的魔尊威压。\n\n转入下一场前，从宏观环境切入，聚焦到异常的人造平地与诡异法相，建立核心悬念。\n\n## 场次02 【闪回】老道画圈并告诫夜间规矩\n\n这一场属于回忆时间层，场面落在墨竹山法坛，出场人物有李凡、童子、老道、山主、玉蟾婆、修士、穿越者心理健康维护系统。\n\n【墨竹山法坛·日·外】（闪回）\n老道士用枯枝在童子们周围画了一个大圈，动作随意却带着不容置疑的意味。他直起身，浑浊的目光扫过这群惊魂未定的孩子。修士在一旁冷声道：“玉蟾婆那边吃童子吃腻了，换换口味，这几个就送你这儿来。”老道点点头，转向童子们，声音沙哑：“听着，天黑之后，无论听到什么、看到什么，都给我待在圈里。出了这个圈，是死是活，看你们自己的造化。”李凡混在童子中间，大脑一片空白——他记得自己上一秒还在现代都市，下一秒就被一股无法抗拒的力量拽到了这里。他环顾四周诡异的法坛、凶恶的石雕，又低头看了看自己身上不合身的粗布衣裳，终于意识到一个荒谬的事实：他穿越了，而且是个视人命如草芥的仙侠世界。他深吸一口气，压下翻涌的恐慌，决定先活下去再说。他闭上眼，尝试在心里默念：‘系统？金手指？老爷爷？’\n\n转入下一场前，闪回结束，回到现实时间线。李凡的尝试得到了回应，系统提示音即将响起。",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0001",
            "S0002"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        },
        "file_path": "logs/stage_artifacts/dramart_package_uploads/20260409T052728532561Z/parts/03e_dramart_upload_part_01_EP0001_EP0001.md"
      }
    ],
    "warnings": [
      "存在回忆、梦境或并行线等时间层，上传时建议在正文标题中显式标注。"
    ],
    "notes": [
      "上传正文建议使用 upload_bundle 中的上传版正文，不混入 checklist 或资产说明。",
      "若 recommended_upload_mode=split_parts，请按 upload_parts 顺序逐段上传。",
      "其余角色、场景、道具与音色信息请从 dramart_package.json 中读取。"
    ],
    "source_ref": {
      "episode_ids": [
        "EP0001"
      ],
      "block_ids": [],
      "source_scene_ids": [
        "S0001",
        "S0002"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002"
      ],
      "entity_uid": "",
      "visual_card_id": "",
      "voice_card_id": "",
      "asset_binding_id": ""
    },
    "readiness_summary": {
      "status": "pass",
      "issue_count": 1,
      "fail_count": 0,
      "warn_count": 0,
      "info_count": 1,
      "episode_count": 1,
      "block_count": 2,
      "character_bio_count": 7,
      "named_episode_count": 1,
      "episode_with_summary_count": 1,
      "episode_with_opening_hook_count": 1,
      "episode_with_ending_hook_count": 1,
      "episode_with_upload_text_count": 1,
      "recommended_upload_mode": "single_file",
      "upload_script_char_count": 1321,
      "single_file_within_limit": true,
      "part_count": 1,
      "oversized_episode_count": 0,
      "oversized_part_count": 0,
      "has_global_preface": true,
      "time_layer_annotation_recommended": true
    },
    "readiness_issues": [
      {
        "code": "non_mainline_time_mode",
        "severity": "info",
        "title": "存在非主线时间层",
        "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传时建议显式标注，以免平台误解时态切换。",
        "target_type": "package",
        "target_id": "",
        "source_refs": [
          "flashback"
        ],
        "recommended_action": "在分集标题、场次标题或正文中显式提示时间层切换。"
      }
    ],
    "upload_script_file_path": "logs/stage_artifacts/dramart_package_uploads/20260409T052728532561Z/03e_dramart_upload_script.md",
    "export_root": "logs/stage_artifacts/dramart_package_uploads/20260409T052728532561Z"
  }
}