{
  "meta": {
    "package_version": "dramart_package.v3",
    "content_policy_version": "dramart_package_scope.v1",
    "project_title": "laocanyouji_pg23850_ch1_4",
    "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": 3,
    "block_count": 19,
    "source_scene_ref_count": 19,
    "character_bio_count": 14,
    "location_asset_count": 31,
    "prop_asset_count": 3,
    "voice_suggestion_count": 14,
    "review_checklist_count": 64,
    "upload_script_char_count": 12486,
    "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,
    "source_screenplay_generation_status": "ok",
    "source_screenplay_blocked_block_count": 0,
    "source_screenplay_blocked_episode_count": 0,
    "source_screenplay_placeholder_block_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": 1,
    "risk_item_count": 181,
    "risk_flag_count": 5,
    "entity_review_summary": {
      "entity": {
        "total": 57,
        "applicable": 57,
        "todo": 57,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 57
      },
      "visual": {
        "total": 57,
        "applicable": 57,
        "todo": 57,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 57
      },
      "voice": {
        "total": 57,
        "applicable": 28,
        "todo": 28,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 29,
        "locked": 0,
        "open": 28
      },
      "assets": {
        "total": 57,
        "applicable": 57,
        "todo": 57,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 57
      },
      "event_count": 0
    },
    "time_mode_counts": {
      "flashback": 2,
      "mainline": 15,
      "dream": 1,
      "rumor": 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": "laocanyouji_pg23850_ch1_4",
    "format": "Dramart 漫剧/短剧输入包",
    "premise": "老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。",
    "core_hook": "以及旁观者（三人）面对险境时“救与不救”、“如何救”的…",
    "episode_count": 3,
    "block_count": 19,
    "source_scene_ref_count": 19,
    "time_mode_counts": {
      "flashback": 2,
      "mainline": 15,
      "dream": 1,
      "rumor": 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": "第01集 老残回店询问茶房",
      "logline": "老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。",
      "summary": "快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。",
      "opening_hook": "以及旁观者（三人）面对险境时“救与不救”、“如何救”的…",
      "ending_hook": "老残回店询问茶房。",
      "block_count": 6,
      "block_ids": [
        "EP0001B001",
        "EP0001B002",
        "EP0001B003",
        "EP0001B004",
        "EP0001B005",
        "EP0001B006"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "time_modes": [
        "flashback",
        "mainline",
        "dream"
      ],
      "character_names": [
        "老残",
        "三人",
        "白妞",
        "德慧生",
        "茶房",
        "文章伯",
        "黄瑞和",
        "管事"
      ],
      "character_display_names": [
        "老残",
        "三人",
        "白妞",
        "德慧生",
        "茶房",
        "文章伯",
        "黄瑞和",
        "管事"
      ],
      "character_entity_uids": [
        "E000001",
        "E000014",
        "E000023",
        "E000006",
        "E000024",
        "E000005",
        "E000004"
      ],
      "location_names": [
        "登州",
        "海上",
        "渔船",
        "帆船",
        "小渔船",
        "古水仙祠",
        "大明湖",
        "小布政司街"
      ],
      "location_display_names": [
        "登州",
        "海上",
        "渔船",
        "帆船",
        "小渔船",
        "古水仙祠",
        "大明湖",
        "小布政司街"
      ],
      "location_entity_uids": [
        "E000009",
        "E000013",
        "E000010",
        "E000018",
        "E000016",
        "E000021"
      ],
      "episode_markdown": "# 第01集 老残回店询问茶房\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在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\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\n## 【闪回】老残次日前往明湖居\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。",
      "episode_upload_markdown": "# 第01集 老残回店询问茶房\n\n本集围绕老残、三人、白妞、德慧生、茶房、文章伯、黄瑞和、管事展开，主要场面落在登州、海上、渔船、帆船、小渔船、古水仙祠、大明湖、小布政司街。老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本集看点集中在“以及旁观者（三人）面对险境时“救与不救”、“如何救”的…”，并收在“老残回店询问茶房。”。\n\n## 场次01 【闪回】为黄瑞和治疗奇病的关键事件\n\n这一场属于回忆时间层，场面落在登州，出场人物有老残、黄瑞和。\n这一场先把介绍老残身世背景，以及他在山东为黄大户治病的经历推到台前。\n场面里先见老残的姓名、字号由来及江湖游医身份，紧跟着把为黄瑞和治疗奇病的关键事件压出来。\n临到场尾，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本场推进：介绍老残身世背景，以及他在山东为黄大户治病的经历，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n场面目标：快速、生动地向观众介绍主角老残，确立其核心身份（江湖郎中）、能力（医术）和当前处境（受人尊敬），为后续剧情展开奠定基础。\n必留动作：老残的姓名、字号由来及江湖游医身份；为黄瑞和治疗奇病的关键事件；黄家设宴庆祝的结局。\n连续抓手：保持倒叙（flashback）结构；明确时间锚点“那年春天”；老残形象首次亮相需清晰。\n前后承接上，要把保持倒叙（flashback）结构与明确时间锚点“那年春天”继续压在同一股气口里。\n\n（登州）\n老残的落魄身世与凭借医术获得尊重的现实转变。\n老残成功治愈黄大户多年顽疾，获得认可和款待。\n老残抬头盯住眼前动静，脚下已经往前迈了出去。\n老残的姓名、字号由来及江湖游医身份。\n黄家设宴庆祝的结局。\n为黄瑞和治疗奇病的关键事件。\n\n## 场次02 三人相约登蓬莱阁\n\n场面落在登州，出场人物有德慧生、文章伯、三人。\n这一场先把老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船推到台前。\n场面里先见三人相约登蓬莱阁，紧跟着把夜间饮酒等待日出的氛围压出来。\n临到场尾，德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n本场推进：老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船，人与自然（风浪中的危船）的冲突初现，以及旁观者（三人）面对险境时“救与不救”、“如何救”的内心萌芽。\n场面目标：在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n必留动作：三人相约登蓬莱阁；夜间饮酒等待日出的氛围；通过望远镜发现危船；德慧生首次惊呼发现危险；三人对危船状况的初步观察与讨论。\n连续抓手：时间锚点：紧接前一日（次日）；角色连续性：老残、文章伯、德慧生三人组；地点连续性：从客房转移到蓬莱阁上层。\n前后承接上，要把紧接前一日（次日）与老残、文章伯、德慧生三人组继续压在同一股气口里。\n\n（登州）\n德慧生盯住三人不放，非要追问出救与不救。\n三人相约登蓬莱阁。\n通过望远镜发现危船。\n德慧生首次惊呼发现危险。\n德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n三人对危船状况的初步观察与讨论。\n在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n\n## 场次03 三人驾船追赶大船\n\n场面落在海上、渔船、帆船、小渔船，出场人物有三人、德慧生、文章伯、差官。\n这一场先把三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑推到台前。\n场面里先见三人驾船追赶大船，紧跟着把清晰听到船上演说内容压出来。\n临到场尾，老残提出“这等人恐怕不是办事的人。\n本场推进：三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑，三人对船上“英雄”真实动机（救国 vs 敛财）的认知冲突，以及即将介入的外部力量与船上封闭权力体系的潜在冲突。\n场面目标：在紧张的海上追逐中，通过偷听演说和三人讨论，快速建立船上“英雄”的负面形象与核心冲突（骗局 vs 拯救）\n必留动作：三人驾船追赶大船；清晰听到船上演说内容；三人对演说者动机的讨论与怀疑；落帆尾随观察的决策。\n连续抓手：角色连续性：老残、德慧生、文章伯；空间连续性：从蓬莱阁到海上；道具连续性：向盘（罗盘）\n前后承接上，要把老残、德慧生、文章伯与从蓬莱阁到海上继续压在同一股气口里。\n\n（海上）\n三人：这等人恐怕不是办事的人，只是用几句文明。\n三人驾船追赶大船。\n清晰听到船上演说内容。\n落帆尾随观察的决策。\n老残：这等人恐怕不是办事的人，只是用几句文明的话头骗几个钱用用罢了！\n在紧张的海上追逐中，通过偷听演说和三人讨论。\n老残：这等人恐怕不是办事的人，只是用几句。\n\n## 场次04 以传统章回体句式留下三人命运的悬念。\n\n出场人物有三人。\n这一场先把以传统章回体句式留下三人命运的悬念推到台前。\n场面里先见“未知三人性命如何”的悬念核心，紧跟着把章回体结尾的叙事功能压出来。\n临到场尾，从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n本场推进：以传统章回体句式留下三人命运的悬念，命运与未知的冲突（三人 vs. 未知的危险/命运），从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n场面目标：通过旁白和画面，将文字悬念转化为视听悬念，自然过渡到下一章节，同时强化三人命运未卜的戏剧张力。\n必留动作：“未知三人性命如何”的悬念核心；章回体结尾的叙事功能。\n连续抓手：承接前一场三人遇险的紧张感；保持时间顺序（S0004在S0003之后）\n前后承接上，要把承接前一场三人遇险的紧张感与保持时间顺序（S0004在S0003之…继续压在同一股气口里。\n\n有人低声追问：“未知三人性命如何”\n\n## 场次05 【梦境】【蒙太奇】沉船梦醒的瞬间\n\n这一场属于梦境时间层，场面落在古水仙祠、大明湖、小布政司街，出场人物有老残、管事、白妞。\n这一场先把老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等推到台前。\n场面里先见沉船梦醒的瞬间，紧跟着把辞别管事的简短对话压出来。\n临到场尾，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n本场推进：老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等，内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n场面目标：用富有诗意的画面和简洁的蒙太奇，高效完成场景转换，建立济南的空间感，刻画老残作为旅人/观察者的角色状态。\n必留动作：沉船梦醒的瞬间；辞别管事的简短对话；抵达济南府的初印象（家家泉水，户户垂杨）；大明湖上千佛山倒影的经典画面；发现白妞说书招贴。\n连续抓手：梦境与现实的光影、色调区分；时间明确为“次日清晨”；老残服装、行李的连贯性；从乡村到城市，从静到闹的空间过渡。\n前后承接上，要把梦境与现实的光影、色调区分与时间明确为“次日清晨”继续压在同一股气口里。\n\n（古水仙祠）\n内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力。\n沉船梦醒的瞬间，发现白妞说书招贴。\n沉船梦醒的瞬间。\n发现白妞说书招贴。\n发现白妞说书招贴，视线从自然景观转向市井文化热点，预示故事焦点转移。\n老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等。\n\n## 场次06 【闪回】老残次日前往明湖居\n\n这一场属于回忆时间层，场面落在明湖居，出场人物有白妞、茶房、黑妞。\n这一场先把老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百推到台前。\n场面里先见茶房介绍白妞技艺（融合多种唱腔、天赋异禀），紧跟着把老残次日前往明湖居压出来。\n临到场尾，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚。\n本场推进：老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百，老残的理性怀疑与茶房/社会对白妞技艺的狂热推崇之间的潜在张力，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n场面目标：通过对话和场景，高效建立白妞说书事件的巨大吸引力与社会影响力，将老残（及观众）的期待值推向高点。\n必留动作：茶房介绍白妞技艺（融合多种唱腔、天赋异禀）；老残次日前往明湖居；明湖居内座无虚席、官员百姓聚集的盛况；老残对茶房所言将信将疑的态度。\n连续抓手：保持flashback（‘昔日’）的时间模式；保留‘次日’的时间跳跃；老残从高升店到明湖居的空间转换；茶房作为信息传递者的角色功能。\n前后承接上，要把保持flashback（‘昔日’）的时…与保留‘次日’的时间跳跃继续压在同一股气口里。\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。",
      "episode_upload_char_count": 3793,
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "episode_id": "EP0002",
      "episode_index": 2,
      "title": "第02集 人弦俱寂”的刹那",
      "logline": "十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。",
      "summary": "创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。",
      "opening_hook": "人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。",
      "ending_hook": "更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…",
      "block_count": 8,
      "block_ids": [
        "EP0002B001",
        "EP0002B002",
        "EP0002B003",
        "EP0002B004",
        "EP0002B005",
        "EP0002B006",
        "EP0002B007",
        "EP0002B008"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "time_modes": [
        "mainline",
        "rumor"
      ],
      "character_names": [
        "老残",
        "差官",
        "高公",
        "宫保",
        "白妞",
        "茶房",
        "黑妞",
        "士子"
      ],
      "character_display_names": [
        "老残",
        "差官",
        "高公",
        "宫保",
        "白妞",
        "茶房",
        "黑妞",
        "士子"
      ],
      "character_entity_uids": [
        "E000001",
        "E000048",
        "E000040",
        "E000043",
        "E000023",
        "E000024",
        "E000026",
        "E000038"
      ],
      "location_names": [
        "明湖居戏台",
        "戏台",
        "趵突泉",
        "金泉书院",
        "金线泉",
        "黑虎泉",
        "南门",
        "高公馆"
      ],
      "location_display_names": [
        "明湖居戏台",
        "戏台",
        "趵突泉",
        "金泉书院",
        "金线泉",
        "黑虎泉",
        "南门",
        "高公馆"
      ],
      "location_entity_uids": [
        "E000034",
        "E000036",
        "E000037",
        "E000039"
      ],
      "episode_markdown": "# 第02集 人弦俱寂”的刹那\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士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\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高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\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\n## 【传闻】老残否认抚台邀请的对话\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。",
      "episode_upload_markdown": "# 第02集 人弦俱寂”的刹那\n\n本集围绕老残、差官、高公、宫保、白妞、茶房、黑妞、士子展开，主要场面落在明湖居戏台、戏台、趵突泉、金泉书院、金线泉、黑虎泉、南门、高公馆。十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。\n本集看点集中在“人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。”，并收在“更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…”。\n\n## 场次01 十二点半的时间点\n\n场面落在明湖居戏台、戏台，出场人物有差官、白妞。\n这一场先把十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝推到台前。\n场面里先见十二点半的时间点，紧跟着把弹弦男人上台及外貌特征压出来。\n临到场尾，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n本场推进：十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝，精湛技艺与丑陋外表的反差，暖场表演（黑妞）与观众更高期待（白妞）之间的潜在张力，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n场面目标：创造一场令人屏息凝神、极具感染力的表演戏，确立白妞作为核心人物的超凡魅力与技艺巅峰，并引发观众（剧中与剧外）的共鸣与赞叹。\n必留动作：十二点半的时间点；弹弦男人上台及外貌特征；三弦子轮指技法的精湛表现；台下观众从漫不经心到叫好不绝的反应转变；黑妞出场演唱。\n连续抓手：时间锚点：十二点半；空间连续性：明湖居戏台；角色出场顺序：弹弦男人 -> 黑妞；情绪递进：平淡 -> 精彩 -> 期待（议论白妞）\n前后承接上，要把十二点半与明湖居戏台继续压在同一股气口里。\n\n（明湖居戏台）\n白妞：霍然一声，人弦俱寂。\n观众：霍然一声，人弦俱寂。\n十二点半的时间点。\n弹弦男人上台及外貌特征。\n观众站在人堆里，脸色一下子就绷住了。\n黑妞出场演唱。\n\n## 场次02 黑妞简短说书作为过渡\n\n场面落在戏台、趵突泉、金泉书院、金线泉，出场人物有白妞、士子、黑妞。\n这一场先把黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一推到台前。\n场面里先见黑妞简短说书作为过渡，紧跟着把白妞表演“黑驴段”的快节奏与清晰吐字压出来。\n临到场尾，士子提及金线泉的奥秘。\n本场推进：黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一，白妞技艺的极致展现（快而清）与观众接收极限之间的张力，本段表演与前一段“绝调”之间的对比与观众评价。\n场面目标：通过视听语言，戏剧化地呈现白妞“黑驴段”表演的技艺特点（快而清），并与前段形成对比，同时将观众的期待情绪推向顶点。\n必留动作：黑妞简短说书作为过渡；白妞表演“黑驴段”的快节奏与清晰吐字；观众（包括士子）的惊叹与期待反应；时间提示（约下午五点）；表演意外收场，众人散去。\n连续抓手：紧接前一场白妞的表演；保持观众角色的连续性；时间线连贯（下午）；保留时间锚点‘次日’。\n前后承接上，要把紧接前一场白妞的表演与保持观众角色的连续性继续压在同一股气口里。\n\n（戏台）\n黑妞简短说书作为过渡。\n观众：黑驴段。\n观众站在人堆里，脸色一下子就绷住了。\n时间提示。\n士子提及金线泉的奥秘。\n表演意外收场，众人散去。\n士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\n\n## 场次03 游览黑虎泉的视觉呈现\n\n场面落在黑虎泉、南门、高公馆，出场人物有高公、茶房、差官。\n这一场先把老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾推到台前。\n场面里先见游览黑虎泉的视觉呈现，紧跟着把高公在公馆门口面带愁容拦路求医压出来。\n临到场尾，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n本场推进：老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾，高公小妾生命垂危（喉疾）与寻求救治的紧迫性，考验老残的医术，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n场面目标：自然地将老残从游览者过渡到医者角色，并通过高公的求医，引出后续的诊治情节和人物关系网。\n必留动作：游览黑虎泉的视觉呈现；高公在公馆门口面带愁容拦路求医；老残进入高公馆并诊脉；高公小妾喉疾的严重性（滴水不进）\n连续抓手：时间锚点：次日（承接S0010）；老残手持串铃的行医标志；高公的江苏口音或官话特征。\n前后承接上，要把次日（承接S0010）与老残手持串铃的行医标志继续压在同一股气口里。\n\n（黑虎泉）\n高公在公馆门口面带愁容拦路求医。\n老残进入高公馆并诊脉。\n高公小妾喉疾的严重性。\n高公小妾生命垂危与寻求救治的紧迫性。\n自然地将老残从游览者过渡到医者角色，并通过高公的求医。\n老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾。\n\n## 场次04 老残检查病人喉咙的细节\n\n场面落在高公馆内室、高公府邸、北柱楼，出场人物有高公。\n这一场先把老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方推到台前。\n场面里先见老残检查病人喉咙的细节，紧跟着把老残对病因的诊断与解释压出来。\n临到场尾，席间官员议论玉佐臣补曹州府及其酷政。\n本场推进：老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方，表面：疾病（火气被寒药所逼）与健康，席间官员议论玉佐臣补曹州府及其酷政，将场景从私人医疗成功转向公共政治议题。\n场面目标：1. 通过一场成功的诊治，立体塑造老残“神医”形象。\n必留动作：老残检查病人喉咙的细节；老残对病因的诊断与解释；开方配药的动作；高公设宴答谢；席间议论玉佐臣补曹州府之事。\n连续抓手：保留时间锚点：几天后；角色连续性：高公/老残；地点转换：高公馆内室->高公府邸->北柱楼；老残医术声望的建立。\n前后承接上，要把几天后与高公/老残继续压在同一股气口里。\n\n（高公馆内室）\n老残对病因的诊断与解释。\n开方配药。\n高公设宴答谢。\n席间议论玉佐臣补曹州府之事。\n表面：疾病与健康。\n老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方。\n表面：疾病（火气被寒药所逼）与健康。\n\n## 场次05 高绍殷乘轿拜访老残的场景\n\n场面落在老残寓所、抚署，出场人物有老残、高公。\n这一场先把高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随推到台前。\n场面里先见高绍殷乘轿拜访老残的场景，紧跟着把高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手…压出来。\n临到场尾，老残同意随高绍殷前往抚署面见宫保。\n本场推进：高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随，老残淡泊的游方郎中心态与宫保代表的官方招揽意图之间的潜在冲突，个人志趣与世俗功名价值观的碰撞，老残同意随高绍殷前往抚署面见宫保。\n场面目标：通过一场看似平常的拜访与对话，塑造老残学识渊博却淡泊名士的形象，同时揭示宫保对其的关注与招揽意图。\n必留动作：高绍殷乘轿拜访老残的场景；高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手写陶诗）的对话；高绍殷转达宫保招揽意图的试探性对话；老残对功名态度的自我剖白；老残同意前往抚署但要求便衣的细节。\n连续抓手：时间：承接前一日老残为妇人诊病后；地点：从老残寓所过渡到山东抚署；角色：老残与高绍殷的衣着、状态保持一致。\n前后承接上，要把承接前一日老残为妇人诊病后与从老残寓所过渡到山东抚署继续压在同一股气口里。\n\n（老残寓所）\n高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\n高绍殷乘轿拜访老残。\n老残同意前往抚署但要求便衣。\n高绍殷赞赏老残藏书。\n老残同意随高绍殷前往抚署面见宫保。\n高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随。\n\n## 场次06 张宫保求教河工治理的对话\n\n场面落在抚署、宫保签押房，出场人物有差官。\n这一场先把老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法推到台前。\n场面里先见老残随高绍殷进入抚署的路径与场景转换，紧跟着把张宫保的出场与外貌（魁梧、仁厚）压出来。\n临到场尾，老残提出“王景”的名字并简要阐述其理念。\n本场推进：老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法，理念冲突：张宫保（及主流）推崇的贾让“不与河争地”策略，与老残提出的王景“抑”字诀治河古法之间的根本对立，老残提出“王景”的名字并简要阐述其理念。\n场面目标：建立老残与张宫保的初次正式关系，将抽象的“河工”议题具体化为“贾让”与“王景”的治河理念之争，为后续情节埋下伏笔。\n必留动作：老残随高绍殷进入抚署的路径与场景转换；张宫保的出场与外貌（魁梧、仁厚）；张宫保求教河工治理的对话；老残对贾让与王景治河策略的对比分析；老残承诺呈递说帖。\n连续抓手：老残的衣着（随身穿戴）；高绍殷作为引荐人的角色；张宫保对河工问题的焦虑感；对话逻辑：从客套到具体议题。\n前后承接上，要把老残的衣着（随身穿戴）与高绍殷作为引荐人的角色继续压在同一股气口里。\n\n（抚署）\n老残盯住张宫保不放，非要追问出王景。\n张宫保的出场与外貌。\n老残对贾让与王景治河策略的对比分析。\n老残：王景。\n老残承诺呈递说帖。\n\n## 场次07 宫保邀请老残入住南书房\n\n场面落在抚署，出场人物有老残、宫保、高公。\n这一场先把宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙推到台前。\n场面里先见宫保邀请老残入住南书房，紧跟着把老残以探亲为由婉拒压出来。\n临到场尾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n本场推进：宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙，宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n场面目标：通过核心对话，明确老残的下一步行动（前往曹州），同时刻画宫保对其的重视与老残的自主性，建立角色间的张力与期待。\n必留动作：宫保邀请老残入住南书房；老残以探亲为由婉拒；老残提及将去曹州并考察玉守；宫保神色怏怏；老残告辞离开。\n连续抓手：紧接上一场景（S0014）的对话氛围；保持老残与宫保的角色状态连续性；维持叙事顺序与故事顺序差（order_delta: -2）\n前后承接上，要把紧接上一场景（S0014）的对话氛围与保持老残与宫保的角色状态连续性继续压在同一股气口里。\n\n（抚署）\n宫保：等鄙人从曹州回来，再领宫保的教罢。\n宫保邀请老残入住南书房。\n老残以探亲为由婉拒。\n老残提及将去曹州并考察玉守。\n老残：等鄙人从曹州回来，再领宫保的教罢。\n宫保站在人堆里，脸色一下子就绷住了。\n宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾。\n\n## 场次08 【传闻】老残否认抚台邀请的对话\n\n这一场属于传闻时间层，场面落在客栈，出场人物有茶房、差官。\n这一场先把老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席推到台前。\n场面里先见老残否认抚台邀请的对话，紧跟着把掌柜转述抚台催促的细节压出来。\n临到场尾，差官不仅送来酒席，更传达“打扫南书房”的明确指令。\n本场推进：老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席，老残的自我认知（普通访客）与外界对他的看法（被抚台、宫保争相礼遇的贵人）之间的错位与矛盾。\n场面目标：通过对话和动作，生动展现老残从被传言包围到收到宫保实质性礼遇的转变，为后续进入宫保府邸做铺垫，并强化老残低调、谨慎的性格。\n必留动作：老残否认抚台邀请的对话；掌柜转述抚台催促的细节；差官送礼并传达打扫南书房之命。\n连续抓手：时间：傍晚；地点：客栈；角色：老残、掌柜、差官、茶房；保持“传言”与“现实”的对比节奏。\n前后承接上，要把傍晚与客栈继续压在同一股气口里。\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。",
      "episode_upload_char_count": 4916,
      "source_ref": {
        "episode_ids": [
          "EP0002"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "episode_id": "EP0003",
      "episode_index": 3,
      "title": "第03集 于朝栋说出‘亲家救我’并流泪",
      "logline": "老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。",
      "summary": "通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。",
      "opening_hook": "刻画老残作为“铁老爷”初受官场礼遇的场景。",
      "ending_hook": "于朝栋说出‘亲家救我’并流泪。",
      "block_count": 5,
      "block_ids": [
        "EP0003B001",
        "EP0003B002",
        "EP0003B003",
        "EP0003B004",
        "EP0003B005"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "time_modes": [
        "mainline"
      ],
      "character_names": [
        "玉贤",
        "差官",
        "老董",
        "茶房",
        "三人"
      ],
      "character_display_names": [
        "玉贤",
        "差官",
        "老董",
        "茶房",
        "三人"
      ],
      "character_entity_uids": [
        "E000049",
        "E000048",
        "E000052",
        "E000024",
        "E000014"
      ],
      "location_names": [
        "客栈房间",
        "客店",
        "济南",
        "雒口",
        "船上",
        "董家口",
        "城外",
        "于家屯"
      ],
      "location_display_names": [
        "客栈房间",
        "客店",
        "济南",
        "雒口",
        "船上",
        "董家口",
        "城外",
        "于家屯"
      ],
      "location_entity_uids": [
        "E000058"
      ],
      "episode_markdown": "# 第03集 于朝栋说出‘亲家救我’并流泪\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\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玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
      "episode_upload_markdown": "# 第03集 于朝栋说出‘亲家救我’并流泪\n\n本集围绕玉贤、差官、老董、茶房、三人展开，主要场面落在客栈房间、客店、济南、雒口、船上、董家口、城外、于家屯。老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。\n本集看点集中在“刻画老残作为“铁老爷”初受官场礼遇的场景。”，并收在“于朝栋说出‘亲家救我’并流泪。”。\n\n## 场次01 老残为差官倒茶\n\n场面落在客栈房间、客店，出场人物有茶房、差官。\n这一场先把老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开推到台前。\n场面里先见老残为差官倒茶，紧跟着把差官传达宫保安排南书房入住压出来。\n临到场尾，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n本场推进：老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开，老残的个人原则与即将面临的官场人情、利益诱惑之间的潜在冲突，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n场面目标：通过一系列礼节性互动，刻画老残作为“铁老爷”初受官场礼遇的场景，同时埋下被奉承和劝捐的伏笔，展现其身处漩涡边缘的微妙处境。\n必留动作：老残为差官倒茶；差官传达宫保安排南书房入住；老残写领谢帖子并送客至大门；武巡捕传抚台邀请；掌柜恭维抚台送席。\n连续抓手：承接上一场景（S0016）老残收到礼物的情绪；保持老残从容、客气但保持距离的人物基调；场景从房间内过渡到客店大堂。\n前后承接上，要把承接上一场景（S0016）老残收到礼物…与保持老残从容、客气但保持距离的人物基调继续压在同一股气口里。\n\n（客栈房间）\n老残为差官倒茶。\n老残写领谢帖子并送客至大门。\n张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n掌柜恭维抚台送席。\n老残：铁老爷。\n\n## 场次02 老残为避纠缠连夜离济\n\n场面落在济南、雒口、船上、董家口，出场人物有老董、玉贤。\n这一场先把老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严推到台前。\n场面里先见老残为避纠缠连夜离济，紧跟着把乘船数日抵达董家口压出来。\n临到场尾，老董说出“玉大人倒反做了強盜的兵器了”\n本场推进：老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严，表面冲突：老残打听与老董讲述，老董说出“玉大人倒反做了強盜的兵器了”，这是对玉贤“清官”形象的颠覆性评价，也是后续所有悲剧的根源揭示。\n场面目标：完成场景转换（济南到曹州），并通过关键对话，首次向观众（和老残）揭示核心冲突人物玉贤的矛盾性与危险性，建立悬疑感。\n必留动作：老残为避纠缠连夜离济；乘船数日抵达董家口；老残向老董打听玉贤政绩；老董叹息并讲述玉贤办案严酷反成强盗工具。\n连续抓手：老残从济南到曹州府的行动线；玉贤作为未出场但关键人物的首次侧面塑造。\n前后承接上，要把老残从济南到曹州府的行动线与玉贤作为未出场但关键人物的首次侧面塑造继续压在同一股气口里。\n\n（济南）\n玉贤：玉大人倒反做了強盜的兵器了。\n老残为避纠缠连夜离济。\n乘船数日抵达董家口。\n老残向老董打听玉贤政绩。\n老董叹息并讲述玉贤办案严酷反成强盗工具。\n老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严。\n老董：玉大人倒反做了強盜的兵器了。\n\n## 场次03 玉贤率马队追击\n\n场面落在城外、于家屯，出场人物有玉贤。\n这一场先把老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近推到台前。\n场面里先见玉贤率马队追击，紧跟着把强盗持火把与洋枪压出来。\n临到场尾，追至于家屯时，火光与枪声骤然消失，追捕线索中断。\n本场推进：老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近，玉贤（秩序/追捕方）与未知强盗（混乱/逃亡方）在夜色中的追逐对抗，追至于家屯时，火光与枪声骤然消失，追捕线索中断，行动从主动追击转入被动搜寻。\n场面目标：用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n必留动作：玉贤率马队追击；强盗持火把与洋枪；循火光与枪声追踪；追至于家屯附近时目标消失。\n连续抓手：紧接前序追捕场景（S0018）；保持夜间至天明的时序；玉贤人物状态（愤怒、追击）的连贯。\n前后承接上，要把紧接前序追捕场景（S0018）与保持夜间至天明的时序继续压在同一股气口里。\n\n（城外）\n玉贤率马队追击。\n强盗持火把与洋枪。\n循火光与枪声追踪。\n追至于家屯附近时目标消失。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面。\n老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n\n## 场次04 玉贤率马队夜间追捕强盗的火光与枪声…\n\n出场人物有玉贤。\n这一场先把玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子推到台前。\n场面里先见玉贤率马队夜间追捕强盗的火光与枪声线索，紧跟着把玉贤判断强盗藏匿于村庄并下令封锁压出来。\n临到场尾，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n本场推进：玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子，玉贤追捕强盗的执法行动 vs. 于家父子自称良民、私藏武器仅为自保的辩解，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n场面目标：通过一场紧张的追捕与审问戏，生动刻画玉贤雷厉风行但可能过于武断的执法者形象，同时将于家父子卷入冤案漩涡。\n必留动作：玉贤率马队夜间追捕强盗的火光与枪声线索；玉贤判断强盗藏匿于村庄并下令封锁；从于朝栋家搜出土枪、刀、竿子等物证；玉贤审问于家父子，质问藏匿强盗与私藏军器。\n连续抓手：保持夜间至天明的时序过渡；玉贤角色形象（威严、果断）的连贯性；空间连续性：从野外追捕到进入于家屯村庄。\n前后承接上，要把保持夜间至天明的时序过渡与玉贤角色形象（威严、果断）的连贯性继续压在同一股气口里。\n\n玉大人：我不是逞强，只是不肯糊里糊涂退下去。\n玉贤判断强盗藏匿于村庄并下令封锁。\n从于朝栋家搜出土枪、刀、竿子等物证。\n玉贤审问于家父子，质问藏匿强盗与私藏军器。\n玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子。\n\n## 场次05 玉贤搜查于家并发现可疑衣物\n\n场面落在撫署，出场人物有玉贤、三人。\n这一场先把玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助推到台前。\n场面里先见玉贤搜查于家并发现可疑衣物，紧跟着把玉贤将于家父子押回城压出来。\n临到场尾，于朝栋说出‘亲家救我’并流泪。\n本场推进：玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助，玉贤的武断强权与于家父子的无辜蒙冤之间的直接冲突，平民百姓（吴氏）试图通过合法途径（求助举人父亲）对抗不公司法体系的结构性冲突，于朝栋说出‘亲家救我’并流泪。\n场面目标：完整呈现玉贤如何基于微小且可疑的证据（衣物）武断定罪，展现其滥用职权，同时引出受害者家属（吴氏）的反抗与求助。\n必留动作：玉贤搜查于家并发现可疑衣物；玉贤将于家父子押回城；吴氏进城向父亲吴举人求助；吴举人求见玉贤被拒；吴举人东门焦急等待。\n连续抓手：玉贤的官员形象与行事风格需连贯；于家父子的无辜状态需明确；时间线：搜查（白天）-> 押解进城（傍晚至二更天）-> 吴氏求助（一更多天）；于家父子状态需与上场景被捕衔接。\n前后承接上，要把玉贤的官员形象与行事风格需连贯与于家父子的无辜状态需明确继续压在同一股气口里。\n\n（撫署）\n吴举人东门守在外头来回踱步，只等里面递出一句“亲家救我”的准话。\n差人：亲家救我。\n玉贤搜查于家并发现可疑衣物。\n玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
      "episode_upload_char_count": 3284,
      "source_ref": {
        "episode_ids": [
          "EP0003"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    }
  ],
  "episodes": [
    {
      "episode_id": "EP0001",
      "episode_index": 1,
      "title": "第01集 老残回店询问茶房",
      "logline": "老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。",
      "summary": "快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。",
      "opening_hook": "以及旁观者（三人）面对险境时“救与不救”、“如何救”的…",
      "ending_hook": "老残回店询问茶房。",
      "block_count": 6,
      "block_ids": [
        "EP0001B001",
        "EP0001B002",
        "EP0001B003",
        "EP0001B004",
        "EP0001B005",
        "EP0001B006"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "time_modes": [
        "flashback",
        "mainline",
        "dream"
      ],
      "character_names": [
        "老残",
        "三人",
        "白妞",
        "德慧生",
        "茶房",
        "文章伯",
        "黄瑞和",
        "管事"
      ],
      "character_display_names": [
        "老残",
        "三人",
        "白妞",
        "德慧生",
        "茶房",
        "文章伯",
        "黄瑞和",
        "管事"
      ],
      "character_entity_uids": [
        "E000001",
        "E000014",
        "E000023",
        "E000006",
        "E000024",
        "E000005",
        "E000004"
      ],
      "location_names": [
        "登州",
        "海上",
        "渔船",
        "帆船",
        "小渔船",
        "古水仙祠",
        "大明湖",
        "小布政司街"
      ],
      "location_display_names": [
        "登州",
        "海上",
        "渔船",
        "帆船",
        "小渔船",
        "古水仙祠",
        "大明湖",
        "小布政司街"
      ],
      "location_entity_uids": [
        "E000009",
        "E000013",
        "E000010",
        "E000018",
        "E000016",
        "E000021"
      ],
      "episode_markdown": "# 第01集 老残回店询问茶房\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在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\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\n## 【闪回】老残次日前往明湖居\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。",
      "episode_upload_markdown": "# 第01集 老残回店询问茶房\n\n本集围绕老残、三人、白妞、德慧生、茶房、文章伯、黄瑞和、管事展开，主要场面落在登州、海上、渔船、帆船、小渔船、古水仙祠、大明湖、小布政司街。老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本集看点集中在“以及旁观者（三人）面对险境时“救与不救”、“如何救”的…”，并收在“老残回店询问茶房。”。\n\n## 场次01 【闪回】为黄瑞和治疗奇病的关键事件\n\n这一场属于回忆时间层，场面落在登州，出场人物有老残、黄瑞和。\n这一场先把介绍老残身世背景，以及他在山东为黄大户治病的经历推到台前。\n场面里先见老残的姓名、字号由来及江湖游医身份，紧跟着把为黄瑞和治疗奇病的关键事件压出来。\n临到场尾，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本场推进：介绍老残身世背景，以及他在山东为黄大户治病的经历，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n场面目标：快速、生动地向观众介绍主角老残，确立其核心身份（江湖郎中）、能力（医术）和当前处境（受人尊敬），为后续剧情展开奠定基础。\n必留动作：老残的姓名、字号由来及江湖游医身份；为黄瑞和治疗奇病的关键事件；黄家设宴庆祝的结局。\n连续抓手：保持倒叙（flashback）结构；明确时间锚点“那年春天”；老残形象首次亮相需清晰。\n前后承接上，要把保持倒叙（flashback）结构与明确时间锚点“那年春天”继续压在同一股气口里。\n\n（登州）\n老残的落魄身世与凭借医术获得尊重的现实转变。\n老残成功治愈黄大户多年顽疾，获得认可和款待。\n老残抬头盯住眼前动静，脚下已经往前迈了出去。\n老残的姓名、字号由来及江湖游医身份。\n黄家设宴庆祝的结局。\n为黄瑞和治疗奇病的关键事件。\n\n## 场次02 三人相约登蓬莱阁\n\n场面落在登州，出场人物有德慧生、文章伯、三人。\n这一场先把老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船推到台前。\n场面里先见三人相约登蓬莱阁，紧跟着把夜间饮酒等待日出的氛围压出来。\n临到场尾，德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n本场推进：老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船，人与自然（风浪中的危船）的冲突初现，以及旁观者（三人）面对险境时“救与不救”、“如何救”的内心萌芽。\n场面目标：在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n必留动作：三人相约登蓬莱阁；夜间饮酒等待日出的氛围；通过望远镜发现危船；德慧生首次惊呼发现危险；三人对危船状况的初步观察与讨论。\n连续抓手：时间锚点：紧接前一日（次日）；角色连续性：老残、文章伯、德慧生三人组；地点连续性：从客房转移到蓬莱阁上层。\n前后承接上，要把紧接前一日（次日）与老残、文章伯、德慧生三人组继续压在同一股气口里。\n\n（登州）\n德慧生盯住三人不放，非要追问出救与不救。\n三人相约登蓬莱阁。\n通过望远镜发现危船。\n德慧生首次惊呼发现危险。\n德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n三人对危船状况的初步观察与讨论。\n在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n\n## 场次03 三人驾船追赶大船\n\n场面落在海上、渔船、帆船、小渔船，出场人物有三人、德慧生、文章伯、差官。\n这一场先把三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑推到台前。\n场面里先见三人驾船追赶大船，紧跟着把清晰听到船上演说内容压出来。\n临到场尾，老残提出“这等人恐怕不是办事的人。\n本场推进：三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑，三人对船上“英雄”真实动机（救国 vs 敛财）的认知冲突，以及即将介入的外部力量与船上封闭权力体系的潜在冲突。\n场面目标：在紧张的海上追逐中，通过偷听演说和三人讨论，快速建立船上“英雄”的负面形象与核心冲突（骗局 vs 拯救）\n必留动作：三人驾船追赶大船；清晰听到船上演说内容；三人对演说者动机的讨论与怀疑；落帆尾随观察的决策。\n连续抓手：角色连续性：老残、德慧生、文章伯；空间连续性：从蓬莱阁到海上；道具连续性：向盘（罗盘）\n前后承接上，要把老残、德慧生、文章伯与从蓬莱阁到海上继续压在同一股气口里。\n\n（海上）\n三人：这等人恐怕不是办事的人，只是用几句文明。\n三人驾船追赶大船。\n清晰听到船上演说内容。\n落帆尾随观察的决策。\n老残：这等人恐怕不是办事的人，只是用几句文明的话头骗几个钱用用罢了！\n在紧张的海上追逐中，通过偷听演说和三人讨论。\n老残：这等人恐怕不是办事的人，只是用几句。\n\n## 场次04 以传统章回体句式留下三人命运的悬念。\n\n出场人物有三人。\n这一场先把以传统章回体句式留下三人命运的悬念推到台前。\n场面里先见“未知三人性命如何”的悬念核心，紧跟着把章回体结尾的叙事功能压出来。\n临到场尾，从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n本场推进：以传统章回体句式留下三人命运的悬念，命运与未知的冲突（三人 vs. 未知的危险/命运），从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n场面目标：通过旁白和画面，将文字悬念转化为视听悬念，自然过渡到下一章节，同时强化三人命运未卜的戏剧张力。\n必留动作：“未知三人性命如何”的悬念核心；章回体结尾的叙事功能。\n连续抓手：承接前一场三人遇险的紧张感；保持时间顺序（S0004在S0003之后）\n前后承接上，要把承接前一场三人遇险的紧张感与保持时间顺序（S0004在S0003之…继续压在同一股气口里。\n\n有人低声追问：“未知三人性命如何”\n\n## 场次05 【梦境】【蒙太奇】沉船梦醒的瞬间\n\n这一场属于梦境时间层，场面落在古水仙祠、大明湖、小布政司街，出场人物有老残、管事、白妞。\n这一场先把老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等推到台前。\n场面里先见沉船梦醒的瞬间，紧跟着把辞别管事的简短对话压出来。\n临到场尾，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n本场推进：老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等，内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n场面目标：用富有诗意的画面和简洁的蒙太奇，高效完成场景转换，建立济南的空间感，刻画老残作为旅人/观察者的角色状态。\n必留动作：沉船梦醒的瞬间；辞别管事的简短对话；抵达济南府的初印象（家家泉水，户户垂杨）；大明湖上千佛山倒影的经典画面；发现白妞说书招贴。\n连续抓手：梦境与现实的光影、色调区分；时间明确为“次日清晨”；老残服装、行李的连贯性；从乡村到城市，从静到闹的空间过渡。\n前后承接上，要把梦境与现实的光影、色调区分与时间明确为“次日清晨”继续压在同一股气口里。\n\n（古水仙祠）\n内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力。\n沉船梦醒的瞬间，发现白妞说书招贴。\n沉船梦醒的瞬间。\n发现白妞说书招贴。\n发现白妞说书招贴，视线从自然景观转向市井文化热点，预示故事焦点转移。\n老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等。\n\n## 场次06 【闪回】老残次日前往明湖居\n\n这一场属于回忆时间层，场面落在明湖居，出场人物有白妞、茶房、黑妞。\n这一场先把老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百推到台前。\n场面里先见茶房介绍白妞技艺（融合多种唱腔、天赋异禀），紧跟着把老残次日前往明湖居压出来。\n临到场尾，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚。\n本场推进：老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百，老残的理性怀疑与茶房/社会对白妞技艺的狂热推崇之间的潜在张力，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n场面目标：通过对话和场景，高效建立白妞说书事件的巨大吸引力与社会影响力，将老残（及观众）的期待值推向高点。\n必留动作：茶房介绍白妞技艺（融合多种唱腔、天赋异禀）；老残次日前往明湖居；明湖居内座无虚席、官员百姓聚集的盛况；老残对茶房所言将信将疑的态度。\n连续抓手：保持flashback（‘昔日’）的时间模式；保留‘次日’的时间跳跃；老残从高升店到明湖居的空间转换；茶房作为信息传递者的角色功能。\n前后承接上，要把保持flashback（‘昔日’）的时…与保留‘次日’的时间跳跃继续压在同一股气口里。\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。",
      "episode_upload_char_count": 3793,
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "episode_id": "EP0002",
      "episode_index": 2,
      "title": "第02集 人弦俱寂”的刹那",
      "logline": "十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。",
      "summary": "创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。",
      "opening_hook": "人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。",
      "ending_hook": "更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…",
      "block_count": 8,
      "block_ids": [
        "EP0002B001",
        "EP0002B002",
        "EP0002B003",
        "EP0002B004",
        "EP0002B005",
        "EP0002B006",
        "EP0002B007",
        "EP0002B008"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "time_modes": [
        "mainline",
        "rumor"
      ],
      "character_names": [
        "老残",
        "差官",
        "高公",
        "宫保",
        "白妞",
        "茶房",
        "黑妞",
        "士子"
      ],
      "character_display_names": [
        "老残",
        "差官",
        "高公",
        "宫保",
        "白妞",
        "茶房",
        "黑妞",
        "士子"
      ],
      "character_entity_uids": [
        "E000001",
        "E000048",
        "E000040",
        "E000043",
        "E000023",
        "E000024",
        "E000026",
        "E000038"
      ],
      "location_names": [
        "明湖居戏台",
        "戏台",
        "趵突泉",
        "金泉书院",
        "金线泉",
        "黑虎泉",
        "南门",
        "高公馆"
      ],
      "location_display_names": [
        "明湖居戏台",
        "戏台",
        "趵突泉",
        "金泉书院",
        "金线泉",
        "黑虎泉",
        "南门",
        "高公馆"
      ],
      "location_entity_uids": [
        "E000034",
        "E000036",
        "E000037",
        "E000039"
      ],
      "episode_markdown": "# 第02集 人弦俱寂”的刹那\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士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\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高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\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\n## 【传闻】老残否认抚台邀请的对话\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。",
      "episode_upload_markdown": "# 第02集 人弦俱寂”的刹那\n\n本集围绕老残、差官、高公、宫保、白妞、茶房、黑妞、士子展开，主要场面落在明湖居戏台、戏台、趵突泉、金泉书院、金线泉、黑虎泉、南门、高公馆。十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。\n本集看点集中在“人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。”，并收在“更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…”。\n\n## 场次01 十二点半的时间点\n\n场面落在明湖居戏台、戏台，出场人物有差官、白妞。\n这一场先把十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝推到台前。\n场面里先见十二点半的时间点，紧跟着把弹弦男人上台及外貌特征压出来。\n临到场尾，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n本场推进：十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝，精湛技艺与丑陋外表的反差，暖场表演（黑妞）与观众更高期待（白妞）之间的潜在张力，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n场面目标：创造一场令人屏息凝神、极具感染力的表演戏，确立白妞作为核心人物的超凡魅力与技艺巅峰，并引发观众（剧中与剧外）的共鸣与赞叹。\n必留动作：十二点半的时间点；弹弦男人上台及外貌特征；三弦子轮指技法的精湛表现；台下观众从漫不经心到叫好不绝的反应转变；黑妞出场演唱。\n连续抓手：时间锚点：十二点半；空间连续性：明湖居戏台；角色出场顺序：弹弦男人 -> 黑妞；情绪递进：平淡 -> 精彩 -> 期待（议论白妞）\n前后承接上，要把十二点半与明湖居戏台继续压在同一股气口里。\n\n（明湖居戏台）\n白妞：霍然一声，人弦俱寂。\n观众：霍然一声，人弦俱寂。\n十二点半的时间点。\n弹弦男人上台及外貌特征。\n观众站在人堆里，脸色一下子就绷住了。\n黑妞出场演唱。\n\n## 场次02 黑妞简短说书作为过渡\n\n场面落在戏台、趵突泉、金泉书院、金线泉，出场人物有白妞、士子、黑妞。\n这一场先把黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一推到台前。\n场面里先见黑妞简短说书作为过渡，紧跟着把白妞表演“黑驴段”的快节奏与清晰吐字压出来。\n临到场尾，士子提及金线泉的奥秘。\n本场推进：黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一，白妞技艺的极致展现（快而清）与观众接收极限之间的张力，本段表演与前一段“绝调”之间的对比与观众评价。\n场面目标：通过视听语言，戏剧化地呈现白妞“黑驴段”表演的技艺特点（快而清），并与前段形成对比，同时将观众的期待情绪推向顶点。\n必留动作：黑妞简短说书作为过渡；白妞表演“黑驴段”的快节奏与清晰吐字；观众（包括士子）的惊叹与期待反应；时间提示（约下午五点）；表演意外收场，众人散去。\n连续抓手：紧接前一场白妞的表演；保持观众角色的连续性；时间线连贯（下午）；保留时间锚点‘次日’。\n前后承接上，要把紧接前一场白妞的表演与保持观众角色的连续性继续压在同一股气口里。\n\n（戏台）\n黑妞简短说书作为过渡。\n观众：黑驴段。\n观众站在人堆里，脸色一下子就绷住了。\n时间提示。\n士子提及金线泉的奥秘。\n表演意外收场，众人散去。\n士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\n\n## 场次03 游览黑虎泉的视觉呈现\n\n场面落在黑虎泉、南门、高公馆，出场人物有高公、茶房、差官。\n这一场先把老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾推到台前。\n场面里先见游览黑虎泉的视觉呈现，紧跟着把高公在公馆门口面带愁容拦路求医压出来。\n临到场尾，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n本场推进：老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾，高公小妾生命垂危（喉疾）与寻求救治的紧迫性，考验老残的医术，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n场面目标：自然地将老残从游览者过渡到医者角色，并通过高公的求医，引出后续的诊治情节和人物关系网。\n必留动作：游览黑虎泉的视觉呈现；高公在公馆门口面带愁容拦路求医；老残进入高公馆并诊脉；高公小妾喉疾的严重性（滴水不进）\n连续抓手：时间锚点：次日（承接S0010）；老残手持串铃的行医标志；高公的江苏口音或官话特征。\n前后承接上，要把次日（承接S0010）与老残手持串铃的行医标志继续压在同一股气口里。\n\n（黑虎泉）\n高公在公馆门口面带愁容拦路求医。\n老残进入高公馆并诊脉。\n高公小妾喉疾的严重性。\n高公小妾生命垂危与寻求救治的紧迫性。\n自然地将老残从游览者过渡到医者角色，并通过高公的求医。\n老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾。\n\n## 场次04 老残检查病人喉咙的细节\n\n场面落在高公馆内室、高公府邸、北柱楼，出场人物有高公。\n这一场先把老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方推到台前。\n场面里先见老残检查病人喉咙的细节，紧跟着把老残对病因的诊断与解释压出来。\n临到场尾，席间官员议论玉佐臣补曹州府及其酷政。\n本场推进：老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方，表面：疾病（火气被寒药所逼）与健康，席间官员议论玉佐臣补曹州府及其酷政，将场景从私人医疗成功转向公共政治议题。\n场面目标：1. 通过一场成功的诊治，立体塑造老残“神医”形象。\n必留动作：老残检查病人喉咙的细节；老残对病因的诊断与解释；开方配药的动作；高公设宴答谢；席间议论玉佐臣补曹州府之事。\n连续抓手：保留时间锚点：几天后；角色连续性：高公/老残；地点转换：高公馆内室->高公府邸->北柱楼；老残医术声望的建立。\n前后承接上，要把几天后与高公/老残继续压在同一股气口里。\n\n（高公馆内室）\n老残对病因的诊断与解释。\n开方配药。\n高公设宴答谢。\n席间议论玉佐臣补曹州府之事。\n表面：疾病与健康。\n老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方。\n表面：疾病（火气被寒药所逼）与健康。\n\n## 场次05 高绍殷乘轿拜访老残的场景\n\n场面落在老残寓所、抚署，出场人物有老残、高公。\n这一场先把高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随推到台前。\n场面里先见高绍殷乘轿拜访老残的场景，紧跟着把高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手…压出来。\n临到场尾，老残同意随高绍殷前往抚署面见宫保。\n本场推进：高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随，老残淡泊的游方郎中心态与宫保代表的官方招揽意图之间的潜在冲突，个人志趣与世俗功名价值观的碰撞，老残同意随高绍殷前往抚署面见宫保。\n场面目标：通过一场看似平常的拜访与对话，塑造老残学识渊博却淡泊名士的形象，同时揭示宫保对其的关注与招揽意图。\n必留动作：高绍殷乘轿拜访老残的场景；高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手写陶诗）的对话；高绍殷转达宫保招揽意图的试探性对话；老残对功名态度的自我剖白；老残同意前往抚署但要求便衣的细节。\n连续抓手：时间：承接前一日老残为妇人诊病后；地点：从老残寓所过渡到山东抚署；角色：老残与高绍殷的衣着、状态保持一致。\n前后承接上，要把承接前一日老残为妇人诊病后与从老残寓所过渡到山东抚署继续压在同一股气口里。\n\n（老残寓所）\n高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\n高绍殷乘轿拜访老残。\n老残同意前往抚署但要求便衣。\n高绍殷赞赏老残藏书。\n老残同意随高绍殷前往抚署面见宫保。\n高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随。\n\n## 场次06 张宫保求教河工治理的对话\n\n场面落在抚署、宫保签押房，出场人物有差官。\n这一场先把老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法推到台前。\n场面里先见老残随高绍殷进入抚署的路径与场景转换，紧跟着把张宫保的出场与外貌（魁梧、仁厚）压出来。\n临到场尾，老残提出“王景”的名字并简要阐述其理念。\n本场推进：老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法，理念冲突：张宫保（及主流）推崇的贾让“不与河争地”策略，与老残提出的王景“抑”字诀治河古法之间的根本对立，老残提出“王景”的名字并简要阐述其理念。\n场面目标：建立老残与张宫保的初次正式关系，将抽象的“河工”议题具体化为“贾让”与“王景”的治河理念之争，为后续情节埋下伏笔。\n必留动作：老残随高绍殷进入抚署的路径与场景转换；张宫保的出场与外貌（魁梧、仁厚）；张宫保求教河工治理的对话；老残对贾让与王景治河策略的对比分析；老残承诺呈递说帖。\n连续抓手：老残的衣着（随身穿戴）；高绍殷作为引荐人的角色；张宫保对河工问题的焦虑感；对话逻辑：从客套到具体议题。\n前后承接上，要把老残的衣着（随身穿戴）与高绍殷作为引荐人的角色继续压在同一股气口里。\n\n（抚署）\n老残盯住张宫保不放，非要追问出王景。\n张宫保的出场与外貌。\n老残对贾让与王景治河策略的对比分析。\n老残：王景。\n老残承诺呈递说帖。\n\n## 场次07 宫保邀请老残入住南书房\n\n场面落在抚署，出场人物有老残、宫保、高公。\n这一场先把宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙推到台前。\n场面里先见宫保邀请老残入住南书房，紧跟着把老残以探亲为由婉拒压出来。\n临到场尾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n本场推进：宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙，宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n场面目标：通过核心对话，明确老残的下一步行动（前往曹州），同时刻画宫保对其的重视与老残的自主性，建立角色间的张力与期待。\n必留动作：宫保邀请老残入住南书房；老残以探亲为由婉拒；老残提及将去曹州并考察玉守；宫保神色怏怏；老残告辞离开。\n连续抓手：紧接上一场景（S0014）的对话氛围；保持老残与宫保的角色状态连续性；维持叙事顺序与故事顺序差（order_delta: -2）\n前后承接上，要把紧接上一场景（S0014）的对话氛围与保持老残与宫保的角色状态连续性继续压在同一股气口里。\n\n（抚署）\n宫保：等鄙人从曹州回来，再领宫保的教罢。\n宫保邀请老残入住南书房。\n老残以探亲为由婉拒。\n老残提及将去曹州并考察玉守。\n老残：等鄙人从曹州回来，再领宫保的教罢。\n宫保站在人堆里，脸色一下子就绷住了。\n宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾。\n\n## 场次08 【传闻】老残否认抚台邀请的对话\n\n这一场属于传闻时间层，场面落在客栈，出场人物有茶房、差官。\n这一场先把老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席推到台前。\n场面里先见老残否认抚台邀请的对话，紧跟着把掌柜转述抚台催促的细节压出来。\n临到场尾，差官不仅送来酒席，更传达“打扫南书房”的明确指令。\n本场推进：老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席，老残的自我认知（普通访客）与外界对他的看法（被抚台、宫保争相礼遇的贵人）之间的错位与矛盾。\n场面目标：通过对话和动作，生动展现老残从被传言包围到收到宫保实质性礼遇的转变，为后续进入宫保府邸做铺垫，并强化老残低调、谨慎的性格。\n必留动作：老残否认抚台邀请的对话；掌柜转述抚台催促的细节；差官送礼并传达打扫南书房之命。\n连续抓手：时间：傍晚；地点：客栈；角色：老残、掌柜、差官、茶房；保持“传言”与“现实”的对比节奏。\n前后承接上，要把傍晚与客栈继续压在同一股气口里。\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。",
      "episode_upload_char_count": 4916,
      "source_ref": {
        "episode_ids": [
          "EP0002"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "episode_id": "EP0003",
      "episode_index": 3,
      "title": "第03集 于朝栋说出‘亲家救我’并流泪",
      "logline": "老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。",
      "summary": "通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。",
      "opening_hook": "刻画老残作为“铁老爷”初受官场礼遇的场景。",
      "ending_hook": "于朝栋说出‘亲家救我’并流泪。",
      "block_count": 5,
      "block_ids": [
        "EP0003B001",
        "EP0003B002",
        "EP0003B003",
        "EP0003B004",
        "EP0003B005"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "time_modes": [
        "mainline"
      ],
      "character_names": [
        "玉贤",
        "差官",
        "老董",
        "茶房",
        "三人"
      ],
      "character_display_names": [
        "玉贤",
        "差官",
        "老董",
        "茶房",
        "三人"
      ],
      "character_entity_uids": [
        "E000049",
        "E000048",
        "E000052",
        "E000024",
        "E000014"
      ],
      "location_names": [
        "客栈房间",
        "客店",
        "济南",
        "雒口",
        "船上",
        "董家口",
        "城外",
        "于家屯"
      ],
      "location_display_names": [
        "客栈房间",
        "客店",
        "济南",
        "雒口",
        "船上",
        "董家口",
        "城外",
        "于家屯"
      ],
      "location_entity_uids": [
        "E000058"
      ],
      "episode_markdown": "# 第03集 于朝栋说出‘亲家救我’并流泪\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\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玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
      "episode_upload_markdown": "# 第03集 于朝栋说出‘亲家救我’并流泪\n\n本集围绕玉贤、差官、老董、茶房、三人展开，主要场面落在客栈房间、客店、济南、雒口、船上、董家口、城外、于家屯。老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。\n本集看点集中在“刻画老残作为“铁老爷”初受官场礼遇的场景。”，并收在“于朝栋说出‘亲家救我’并流泪。”。\n\n## 场次01 老残为差官倒茶\n\n场面落在客栈房间、客店，出场人物有茶房、差官。\n这一场先把老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开推到台前。\n场面里先见老残为差官倒茶，紧跟着把差官传达宫保安排南书房入住压出来。\n临到场尾，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n本场推进：老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开，老残的个人原则与即将面临的官场人情、利益诱惑之间的潜在冲突，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n场面目标：通过一系列礼节性互动，刻画老残作为“铁老爷”初受官场礼遇的场景，同时埋下被奉承和劝捐的伏笔，展现其身处漩涡边缘的微妙处境。\n必留动作：老残为差官倒茶；差官传达宫保安排南书房入住；老残写领谢帖子并送客至大门；武巡捕传抚台邀请；掌柜恭维抚台送席。\n连续抓手：承接上一场景（S0016）老残收到礼物的情绪；保持老残从容、客气但保持距离的人物基调；场景从房间内过渡到客店大堂。\n前后承接上，要把承接上一场景（S0016）老残收到礼物…与保持老残从容、客气但保持距离的人物基调继续压在同一股气口里。\n\n（客栈房间）\n老残为差官倒茶。\n老残写领谢帖子并送客至大门。\n张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n掌柜恭维抚台送席。\n老残：铁老爷。\n\n## 场次02 老残为避纠缠连夜离济\n\n场面落在济南、雒口、船上、董家口，出场人物有老董、玉贤。\n这一场先把老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严推到台前。\n场面里先见老残为避纠缠连夜离济，紧跟着把乘船数日抵达董家口压出来。\n临到场尾，老董说出“玉大人倒反做了強盜的兵器了”\n本场推进：老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严，表面冲突：老残打听与老董讲述，老董说出“玉大人倒反做了強盜的兵器了”，这是对玉贤“清官”形象的颠覆性评价，也是后续所有悲剧的根源揭示。\n场面目标：完成场景转换（济南到曹州），并通过关键对话，首次向观众（和老残）揭示核心冲突人物玉贤的矛盾性与危险性，建立悬疑感。\n必留动作：老残为避纠缠连夜离济；乘船数日抵达董家口；老残向老董打听玉贤政绩；老董叹息并讲述玉贤办案严酷反成强盗工具。\n连续抓手：老残从济南到曹州府的行动线；玉贤作为未出场但关键人物的首次侧面塑造。\n前后承接上，要把老残从济南到曹州府的行动线与玉贤作为未出场但关键人物的首次侧面塑造继续压在同一股气口里。\n\n（济南）\n玉贤：玉大人倒反做了強盜的兵器了。\n老残为避纠缠连夜离济。\n乘船数日抵达董家口。\n老残向老董打听玉贤政绩。\n老董叹息并讲述玉贤办案严酷反成强盗工具。\n老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严。\n老董：玉大人倒反做了強盜的兵器了。\n\n## 场次03 玉贤率马队追击\n\n场面落在城外、于家屯，出场人物有玉贤。\n这一场先把老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近推到台前。\n场面里先见玉贤率马队追击，紧跟着把强盗持火把与洋枪压出来。\n临到场尾，追至于家屯时，火光与枪声骤然消失，追捕线索中断。\n本场推进：老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近，玉贤（秩序/追捕方）与未知强盗（混乱/逃亡方）在夜色中的追逐对抗，追至于家屯时，火光与枪声骤然消失，追捕线索中断，行动从主动追击转入被动搜寻。\n场面目标：用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n必留动作：玉贤率马队追击；强盗持火把与洋枪；循火光与枪声追踪；追至于家屯附近时目标消失。\n连续抓手：紧接前序追捕场景（S0018）；保持夜间至天明的时序；玉贤人物状态（愤怒、追击）的连贯。\n前后承接上，要把紧接前序追捕场景（S0018）与保持夜间至天明的时序继续压在同一股气口里。\n\n（城外）\n玉贤率马队追击。\n强盗持火把与洋枪。\n循火光与枪声追踪。\n追至于家屯附近时目标消失。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面。\n老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n\n## 场次04 玉贤率马队夜间追捕强盗的火光与枪声…\n\n出场人物有玉贤。\n这一场先把玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子推到台前。\n场面里先见玉贤率马队夜间追捕强盗的火光与枪声线索，紧跟着把玉贤判断强盗藏匿于村庄并下令封锁压出来。\n临到场尾，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n本场推进：玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子，玉贤追捕强盗的执法行动 vs. 于家父子自称良民、私藏武器仅为自保的辩解，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n场面目标：通过一场紧张的追捕与审问戏，生动刻画玉贤雷厉风行但可能过于武断的执法者形象，同时将于家父子卷入冤案漩涡。\n必留动作：玉贤率马队夜间追捕强盗的火光与枪声线索；玉贤判断强盗藏匿于村庄并下令封锁；从于朝栋家搜出土枪、刀、竿子等物证；玉贤审问于家父子，质问藏匿强盗与私藏军器。\n连续抓手：保持夜间至天明的时序过渡；玉贤角色形象（威严、果断）的连贯性；空间连续性：从野外追捕到进入于家屯村庄。\n前后承接上，要把保持夜间至天明的时序过渡与玉贤角色形象（威严、果断）的连贯性继续压在同一股气口里。\n\n玉大人：我不是逞强，只是不肯糊里糊涂退下去。\n玉贤判断强盗藏匿于村庄并下令封锁。\n从于朝栋家搜出土枪、刀、竿子等物证。\n玉贤审问于家父子，质问藏匿强盗与私藏军器。\n玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子。\n\n## 场次05 玉贤搜查于家并发现可疑衣物\n\n场面落在撫署，出场人物有玉贤、三人。\n这一场先把玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助推到台前。\n场面里先见玉贤搜查于家并发现可疑衣物，紧跟着把玉贤将于家父子押回城压出来。\n临到场尾，于朝栋说出‘亲家救我’并流泪。\n本场推进：玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助，玉贤的武断强权与于家父子的无辜蒙冤之间的直接冲突，平民百姓（吴氏）试图通过合法途径（求助举人父亲）对抗不公司法体系的结构性冲突，于朝栋说出‘亲家救我’并流泪。\n场面目标：完整呈现玉贤如何基于微小且可疑的证据（衣物）武断定罪，展现其滥用职权，同时引出受害者家属（吴氏）的反抗与求助。\n必留动作：玉贤搜查于家并发现可疑衣物；玉贤将于家父子押回城；吴氏进城向父亲吴举人求助；吴举人求见玉贤被拒；吴举人东门焦急等待。\n连续抓手：玉贤的官员形象与行事风格需连贯；于家父子的无辜状态需明确；时间线：搜查（白天）-> 押解进城（傍晚至二更天）-> 吴氏求助（一更多天）；于家父子状态需与上场景被捕衔接。\n前后承接上，要把玉贤的官员形象与行事风格需连贯与于家父子的无辜状态需明确继续压在同一股气口里。\n\n（撫署）\n吴举人东门守在外头来回踱步，只等里面递出一句“亲家救我”的准话。\n差人：亲家救我。\n玉贤搜查于家并发现可疑衣物。\n玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
      "episode_upload_char_count": 3284,
      "source_ref": {
        "episode_ids": [
          "EP0003"
        ],
        "block_ids": [],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "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": "E000001",
      "name": "老残",
      "canonical_name": "老残",
      "display_name": "老残",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "铁英",
        "补残",
        "残哥",
        "铁先生",
        "铁老爷",
        "铁公",
        "铁爷"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "core",
      "priority": "P0",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B001",
        "EP0001B005",
        "EP0002B005",
        "EP0002B007"
      ],
      "visual_card_id": "VC000001",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "名叫老残，原姓铁，单名一个英字，号补残",
            "老残心裡想道"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：老残 / 铁英 / 补残 / 残哥 / 铁先生 / 铁老爷 / 铁公",
        "常见关联对象：文章伯、德慧生、登州",
        "已处理文本出现范围：C0001 -> C0009"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "unknown",
        "voice_anchor_summary": "老残；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "core",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "老残穿着随身衣服，同高绍殷进了抚署"
        ],
        "owner_candidates": [
          "文章伯",
          "德慧生",
          "登州",
          "蓬莱阁"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:wounded",
          "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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B005",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "VC000001",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      }
    },
    {
      "entity_uid": "E000014",
      "name": "三人",
      "canonical_name": "三人",
      "display_name": "三人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003",
        "EP0001B004",
        "EP0003B005"
      ],
      "visual_card_id": "VC000014",
      "voice_card_id": "VO000014",
      "asset_binding_id": "AB000014",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "三人，角色姓名",
      "visual_anchor_summary": "三人，角色姓名",
      "design_keywords": [
        "三人",
        "角色姓名",
        "老残等三人",
        "當時三人便將帆葉落小"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000014:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残等三人"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：渔船、远镜、罗盘",
        "已处理文本出现范围：C0003 -> C0003"
      ],
      "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": "VO000014:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000014:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000014:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "渔船",
          "远镜",
          "罗盘",
          "文章伯"
        ],
        "variant_keys": [
          "VC000014:costume:default",
          "VC000014:state:wounded",
          "VO000014:default",
          "VO000014:low",
          "VO000014: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、EP0003\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",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003",
          "EP0001B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000014",
        "visual_card_id": "VC000014",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014"
      }
    },
    {
      "entity_uid": "E000023",
      "name": "白妞",
      "canonical_name": "白妞",
      "display_name": "白妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "王小玉"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "王小玉"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B005",
        "EP0001B006",
        "EP0002B001",
        "EP0002B002"
      ],
      "visual_card_id": "VC000023",
      "voice_card_id": "VO000023",
      "asset_binding_id": "AB000023",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "白妞，后称王小玉",
      "visual_anchor_summary": "王小玉便启朱唇，发皓齿",
      "design_keywords": [
        "白妞",
        "王小玉便启朱唇，发皓齿",
        "说书艺人"
      ],
      "design_prompt_fragments": [
        "王小玉便启朱唇，发皓齿"
      ],
      "appearance_core": [
        "王小玉便启朱唇，发皓齿"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000023:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "王小玉便启朱唇，发皓齿"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：白妞 / 王小玉",
        "常见关联对象：说书本事、黑妞、明湖居",
        "已处理文本出现范围：C0004 -> C0005"
      ],
      "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": "VO000023:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000023:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000023:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "说书本事",
          "黑妞",
          "明湖居"
        ],
        "variant_keys": [
          "VC000023:costume:default",
          "VO000023:default",
          "VO000023:low",
          "VO000023: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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B005",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000023",
        "visual_card_id": "VC000023",
        "voice_card_id": "VO000023",
        "asset_binding_id": "AB000023"
      }
    },
    {
      "entity_uid": "E000043",
      "name": "宫保",
      "canonical_name": "宫保",
      "display_name": "宫保",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "张宫保",
        "抚台",
        "抚台大人"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B007"
      ],
      "visual_card_id": "VC000043",
      "voice_card_id": "VO000043",
      "asset_binding_id": "AB000043",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：宫保 / 张宫保 / 抚台 / 抚台大人",
        "常见关联对象：姚云翁、高公、老残",
        "已处理文本出现范围：C0007 -> C0009"
      ],
      "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": "VO000043:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000043:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000043:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "姚云翁",
          "高公",
          "老残"
        ],
        "variant_keys": [
          "VC000043:costume:default",
          "VO000043:default",
          "VO000043:low",
          "VO000043: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000043",
        "visual_card_id": "VC000043",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043"
      }
    },
    {
      "entity_uid": "E000006",
      "name": "德慧生",
      "canonical_name": "德慧生",
      "display_name": "德慧生",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "慧生",
        "慧哥"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "慧生",
        "慧哥"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "visual_card_id": "VC000006",
      "voice_card_id": "VO000006",
      "asset_binding_id": "AB000006",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "德慧生，主要角色",
      "visual_anchor_summary": "德慧生，主要角色",
      "design_keywords": [
        "德慧生",
        "老残朋友",
        "一个叫德慧生",
        "慧生還拿遠鏡左右觀視"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000006:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残朋友"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：德慧生 / 慧生 / 慧哥",
        "常见关联对象：老残、文章伯",
        "已处理文本出现范围：C0001 -> C0003"
      ],
      "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": "VO000006:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000006:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000006:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "文章伯"
        ],
        "variant_keys": [
          "VC000006:costume:default",
          "VC000006:state:wounded",
          "VO000006:default",
          "VO000006:low",
          "VO000006: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000006",
        "visual_card_id": "VC000006",
        "voice_card_id": "VO000006",
        "asset_binding_id": "AB000006"
      }
    },
    {
      "entity_uid": "E000005",
      "name": "文章伯",
      "canonical_name": "文章伯",
      "display_name": "文章伯",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "章伯"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "章伯"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "visual_card_id": "VC000005",
      "voice_card_id": "VO000005",
      "asset_binding_id": "AB000005",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "文章伯，主要角色",
      "visual_anchor_summary": "文章伯，主要角色",
      "design_keywords": [
        "文章伯",
        "老残朋友",
        "一个叫文章伯",
        "章伯看得親切"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000005:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残朋友"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：文章伯 / 章伯",
        "常见关联对象：老残、德慧生、三人",
        "已处理文本出现范围：C0001 -> C0003"
      ],
      "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": "VO000005:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000005:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000005:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "德慧生",
          "三人"
        ],
        "variant_keys": [
          "VC000005:costume:default",
          "VC000005:state:wounded",
          "VO000005:default",
          "VO000005:low",
          "VO000005: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000005",
        "visual_card_id": "VC000005",
        "voice_card_id": "VO000005",
        "asset_binding_id": "AB000005"
      }
    },
    {
      "entity_uid": "E000049",
      "name": "玉贤",
      "canonical_name": "玉贤",
      "display_name": "玉贤",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "玉大人",
        "大人"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "玉大人",
        "大人"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002",
        "EP0003B003",
        "EP0003B004",
        "EP0003B005"
      ],
      "visual_card_id": "VC000049",
      "voice_card_id": "VO000049",
      "asset_binding_id": "AB000049",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：玉贤 / 玉大人 / 大人",
        "常见关联对象：于家屯、于学礼、于家父子",
        "已处理文本出现范围：C0009 -> C0011"
      ],
      "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": "VO000049:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000049:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000049:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "于家屯",
          "于学礼",
          "于家父子"
        ],
        "variant_keys": [
          "VC000049:costume:default",
          "VO000049:default",
          "VO000049:low",
          "VO000049: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主要出现集次：EP0003\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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002",
          "EP0003B003",
          "EP0003B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000049",
        "visual_card_id": "VC000049",
        "voice_card_id": "VO000049",
        "asset_binding_id": "AB000049"
      }
    },
    {
      "entity_uid": "E000040",
      "name": "高公",
      "canonical_name": "高公",
      "display_name": "高公",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "高绍殷",
        "高大老爷"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003",
        "EP0002B004",
        "EP0002B005",
        "EP0002B007"
      ],
      "visual_card_id": "VC000040",
      "voice_card_id": "VO000040",
      "asset_binding_id": "AB000040",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：高公 / 高绍殷 / 高大老爷",
        "常见关联对象：老残、宫保",
        "已处理文本出现范围：C0007 -> C0009"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "unknown",
        "voice_anchor_summary": "高公；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000040:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000040:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000040:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "宫保"
        ],
        "variant_keys": [
          "VC000040:costume:default",
          "VO000040:default",
          "VO000040:low",
          "VO000040: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003",
          "EP0002B004",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000040",
        "visual_card_id": "VC000040",
        "voice_card_id": "VO000040",
        "asset_binding_id": "AB000040"
      }
    },
    {
      "entity_uid": "E000048",
      "name": "差官",
      "canonical_name": "差官",
      "display_name": "差官",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "那人",
        "武巡捕赫大老爺"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "那人"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0003",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0003",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0003",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B003",
        "EP0002B001",
        "EP0002B003",
        "EP0002B006",
        "EP0002B008",
        "EP0003B001"
      ],
      "visual_card_id": "VC000048",
      "voice_card_id": "VO000048",
      "asset_binding_id": "AB000048",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：差官 / 那人 / 武巡捕赫大老爺",
        "常见关联对象：老残",
        "已处理文本出现范围：C0008 -> C0009"
      ],
      "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": "VO000048:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000048:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000048:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000048:costume:default",
          "VO000048:default",
          "VO000048:low",
          "VO000048: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、EP0002、EP0003\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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0002B001",
          "EP0002B003",
          "EP0002B006",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0003",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0003",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0003",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000048",
        "visual_card_id": "VC000048",
        "voice_card_id": "VO000048",
        "asset_binding_id": "AB000048"
      }
    },
    {
      "entity_uid": "E000024",
      "name": "茶房",
      "canonical_name": "茶房",
      "display_name": "茶房",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B003",
        "EP0002B008",
        "EP0003B001"
      ],
      "visual_card_id": "VC000024",
      "voice_card_id": "VO000024",
      "asset_binding_id": "AB000024",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老残",
        "已处理文本出现范围：C0008 -> C0009"
      ],
      "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": "VO000024:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000024:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000024:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000024:costume:default",
          "VO000024:default",
          "VO000024:low",
          "VO000024: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主要出现集次：EP0001、EP0002、EP0003\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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B003",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000024",
        "visual_card_id": "VC000024",
        "voice_card_id": "VO000024",
        "asset_binding_id": "AB000024"
      }
    },
    {
      "entity_uid": "E000026",
      "name": "黑妞",
      "canonical_name": "黑妞",
      "display_name": "黑妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B002"
      ],
      "visual_card_id": "VC000026",
      "voice_card_id": "VO000026",
      "asset_binding_id": "AB000026",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：梨花简、说书本事、白妞",
        "已处理文本出现范围：C0005 -> C0005"
      ],
      "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": "VO000026:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000026:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000026:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000026:costume:default",
          "VO000026:default",
          "VO000026:low",
          "VO000026: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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000026",
        "visual_card_id": "VC000026",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026"
      }
    },
    {
      "entity_uid": "E000038",
      "name": "士子",
      "canonical_name": "士子",
      "display_name": "士子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000038",
      "voice_card_id": "VO000038",
      "asset_binding_id": "AB000038",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "士子：书生",
      "visual_anchor_summary": "书生",
      "design_keywords": [
        "士子",
        "书生",
        "讲解者",
        "后来幸而走过一个士子来"
      ],
      "design_prompt_fragments": [
        "书生"
      ],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000038:state:age",
          "label": "青年感",
          "variant_type": "age",
          "signals": [
            "青年感"
          ],
          "evidence": [
            "书生"
          ],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老残",
        "已处理文本出现范围：C0006 -> C0006"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "young_adult",
        "voice_anchor_summary": "士子；角色 / 未知性别呈现 / 青年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持青年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "青年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000038:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000038:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000038:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000038:costume:default",
          "VC000038:state:age",
          "VO000038:default",
          "VO000038:low",
          "VO000038: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000038",
        "visual_card_id": "VC000038",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038"
      }
    },
    {
      "entity_uid": "E000052",
      "name": "老董",
      "canonical_name": "老董",
      "display_name": "老董",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "visual_card_id": "VC000052",
      "voice_card_id": "VO000052",
      "asset_binding_id": "AB000052",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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": "VO000052:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000052:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000052: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": [
          "VO000052:default",
          "VO000052:low",
          "VO000052: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主要出现集次：EP0003\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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000052",
        "visual_card_id": "VC000052",
        "voice_card_id": "VO000052",
        "asset_binding_id": "AB000052"
      }
    },
    {
      "entity_uid": "E000004",
      "name": "黄瑞和",
      "canonical_name": "黄瑞和",
      "display_name": "黄瑞和",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "黄大户"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B001"
      ],
      "visual_card_id": "VC000004",
      "voice_card_id": "VO000004",
      "asset_binding_id": "AB000004",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "黄瑞和，功能角色",
      "visual_anchor_summary": "黄瑞和，功能角色",
      "design_keywords": [
        "黄瑞和",
        "病人",
        "有个大户，姓黄，名叫瑞和…"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000004:state:weak",
          "label": "虚弱态",
          "variant_type": "weak",
          "signals": [
            "病"
          ],
          "evidence": [
            "病人",
            "有个大户，姓黄，名叫瑞和，害了一个奇病"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "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": "VO000004:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000004:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000004: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": [
          "VC000004:costume:default",
          "VC000004:state:weak",
          "VO000004:default",
          "VO000004:low",
          "VO000004: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",
      "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": [
          "EP0001B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000004",
        "visual_card_id": "VC000004",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004"
      }
    }
  ],
  "characters": [
    {
      "entity_uid": "E000001",
      "name": "老残",
      "canonical_name": "老残",
      "display_name": "老残",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "铁英",
        "补残",
        "残哥",
        "铁先生",
        "铁老爷",
        "铁公",
        "铁爷"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "core",
      "priority": "P0",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B001",
        "EP0001B005",
        "EP0002B005",
        "EP0002B007"
      ],
      "visual_card_id": "VC000001",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "名叫老残，原姓铁，单名一个英字，号补残",
            "老残心裡想道"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：老残 / 铁英 / 补残 / 残哥 / 铁先生 / 铁老爷 / 铁公",
        "常见关联对象：文章伯、德慧生、登州",
        "已处理文本出现范围：C0001 -> C0009"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "unknown",
        "voice_anchor_summary": "老残；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "core",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "老残穿着随身衣服，同高绍殷进了抚署"
        ],
        "owner_candidates": [
          "文章伯",
          "德慧生",
          "登州",
          "蓬莱阁"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:wounded",
          "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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B005",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "VC000001",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      }
    },
    {
      "entity_uid": "E000014",
      "name": "三人",
      "canonical_name": "三人",
      "display_name": "三人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003",
        "EP0001B004",
        "EP0003B005"
      ],
      "visual_card_id": "VC000014",
      "voice_card_id": "VO000014",
      "asset_binding_id": "AB000014",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "三人，角色姓名",
      "visual_anchor_summary": "三人，角色姓名",
      "design_keywords": [
        "三人",
        "角色姓名",
        "老残等三人",
        "當時三人便將帆葉落小"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000014:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残等三人"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：渔船、远镜、罗盘",
        "已处理文本出现范围：C0003 -> C0003"
      ],
      "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": "VO000014:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000014:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000014:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "渔船",
          "远镜",
          "罗盘",
          "文章伯"
        ],
        "variant_keys": [
          "VC000014:costume:default",
          "VC000014:state:wounded",
          "VO000014:default",
          "VO000014:low",
          "VO000014: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、EP0003\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",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003",
          "EP0001B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000014",
        "visual_card_id": "VC000014",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014"
      }
    },
    {
      "entity_uid": "E000023",
      "name": "白妞",
      "canonical_name": "白妞",
      "display_name": "白妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "王小玉"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "王小玉"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B005",
        "EP0001B006",
        "EP0002B001",
        "EP0002B002"
      ],
      "visual_card_id": "VC000023",
      "voice_card_id": "VO000023",
      "asset_binding_id": "AB000023",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "白妞，后称王小玉",
      "visual_anchor_summary": "王小玉便启朱唇，发皓齿",
      "design_keywords": [
        "白妞",
        "王小玉便启朱唇，发皓齿",
        "说书艺人"
      ],
      "design_prompt_fragments": [
        "王小玉便启朱唇，发皓齿"
      ],
      "appearance_core": [
        "王小玉便启朱唇，发皓齿"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000023:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "王小玉便启朱唇，发皓齿"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：白妞 / 王小玉",
        "常见关联对象：说书本事、黑妞、明湖居",
        "已处理文本出现范围：C0004 -> C0005"
      ],
      "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": "VO000023:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000023:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000023:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "说书本事",
          "黑妞",
          "明湖居"
        ],
        "variant_keys": [
          "VC000023:costume:default",
          "VO000023:default",
          "VO000023:low",
          "VO000023: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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B005",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000023",
        "visual_card_id": "VC000023",
        "voice_card_id": "VO000023",
        "asset_binding_id": "AB000023"
      }
    },
    {
      "entity_uid": "E000043",
      "name": "宫保",
      "canonical_name": "宫保",
      "display_name": "宫保",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "张宫保",
        "抚台",
        "抚台大人"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B007"
      ],
      "visual_card_id": "VC000043",
      "voice_card_id": "VO000043",
      "asset_binding_id": "AB000043",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：宫保 / 张宫保 / 抚台 / 抚台大人",
        "常见关联对象：姚云翁、高公、老残",
        "已处理文本出现范围：C0007 -> C0009"
      ],
      "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": "VO000043:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000043:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000043:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "姚云翁",
          "高公",
          "老残"
        ],
        "variant_keys": [
          "VC000043:costume:default",
          "VO000043:default",
          "VO000043:low",
          "VO000043: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000043",
        "visual_card_id": "VC000043",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043"
      }
    },
    {
      "entity_uid": "E000006",
      "name": "德慧生",
      "canonical_name": "德慧生",
      "display_name": "德慧生",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "慧生",
        "慧哥"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "慧生",
        "慧哥"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "visual_card_id": "VC000006",
      "voice_card_id": "VO000006",
      "asset_binding_id": "AB000006",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "德慧生，主要角色",
      "visual_anchor_summary": "德慧生，主要角色",
      "design_keywords": [
        "德慧生",
        "老残朋友",
        "一个叫德慧生",
        "慧生還拿遠鏡左右觀視"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000006:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残朋友"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：德慧生 / 慧生 / 慧哥",
        "常见关联对象：老残、文章伯",
        "已处理文本出现范围：C0001 -> C0003"
      ],
      "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": "VO000006:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000006:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000006:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "文章伯"
        ],
        "variant_keys": [
          "VC000006:costume:default",
          "VC000006:state:wounded",
          "VO000006:default",
          "VO000006:low",
          "VO000006: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000006",
        "visual_card_id": "VC000006",
        "voice_card_id": "VO000006",
        "asset_binding_id": "AB000006"
      }
    },
    {
      "entity_uid": "E000005",
      "name": "文章伯",
      "canonical_name": "文章伯",
      "display_name": "文章伯",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "章伯"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "章伯"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "visual_card_id": "VC000005",
      "voice_card_id": "VO000005",
      "asset_binding_id": "AB000005",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "文章伯，主要角色",
      "visual_anchor_summary": "文章伯，主要角色",
      "design_keywords": [
        "文章伯",
        "老残朋友",
        "一个叫文章伯",
        "章伯看得親切"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000005:state:wounded",
          "label": "伤损态",
          "variant_type": "wounded",
          "signals": [
            "残"
          ],
          "evidence": [
            "老残朋友"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：文章伯 / 章伯",
        "常见关联对象：老残、德慧生、三人",
        "已处理文本出现范围：C0001 -> C0003"
      ],
      "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": "VO000005:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000005:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000005:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "德慧生",
          "三人"
        ],
        "variant_keys": [
          "VC000005:costume:default",
          "VC000005:state:wounded",
          "VO000005:default",
          "VO000005:low",
          "VO000005: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000005",
        "visual_card_id": "VC000005",
        "voice_card_id": "VO000005",
        "asset_binding_id": "AB000005"
      }
    },
    {
      "entity_uid": "E000049",
      "name": "玉贤",
      "canonical_name": "玉贤",
      "display_name": "玉贤",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "玉大人",
        "大人"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "玉大人",
        "大人"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002",
        "EP0003B003",
        "EP0003B004",
        "EP0003B005"
      ],
      "visual_card_id": "VC000049",
      "voice_card_id": "VO000049",
      "asset_binding_id": "AB000049",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：玉贤 / 玉大人 / 大人",
        "常见关联对象：于家屯、于学礼、于家父子",
        "已处理文本出现范围：C0009 -> C0011"
      ],
      "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": "VO000049:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000049:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000049:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "于家屯",
          "于学礼",
          "于家父子"
        ],
        "variant_keys": [
          "VC000049:costume:default",
          "VO000049:default",
          "VO000049:low",
          "VO000049: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主要出现集次：EP0003\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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002",
          "EP0003B003",
          "EP0003B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000049",
        "visual_card_id": "VC000049",
        "voice_card_id": "VO000049",
        "asset_binding_id": "AB000049"
      }
    },
    {
      "entity_uid": "E000040",
      "name": "高公",
      "canonical_name": "高公",
      "display_name": "高公",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "高绍殷",
        "高大老爷"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003",
        "EP0002B004",
        "EP0002B005",
        "EP0002B007"
      ],
      "visual_card_id": "VC000040",
      "voice_card_id": "VO000040",
      "asset_binding_id": "AB000040",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：高公 / 高绍殷 / 高大老爷",
        "常见关联对象：老残、宫保",
        "已处理文本出现范围：C0007 -> C0009"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "unknown",
        "voice_anchor_summary": "高公；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000040:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000040:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000040:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "宫保"
        ],
        "variant_keys": [
          "VC000040:costume:default",
          "VO000040:default",
          "VO000040:low",
          "VO000040: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003",
          "EP0002B004",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000040",
        "visual_card_id": "VC000040",
        "voice_card_id": "VO000040",
        "asset_binding_id": "AB000040"
      }
    },
    {
      "entity_uid": "E000048",
      "name": "差官",
      "canonical_name": "差官",
      "display_name": "差官",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "那人",
        "武巡捕赫大老爺"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [
        "那人"
      ],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0003",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0003",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0003",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B003",
        "EP0002B001",
        "EP0002B003",
        "EP0002B006",
        "EP0002B008",
        "EP0003B001"
      ],
      "visual_card_id": "VC000048",
      "voice_card_id": "VO000048",
      "asset_binding_id": "AB000048",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：差官 / 那人 / 武巡捕赫大老爺",
        "常见关联对象：老残",
        "已处理文本出现范围：C0008 -> C0009"
      ],
      "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": "VO000048:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000048:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000048:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000048:costume:default",
          "VO000048:default",
          "VO000048:low",
          "VO000048: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、EP0002、EP0003\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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0002B001",
          "EP0002B003",
          "EP0002B006",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0003",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0003",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0003",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000048",
        "visual_card_id": "VC000048",
        "voice_card_id": "VO000048",
        "asset_binding_id": "AB000048"
      }
    },
    {
      "entity_uid": "E000024",
      "name": "茶房",
      "canonical_name": "茶房",
      "display_name": "茶房",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B003",
        "EP0002B008",
        "EP0003B001"
      ],
      "visual_card_id": "VC000024",
      "voice_card_id": "VO000024",
      "asset_binding_id": "AB000024",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老残",
        "已处理文本出现范围：C0008 -> C0009"
      ],
      "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": "VO000024:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000024:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000024:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000024:costume:default",
          "VO000024:default",
          "VO000024:low",
          "VO000024: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主要出现集次：EP0001、EP0002、EP0003\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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B003",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000024",
        "visual_card_id": "VC000024",
        "voice_card_id": "VO000024",
        "asset_binding_id": "AB000024"
      }
    },
    {
      "entity_uid": "E000026",
      "name": "黑妞",
      "canonical_name": "黑妞",
      "display_name": "黑妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B002"
      ],
      "visual_card_id": "VC000026",
      "voice_card_id": "VO000026",
      "asset_binding_id": "AB000026",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：梨花简、说书本事、白妞",
        "已处理文本出现范围：C0005 -> C0005"
      ],
      "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": "VO000026:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000026:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000026:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000026:costume:default",
          "VO000026:default",
          "VO000026:low",
          "VO000026: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、EP0002\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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000026",
        "visual_card_id": "VC000026",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026"
      }
    },
    {
      "entity_uid": "E000038",
      "name": "士子",
      "canonical_name": "士子",
      "display_name": "士子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000038",
      "voice_card_id": "VO000038",
      "asset_binding_id": "AB000038",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "士子：书生",
      "visual_anchor_summary": "书生",
      "design_keywords": [
        "士子",
        "书生",
        "讲解者",
        "后来幸而走过一个士子来"
      ],
      "design_prompt_fragments": [
        "书生"
      ],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000038:state:age",
          "label": "青年感",
          "variant_type": "age",
          "signals": [
            "青年感"
          ],
          "evidence": [
            "书生"
          ],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：老残",
        "已处理文本出现范围：C0006 -> C0006"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "young_adult",
        "voice_anchor_summary": "士子；角色 / 未知性别呈现 / 青年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持青年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "青年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000038:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000038:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000038:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
          "VC000038:costume:default",
          "VC000038:state:age",
          "VO000038:default",
          "VO000038:low",
          "VO000038: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主要出现集次：EP0002\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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000038",
        "visual_card_id": "VC000038",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038"
      }
    },
    {
      "entity_uid": "E000052",
      "name": "老董",
      "canonical_name": "老董",
      "display_name": "老董",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "角色姓名",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "visual_card_id": "VC000052",
      "voice_card_id": "VO000052",
      "asset_binding_id": "AB000052",
      "merge_suspect": {},
      "resolution_overlay": {},
      "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": "VO000052:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000052:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000052: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": [
          "VO000052:default",
          "VO000052:low",
          "VO000052: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主要出现集次：EP0003\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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000052",
        "visual_card_id": "VC000052",
        "voice_card_id": "VO000052",
        "asset_binding_id": "AB000052"
      }
    },
    {
      "entity_uid": "E000004",
      "name": "黄瑞和",
      "canonical_name": "黄瑞和",
      "display_name": "黄瑞和",
      "identity_conflict": {},
      "conflict_group_id": "",
      "aliases": [
        "黄大户"
      ],
      "title_aliases": [],
      "faction": "",
      "identity_notes": "",
      "disambiguation_notes": "",
      "work_entity_pool_ref": {},
      "appeared_as_names": [],
      "type": "人物",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B001"
      ],
      "visual_card_id": "VC000004",
      "voice_card_id": "VO000004",
      "asset_binding_id": "AB000004",
      "merge_suspect": {},
      "resolution_overlay": {},
      "identity_summary": "黄瑞和，功能角色",
      "visual_anchor_summary": "黄瑞和，功能角色",
      "design_keywords": [
        "黄瑞和",
        "病人",
        "有个大户，姓黄，名叫瑞和…"
      ],
      "design_prompt_fragments": [],
      "appearance_core": [],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [],
      "state_variants": [
        {
          "variant_id": "VC000004:state:weak",
          "label": "虚弱态",
          "variant_type": "weak",
          "signals": [
            "病"
          ],
          "evidence": [
            "病人",
            "有个大户，姓黄，名叫瑞和，害了一个奇病"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "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": "VO000004:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000004:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000004: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": [
          "VC000004:costume:default",
          "VC000004:state:weak",
          "VO000004:default",
          "VO000004:low",
          "VO000004: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",
      "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": [
          "EP0001B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000004",
        "visual_card_id": "VC000004",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004"
      }
    }
  ],
  "asset_ready_summary": {
    "status": "pass",
    "issue_count": 0,
    "fail_count": 0,
    "warn_count": 0,
    "info_count": 0,
    "character_count": 14,
    "priority_character_count": 6,
    "character_ready_count": 14,
    "priority_character_ready_count": 6,
    "character_primary_visual_ready_count": 14,
    "character_variant_ready_count": 14,
    "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": 31,
    "location_ready_count": 11,
    "location_visual_gap_count": 0,
    "location_scene_mapping_gap_count": 0,
    "location_manual_blocked_count": 0,
    "prop_asset_count": 3,
    "prop_ready_count": 3,
    "prop_visual_gap_count": 0,
    "prop_usage_mapping_gap_count": 0,
    "prop_manual_blocked_count": 0,
    "voice_suggestion_count": 14,
    "voice_binding_gap_count": 14,
    "voice_reference_gap_count": 14,
    "character_asset_suggestion_count": 14
  },
  "asset_ready_issues": [],
  "upload_ready_summary": {
    "status": "pass",
    "issue_count": 1,
    "fail_count": 0,
    "warn_count": 0,
    "info_count": 1,
    "episode_count": 3,
    "block_count": 19,
    "character_bio_count": 14,
    "named_episode_count": 3,
    "episode_with_summary_count": 3,
    "episode_with_opening_hook_count": 3,
    "episode_with_ending_hook_count": 3,
    "episode_with_upload_text_count": 3,
    "recommended_upload_mode": "single_file",
    "upload_script_char_count": 12486,
    "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,
    "source_screenplay_generation_status": "ok",
    "source_screenplay_blocked_block_count": 0,
    "source_screenplay_blocked_episode_count": 0,
    "source_screenplay_placeholder_block_count": 0
  },
  "upload_ready_issues": [
    {
      "code": "non_mainline_time_mode",
      "severity": "info",
      "title": "存在非主线时间层",
      "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传时建议显式标注，以免平台误解时态切换。",
      "target_type": "package",
      "target_id": "",
      "source_refs": [
        "flashback",
        "dream",
        "rumor"
      ],
      "recommended_action": "在分集标题、场次标题或正文中显式提示时间层切换。"
    }
  ],
  "skipped_unbound_character_refs": [
    {
      "name": "管事",
      "episode_ids": [
        "EP0001"
      ],
      "block_ids": [
        "EP0001B005"
      ]
    }
  ],
  "locations": [
    {
      "entity_uid": "E000046",
      "name": "抚署",
      "canonical_name": "抚署",
      "display_name": "抚署",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "location_role": "recurring_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0013",
        "S0014",
        "S0015"
      ],
      "source_group_ids": [
        "AG0011",
        "AG0012",
        "AG0013"
      ],
      "source_beat_ids": [
        "AB0011",
        "AB0012",
        "AB0013"
      ],
      "block_ids": [
        "EP0002B005",
        "EP0002B006",
        "EP0002B007"
      ],
      "visual_card_id": "VC000046",
      "asset_binding_id": "AB000046",
      "identity_summary": "明朝齐王府；官府衙门",
      "visual_anchor_summary": "老残穿着随身衣服，同高绍殷进了抚署；官府衙门",
      "design_prompt_fragments": [
        "老残穿着随身衣服，同高绍殷进了抚署；官府衙门",
        "抚署",
        "老残穿着随身衣服，同高绍殷…",
        "官府衙门",
        "明朝齐王府"
      ],
      "location_core": [
        "官府衙门",
        "明朝齐王府"
      ],
      "landmark_core": [
        "官府衙门"
      ],
      "atmosphere_core": [
        "抚署",
        "老残承诺呈递说帖。"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B005",
          "title": "高绍殷乘轿拜访老残的场景",
          "kind": "dialogue",
          "lead_scene_id": "S0013",
          "source_scene_ids": [
            "S0013"
          ],
          "source_group_ids": [
            "AG0011"
          ],
          "source_beat_ids": [
            "AB0011"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B006",
          "title": "张宫保求教河工治理的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0014",
          "source_scene_ids": [
            "S0014"
          ],
          "source_group_ids": [
            "AG0012"
          ],
          "source_beat_ids": [
            "AB0012"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B007",
          "title": "宫保邀请老残入住南书房",
          "kind": "dialogue",
          "lead_scene_id": "S0015",
          "source_scene_ids": [
            "S0015"
          ],
          "source_group_ids": [
            "AG0013"
          ],
          "source_beat_ids": [
            "AB0013"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "supporting",
        "required_visual_assets": [
          "主场景参考图"
        ],
        "optional_visual_assets": [
          "状态变体图",
          "关键地标补充图"
        ],
        "required_voice_assets": [],
        "usage_hints": [
          "老残穿着随身衣服，同高绍殷进了抚署",
          "官府衙门"
        ],
        "owner_candidates": [
          "老残",
          "吴氏",
          "吴举人",
          "差人"
        ],
        "variant_keys": [
          "VC000046:state:wounded"
        ],
        "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 集、命中 3 个剧本块，适合优先建主场景。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B005",
          "EP0002B006",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0013",
          "S0014",
          "S0015"
        ],
        "source_group_ids": [
          "AG0011",
          "AG0012",
          "AG0013"
        ],
        "source_beat_ids": [
          "AB0011",
          "AB0012",
          "AB0013"
        ],
        "entity_uid": "E000046",
        "visual_card_id": "VC000046",
        "voice_card_id": "",
        "asset_binding_id": "AB000046"
      }
    },
    {
      "entity_uid": "E000022",
      "name": "明湖居",
      "canonical_name": "明湖居",
      "display_name": "明湖居",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0006"
      ],
      "source_group_ids": [
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0006"
      ],
      "block_ids": [
        "EP0001B006"
      ],
      "visual_card_id": "VC000022",
      "asset_binding_id": "AB000022",
      "identity_summary": "大戏园子",
      "visual_anchor_summary": "明湖居",
      "design_prompt_fragments": [
        "明湖居",
        "大戏园子",
        "二十四日明湖居"
      ],
      "location_core": [
        "明湖居",
        "大戏园子",
        "二十四日明湖居",
        "满园子里的人"
      ],
      "landmark_core": [
        "二十四日明湖居"
      ],
      "atmosphere_core": [
        "明湖居"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B006",
          "title": "【闪回】老残次日前往明湖居",
          "kind": "dialogue",
          "lead_scene_id": "S0006",
          "source_scene_ids": [
            "S0006"
          ],
          "source_group_ids": [
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0006"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "supporting",
        "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": [
          "EP0001B006"
        ],
        "source_scene_ids": [
          "S0006"
        ],
        "source_group_ids": [
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0006"
        ],
        "entity_uid": "E000022",
        "visual_card_id": "VC000022",
        "voice_card_id": "",
        "asset_binding_id": "AB000022"
      }
    },
    {
      "entity_uid": "E000058",
      "name": "于家屯",
      "canonical_name": "于家屯",
      "display_name": "于家屯",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B003"
      ],
      "visual_card_id": "VC000058",
      "asset_binding_id": "AB000058",
      "identity_summary": "村庄",
      "visual_anchor_summary": "村庄",
      "design_prompt_fragments": [
        "村庄",
        "于家屯"
      ],
      "location_core": [
        "村庄"
      ],
      "landmark_core": [
        "村庄"
      ],
      "atmosphere_core": [
        "城外"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B003",
          "title": "玉贤率马队追击",
          "kind": "action",
          "lead_scene_id": "S0019",
          "source_scene_ids": [
            "S0019"
          ],
          "source_group_ids": [
            "AG0017"
          ],
          "source_beat_ids": [
            "AB0017"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000058",
        "visual_card_id": "VC000058",
        "voice_card_id": "",
        "asset_binding_id": "AB000058"
      }
    },
    {
      "entity_uid": "E000018",
      "name": "古水仙祠",
      "canonical_name": "古水仙祠",
      "display_name": "古水仙祠",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B005"
      ],
      "visual_card_id": "VC000018",
      "asset_binding_id": "AB000018",
      "identity_summary": "破旧祠堂",
      "visual_anchor_summary": "古水仙祠",
      "design_prompt_fragments": [
        "古水仙祠",
        "破旧祠堂"
      ],
      "location_core": [
        "古水仙祠",
        "破旧祠堂",
        "上题古水仙祠四个字"
      ],
      "landmark_core": [
        "古水仙祠",
        "破旧祠堂",
        "上题古水仙祠四个字"
      ],
      "atmosphere_core": [
        "古水仙祠"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B005",
          "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
          "kind": "montage",
          "lead_scene_id": "S0005",
          "source_scene_ids": [
            "S0005"
          ],
          "source_group_ids": [
            "AG0005"
          ],
          "source_beat_ids": [
            "AB0005"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0001B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000018",
        "visual_card_id": "VC000018",
        "voice_card_id": "",
        "asset_binding_id": "AB000018"
      }
    },
    {
      "entity_uid": "E000016",
      "name": "大明湖",
      "canonical_name": "大明湖",
      "display_name": "大明湖",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "山岳/洞天",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B005"
      ],
      "visual_card_id": "VC000016",
      "asset_binding_id": "AB000016",
      "identity_summary": "湖泊风景",
      "visual_anchor_summary": "大明湖",
      "design_prompt_fragments": [
        "大明湖",
        "山岳/洞天",
        "湖泊风景"
      ],
      "location_core": [
        "大明湖",
        "湖泊风景",
        "去看看大明湖的風景",
        "請幾位體面客，明兒帶到大明湖上去吃"
      ],
      "landmark_core": [
        "湖泊风景"
      ],
      "atmosphere_core": [
        "湖泊风景"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B005",
          "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
          "kind": "montage",
          "lead_scene_id": "S0005",
          "source_scene_ids": [
            "S0005"
          ],
          "source_group_ids": [
            "AG0005"
          ],
          "source_beat_ids": [
            "AB0005"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0001B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000016",
        "visual_card_id": "VC000016",
        "voice_card_id": "",
        "asset_binding_id": "AB000016"
      }
    },
    {
      "entity_uid": "E000021",
      "name": "小布政司街",
      "canonical_name": "小布政司街",
      "display_name": "小布政司街",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B005"
      ],
      "visual_card_id": "VC000021",
      "asset_binding_id": "AB000021",
      "identity_summary": "街道名",
      "visual_anchor_summary": "小布政司街",
      "design_prompt_fragments": [
        "小布政司街",
        "街道名",
        "缓缓向小布政司街走去"
      ],
      "location_core": [
        "小布政司街",
        "街道名",
        "缓缓向小布政司街走去"
      ],
      "landmark_core": [
        "小布政司街",
        "街道名",
        "缓缓向小布政司街走去"
      ],
      "atmosphere_core": [
        "古水仙祠"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B005",
          "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
          "kind": "montage",
          "lead_scene_id": "S0005",
          "source_scene_ids": [
            "S0005"
          ],
          "source_group_ids": [
            "AG0005"
          ],
          "source_beat_ids": [
            "AB0005"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0001B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000021",
        "visual_card_id": "VC000021",
        "voice_card_id": "",
        "asset_binding_id": "AB000021"
      }
    },
    {
      "entity_uid": "E000034",
      "name": "趵突泉",
      "canonical_name": "趵突泉",
      "display_name": "趵突泉",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "山岳/洞天",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000034",
      "asset_binding_id": "AB000034",
      "identity_summary": "济南名泉；七十二泉之首",
      "visual_anchor_summary": "这趵突泉乃济南府七十二泉中的第一个泉",
      "design_prompt_fragments": [
        "这趵突泉乃济南府七十二泉中的第一个泉",
        "趵突泉",
        "山岳/洞天",
        "这趵突泉乃济南府七十二泉中…",
        "济南名泉",
        "七十二泉之首"
      ],
      "location_core": [
        "这趵突泉乃济南府七十二泉中的第一个泉"
      ],
      "landmark_core": [
        "济南名泉",
        "七十二泉之首"
      ],
      "atmosphere_core": [
        "戏台"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000034",
        "visual_card_id": "VC000034",
        "voice_card_id": "",
        "asset_binding_id": "AB000034"
      }
    },
    {
      "entity_uid": "E000036",
      "name": "金泉书院",
      "canonical_name": "金泉书院",
      "display_name": "金泉书院",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "洞府/殿阁",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000036",
      "asset_binding_id": "AB000036",
      "identity_summary": "书院",
      "visual_anchor_summary": "书院",
      "design_prompt_fragments": [
        "书院",
        "金泉书院",
        "洞府/殿阁",
        "寻着了金泉书院"
      ],
      "location_core": [
        "书院"
      ],
      "landmark_core": [
        "寻着了金泉书院"
      ],
      "atmosphere_core": [
        "戏台"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000036",
        "visual_card_id": "VC000036",
        "voice_card_id": "",
        "asset_binding_id": "AB000036"
      }
    },
    {
      "entity_uid": "E000039",
      "name": "高公馆",
      "canonical_name": "高公馆",
      "display_name": "高公馆",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003"
      ],
      "visual_card_id": "VC000039",
      "asset_binding_id": "AB000039",
      "identity_summary": "高公住所",
      "visual_anchor_summary": "高公馆",
      "design_prompt_fragments": [
        "高公馆",
        "高公住所",
        "门旁贴了高公馆三个字"
      ],
      "location_core": [
        "高公馆",
        "高公住所",
        "门旁贴了高公馆三个字"
      ],
      "landmark_core": [
        "门旁贴了高公馆三个字"
      ],
      "atmosphere_core": [
        "黑虎泉"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "location",
        "priority": "minor",
        "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000039",
        "visual_card_id": "VC000039",
        "voice_card_id": "",
        "asset_binding_id": "AB000039"
      }
    },
    {
      "entity_uid": "E000045",
      "name": "北柱楼",
      "canonical_name": "北柱楼",
      "display_name": "北柱楼",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0012"
      ],
      "source_group_ids": [
        "AG0010"
      ],
      "source_beat_ids": [
        "AB0010"
      ],
      "block_ids": [
        "EP0002B004"
      ],
      "visual_card_id": "VC000045",
      "asset_binding_id": "AB000045",
      "identity_summary": "宴请场所",
      "visual_anchor_summary": "北柱楼",
      "design_prompt_fragments": [
        "北柱楼",
        "宴请场所"
      ],
      "location_core": [
        "北柱楼",
        "宴请场所",
        "还在北柱楼办了一席酒"
      ],
      "landmark_core": [
        "北柱楼",
        "宴请场所",
        "还在北柱楼办了一席酒"
      ],
      "atmosphere_core": [
        "高公馆内室"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B004",
          "title": "老残检查病人喉咙的细节",
          "kind": "dialogue",
          "lead_scene_id": "S0012",
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "entity_uid": "E000045",
        "visual_card_id": "VC000045",
        "voice_card_id": "",
        "asset_binding_id": "AB000045"
      }
    },
    {
      "entity_uid": "E000009",
      "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",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B001",
        "EP0001B002"
      ],
      "visual_card_id": "VC000009",
      "asset_binding_id": "AB000009",
      "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": "bridge",
          "lead_scene_id": "S0001",
          "source_scene_ids": [
            "S0001"
          ],
          "source_group_ids": [
            "AG0001"
          ],
          "source_beat_ids": [
            "AB0001"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ],
      "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": true,
        "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": 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
      },
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "实体主档待复核"
      ],
      "reason": "覆盖 1 集、命中 2 个剧本块，适合优先建主场景。",
      "risk_flags": [
        "entity_review",
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "实体主档待复核；参考图缺口；视觉锁定缺口",
      "init_action": "review_required",
      "init_action_reason": "实体主档待复核；参考图缺口；视觉锁定缺口",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000009",
        "visual_card_id": "VC000009",
        "voice_card_id": "",
        "asset_binding_id": "AB000009"
      }
    },
    {
      "entity_uid": "E000037",
      "name": "金线泉",
      "canonical_name": "金线泉",
      "display_name": "金线泉",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "山岳/洞天",
      "importance": "background",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000037",
      "asset_binding_id": "AB000037",
      "identity_summary": "四大名泉之二",
      "visual_anchor_summary": "金线泉",
      "design_prompt_fragments": [
        "金线泉",
        "山岳/洞天",
        "四大名泉之二",
        "就是金线泉了"
      ],
      "location_core": [
        "金线泉",
        "四大名泉之二",
        "就是金线泉了"
      ],
      "landmark_core": [
        "四大名泉之二"
      ],
      "atmosphere_core": [
        "戏台"
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持场景结构、地标和整体氛围一致"
      ],
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000037",
        "visual_card_id": "VC000037",
        "voice_card_id": "",
        "asset_binding_id": "AB000037"
      }
    },
    {
      "entity_uid": "",
      "name": "南门",
      "canonical_name": "南门",
      "display_name": "南门",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003"
      ],
      "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": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "城外",
      "canonical_name": "城外",
      "display_name": "城外",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B003"
      ],
      "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": "EP0003",
          "block_id": "EP0003B003",
          "title": "玉贤率马队追击",
          "kind": "action",
          "lead_scene_id": "S0019",
          "source_scene_ids": [
            "S0019"
          ],
          "source_group_ids": [
            "AG0017"
          ],
          "source_beat_ids": [
            "AB0017"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "客店",
      "canonical_name": "客店",
      "display_name": "客店",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B001"
      ],
      "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": "EP0003",
          "block_id": "EP0003B001",
          "title": "老残为差官倒茶",
          "kind": "dialogue",
          "lead_scene_id": "S0017",
          "source_scene_ids": [
            "S0017"
          ],
          "source_group_ids": [
            "AG0015"
          ],
          "source_beat_ids": [
            "AB0015"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "客栈",
      "canonical_name": "客栈",
      "display_name": "客栈",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0016"
      ],
      "source_group_ids": [
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0014"
      ],
      "block_ids": [
        "EP0002B008"
      ],
      "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": "EP0002",
          "block_id": "EP0002B008",
          "title": "【传闻】老残否认抚台邀请的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0016",
          "source_scene_ids": [
            "S0016"
          ],
          "source_group_ids": [
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0014"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B008"
        ],
        "source_scene_ids": [
          "S0016"
        ],
        "source_group_ids": [
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "客栈房间",
      "canonical_name": "客栈房间",
      "display_name": "客栈房间",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B001"
      ],
      "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": "EP0003",
          "block_id": "EP0003B001",
          "title": "老残为差官倒茶",
          "kind": "dialogue",
          "lead_scene_id": "S0017",
          "source_scene_ids": [
            "S0017"
          ],
          "source_group_ids": [
            "AG0015"
          ],
          "source_beat_ids": [
            "AB0015"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "宫保签押房",
      "canonical_name": "宫保签押房",
      "display_name": "宫保签押房",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0014"
      ],
      "source_group_ids": [
        "AG0012"
      ],
      "source_beat_ids": [
        "AB0012"
      ],
      "block_ids": [
        "EP0002B006"
      ],
      "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": "EP0002",
          "block_id": "EP0002B006",
          "title": "张宫保求教河工治理的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0014",
          "source_scene_ids": [
            "S0014"
          ],
          "source_group_ids": [
            "AG0012"
          ],
          "source_beat_ids": [
            "AB0012"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B006"
        ],
        "source_scene_ids": [
          "S0014"
        ],
        "source_group_ids": [
          "AG0012"
        ],
        "source_beat_ids": [
          "AB0012"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "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",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B003"
      ],
      "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": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        }
      ],
      "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": [
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "戏台",
      "canonical_name": "戏台",
      "display_name": "戏台",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B001",
        "EP0002B002"
      ],
      "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": "EP0002",
          "block_id": "EP0002B001",
          "title": "十二点半的时间点",
          "kind": "scene",
          "lead_scene_id": "S0008",
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ],
      "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 集、命中 2 个剧本块，适合优先建主场景。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "should_build",
      "init_action_reason": "场景具备候选映射，建议按主场景之后补齐",
      "source_ref": {
        "episode_ids": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B001",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "撫署",
      "canonical_name": "撫署",
      "display_name": "撫署",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0021"
      ],
      "source_group_ids": [
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0019"
      ],
      "block_ids": [
        "EP0003B005"
      ],
      "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": "EP0003",
          "block_id": "EP0003B005",
          "title": "玉贤搜查于家并发现可疑衣物",
          "kind": "dialogue",
          "lead_scene_id": "S0021",
          "source_scene_ids": [
            "S0021"
          ],
          "source_group_ids": [
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0019"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0021"
        ],
        "source_group_ids": [
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "明湖居戏台",
      "canonical_name": "明湖居戏台",
      "display_name": "明湖居戏台",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B001"
      ],
      "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": "EP0002",
          "block_id": "EP0002B001",
          "title": "十二点半的时间点",
          "kind": "scene",
          "lead_scene_id": "S0008",
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B001"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "济南",
      "canonical_name": "济南",
      "display_name": "济南",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "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": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "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",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B003"
      ],
      "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": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        }
      ],
      "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": [
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "老残寓所",
      "canonical_name": "老残寓所",
      "display_name": "老残寓所",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0013"
      ],
      "source_group_ids": [
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0011"
      ],
      "block_ids": [
        "EP0002B005"
      ],
      "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": "EP0002",
          "block_id": "EP0002B005",
          "title": "高绍殷乘轿拜访老残的场景",
          "kind": "dialogue",
          "lead_scene_id": "S0013",
          "source_scene_ids": [
            "S0013"
          ],
          "source_group_ids": [
            "AG0011"
          ],
          "source_beat_ids": [
            "AB0011"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "source_scene_ids": [
          "S0013"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "船上",
      "canonical_name": "船上",
      "display_name": "船上",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "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": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "董家口",
      "canonical_name": "董家口",
      "display_name": "董家口",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "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": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "雒口",
      "canonical_name": "雒口",
      "display_name": "雒口",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "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": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        }
      ],
      "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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "高公府邸",
      "canonical_name": "高公府邸",
      "display_name": "高公府邸",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0012"
      ],
      "source_group_ids": [
        "AG0010"
      ],
      "source_beat_ids": [
        "AB0010"
      ],
      "block_ids": [
        "EP0002B004"
      ],
      "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": "EP0002",
          "block_id": "EP0002B004",
          "title": "老残检查病人喉咙的细节",
          "kind": "dialogue",
          "lead_scene_id": "S0012",
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "高公馆内室",
      "canonical_name": "高公馆内室",
      "display_name": "高公馆内室",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0012"
      ],
      "source_group_ids": [
        "AG0010"
      ],
      "source_beat_ids": [
        "AB0010"
      ],
      "block_ids": [
        "EP0002B004"
      ],
      "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": "EP0002",
          "block_id": "EP0002B004",
          "title": "老残检查病人喉咙的细节",
          "kind": "dialogue",
          "lead_scene_id": "S0012",
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    },
    {
      "entity_uid": "",
      "name": "黑虎泉",
      "canonical_name": "黑虎泉",
      "display_name": "黑虎泉",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "地点",
      "subtype": "",
      "importance": "unknown",
      "priority": "P4",
      "location_role": "oneoff_set",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003"
      ],
      "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": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        }
      ],
      "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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "",
        "visual_card_id": "",
        "voice_card_id": "",
        "asset_binding_id": ""
      }
    }
  ],
  "props": [
    {
      "entity_uid": "E000010",
      "name": "帆船",
      "canonical_name": "帆船",
      "display_name": "帆船",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "物品",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "prop_role": "support_prop",
      "episode_ids": [
        "EP0001"
      ],
      "first_seen": "C0002",
      "last_seen": "C0003",
      "source_scene_ids": [
        "S0002",
        "S0003"
      ],
      "source_group_ids": [
        "AG0002",
        "AG0003"
      ],
      "source_beat_ids": [
        "AB0002",
        "AB0003"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "visual_card_id": "VC000010",
      "asset_binding_id": "AB000010",
      "identity_summary": "破损的船只",
      "visual_anchor_summary": "帆船",
      "design_prompt_fragments": [
        "帆船",
        "破损的船只",
        "那邊一隻帆船",
        "緩緩的尾大船之後"
      ],
      "prop_core": [
        "帆船",
        "破损的船只",
        "那邊一隻帆船",
        "緩緩的尾大船之後"
      ],
      "material_core": [],
      "form_core": [
        "帆船",
        "破损的船只",
        "那邊一隻帆船"
      ],
      "usage_core": [
        "那邊一隻帆船",
        "緩緩的尾大船之後"
      ],
      "owner_candidates": [
        "渔船",
        "三人"
      ],
      "matched_terms": [
        "帆船",
        "大船"
      ],
      "usage_hits": 2,
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "prop",
        "priority": "minor",
        "required_visual_assets": [
          "标准参考图"
        ],
        "optional_visual_assets": [
          "状态变体图",
          "使用状态图"
        ],
        "required_voice_assets": [],
        "usage_hints": [
          "那邊一隻帆船",
          "緩緩的尾大船之後"
        ],
        "owner_candidates": [
          "渔船",
          "三人"
        ],
        "variant_keys": [
          "VC000010:state:wounded"
        ],
        "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": "剧本块命中 2 次，适合优先建立道具/界面资产。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0001"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0002",
          "S0003"
        ],
        "source_group_ids": [
          "AG0002",
          "AG0003"
        ],
        "source_beat_ids": [
          "AB0002",
          "AB0003"
        ],
        "entity_uid": "E000010",
        "visual_card_id": "VC000010",
        "voice_card_id": "",
        "asset_binding_id": "AB000010"
      }
    },
    {
      "entity_uid": "E000011",
      "name": "远镜",
      "canonical_name": "远镜",
      "display_name": "远镜",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "物品",
      "subtype": "法器",
      "importance": "minor",
      "priority": "P3",
      "prop_role": "incidental_prop",
      "episode_ids": [
        "EP0001"
      ],
      "first_seen": "C0002",
      "last_seen": "C0002",
      "source_scene_ids": [
        "S0002"
      ],
      "source_group_ids": [
        "AG0002"
      ],
      "source_beat_ids": [
        "AB0002"
      ],
      "block_ids": [
        "EP0001B002"
      ],
      "visual_card_id": "VC000011",
      "asset_binding_id": "AB000011",
      "identity_summary": "观察工具",
      "visual_anchor_summary": "远镜；观察工具",
      "design_prompt_fragments": [
        "远镜；观察工具",
        "远镜",
        "法器",
        "观察工具",
        "慧生還拿遠鏡左右觀視"
      ],
      "prop_core": [
        "远镜",
        "观察工具",
        "慧生還拿遠鏡左右觀視"
      ],
      "material_core": [],
      "form_core": [
        "远镜",
        "观察工具",
        "慧生還拿遠鏡左右觀視"
      ],
      "usage_core": [
        "慧生還拿遠鏡左右觀視"
      ],
      "owner_candidates": [
        "三人"
      ],
      "matched_terms": [
        "远镜"
      ],
      "usage_hits": 1,
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "prop",
        "priority": "minor",
        "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 次，适合优先建立道具/界面资产。",
      "risk_flags": [
        "visual_reference_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": "E000011",
        "visual_card_id": "VC000011",
        "voice_card_id": "",
        "asset_binding_id": "AB000011"
      }
    },
    {
      "entity_uid": "E000030",
      "name": "三弦子",
      "canonical_name": "三弦子",
      "display_name": "三弦子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "物品",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "prop_role": "incidental_prop",
      "episode_ids": [
        "EP0002"
      ],
      "first_seen": "C0005",
      "last_seen": "C0005",
      "source_scene_ids": [
        "S0008"
      ],
      "source_group_ids": [
        "AG0007"
      ],
      "source_beat_ids": [
        "AB0007"
      ],
      "block_ids": [
        "EP0002B001"
      ],
      "visual_card_id": "VC000030",
      "asset_binding_id": "AB000030",
      "identity_summary": "弹拨乐器；伴奏用",
      "visual_anchor_summary": "三弦子",
      "design_prompt_fragments": [
        "三弦子",
        "弹拨乐器",
        "慢慢的将三弦子取来"
      ],
      "prop_core": [
        "三弦子",
        "弹拨乐器",
        "伴奏用",
        "慢慢的将三弦子取来"
      ],
      "material_core": [],
      "form_core": [
        "三弦子",
        "弹拨乐器",
        "伴奏用"
      ],
      "usage_core": [
        "慢慢的将三弦子取来"
      ],
      "owner_candidates": [
        "弹弦子的"
      ],
      "matched_terms": [
        "三弦子"
      ],
      "usage_hits": 1,
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B001",
          "title": "十二点半的时间点",
          "kind": "scene",
          "lead_scene_id": "S0008",
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ]
        }
      ],
      "asset_profile": {
        "asset_role": "prop",
        "priority": "minor",
        "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 次，适合优先建立道具/界面资产。",
      "risk_flags": [
        "visual_reference_gap",
        "visual_lock_gap"
      ],
      "risk_summary": "参考图缺口；视觉锁定缺口",
      "init_action": "ready",
      "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
      "source_ref": {
        "episode_ids": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B001"
        ],
        "source_scene_ids": [
          "S0008"
        ],
        "source_group_ids": [
          "AG0007"
        ],
        "source_beat_ids": [
          "AB0007"
        ],
        "entity_uid": "E000030",
        "visual_card_id": "VC000030",
        "voice_card_id": "",
        "asset_binding_id": "AB000030"
      }
    }
  ],
  "voices": [
    {
      "entity_uid": "E000001",
      "name": "老残",
      "canonical_name": "老残",
      "display_name": "老残",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P0",
      "role_tier": "lead",
      "voice_card_id": "VO000001",
      "asset_binding_id": "AB000001",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B001",
        "EP0001B005",
        "EP0002B005",
        "EP0002B007"
      ],
      "voice_anchor_summary": "老残；角色 / 男性向 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "男性向",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000001:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000001:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000001:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "core",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [
          "老残穿着随身衣服，同高绍殷进了抚署"
        ],
        "owner_candidates": [
          "文章伯",
          "德慧生",
          "登州",
          "蓬莱阁"
        ],
        "variant_keys": [
          "VC000001:costume:default",
          "VC000001:state:wounded",
          "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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B005",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000001",
        "visual_card_id": "",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B001",
          "title": "【闪回】为黄瑞和治疗奇病的关键事件",
          "kind": "bridge",
          "lead_scene_id": "S0001",
          "source_scene_ids": [
            "S0001"
          ],
          "source_group_ids": [
            "AG0001"
          ],
          "source_beat_ids": [
            "AB0001"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B005",
          "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
          "kind": "montage",
          "lead_scene_id": "S0005",
          "source_scene_ids": [
            "S0005"
          ],
          "source_group_ids": [
            "AG0005"
          ],
          "source_beat_ids": [
            "AB0005"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B005",
          "title": "高绍殷乘轿拜访老残的场景",
          "kind": "dialogue",
          "lead_scene_id": "S0013",
          "source_scene_ids": [
            "S0013"
          ],
          "source_group_ids": [
            "AG0011"
          ],
          "source_beat_ids": [
            "AB0011"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B007",
          "title": "宫保邀请老残入住南书房",
          "kind": "dialogue",
          "lead_scene_id": "S0015",
          "source_scene_ids": [
            "S0015"
          ],
          "source_group_ids": [
            "AG0013"
          ],
          "source_beat_ids": [
            "AB0013"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000014",
      "name": "三人",
      "canonical_name": "三人",
      "display_name": "三人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "lead",
      "voice_card_id": "VO000014",
      "asset_binding_id": "AB000014",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003",
        "EP0001B004",
        "EP0003B005"
      ],
      "voice_anchor_summary": "三人；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000014:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000014:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000014:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "渔船",
          "远镜",
          "罗盘",
          "文章伯"
        ],
        "variant_keys": [
          "VC000014:costume:default",
          "VC000014:state:wounded",
          "VO000014:default",
          "VO000014:low",
          "VO000014: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",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003",
          "EP0001B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000014",
        "visual_card_id": "",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B004",
          "title": "以传统章回体句式留下三人命运的悬念。",
          "kind": "bridge",
          "lead_scene_id": "S0004",
          "source_scene_ids": [
            "S0004"
          ],
          "source_group_ids": [
            "AG0004"
          ],
          "source_beat_ids": [
            "AB0004"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B005",
          "title": "玉贤搜查于家并发现可疑衣物",
          "kind": "dialogue",
          "lead_scene_id": "S0021",
          "source_scene_ids": [
            "S0021"
          ],
          "source_group_ids": [
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0019"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000023",
      "name": "白妞",
      "canonical_name": "白妞",
      "display_name": "白妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "lead",
      "voice_card_id": "VO000023",
      "asset_binding_id": "AB000023",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B005",
        "EP0001B006",
        "EP0002B001",
        "EP0002B002"
      ],
      "voice_anchor_summary": "白妞；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000023:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000023:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000023:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "说书本事",
          "黑妞",
          "明湖居"
        ],
        "variant_keys": [
          "VC000023:costume:default",
          "VO000023:default",
          "VO000023:low",
          "VO000023: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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B005",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000023",
        "visual_card_id": "",
        "voice_card_id": "VO000023",
        "asset_binding_id": "AB000023"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B005",
          "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
          "kind": "montage",
          "lead_scene_id": "S0005",
          "source_scene_ids": [
            "S0005"
          ],
          "source_group_ids": [
            "AG0005"
          ],
          "source_beat_ids": [
            "AB0005"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B006",
          "title": "【闪回】老残次日前往明湖居",
          "kind": "dialogue",
          "lead_scene_id": "S0006",
          "source_scene_ids": [
            "S0006"
          ],
          "source_group_ids": [
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0006"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B001",
          "title": "十二点半的时间点",
          "kind": "scene",
          "lead_scene_id": "S0008",
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000043",
      "name": "宫保",
      "canonical_name": "宫保",
      "display_name": "宫保",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "supporting",
      "voice_card_id": "VO000043",
      "asset_binding_id": "AB000043",
      "voice_role": "character",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B007"
      ],
      "voice_anchor_summary": "宫保；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000043:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000043:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000043:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "姚云翁",
          "高公",
          "老残"
        ],
        "variant_keys": [
          "VC000043:costume:default",
          "VO000043:default",
          "VO000043:low",
          "VO000043: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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000043",
        "visual_card_id": "",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B007",
          "title": "宫保邀请老残入住南书房",
          "kind": "dialogue",
          "lead_scene_id": "S0015",
          "source_scene_ids": [
            "S0015"
          ],
          "source_group_ids": [
            "AG0013"
          ],
          "source_beat_ids": [
            "AB0013"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000006",
      "name": "德慧生",
      "canonical_name": "德慧生",
      "display_name": "德慧生",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "supporting",
      "voice_card_id": "VO000006",
      "asset_binding_id": "AB000006",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "voice_anchor_summary": "德慧生；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000006:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000006:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000006:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "文章伯"
        ],
        "variant_keys": [
          "VC000006:costume:default",
          "VC000006:state:wounded",
          "VO000006:default",
          "VO000006:low",
          "VO000006: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000006",
        "visual_card_id": "",
        "voice_card_id": "VO000006",
        "asset_binding_id": "AB000006"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000005",
      "name": "文章伯",
      "canonical_name": "文章伯",
      "display_name": "文章伯",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "supporting",
      "voice_card_id": "VO000005",
      "asset_binding_id": "AB000005",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B002",
        "EP0001B003"
      ],
      "voice_anchor_summary": "文章伯；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000005:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000005:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000005:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "德慧生",
          "三人"
        ],
        "variant_keys": [
          "VC000005:costume:default",
          "VC000005:state:wounded",
          "VO000005:default",
          "VO000005:low",
          "VO000005: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",
          "EP0001B003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000005",
        "visual_card_id": "",
        "voice_card_id": "VO000005",
        "asset_binding_id": "AB000005"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B002",
          "title": "三人相约登蓬莱阁",
          "kind": "dialogue",
          "lead_scene_id": "S0002",
          "source_scene_ids": [
            "S0002"
          ],
          "source_group_ids": [
            "AG0002"
          ],
          "source_beat_ids": [
            "AB0002"
          ]
        },
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000049",
      "name": "玉贤",
      "canonical_name": "玉贤",
      "display_name": "玉贤",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "supporting",
      "voice_card_id": "VO000049",
      "asset_binding_id": "AB000049",
      "voice_role": "character",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002",
        "EP0003B003",
        "EP0003B004",
        "EP0003B005"
      ],
      "voice_anchor_summary": "玉贤；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000049:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000049:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000049:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "于家屯",
          "于学礼",
          "于家父子"
        ],
        "variant_keys": [
          "VC000049:costume:default",
          "VO000049:default",
          "VO000049:low",
          "VO000049: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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002",
          "EP0003B003",
          "EP0003B004",
          "EP0003B005"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000049",
        "visual_card_id": "",
        "voice_card_id": "VO000049",
        "asset_binding_id": "AB000049"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B003",
          "title": "玉贤率马队追击",
          "kind": "action",
          "lead_scene_id": "S0019",
          "source_scene_ids": [
            "S0019"
          ],
          "source_group_ids": [
            "AG0017"
          ],
          "source_beat_ids": [
            "AB0017"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B004",
          "title": "玉贤率马队夜间追捕强盗的火光与枪声…",
          "kind": "action",
          "lead_scene_id": "S0020",
          "source_scene_ids": [
            "S0020"
          ],
          "source_group_ids": [
            "AG0018"
          ],
          "source_beat_ids": [
            "AB0018"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B005",
          "title": "玉贤搜查于家并发现可疑衣物",
          "kind": "dialogue",
          "lead_scene_id": "S0021",
          "source_scene_ids": [
            "S0021"
          ],
          "source_group_ids": [
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0019"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000040",
      "name": "高公",
      "canonical_name": "高公",
      "display_name": "高公",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P2",
      "role_tier": "supporting",
      "voice_card_id": "VO000040",
      "asset_binding_id": "AB000040",
      "voice_role": "character",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B003",
        "EP0002B004",
        "EP0002B005",
        "EP0002B007"
      ],
      "voice_anchor_summary": "高公；角色 / 男性向 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "男性向",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000040:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000040:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000040:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "提高爆发力"
          ],
          "notes": "适用于冲突、喊叫或高压时刻。"
        }
      ],
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "老残",
          "宫保"
        ],
        "variant_keys": [
          "VC000040:costume:default",
          "VO000040:default",
          "VO000040:low",
          "VO000040: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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B003",
          "EP0002B004",
          "EP0002B005",
          "EP0002B007"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000040",
        "visual_card_id": "",
        "voice_card_id": "VO000040",
        "asset_binding_id": "AB000040"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B004",
          "title": "老残检查病人喉咙的细节",
          "kind": "dialogue",
          "lead_scene_id": "S0012",
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B005",
          "title": "高绍殷乘轿拜访老残的场景",
          "kind": "dialogue",
          "lead_scene_id": "S0013",
          "source_scene_ids": [
            "S0013"
          ],
          "source_group_ids": [
            "AG0011"
          ],
          "source_beat_ids": [
            "AB0011"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B007",
          "title": "宫保邀请老残入住南书房",
          "kind": "dialogue",
          "lead_scene_id": "S0015",
          "source_scene_ids": [
            "S0015"
          ],
          "source_group_ids": [
            "AG0013"
          ],
          "source_beat_ids": [
            "AB0013"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000048",
      "name": "差官",
      "canonical_name": "差官",
      "display_name": "差官",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "lead",
      "voice_card_id": "VO000048",
      "asset_binding_id": "AB000048",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0003",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0003",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0003",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B003",
        "EP0002B001",
        "EP0002B003",
        "EP0002B006",
        "EP0002B008",
        "EP0003B001"
      ],
      "voice_anchor_summary": "差官；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000048:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000048:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000048:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "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": [
          "VC000048:costume:default",
          "VO000048:default",
          "VO000048:low",
          "VO000048: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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0002B001",
          "EP0002B003",
          "EP0002B006",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0003",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0003",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0003",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000048",
        "visual_card_id": "",
        "voice_card_id": "VO000048",
        "asset_binding_id": "AB000048"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B003",
          "title": "三人驾船追赶大船",
          "kind": "dialogue",
          "lead_scene_id": "S0003",
          "source_scene_ids": [
            "S0003"
          ],
          "source_group_ids": [
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0003"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B001",
          "title": "十二点半的时间点",
          "kind": "scene",
          "lead_scene_id": "S0008",
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B006",
          "title": "张宫保求教河工治理的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0014",
          "source_scene_ids": [
            "S0014"
          ],
          "source_group_ids": [
            "AG0012"
          ],
          "source_beat_ids": [
            "AB0012"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B008",
          "title": "【传闻】老残否认抚台邀请的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0016",
          "source_scene_ids": [
            "S0016"
          ],
          "source_group_ids": [
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0014"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B001",
          "title": "老残为差官倒茶",
          "kind": "dialogue",
          "lead_scene_id": "S0017",
          "source_scene_ids": [
            "S0017"
          ],
          "source_group_ids": [
            "AG0015"
          ],
          "source_beat_ids": [
            "AB0015"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000024",
      "name": "茶房",
      "canonical_name": "茶房",
      "display_name": "茶房",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "lead",
      "voice_card_id": "VO000024",
      "asset_binding_id": "AB000024",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B003",
        "EP0002B008",
        "EP0003B001"
      ],
      "voice_anchor_summary": "茶房；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000024:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000024:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000024:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "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": [
          "VC000024:costume:default",
          "VO000024:default",
          "VO000024:low",
          "VO000024: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",
          "EP0002",
          "EP0003"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B003",
          "EP0002B008",
          "EP0003B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000024",
        "visual_card_id": "",
        "voice_card_id": "VO000024",
        "asset_binding_id": "AB000024"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B006",
          "title": "【闪回】老残次日前往明湖居",
          "kind": "dialogue",
          "lead_scene_id": "S0006",
          "source_scene_ids": [
            "S0006"
          ],
          "source_group_ids": [
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0006"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B003",
          "title": "游览黑虎泉的视觉呈现",
          "kind": "dialogue",
          "lead_scene_id": "S0011",
          "source_scene_ids": [
            "S0011"
          ],
          "source_group_ids": [
            "AG0009"
          ],
          "source_beat_ids": [
            "AB0009"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B008",
          "title": "【传闻】老残否认抚台邀请的对话",
          "kind": "dialogue",
          "lead_scene_id": "S0016",
          "source_scene_ids": [
            "S0016"
          ],
          "source_group_ids": [
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0014"
          ]
        },
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B001",
          "title": "老残为差官倒茶",
          "kind": "dialogue",
          "lead_scene_id": "S0017",
          "source_scene_ids": [
            "S0017"
          ],
          "source_group_ids": [
            "AG0015"
          ],
          "source_beat_ids": [
            "AB0015"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000026",
      "name": "黑妞",
      "canonical_name": "黑妞",
      "display_name": "黑妞",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "lead",
      "voice_card_id": "VO000026",
      "asset_binding_id": "AB000026",
      "voice_role": "character",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B002"
      ],
      "voice_anchor_summary": "黑妞；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000026:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000026:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000026:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "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": [
          "VC000026:costume:default",
          "VO000026:default",
          "VO000026:low",
          "VO000026: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",
          "EP0002"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000026",
        "visual_card_id": "",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B006",
          "title": "【闪回】老残次日前往明湖居",
          "kind": "dialogue",
          "lead_scene_id": "S0006",
          "source_scene_ids": [
            "S0006"
          ],
          "source_group_ids": [
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0006"
          ]
        },
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000038",
      "name": "士子",
      "canonical_name": "士子",
      "display_name": "士子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P3",
      "role_tier": "featured",
      "voice_card_id": "VO000038",
      "asset_binding_id": "AB000038",
      "voice_role": "character",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "voice_anchor_summary": "士子；角色 / 未知性别呈现 / 青年感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色",
        "保持青年感，不在不同段落间来回漂移"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "青年感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000038:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000038:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000038:high",
          "label": "高强度对白",
          "pace": "fast",
          "pitch": "unknown",
          "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": [
          "VC000038:costume:default",
          "VC000038:state:age",
          "VO000038:default",
          "VO000038:low",
          "VO000038: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": [
          "EP0002"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "entity_uid": "E000038",
        "visual_card_id": "",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0002",
          "block_id": "EP0002B002",
          "title": "黑妞简短说书作为过渡",
          "kind": "scene",
          "lead_scene_id": "S0009",
          "source_scene_ids": [
            "S0009"
          ],
          "source_group_ids": [
            "AG0008"
          ],
          "source_beat_ids": [
            "AB0008"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000052",
      "name": "老董",
      "canonical_name": "老董",
      "display_name": "老董",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P4",
      "role_tier": "featured",
      "voice_card_id": "VO000052",
      "asset_binding_id": "AB000052",
      "voice_role": "character",
      "episode_ids": [
        "EP0003"
      ],
      "source_scene_ids": [
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "block_ids": [
        "EP0003B002"
      ],
      "voice_anchor_summary": "老董；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000052:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000052:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000052: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": [
          "VO000052:default",
          "VO000052:low",
          "VO000052: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": [
          "EP0003"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "entity_uid": "E000052",
        "visual_card_id": "",
        "voice_card_id": "VO000052",
        "asset_binding_id": "AB000052"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0003",
          "block_id": "EP0003B002",
          "title": "老残为避纠缠连夜离济",
          "kind": "dialogue",
          "lead_scene_id": "S0018",
          "source_scene_ids": [
            "S0018"
          ],
          "source_group_ids": [
            "AG0016"
          ],
          "source_beat_ids": [
            "AB0016"
          ]
        }
      ]
    },
    {
      "entity_uid": "E000004",
      "name": "黄瑞和",
      "canonical_name": "黄瑞和",
      "display_name": "黄瑞和",
      "identity_conflict": {},
      "conflict_group_id": "",
      "priority": "P4",
      "role_tier": "featured",
      "voice_card_id": "VO000004",
      "asset_binding_id": "AB000004",
      "voice_role": "character",
      "episode_ids": [
        "EP0001"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006"
      ],
      "block_ids": [
        "EP0001B001"
      ],
      "voice_anchor_summary": "黄瑞和；角色 / 未知性别呈现 / 未知年龄感；自然人声",
      "timbre": [
        "自然人声",
        "保持跨场景音色稳定"
      ],
      "pitch": "unknown",
      "pace": "medium",
      "speaking_style": [
        "吐字清晰"
      ],
      "delivery_core": [
        "锁定基础音色，不因场景切换改变发声位置",
        "情绪变化优先通过力度和语速调整，不改人声底色"
      ],
      "casting_tags": [
        "角色",
        "未知性别呈现",
        "未知年龄感",
        "自然人声",
        "保持跨场景音色稳定",
        "吐字清晰"
      ],
      "voice_variants": [
        {
          "variant_id": "VO000004:default",
          "label": "常规对白",
          "pace": "medium",
          "pitch": "unknown",
          "timbre": [
            "自然人声",
            "保持跨场景音色稳定"
          ],
          "speaking_style": [
            "吐字清晰"
          ],
          "notes": "默认对白态，用于大多数正常交流场景。"
        },
        {
          "variant_id": "VO000004:low",
          "label": "低强度对白",
          "pace": "slow",
          "pitch": "unknown",
          "timbre": [
            "自然人声"
          ],
          "speaking_style": [
            "吐字清晰",
            "压低力度"
          ],
          "notes": "适用于密谈、独白或收束段落。"
        },
        {
          "variant_id": "VO000004: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": [
          "VC000004:costume:default",
          "VC000004:state:weak",
          "VO000004:default",
          "VO000004:low",
          "VO000004: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": [
          "EP0001B001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "entity_uid": "E000004",
        "visual_card_id": "",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004"
      },
      "main_scene_candidates": [
        {
          "episode_id": "EP0001",
          "block_id": "EP0001B001",
          "title": "【闪回】为黄瑞和治疗奇病的关键事件",
          "kind": "bridge",
          "lead_scene_id": "S0001",
          "source_scene_ids": [
            "S0001"
          ],
          "source_group_ids": [
            "AG0001"
          ],
          "source_beat_ids": [
            "AB0001"
          ]
        }
      ]
    }
  ],
  "asset_suggestions": {
    "characters": [
      {
        "entity_uid": "E000001",
        "name": "老残",
        "canonical_name": "老残",
        "display_name": "老残",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P0",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B005",
          "EP0002B005",
          "EP0002B007"
        ],
        "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:wounded",
            "label": "伤损态",
            "variant_type": "wounded",
            "signals": [
              "残"
            ],
            "evidence": [
              "名叫老残，原姓铁，单名一个英字，号补残",
              "老残心裡想道"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B001",
            "title": "【闪回】为黄瑞和治疗奇病的关键事件",
            "kind": "bridge",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "core",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [
            "老残穿着随身衣服，同高绍殷进了抚署"
          ],
          "owner_candidates": [
            "文章伯",
            "德慧生",
            "登州",
            "蓬莱阁"
          ],
          "variant_keys": [
            "VC000001:costume:default",
            "VC000001:state:wounded",
            "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:wounded",
          "VO000001:default",
          "VO000001:low",
          "VO000001:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B001",
            "EP0001B005",
            "EP0002B005",
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000001",
          "visual_card_id": "VC000001",
          "voice_card_id": "VO000001",
          "asset_binding_id": "AB000001"
        }
      },
      {
        "entity_uid": "E000014",
        "name": "三人",
        "canonical_name": "三人",
        "display_name": "三人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003",
          "EP0001B004",
          "EP0003B005"
        ],
        "visual_card_id": "VC000014",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014",
        "visual_anchor_summary": "三人，角色姓名",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000014:state:wounded",
            "label": "伤损态",
            "variant_type": "wounded",
            "signals": [
              "残"
            ],
            "evidence": [
              "老残等三人"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "以传统章回体句式留下三人命运的悬念。",
            "kind": "bridge",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B005",
            "title": "玉贤搜查于家并发现可疑衣物",
            "kind": "dialogue",
            "lead_scene_id": "S0021",
            "source_scene_ids": [
              "S0021"
            ],
            "source_group_ids": [
              "AG0019"
            ],
            "source_beat_ids": [
              "AB0019"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "渔船",
            "远镜",
            "罗盘",
            "文章伯"
          ],
          "variant_keys": [
            "VC000014:costume:default",
            "VC000014:state:wounded",
            "VO000014:default",
            "VO000014:low",
            "VO000014: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": [
          "VC000014:costume:default",
          "VC000014:state:wounded",
          "VO000014:default",
          "VO000014:low",
          "VO000014:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "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",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B002",
            "EP0001B003",
            "EP0001B004",
            "EP0003B005"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000014",
          "visual_card_id": "VC000014",
          "voice_card_id": "VO000014",
          "asset_binding_id": "AB000014"
        }
      },
      {
        "entity_uid": "E000023",
        "name": "白妞",
        "canonical_name": "白妞",
        "display_name": "白妞",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B005",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "visual_card_id": "VC000023",
        "voice_card_id": "VO000023",
        "asset_binding_id": "AB000023",
        "visual_anchor_summary": "王小玉便启朱唇，发皓齿",
        "design_prompt_fragments": [
          "王小玉便启朱唇，发皓齿"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000023:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "王小玉便启朱唇，发皓齿"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "说书本事",
            "黑妞",
            "明湖居"
          ],
          "variant_keys": [
            "VC000023:costume:default",
            "VO000023:default",
            "VO000023:low",
            "VO000023: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": [
          "VC000023:costume:default",
          "VO000023:default",
          "VO000023:low",
          "VO000023:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B005",
            "EP0001B006",
            "EP0002B001",
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000023",
          "visual_card_id": "VC000023",
          "voice_card_id": "VO000023",
          "asset_binding_id": "AB000023"
        }
      },
      {
        "entity_uid": "E000043",
        "name": "宫保",
        "canonical_name": "宫保",
        "display_name": "宫保",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B007"
        ],
        "visual_card_id": "VC000043",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043",
        "visual_anchor_summary": "宫保，主要角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "姚云翁",
            "高公",
            "老残"
          ],
          "variant_keys": [
            "VC000043:costume:default",
            "VO000043:default",
            "VO000043:low",
            "VO000043: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": [
          "VC000043:costume:default",
          "VO000043:default",
          "VO000043:low",
          "VO000043: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000043",
          "visual_card_id": "VC000043",
          "voice_card_id": "VO000043",
          "asset_binding_id": "AB000043"
        }
      },
      {
        "entity_uid": "E000006",
        "name": "德慧生",
        "canonical_name": "德慧生",
        "display_name": "德慧生",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "visual_card_id": "VC000006",
        "voice_card_id": "VO000006",
        "asset_binding_id": "AB000006",
        "visual_anchor_summary": "德慧生，主要角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000006:state:wounded",
            "label": "伤损态",
            "variant_type": "wounded",
            "signals": [
              "残"
            ],
            "evidence": [
              "老残朋友"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "文章伯"
          ],
          "variant_keys": [
            "VC000006:costume:default",
            "VC000006:state:wounded",
            "VO000006:default",
            "VO000006:low",
            "VO000006: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": [
          "VC000006:costume:default",
          "VC000006:state:wounded",
          "VO000006:default",
          "VO000006:low",
          "VO000006: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",
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000006",
          "visual_card_id": "VC000006",
          "voice_card_id": "VO000006",
          "asset_binding_id": "AB000006"
        }
      },
      {
        "entity_uid": "E000005",
        "name": "文章伯",
        "canonical_name": "文章伯",
        "display_name": "文章伯",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "visual_card_id": "VC000005",
        "voice_card_id": "VO000005",
        "asset_binding_id": "AB000005",
        "visual_anchor_summary": "文章伯，主要角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000005:state:wounded",
            "label": "伤损态",
            "variant_type": "wounded",
            "signals": [
              "残"
            ],
            "evidence": [
              "老残朋友"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "德慧生",
            "三人"
          ],
          "variant_keys": [
            "VC000005:costume:default",
            "VC000005:state:wounded",
            "VO000005:default",
            "VO000005:low",
            "VO000005: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": [
          "VC000005:costume:default",
          "VC000005:state:wounded",
          "VO000005:default",
          "VO000005:low",
          "VO000005: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",
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000005",
          "visual_card_id": "VC000005",
          "voice_card_id": "VO000005",
          "asset_binding_id": "AB000005"
        }
      },
      {
        "entity_uid": "E000049",
        "name": "玉贤",
        "canonical_name": "玉贤",
        "display_name": "玉贤",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002",
          "EP0003B003",
          "EP0003B004",
          "EP0003B005"
        ],
        "visual_card_id": "VC000049",
        "voice_card_id": "VO000049",
        "asset_binding_id": "AB000049",
        "visual_anchor_summary": "玉贤，主要角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B003",
            "title": "玉贤率马队追击",
            "kind": "action",
            "lead_scene_id": "S0019",
            "source_scene_ids": [
              "S0019"
            ],
            "source_group_ids": [
              "AG0017"
            ],
            "source_beat_ids": [
              "AB0017"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B004",
            "title": "玉贤率马队夜间追捕强盗的火光与枪声…",
            "kind": "action",
            "lead_scene_id": "S0020",
            "source_scene_ids": [
              "S0020"
            ],
            "source_group_ids": [
              "AG0018"
            ],
            "source_beat_ids": [
              "AB0018"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B005",
            "title": "玉贤搜查于家并发现可疑衣物",
            "kind": "dialogue",
            "lead_scene_id": "S0021",
            "source_scene_ids": [
              "S0021"
            ],
            "source_group_ids": [
              "AG0019"
            ],
            "source_beat_ids": [
              "AB0019"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "于家屯",
            "于学礼",
            "于家父子"
          ],
          "variant_keys": [
            "VC000049:costume:default",
            "VO000049:default",
            "VO000049:low",
            "VO000049: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": [
          "VC000049:costume:default",
          "VO000049:default",
          "VO000049:low",
          "VO000049: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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002",
            "EP0003B003",
            "EP0003B004",
            "EP0003B005"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000049",
          "visual_card_id": "VC000049",
          "voice_card_id": "VO000049",
          "asset_binding_id": "AB000049"
        }
      },
      {
        "entity_uid": "E000040",
        "name": "高公",
        "canonical_name": "高公",
        "display_name": "高公",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B003",
          "EP0002B004",
          "EP0002B005",
          "EP0002B007"
        ],
        "visual_card_id": "VC000040",
        "voice_card_id": "VO000040",
        "asset_binding_id": "AB000040",
        "visual_anchor_summary": "高公，主要角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "老残检查病人喉咙的细节",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "宫保"
          ],
          "variant_keys": [
            "VC000040:costume:default",
            "VO000040:default",
            "VO000040:low",
            "VO000040: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": [
          "VC000040:costume:default",
          "VO000040:default",
          "VO000040:low",
          "VO000040: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B003",
            "EP0002B004",
            "EP0002B005",
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000040",
          "visual_card_id": "VC000040",
          "voice_card_id": "VO000040",
          "asset_binding_id": "AB000040"
        }
      },
      {
        "entity_uid": "E000048",
        "name": "差官",
        "canonical_name": "差官",
        "display_name": "差官",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0003",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0003",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0003",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0002B001",
          "EP0002B003",
          "EP0002B006",
          "EP0002B008",
          "EP0003B001"
        ],
        "visual_card_id": "VC000048",
        "voice_card_id": "VO000048",
        "asset_binding_id": "AB000048",
        "visual_anchor_summary": "差官，核心角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B006",
            "title": "张宫保求教河工治理的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0014",
            "source_scene_ids": [
              "S0014"
            ],
            "source_group_ids": [
              "AG0012"
            ],
            "source_beat_ids": [
              "AB0012"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B008",
            "title": "【传闻】老残否认抚台邀请的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0016",
            "source_scene_ids": [
              "S0016"
            ],
            "source_group_ids": [
              "AG0014"
            ],
            "source_beat_ids": [
              "AB0014"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残"
          ],
          "variant_keys": [
            "VC000048:costume:default",
            "VO000048:default",
            "VO000048:low",
            "VO000048: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": [
          "VC000048:costume:default",
          "VO000048:default",
          "VO000048:low",
          "VO000048:high"
        ],
        "reason": "角色覆盖 3 集，建议优先建立稳定角色资产。",
        "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",
            "EP0002",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B003",
            "EP0002B001",
            "EP0002B003",
            "EP0002B006",
            "EP0002B008",
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0003",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0003",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0003",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000048",
          "visual_card_id": "VC000048",
          "voice_card_id": "VO000048",
          "asset_binding_id": "AB000048"
        }
      },
      {
        "entity_uid": "E000024",
        "name": "茶房",
        "canonical_name": "茶房",
        "display_name": "茶房",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B003",
          "EP0002B008",
          "EP0003B001"
        ],
        "visual_card_id": "VC000024",
        "voice_card_id": "VO000024",
        "asset_binding_id": "AB000024",
        "visual_anchor_summary": "茶房，角色姓名",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B008",
            "title": "【传闻】老残否认抚台邀请的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0016",
            "source_scene_ids": [
              "S0016"
            ],
            "source_group_ids": [
              "AG0014"
            ],
            "source_beat_ids": [
              "AB0014"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残"
          ],
          "variant_keys": [
            "VC000024:costume:default",
            "VO000024:default",
            "VO000024:low",
            "VO000024: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": [
          "VC000024:costume:default",
          "VO000024:default",
          "VO000024:low",
          "VO000024:high"
        ],
        "reason": "角色覆盖 3 集，建议优先建立稳定角色资产。",
        "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",
            "EP0002",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B006",
            "EP0002B003",
            "EP0002B008",
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000024",
          "visual_card_id": "VC000024",
          "voice_card_id": "VO000024",
          "asset_binding_id": "AB000024"
        }
      },
      {
        "entity_uid": "E000026",
        "name": "黑妞",
        "canonical_name": "黑妞",
        "display_name": "黑妞",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002"
        ],
        "visual_card_id": "VC000026",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026",
        "visual_anchor_summary": "黑妞，核心角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "梨花简",
            "说书本事",
            "白妞",
            "明湖居"
          ],
          "variant_keys": [
            "VC000026:costume:default",
            "VO000026:default",
            "VO000026:low",
            "VO000026: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": [
          "VC000026:costume:default",
          "VO000026:default",
          "VO000026:low",
          "VO000026:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B006",
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000026",
          "visual_card_id": "VC000026",
          "voice_card_id": "VO000026",
          "asset_binding_id": "AB000026"
        }
      },
      {
        "entity_uid": "E000038",
        "name": "士子",
        "canonical_name": "士子",
        "display_name": "士子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000038",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038",
        "visual_anchor_summary": "书生",
        "design_prompt_fragments": [
          "书生"
        ],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000038:state:age",
            "label": "青年感",
            "variant_type": "age",
            "signals": [
              "青年感"
            ],
            "evidence": [
              "书生"
            ],
            "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残"
          ],
          "variant_keys": [
            "VC000038:costume:default",
            "VC000038:state:age",
            "VO000038:default",
            "VO000038:low",
            "VO000038: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": [
          "VC000038:costume:default",
          "VC000038:state:age",
          "VO000038:default",
          "VO000038:low",
          "VO000038: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000038",
          "visual_card_id": "VC000038",
          "voice_card_id": "VO000038",
          "asset_binding_id": "AB000038"
        }
      },
      {
        "entity_uid": "E000052",
        "name": "老董",
        "canonical_name": "老董",
        "display_name": "老董",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "visual_card_id": "VC000052",
        "voice_card_id": "VO000052",
        "asset_binding_id": "AB000052",
        "visual_anchor_summary": "老董，角色姓名",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残"
          ],
          "variant_keys": [
            "VO000052:default",
            "VO000052:low",
            "VO000052: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": [
          "VO000052:default",
          "VO000052:low",
          "VO000052: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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000052",
          "visual_card_id": "VC000052",
          "voice_card_id": "VO000052",
          "asset_binding_id": "AB000052"
        }
      },
      {
        "entity_uid": "E000004",
        "name": "黄瑞和",
        "canonical_name": "黄瑞和",
        "display_name": "黄瑞和",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B001"
        ],
        "visual_card_id": "VC000004",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004",
        "visual_anchor_summary": "黄瑞和，功能角色",
        "design_prompt_fragments": [],
        "costume_variants": [],
        "state_variants": [
          {
            "variant_id": "VC000004:state:weak",
            "label": "虚弱态",
            "variant_type": "weak",
            "signals": [
              "病"
            ],
            "evidence": [
              "病人",
              "有个大户，姓黄，名叫瑞和，害了一个奇病"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B001",
            "title": "【闪回】为黄瑞和治疗奇病的关键事件",
            "kind": "bridge",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VC000004:costume:default",
            "VC000004:state:weak",
            "VO000004:default",
            "VO000004:low",
            "VO000004: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": [
          "VC000004:costume:default",
          "VC000004:state:weak",
          "VO000004:default",
          "VO000004:low",
          "VO000004: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": [
            "EP0001B001"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000004",
          "visual_card_id": "VC000004",
          "voice_card_id": "VO000004",
          "asset_binding_id": "AB000004"
        }
      }
    ],
    "locations": [
      {
        "entity_uid": "E000046",
        "name": "抚署",
        "canonical_name": "抚署",
        "display_name": "抚署",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "supporting",
        "priority": "P2",
        "location_role": "recurring_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0013",
          "S0014",
          "S0015"
        ],
        "source_group_ids": [
          "AG0011",
          "AG0012",
          "AG0013"
        ],
        "source_beat_ids": [
          "AB0011",
          "AB0012",
          "AB0013"
        ],
        "block_ids": [
          "EP0002B005",
          "EP0002B006",
          "EP0002B007"
        ],
        "visual_card_id": "VC000046",
        "asset_binding_id": "AB000046",
        "identity_summary": "明朝齐王府；官府衙门",
        "visual_anchor_summary": "老残穿着随身衣服，同高绍殷进了抚署；官府衙门",
        "design_prompt_fragments": [
          "老残穿着随身衣服，同高绍殷进了抚署；官府衙门",
          "抚署",
          "老残穿着随身衣服，同高绍殷…",
          "官府衙门",
          "明朝齐王府"
        ],
        "location_core": [
          "官府衙门",
          "明朝齐王府"
        ],
        "landmark_core": [
          "官府衙门"
        ],
        "atmosphere_core": [
          "抚署",
          "老残承诺呈递说帖。"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B006",
            "title": "张宫保求教河工治理的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0014",
            "source_scene_ids": [
              "S0014"
            ],
            "source_group_ids": [
              "AG0012"
            ],
            "source_beat_ids": [
              "AB0012"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "supporting",
          "required_visual_assets": [
            "主场景参考图"
          ],
          "optional_visual_assets": [
            "状态变体图",
            "关键地标补充图"
          ],
          "required_voice_assets": [],
          "usage_hints": [
            "老残穿着随身衣服，同高绍殷进了抚署",
            "官府衙门"
          ],
          "owner_candidates": [
            "老残",
            "吴氏",
            "吴举人",
            "差人"
          ],
          "variant_keys": [
            "VC000046:state:wounded"
          ],
          "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 集、命中 3 个剧本块，适合优先建主场景。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B005",
            "EP0002B006",
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0013",
            "S0014",
            "S0015"
          ],
          "source_group_ids": [
            "AG0011",
            "AG0012",
            "AG0013"
          ],
          "source_beat_ids": [
            "AB0011",
            "AB0012",
            "AB0013"
          ],
          "entity_uid": "E000046",
          "visual_card_id": "VC000046",
          "voice_card_id": "",
          "asset_binding_id": "AB000046"
        }
      },
      {
        "entity_uid": "E000022",
        "name": "明湖居",
        "canonical_name": "明湖居",
        "display_name": "明湖居",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "supporting",
        "priority": "P2",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0006"
        ],
        "source_group_ids": [
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0006"
        ],
        "block_ids": [
          "EP0001B006"
        ],
        "visual_card_id": "VC000022",
        "asset_binding_id": "AB000022",
        "identity_summary": "大戏园子",
        "visual_anchor_summary": "明湖居",
        "design_prompt_fragments": [
          "明湖居",
          "大戏园子",
          "二十四日明湖居"
        ],
        "location_core": [
          "明湖居",
          "大戏园子",
          "二十四日明湖居",
          "满园子里的人"
        ],
        "landmark_core": [
          "二十四日明湖居"
        ],
        "atmosphere_core": [
          "明湖居"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "supporting",
          "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": [
            "EP0001B006"
          ],
          "source_scene_ids": [
            "S0006"
          ],
          "source_group_ids": [
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0006"
          ],
          "entity_uid": "E000022",
          "visual_card_id": "VC000022",
          "voice_card_id": "",
          "asset_binding_id": "AB000022"
        }
      },
      {
        "entity_uid": "E000058",
        "name": "于家屯",
        "canonical_name": "于家屯",
        "display_name": "于家屯",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B003"
        ],
        "visual_card_id": "VC000058",
        "asset_binding_id": "AB000058",
        "identity_summary": "村庄",
        "visual_anchor_summary": "村庄",
        "design_prompt_fragments": [
          "村庄",
          "于家屯"
        ],
        "location_core": [
          "村庄"
        ],
        "landmark_core": [
          "村庄"
        ],
        "atmosphere_core": [
          "城外"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B003",
            "title": "玉贤率马队追击",
            "kind": "action",
            "lead_scene_id": "S0019",
            "source_scene_ids": [
              "S0019"
            ],
            "source_group_ids": [
              "AG0017"
            ],
            "source_beat_ids": [
              "AB0017"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B003"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000058",
          "visual_card_id": "VC000058",
          "voice_card_id": "",
          "asset_binding_id": "AB000058"
        }
      },
      {
        "entity_uid": "E000018",
        "name": "古水仙祠",
        "canonical_name": "古水仙祠",
        "display_name": "古水仙祠",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B005"
        ],
        "visual_card_id": "VC000018",
        "asset_binding_id": "AB000018",
        "identity_summary": "破旧祠堂",
        "visual_anchor_summary": "古水仙祠",
        "design_prompt_fragments": [
          "古水仙祠",
          "破旧祠堂"
        ],
        "location_core": [
          "古水仙祠",
          "破旧祠堂",
          "上题古水仙祠四个字"
        ],
        "landmark_core": [
          "古水仙祠",
          "破旧祠堂",
          "上题古水仙祠四个字"
        ],
        "atmosphere_core": [
          "古水仙祠"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0001B005"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000018",
          "visual_card_id": "VC000018",
          "voice_card_id": "",
          "asset_binding_id": "AB000018"
        }
      },
      {
        "entity_uid": "E000016",
        "name": "大明湖",
        "canonical_name": "大明湖",
        "display_name": "大明湖",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "山岳/洞天",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B005"
        ],
        "visual_card_id": "VC000016",
        "asset_binding_id": "AB000016",
        "identity_summary": "湖泊风景",
        "visual_anchor_summary": "大明湖",
        "design_prompt_fragments": [
          "大明湖",
          "山岳/洞天",
          "湖泊风景"
        ],
        "location_core": [
          "大明湖",
          "湖泊风景",
          "去看看大明湖的風景",
          "請幾位體面客，明兒帶到大明湖上去吃"
        ],
        "landmark_core": [
          "湖泊风景"
        ],
        "atmosphere_core": [
          "湖泊风景"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0001B005"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000016",
          "visual_card_id": "VC000016",
          "voice_card_id": "",
          "asset_binding_id": "AB000016"
        }
      },
      {
        "entity_uid": "E000021",
        "name": "小布政司街",
        "canonical_name": "小布政司街",
        "display_name": "小布政司街",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B005"
        ],
        "visual_card_id": "VC000021",
        "asset_binding_id": "AB000021",
        "identity_summary": "街道名",
        "visual_anchor_summary": "小布政司街",
        "design_prompt_fragments": [
          "小布政司街",
          "街道名",
          "缓缓向小布政司街走去"
        ],
        "location_core": [
          "小布政司街",
          "街道名",
          "缓缓向小布政司街走去"
        ],
        "landmark_core": [
          "小布政司街",
          "街道名",
          "缓缓向小布政司街走去"
        ],
        "atmosphere_core": [
          "古水仙祠"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0001B005"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000021",
          "visual_card_id": "VC000021",
          "voice_card_id": "",
          "asset_binding_id": "AB000021"
        }
      },
      {
        "entity_uid": "E000034",
        "name": "趵突泉",
        "canonical_name": "趵突泉",
        "display_name": "趵突泉",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "山岳/洞天",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000034",
        "asset_binding_id": "AB000034",
        "identity_summary": "济南名泉；七十二泉之首",
        "visual_anchor_summary": "这趵突泉乃济南府七十二泉中的第一个泉",
        "design_prompt_fragments": [
          "这趵突泉乃济南府七十二泉中的第一个泉",
          "趵突泉",
          "山岳/洞天",
          "这趵突泉乃济南府七十二泉中…",
          "济南名泉",
          "七十二泉之首"
        ],
        "location_core": [
          "这趵突泉乃济南府七十二泉中的第一个泉"
        ],
        "landmark_core": [
          "济南名泉",
          "七十二泉之首"
        ],
        "atmosphere_core": [
          "戏台"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000034",
          "visual_card_id": "VC000034",
          "voice_card_id": "",
          "asset_binding_id": "AB000034"
        }
      },
      {
        "entity_uid": "E000036",
        "name": "金泉书院",
        "canonical_name": "金泉书院",
        "display_name": "金泉书院",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "洞府/殿阁",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000036",
        "asset_binding_id": "AB000036",
        "identity_summary": "书院",
        "visual_anchor_summary": "书院",
        "design_prompt_fragments": [
          "书院",
          "金泉书院",
          "洞府/殿阁",
          "寻着了金泉书院"
        ],
        "location_core": [
          "书院"
        ],
        "landmark_core": [
          "寻着了金泉书院"
        ],
        "atmosphere_core": [
          "戏台"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000036",
          "visual_card_id": "VC000036",
          "voice_card_id": "",
          "asset_binding_id": "AB000036"
        }
      },
      {
        "entity_uid": "E000039",
        "name": "高公馆",
        "canonical_name": "高公馆",
        "display_name": "高公馆",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "visual_card_id": "VC000039",
        "asset_binding_id": "AB000039",
        "identity_summary": "高公住所",
        "visual_anchor_summary": "高公馆",
        "design_prompt_fragments": [
          "高公馆",
          "高公住所",
          "门旁贴了高公馆三个字"
        ],
        "location_core": [
          "高公馆",
          "高公住所",
          "门旁贴了高公馆三个字"
        ],
        "landmark_core": [
          "门旁贴了高公馆三个字"
        ],
        "atmosphere_core": [
          "黑虎泉"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "minor",
          "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B003"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000039",
          "visual_card_id": "VC000039",
          "voice_card_id": "",
          "asset_binding_id": "AB000039"
        }
      },
      {
        "entity_uid": "E000045",
        "name": "北柱楼",
        "canonical_name": "北柱楼",
        "display_name": "北柱楼",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "background",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "visual_card_id": "VC000045",
        "asset_binding_id": "AB000045",
        "identity_summary": "宴请场所",
        "visual_anchor_summary": "北柱楼",
        "design_prompt_fragments": [
          "北柱楼",
          "宴请场所"
        ],
        "location_core": [
          "北柱楼",
          "宴请场所",
          "还在北柱楼办了一席酒"
        ],
        "landmark_core": [
          "北柱楼",
          "宴请场所",
          "还在北柱楼办了一席酒"
        ],
        "atmosphere_core": [
          "高公馆内室"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "老残检查病人喉咙的细节",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B004"
          ],
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ],
          "entity_uid": "E000045",
          "visual_card_id": "VC000045",
          "voice_card_id": "",
          "asset_binding_id": "AB000045"
        }
      },
      {
        "entity_uid": "E000009",
        "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",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B002"
        ],
        "visual_card_id": "VC000009",
        "asset_binding_id": "AB000009",
        "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": "bridge",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "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": true,
          "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": 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
        },
        "review_notes": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "实体主档待复核"
        ],
        "reason": "覆盖 1 集、命中 2 个剧本块，适合优先建主场景。",
        "risk_flags": [
          "entity_review",
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "实体主档待复核；参考图缺口；视觉锁定缺口",
        "init_action": "review_required",
        "init_action_reason": "实体主档待复核；参考图缺口；视觉锁定缺口",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B001",
            "EP0001B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000009",
          "visual_card_id": "VC000009",
          "voice_card_id": "",
          "asset_binding_id": "AB000009"
        }
      },
      {
        "entity_uid": "E000037",
        "name": "金线泉",
        "canonical_name": "金线泉",
        "display_name": "金线泉",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "山岳/洞天",
        "importance": "background",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000037",
        "asset_binding_id": "AB000037",
        "identity_summary": "四大名泉之二",
        "visual_anchor_summary": "金线泉",
        "design_prompt_fragments": [
          "金线泉",
          "山岳/洞天",
          "四大名泉之二",
          "就是金线泉了"
        ],
        "location_core": [
          "金线泉",
          "四大名泉之二",
          "就是金线泉了"
        ],
        "landmark_core": [
          "四大名泉之二"
        ],
        "atmosphere_core": [
          "戏台"
        ],
        "style_constraints": [
          "保持同一实体在跨镜头中的核心身份稳定",
          "保持场景结构、地标和整体氛围一致"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000037",
          "visual_card_id": "VC000037",
          "voice_card_id": "",
          "asset_binding_id": "AB000037"
        }
      },
      {
        "entity_uid": "",
        "name": "南门",
        "canonical_name": "南门",
        "display_name": "南门",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "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": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B003"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "城外",
        "canonical_name": "城外",
        "display_name": "城外",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B003"
        ],
        "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": "EP0003",
            "block_id": "EP0003B003",
            "title": "玉贤率马队追击",
            "kind": "action",
            "lead_scene_id": "S0019",
            "source_scene_ids": [
              "S0019"
            ],
            "source_group_ids": [
              "AG0017"
            ],
            "source_beat_ids": [
              "AB0017"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B003"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "客店",
        "canonical_name": "客店",
        "display_name": "客店",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B001"
        ],
        "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": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "客栈",
        "canonical_name": "客栈",
        "display_name": "客栈",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0016"
        ],
        "source_group_ids": [
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0014"
        ],
        "block_ids": [
          "EP0002B008"
        ],
        "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": "EP0002",
            "block_id": "EP0002B008",
            "title": "【传闻】老残否认抚台邀请的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0016",
            "source_scene_ids": [
              "S0016"
            ],
            "source_group_ids": [
              "AG0014"
            ],
            "source_beat_ids": [
              "AB0014"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B008"
          ],
          "source_scene_ids": [
            "S0016"
          ],
          "source_group_ids": [
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "客栈房间",
        "canonical_name": "客栈房间",
        "display_name": "客栈房间",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B001"
        ],
        "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": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "宫保签押房",
        "canonical_name": "宫保签押房",
        "display_name": "宫保签押房",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0014"
        ],
        "source_group_ids": [
          "AG0012"
        ],
        "source_beat_ids": [
          "AB0012"
        ],
        "block_ids": [
          "EP0002B006"
        ],
        "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": "EP0002",
            "block_id": "EP0002B006",
            "title": "张宫保求教河工治理的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0014",
            "source_scene_ids": [
              "S0014"
            ],
            "source_group_ids": [
              "AG0012"
            ],
            "source_beat_ids": [
              "AB0012"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B006"
          ],
          "source_scene_ids": [
            "S0014"
          ],
          "source_group_ids": [
            "AG0012"
          ],
          "source_beat_ids": [
            "AB0012"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "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",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B003"
        ],
        "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": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ],
        "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": [
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "戏台",
        "canonical_name": "戏台",
        "display_name": "戏台",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B001",
          "EP0002B002"
        ],
        "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": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ],
        "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 集、命中 2 个剧本块，适合优先建主场景。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "should_build",
        "init_action_reason": "场景具备候选映射，建议按主场景之后补齐",
        "source_ref": {
          "episode_ids": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B001",
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "撫署",
        "canonical_name": "撫署",
        "display_name": "撫署",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0021"
        ],
        "source_group_ids": [
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0019"
        ],
        "block_ids": [
          "EP0003B005"
        ],
        "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": "EP0003",
            "block_id": "EP0003B005",
            "title": "玉贤搜查于家并发现可疑衣物",
            "kind": "dialogue",
            "lead_scene_id": "S0021",
            "source_scene_ids": [
              "S0021"
            ],
            "source_group_ids": [
              "AG0019"
            ],
            "source_beat_ids": [
              "AB0019"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B005"
          ],
          "source_scene_ids": [
            "S0021"
          ],
          "source_group_ids": [
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "明湖居戏台",
        "canonical_name": "明湖居戏台",
        "display_name": "明湖居戏台",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B001"
        ],
        "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": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B001"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "济南",
        "canonical_name": "济南",
        "display_name": "济南",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "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": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "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",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B003"
        ],
        "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": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ],
        "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": [
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "老残寓所",
        "canonical_name": "老残寓所",
        "display_name": "老残寓所",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0013"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "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": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B005"
          ],
          "source_scene_ids": [
            "S0013"
          ],
          "source_group_ids": [
            "AG0011"
          ],
          "source_beat_ids": [
            "AB0011"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "船上",
        "canonical_name": "船上",
        "display_name": "船上",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "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": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "董家口",
        "canonical_name": "董家口",
        "display_name": "董家口",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "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": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "雒口",
        "canonical_name": "雒口",
        "display_name": "雒口",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "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": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ],
        "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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "高公府邸",
        "canonical_name": "高公府邸",
        "display_name": "高公府邸",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "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": "EP0002",
            "block_id": "EP0002B004",
            "title": "老残检查病人喉咙的细节",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B004"
          ],
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "高公馆内室",
        "canonical_name": "高公馆内室",
        "display_name": "高公馆内室",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0010"
        ],
        "source_beat_ids": [
          "AB0010"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "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": "EP0002",
            "block_id": "EP0002B004",
            "title": "老残检查病人喉咙的细节",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B004"
          ],
          "source_scene_ids": [
            "S0012"
          ],
          "source_group_ids": [
            "AG0010"
          ],
          "source_beat_ids": [
            "AB0010"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "entity_uid": "",
        "name": "黑虎泉",
        "canonical_name": "黑虎泉",
        "display_name": "黑虎泉",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "unknown",
        "priority": "P4",
        "location_role": "oneoff_set",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B003"
        ],
        "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": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ],
        "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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B003"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      }
    ],
    "props": [
      {
        "entity_uid": "E000010",
        "name": "帆船",
        "canonical_name": "帆船",
        "display_name": "帆船",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "物品",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "prop_role": "support_prop",
        "episode_ids": [
          "EP0001"
        ],
        "first_seen": "C0002",
        "last_seen": "C0003",
        "source_scene_ids": [
          "S0002",
          "S0003"
        ],
        "source_group_ids": [
          "AG0002",
          "AG0003"
        ],
        "source_beat_ids": [
          "AB0002",
          "AB0003"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "visual_card_id": "VC000010",
        "asset_binding_id": "AB000010",
        "identity_summary": "破损的船只",
        "visual_anchor_summary": "帆船",
        "design_prompt_fragments": [
          "帆船",
          "破损的船只",
          "那邊一隻帆船",
          "緩緩的尾大船之後"
        ],
        "prop_core": [
          "帆船",
          "破损的船只",
          "那邊一隻帆船",
          "緩緩的尾大船之後"
        ],
        "material_core": [],
        "form_core": [
          "帆船",
          "破损的船只",
          "那邊一隻帆船"
        ],
        "usage_core": [
          "那邊一隻帆船",
          "緩緩的尾大船之後"
        ],
        "owner_candidates": [
          "渔船",
          "三人"
        ],
        "matched_terms": [
          "帆船",
          "大船"
        ],
        "usage_hits": 2,
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "prop",
          "priority": "minor",
          "required_visual_assets": [
            "标准参考图"
          ],
          "optional_visual_assets": [
            "状态变体图",
            "使用状态图"
          ],
          "required_voice_assets": [],
          "usage_hints": [
            "那邊一隻帆船",
            "緩緩的尾大船之後"
          ],
          "owner_candidates": [
            "渔船",
            "三人"
          ],
          "variant_keys": [
            "VC000010:state:wounded"
          ],
          "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": "剧本块命中 2 次，适合优先建立道具/界面资产。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [
            "EP0001B002",
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0002",
            "S0003"
          ],
          "source_group_ids": [
            "AG0002",
            "AG0003"
          ],
          "source_beat_ids": [
            "AB0002",
            "AB0003"
          ],
          "entity_uid": "E000010",
          "visual_card_id": "VC000010",
          "voice_card_id": "",
          "asset_binding_id": "AB000010"
        }
      },
      {
        "entity_uid": "E000011",
        "name": "远镜",
        "canonical_name": "远镜",
        "display_name": "远镜",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "物品",
        "subtype": "法器",
        "importance": "minor",
        "priority": "P3",
        "prop_role": "incidental_prop",
        "episode_ids": [
          "EP0001"
        ],
        "first_seen": "C0002",
        "last_seen": "C0002",
        "source_scene_ids": [
          "S0002"
        ],
        "source_group_ids": [
          "AG0002"
        ],
        "source_beat_ids": [
          "AB0002"
        ],
        "block_ids": [
          "EP0001B002"
        ],
        "visual_card_id": "VC000011",
        "asset_binding_id": "AB000011",
        "identity_summary": "观察工具",
        "visual_anchor_summary": "远镜；观察工具",
        "design_prompt_fragments": [
          "远镜；观察工具",
          "远镜",
          "法器",
          "观察工具",
          "慧生還拿遠鏡左右觀視"
        ],
        "prop_core": [
          "远镜",
          "观察工具",
          "慧生還拿遠鏡左右觀視"
        ],
        "material_core": [],
        "form_core": [
          "远镜",
          "观察工具",
          "慧生還拿遠鏡左右觀視"
        ],
        "usage_core": [
          "慧生還拿遠鏡左右觀視"
        ],
        "owner_candidates": [
          "三人"
        ],
        "matched_terms": [
          "远镜"
        ],
        "usage_hits": 1,
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "prop",
          "priority": "minor",
          "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 次，适合优先建立道具/界面资产。",
        "risk_flags": [
          "visual_reference_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": "E000011",
          "visual_card_id": "VC000011",
          "voice_card_id": "",
          "asset_binding_id": "AB000011"
        }
      },
      {
        "entity_uid": "E000030",
        "name": "三弦子",
        "canonical_name": "三弦子",
        "display_name": "三弦子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "物品",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "prop_role": "incidental_prop",
        "episode_ids": [
          "EP0002"
        ],
        "first_seen": "C0005",
        "last_seen": "C0005",
        "source_scene_ids": [
          "S0008"
        ],
        "source_group_ids": [
          "AG0007"
        ],
        "source_beat_ids": [
          "AB0007"
        ],
        "block_ids": [
          "EP0002B001"
        ],
        "visual_card_id": "VC000030",
        "asset_binding_id": "AB000030",
        "identity_summary": "弹拨乐器；伴奏用",
        "visual_anchor_summary": "三弦子",
        "design_prompt_fragments": [
          "三弦子",
          "弹拨乐器",
          "慢慢的将三弦子取来"
        ],
        "prop_core": [
          "三弦子",
          "弹拨乐器",
          "伴奏用",
          "慢慢的将三弦子取来"
        ],
        "material_core": [],
        "form_core": [
          "三弦子",
          "弹拨乐器",
          "伴奏用"
        ],
        "usage_core": [
          "慢慢的将三弦子取来"
        ],
        "owner_candidates": [
          "弹弦子的"
        ],
        "matched_terms": [
          "三弦子"
        ],
        "usage_hits": 1,
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "prop",
          "priority": "minor",
          "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 次，适合优先建立道具/界面资产。",
        "risk_flags": [
          "visual_reference_gap",
          "visual_lock_gap"
        ],
        "risk_summary": "参考图缺口；视觉锁定缺口",
        "init_action": "ready",
        "init_action_reason": "当前信息已足够直接进入 Dramart 初始化",
        "source_ref": {
          "episode_ids": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B001"
          ],
          "source_scene_ids": [
            "S0008"
          ],
          "source_group_ids": [
            "AG0007"
          ],
          "source_beat_ids": [
            "AB0007"
          ],
          "entity_uid": "E000030",
          "visual_card_id": "VC000030",
          "voice_card_id": "",
          "asset_binding_id": "AB000030"
        }
      }
    ],
    "voices": [
      {
        "entity_uid": "E000001",
        "name": "老残",
        "canonical_name": "老残",
        "display_name": "老残",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P0",
        "role_tier": "lead",
        "voice_card_id": "VO000001",
        "asset_binding_id": "AB000001",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B005",
          "EP0002B005",
          "EP0002B007"
        ],
        "voice_anchor_summary": "老残；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000001:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000001:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000001:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "core",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [
            "老残穿着随身衣服，同高绍殷进了抚署"
          ],
          "owner_candidates": [
            "文章伯",
            "德慧生",
            "登州",
            "蓬莱阁"
          ],
          "variant_keys": [
            "VC000001:costume:default",
            "VC000001:state:wounded",
            "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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B001",
            "EP0001B005",
            "EP0002B005",
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000001",
          "visual_card_id": "",
          "voice_card_id": "VO000001",
          "asset_binding_id": "AB000001"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B001",
            "title": "【闪回】为黄瑞和治疗奇病的关键事件",
            "kind": "bridge",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000014",
        "name": "三人",
        "canonical_name": "三人",
        "display_name": "三人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003",
          "EP0001B004",
          "EP0003B005"
        ],
        "voice_anchor_summary": "三人；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000014:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000014:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000014:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "渔船",
            "远镜",
            "罗盘",
            "文章伯"
          ],
          "variant_keys": [
            "VC000014:costume:default",
            "VC000014:state:wounded",
            "VO000014:default",
            "VO000014:low",
            "VO000014: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",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B002",
            "EP0001B003",
            "EP0001B004",
            "EP0003B005"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000014",
          "visual_card_id": "",
          "voice_card_id": "VO000014",
          "asset_binding_id": "AB000014"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "以传统章回体句式留下三人命运的悬念。",
            "kind": "bridge",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B005",
            "title": "玉贤搜查于家并发现可疑衣物",
            "kind": "dialogue",
            "lead_scene_id": "S0021",
            "source_scene_ids": [
              "S0021"
            ],
            "source_group_ids": [
              "AG0019"
            ],
            "source_beat_ids": [
              "AB0019"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000023",
        "name": "白妞",
        "canonical_name": "白妞",
        "display_name": "白妞",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000023",
        "asset_binding_id": "AB000023",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B005",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "voice_anchor_summary": "白妞；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000023:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000023:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000023:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "说书本事",
            "黑妞",
            "明湖居"
          ],
          "variant_keys": [
            "VC000023:costume:default",
            "VO000023:default",
            "VO000023:low",
            "VO000023: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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B005",
            "EP0001B006",
            "EP0002B001",
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000023",
          "visual_card_id": "",
          "voice_card_id": "VO000023",
          "asset_binding_id": "AB000023"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B005",
            "title": "【梦境】【蒙太奇】沉船梦醒的瞬间",
            "kind": "montage",
            "lead_scene_id": "S0005",
            "source_scene_ids": [
              "S0005"
            ],
            "source_group_ids": [
              "AG0005"
            ],
            "source_beat_ids": [
              "AB0005"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000043",
        "name": "宫保",
        "canonical_name": "宫保",
        "display_name": "宫保",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B007"
        ],
        "voice_anchor_summary": "宫保；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000043:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000043:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000043:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "姚云翁",
            "高公",
            "老残"
          ],
          "variant_keys": [
            "VC000043:costume:default",
            "VO000043:default",
            "VO000043:low",
            "VO000043: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000043",
          "visual_card_id": "",
          "voice_card_id": "VO000043",
          "asset_binding_id": "AB000043"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000006",
        "name": "德慧生",
        "canonical_name": "德慧生",
        "display_name": "德慧生",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000006",
        "asset_binding_id": "AB000006",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "voice_anchor_summary": "德慧生；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000006:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000006:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000006:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "文章伯"
          ],
          "variant_keys": [
            "VC000006:costume:default",
            "VC000006:state:wounded",
            "VO000006:default",
            "VO000006:low",
            "VO000006: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",
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000006",
          "visual_card_id": "",
          "voice_card_id": "VO000006",
          "asset_binding_id": "AB000006"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000005",
        "name": "文章伯",
        "canonical_name": "文章伯",
        "display_name": "文章伯",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000005",
        "asset_binding_id": "AB000005",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B002",
          "EP0001B003"
        ],
        "voice_anchor_summary": "文章伯；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000005:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000005:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000005:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "德慧生",
            "三人"
          ],
          "variant_keys": [
            "VC000005:costume:default",
            "VC000005:state:wounded",
            "VO000005:default",
            "VO000005:low",
            "VO000005: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",
            "EP0001B003"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000005",
          "visual_card_id": "",
          "voice_card_id": "VO000005",
          "asset_binding_id": "AB000005"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B002",
            "title": "三人相约登蓬莱阁",
            "kind": "dialogue",
            "lead_scene_id": "S0002",
            "source_scene_ids": [
              "S0002"
            ],
            "source_group_ids": [
              "AG0002"
            ],
            "source_beat_ids": [
              "AB0002"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000049",
        "name": "玉贤",
        "canonical_name": "玉贤",
        "display_name": "玉贤",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000049",
        "asset_binding_id": "AB000049",
        "voice_role": "character",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002",
          "EP0003B003",
          "EP0003B004",
          "EP0003B005"
        ],
        "voice_anchor_summary": "玉贤；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000049:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000049:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000049:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "于家屯",
            "于学礼",
            "于家父子"
          ],
          "variant_keys": [
            "VC000049:costume:default",
            "VO000049:default",
            "VO000049:low",
            "VO000049: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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002",
            "EP0003B003",
            "EP0003B004",
            "EP0003B005"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000049",
          "visual_card_id": "",
          "voice_card_id": "VO000049",
          "asset_binding_id": "AB000049"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B003",
            "title": "玉贤率马队追击",
            "kind": "action",
            "lead_scene_id": "S0019",
            "source_scene_ids": [
              "S0019"
            ],
            "source_group_ids": [
              "AG0017"
            ],
            "source_beat_ids": [
              "AB0017"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B004",
            "title": "玉贤率马队夜间追捕强盗的火光与枪声…",
            "kind": "action",
            "lead_scene_id": "S0020",
            "source_scene_ids": [
              "S0020"
            ],
            "source_group_ids": [
              "AG0018"
            ],
            "source_beat_ids": [
              "AB0018"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B005",
            "title": "玉贤搜查于家并发现可疑衣物",
            "kind": "dialogue",
            "lead_scene_id": "S0021",
            "source_scene_ids": [
              "S0021"
            ],
            "source_group_ids": [
              "AG0019"
            ],
            "source_beat_ids": [
              "AB0019"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000040",
        "name": "高公",
        "canonical_name": "高公",
        "display_name": "高公",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000040",
        "asset_binding_id": "AB000040",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B003",
          "EP0002B004",
          "EP0002B005",
          "EP0002B007"
        ],
        "voice_anchor_summary": "高公；角色 / 男性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000040:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000040:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000040:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "老残",
            "宫保"
          ],
          "variant_keys": [
            "VC000040:costume:default",
            "VO000040:default",
            "VO000040:low",
            "VO000040: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B003",
            "EP0002B004",
            "EP0002B005",
            "EP0002B007"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000040",
          "visual_card_id": "",
          "voice_card_id": "VO000040",
          "asset_binding_id": "AB000040"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "老残检查病人喉咙的细节",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "高绍殷乘轿拜访老残的场景",
            "kind": "dialogue",
            "lead_scene_id": "S0013",
            "source_scene_ids": [
              "S0013"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B007",
            "title": "宫保邀请老残入住南书房",
            "kind": "dialogue",
            "lead_scene_id": "S0015",
            "source_scene_ids": [
              "S0015"
            ],
            "source_group_ids": [
              "AG0013"
            ],
            "source_beat_ids": [
              "AB0013"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000048",
        "name": "差官",
        "canonical_name": "差官",
        "display_name": "差官",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "voice_card_id": "VO000048",
        "asset_binding_id": "AB000048",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0003",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0003",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0003",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0002B001",
          "EP0002B003",
          "EP0002B006",
          "EP0002B008",
          "EP0003B001"
        ],
        "voice_anchor_summary": "差官；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000048:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000048:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000048:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
            "VC000048:costume:default",
            "VO000048:default",
            "VO000048:low",
            "VO000048: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",
            "EP0002",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B003",
            "EP0002B001",
            "EP0002B003",
            "EP0002B006",
            "EP0002B008",
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0003",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0003",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0003",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000048",
          "visual_card_id": "",
          "voice_card_id": "VO000048",
          "asset_binding_id": "AB000048"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B003",
            "title": "三人驾船追赶大船",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "十二点半的时间点",
            "kind": "scene",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B006",
            "title": "张宫保求教河工治理的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0014",
            "source_scene_ids": [
              "S0014"
            ],
            "source_group_ids": [
              "AG0012"
            ],
            "source_beat_ids": [
              "AB0012"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B008",
            "title": "【传闻】老残否认抚台邀请的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0016",
            "source_scene_ids": [
              "S0016"
            ],
            "source_group_ids": [
              "AG0014"
            ],
            "source_beat_ids": [
              "AB0014"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000024",
        "name": "茶房",
        "canonical_name": "茶房",
        "display_name": "茶房",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "voice_card_id": "VO000024",
        "asset_binding_id": "AB000024",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002",
          "EP0003"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016",
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014",
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014",
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B003",
          "EP0002B008",
          "EP0003B001"
        ],
        "voice_anchor_summary": "茶房；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000024:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000024:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000024:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
            "VC000024:costume:default",
            "VO000024:default",
            "VO000024:low",
            "VO000024: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",
            "EP0002",
            "EP0003"
          ],
          "block_ids": [
            "EP0001B006",
            "EP0002B003",
            "EP0002B008",
            "EP0003B001"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000024",
          "visual_card_id": "",
          "voice_card_id": "VO000024",
          "asset_binding_id": "AB000024"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "游览黑虎泉的视觉呈现",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B008",
            "title": "【传闻】老残否认抚台邀请的对话",
            "kind": "dialogue",
            "lead_scene_id": "S0016",
            "source_scene_ids": [
              "S0016"
            ],
            "source_group_ids": [
              "AG0014"
            ],
            "source_beat_ids": [
              "AB0014"
            ]
          },
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B001",
            "title": "老残为差官倒茶",
            "kind": "dialogue",
            "lead_scene_id": "S0017",
            "source_scene_ids": [
              "S0017"
            ],
            "source_group_ids": [
              "AG0015"
            ],
            "source_beat_ids": [
              "AB0015"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000026",
        "name": "黑妞",
        "canonical_name": "黑妞",
        "display_name": "黑妞",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002"
        ],
        "voice_anchor_summary": "黑妞；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000026:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000026:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000026:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
            "VC000026:costume:default",
            "VO000026:default",
            "VO000026:low",
            "VO000026: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",
            "EP0002"
          ],
          "block_ids": [
            "EP0001B006",
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000026",
          "visual_card_id": "",
          "voice_card_id": "VO000026",
          "asset_binding_id": "AB000026"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B006",
            "title": "【闪回】老残次日前往明湖居",
            "kind": "dialogue",
            "lead_scene_id": "S0006",
            "source_scene_ids": [
              "S0006"
            ],
            "source_group_ids": [
              "AG0006"
            ],
            "source_beat_ids": [
              "AB0006"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000038",
        "name": "士子",
        "canonical_name": "士子",
        "display_name": "士子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "voice_anchor_summary": "士子；角色 / 未知性别呈现 / 青年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持青年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "青年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000038:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000038:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000038:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "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": [
            "VC000038:costume:default",
            "VC000038:state:age",
            "VO000038:default",
            "VO000038:low",
            "VO000038: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": [
            "EP0002"
          ],
          "block_ids": [
            "EP0002B002"
          ],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "E000038",
          "visual_card_id": "",
          "voice_card_id": "VO000038",
          "asset_binding_id": "AB000038"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "黑妞简短说书作为过渡",
            "kind": "scene",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000052",
        "name": "老董",
        "canonical_name": "老董",
        "display_name": "老董",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000052",
        "asset_binding_id": "AB000052",
        "voice_role": "character",
        "episode_ids": [
          "EP0003"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "block_ids": [
          "EP0003B002"
        ],
        "voice_anchor_summary": "老董；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000052:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000052:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000052: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": [
            "VO000052:default",
            "VO000052:low",
            "VO000052: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": [
            "EP0003"
          ],
          "block_ids": [
            "EP0003B002"
          ],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "E000052",
          "visual_card_id": "",
          "voice_card_id": "VO000052",
          "asset_binding_id": "AB000052"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0003",
            "block_id": "EP0003B002",
            "title": "老残为避纠缠连夜离济",
            "kind": "dialogue",
            "lead_scene_id": "S0018",
            "source_scene_ids": [
              "S0018"
            ],
            "source_group_ids": [
              "AG0016"
            ],
            "source_beat_ids": [
              "AB0016"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000004",
        "name": "黄瑞和",
        "canonical_name": "黄瑞和",
        "display_name": "黄瑞和",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "block_ids": [
          "EP0001B001"
        ],
        "voice_anchor_summary": "黄瑞和；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000004:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000004:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000004: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": [
            "VC000004:costume:default",
            "VC000004:state:weak",
            "VO000004:default",
            "VO000004:low",
            "VO000004: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": [
            "EP0001B001"
          ],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "E000004",
          "visual_card_id": "",
          "voice_card_id": "VO000004",
          "asset_binding_id": "AB000004"
        },
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B001",
            "title": "【闪回】为黄瑞和治疗奇病的关键事件",
            "kind": "bridge",
            "lead_scene_id": "S0001",
            "source_scene_ids": [
              "S0001"
            ],
            "source_group_ids": [
              "AG0001"
            ],
            "source_beat_ids": [
              "AB0001"
            ]
          }
        ]
      }
    ]
  },
  "asset_action_summary": {
    "characters": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 14
    },
    "locations": {
      "review_required": 1,
      "must_build": 0,
      "should_build": 19,
      "ready": 11
    },
    "props": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 3
    },
    "voices": {
      "review_required": 0,
      "must_build": 0,
      "should_build": 0,
      "ready": 14
    }
  },
  "risk_summary": {
    "total_risk_item_count": 181,
    "risk_flag_count": 5,
    "flags": [
      {
        "flag": "visual_lock_gap",
        "count": 62,
        "asset_types": [
          "character",
          "location",
          "prop",
          "voice"
        ],
        "examples": [
          "老残",
          "三人",
          "白妞",
          "宫保",
          "德慧生",
          "文章伯"
        ]
      },
      {
        "flag": "visual_reference_gap",
        "count": 62,
        "asset_types": [
          "character",
          "location",
          "prop",
          "voice"
        ],
        "examples": [
          "老残",
          "三人",
          "白妞",
          "宫保",
          "德慧生",
          "文章伯"
        ]
      },
      {
        "flag": "voice_binding_gap",
        "count": 28,
        "asset_types": [
          "character",
          "voice"
        ],
        "examples": [
          "老残",
          "三人",
          "白妞",
          "宫保",
          "德慧生",
          "文章伯"
        ]
      },
      {
        "flag": "voice_reference_gap",
        "count": 28,
        "asset_types": [
          "character",
          "voice"
        ],
        "examples": [
          "老残",
          "三人",
          "白妞",
          "宫保",
          "德慧生",
          "文章伯"
        ]
      },
      {
        "flag": "entity_review",
        "count": 1,
        "asset_types": [
          "location"
        ],
        "examples": [
          "登州"
        ]
      }
    ]
  },
  "review_checklist": [
    {
      "check_id": "CHK0001",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：老残",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000001",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0002",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：老残",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000001",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0003",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：三人",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000014",
      "source_refs": [
        "EP0001",
        "EP0003"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0004",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：三人",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000014",
      "source_refs": [
        "EP0001",
        "EP0003"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0005",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：白妞",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000023",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0006",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：白妞",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000023",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0007",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：宫保",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000043",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0008",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：宫保",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000043",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0009",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：德慧生",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000006",
      "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": "E000006",
      "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": "E000005",
      "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": "E000005",
      "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": "E000049",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0014",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：玉贤",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000049",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0015",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：高公",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000040",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0016",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：高公",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000040",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0017",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：差官",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000048",
      "source_refs": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0018",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：差官",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000048",
      "source_refs": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0019",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：茶房",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000024",
      "source_refs": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0020",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：茶房",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000024",
      "source_refs": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0021",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：黑妞",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000026",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0022",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：黑妞",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000026",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0023",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：士子",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000038",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0024",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：士子",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000038",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0025",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：老董",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000052",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0026",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：老董",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000052",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0027",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：黄瑞和",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000004",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0028",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：黄瑞和",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000004",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0029",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：抚署",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000046",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0030",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：明湖居",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000022",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0031",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：于家屯",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000058",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0032",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：古水仙祠",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000018",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0033",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：大明湖",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000016",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0034",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：小布政司街",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000021",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0035",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：趵突泉",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000034",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0036",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：金泉书院",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000036",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0037",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：高公馆",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000039",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0038",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：北柱楼",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000045",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0039",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：登州",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000009",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0040",
      "category": "manual_review",
      "severity": "info",
      "status": "todo",
      "title": "场景主档待复核：登州",
      "detail": "实体主档仍处于待复核状态，建议在继续资产制作前先确认实体设定。",
      "target_type": "location",
      "target_id": "E000009",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在实体页确认实体主档后，再推进资产或上传。"
    },
    {
      "check_id": "CHK0041",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：金线泉",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000037",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0042",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：南门",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0043",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：城外",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0044",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：客店",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0045",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：客栈",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0046",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：客栈房间",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0047",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：宫保签押房",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0048",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：小渔船",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0049",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：戏台",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0050",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：撫署",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0051",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：明湖居戏台",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0052",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：济南",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0053",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：海上",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0054",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：老残寓所",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0055",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：船上",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0056",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：董家口",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0057",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：雒口",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0003"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0058",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：高公府邸",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0059",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：高公馆内室",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0060",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：黑虎泉",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0061",
      "category": "prop_asset",
      "severity": "info",
      "status": "todo",
      "title": "道具建议补参考：帆船",
      "detail": "关键道具/系统资产尚未准备参考图。",
      "target_type": "prop",
      "target_id": "E000010",
      "source_refs": [
        "C0002",
        "C0003"
      ],
      "recommended_action": "补一张标准参考图，必要时再补特写或界面规范。"
    },
    {
      "check_id": "CHK0062",
      "category": "prop_asset",
      "severity": "info",
      "status": "todo",
      "title": "道具建议补参考：远镜",
      "detail": "关键道具/系统资产尚未准备参考图。",
      "target_type": "prop",
      "target_id": "E000011",
      "source_refs": [
        "C0002"
      ],
      "recommended_action": "补一张标准参考图，必要时再补特写或界面规范。"
    },
    {
      "check_id": "CHK0063",
      "category": "prop_asset",
      "severity": "info",
      "status": "todo",
      "title": "道具建议补参考：三弦子",
      "detail": "关键道具/系统资产尚未准备参考图。",
      "target_type": "prop",
      "target_id": "E000030",
      "source_refs": [
        "C0005"
      ],
      "recommended_action": "补一张标准参考图，必要时再补特写或界面规范。"
    },
    {
      "check_id": "CHK0064",
      "category": "time_mode",
      "severity": "info",
      "status": "todo",
      "title": "存在非主线时间层",
      "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传到 Dramart 前需要显式标注。",
      "target_type": "package",
      "target_id": "outline",
      "source_refs": [
        "flashback",
        "dream",
        "rumor"
      ],
      "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": "# laocanyouji_pg23850_ch1_4\n\n## 故事大纲\n故事核心：老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n核心钩子：以及旁观者（三人）面对险境时“救与不救”、“如何救”的…\n\n## 主要人物\n- 老残：老残穿着随身衣服，同高绍殷进了抚署\n- 三人：角色姓名\n- 白妞（剧本中亦作：王小玉）：后称王小玉\n- 宫保：主要角色\n- 德慧生（剧本中亦作：慧生 / 慧哥）：主要角色\n- 文章伯（剧本中亦作：章伯）：主要角色\n- 玉贤（剧本中亦作：玉大人 / 大人）：主要角色\n- 高公：主要角色\n\n## 分集导览\n- 第01集 老残回店询问茶房：老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n- 第02集 人弦俱寂”的刹那：十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n- 第03集 于朝栋说出‘亲家救我’并流泪：老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n\n## 正文剧本\n\n# 第01集 老残回店询问茶房\n\n本集围绕老残、三人、白妞、德慧生、茶房、文章伯、黄瑞和、管事展开，主要场面落在登州、海上、渔船、帆船、小渔船、古水仙祠、大明湖、小布政司街。老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本集看点集中在“以及旁观者（三人）面对险境时“救与不救”、“如何救”的…”，并收在“老残回店询问茶房。”。\n\n## 场次01 【闪回】为黄瑞和治疗奇病的关键事件\n\n这一场属于回忆时间层，场面落在登州，出场人物有老残、黄瑞和。\n这一场先把介绍老残身世背景，以及他在山东为黄大户治病的经历推到台前。\n场面里先见老残的姓名、字号由来及江湖游医身份，紧跟着把为黄瑞和治疗奇病的关键事件压出来。\n临到场尾，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本场推进：介绍老残身世背景，以及他在山东为黄大户治病的经历，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n场面目标：快速、生动地向观众介绍主角老残，确立其核心身份（江湖郎中）、能力（医术）和当前处境（受人尊敬），为后续剧情展开奠定基础。\n必留动作：老残的姓名、字号由来及江湖游医身份；为黄瑞和治疗奇病的关键事件；黄家设宴庆祝的结局。\n连续抓手：保持倒叙（flashback）结构；明确时间锚点“那年春天”；老残形象首次亮相需清晰。\n前后承接上，要把保持倒叙（flashback）结构与明确时间锚点“那年春天”继续压在同一股气口里。\n\n（登州）\n老残的落魄身世与凭借医术获得尊重的现实转变。\n老残成功治愈黄大户多年顽疾，获得认可和款待。\n老残抬头盯住眼前动静，脚下已经往前迈了出去。\n老残的姓名、字号由来及江湖游医身份。\n黄家设宴庆祝的结局。\n为黄瑞和治疗奇病的关键事件。\n\n## 场次02 三人相约登蓬莱阁\n\n场面落在登州，出场人物有德慧生、文章伯、三人。\n这一场先把老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船推到台前。\n场面里先见三人相约登蓬莱阁，紧跟着把夜间饮酒等待日出的氛围压出来。\n临到场尾，德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n本场推进：老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船，人与自然（风浪中的危船）的冲突初现，以及旁观者（三人）面对险境时“救与不救”、“如何救”的内心萌芽。\n场面目标：在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n必留动作：三人相约登蓬莱阁；夜间饮酒等待日出的氛围；通过望远镜发现危船；德慧生首次惊呼发现危险；三人对危船状况的初步观察与讨论。\n连续抓手：时间锚点：紧接前一日（次日）；角色连续性：老残、文章伯、德慧生三人组；地点连续性：从客房转移到蓬莱阁上层。\n前后承接上，要把紧接前一日（次日）与老残、文章伯、德慧生三人组继续压在同一股气口里。\n\n（登州）\n德慧生盯住三人不放，非要追问出救与不救。\n三人相约登蓬莱阁。\n通过望远镜发现危船。\n德慧生首次惊呼发现危险。\n德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n三人对危船状况的初步观察与讨论。\n在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n\n## 场次03 三人驾船追赶大船\n\n场面落在海上、渔船、帆船、小渔船，出场人物有三人、德慧生、文章伯、差官。\n这一场先把三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑推到台前。\n场面里先见三人驾船追赶大船，紧跟着把清晰听到船上演说内容压出来。\n临到场尾，老残提出“这等人恐怕不是办事的人。\n本场推进：三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑，三人对船上“英雄”真实动机（救国 vs 敛财）的认知冲突，以及即将介入的外部力量与船上封闭权力体系的潜在冲突。\n场面目标：在紧张的海上追逐中，通过偷听演说和三人讨论，快速建立船上“英雄”的负面形象与核心冲突（骗局 vs 拯救）\n必留动作：三人驾船追赶大船；清晰听到船上演说内容；三人对演说者动机的讨论与怀疑；落帆尾随观察的决策。\n连续抓手：角色连续性：老残、德慧生、文章伯；空间连续性：从蓬莱阁到海上；道具连续性：向盘（罗盘）\n前后承接上，要把老残、德慧生、文章伯与从蓬莱阁到海上继续压在同一股气口里。\n\n（海上）\n三人：这等人恐怕不是办事的人，只是用几句文明。\n三人驾船追赶大船。\n清晰听到船上演说内容。\n落帆尾随观察的决策。\n老残：这等人恐怕不是办事的人，只是用几句文明的话头骗几个钱用用罢了！\n在紧张的海上追逐中，通过偷听演说和三人讨论。\n老残：这等人恐怕不是办事的人，只是用几句。\n\n## 场次04 以传统章回体句式留下三人命运的悬念。\n\n出场人物有三人。\n这一场先把以传统章回体句式留下三人命运的悬念推到台前。\n场面里先见“未知三人性命如何”的悬念核心，紧跟着把章回体结尾的叙事功能压出来。\n临到场尾，从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n本场推进：以传统章回体句式留下三人命运的悬念，命运与未知的冲突（三人 vs. 未知的危险/命运），从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n场面目标：通过旁白和画面，将文字悬念转化为视听悬念，自然过渡到下一章节，同时强化三人命运未卜的戏剧张力。\n必留动作：“未知三人性命如何”的悬念核心；章回体结尾的叙事功能。\n连续抓手：承接前一场三人遇险的紧张感；保持时间顺序（S0004在S0003之后）\n前后承接上，要把承接前一场三人遇险的紧张感与保持时间顺序（S0004在S0003之…继续压在同一股气口里。\n\n有人低声追问：“未知三人性命如何”\n\n## 场次05 【梦境】【蒙太奇】沉船梦醒的瞬间\n\n这一场属于梦境时间层，场面落在古水仙祠、大明湖、小布政司街，出场人物有老残、管事、白妞。\n这一场先把老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等推到台前。\n场面里先见沉船梦醒的瞬间，紧跟着把辞别管事的简短对话压出来。\n临到场尾，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n本场推进：老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等，内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n场面目标：用富有诗意的画面和简洁的蒙太奇，高效完成场景转换，建立济南的空间感，刻画老残作为旅人/观察者的角色状态。\n必留动作：沉船梦醒的瞬间；辞别管事的简短对话；抵达济南府的初印象（家家泉水，户户垂杨）；大明湖上千佛山倒影的经典画面；发现白妞说书招贴。\n连续抓手：梦境与现实的光影、色调区分；时间明确为“次日清晨”；老残服装、行李的连贯性；从乡村到城市，从静到闹的空间过渡。\n前后承接上，要把梦境与现实的光影、色调区分与时间明确为“次日清晨”继续压在同一股气口里。\n\n（古水仙祠）\n内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力。\n沉船梦醒的瞬间，发现白妞说书招贴。\n沉船梦醒的瞬间。\n发现白妞说书招贴。\n发现白妞说书招贴，视线从自然景观转向市井文化热点，预示故事焦点转移。\n老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等。\n\n## 场次06 【闪回】老残次日前往明湖居\n\n这一场属于回忆时间层，场面落在明湖居，出场人物有白妞、茶房、黑妞。\n这一场先把老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百推到台前。\n场面里先见茶房介绍白妞技艺（融合多种唱腔、天赋异禀），紧跟着把老残次日前往明湖居压出来。\n临到场尾，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚。\n本场推进：老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百，老残的理性怀疑与茶房/社会对白妞技艺的狂热推崇之间的潜在张力，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n场面目标：通过对话和场景，高效建立白妞说书事件的巨大吸引力与社会影响力，将老残（及观众）的期待值推向高点。\n必留动作：茶房介绍白妞技艺（融合多种唱腔、天赋异禀）；老残次日前往明湖居；明湖居内座无虚席、官员百姓聚集的盛况；老残对茶房所言将信将疑的态度。\n连续抓手：保持flashback（‘昔日’）的时间模式；保留‘次日’的时间跳跃；老残从高升店到明湖居的空间转换；茶房作为信息传递者的角色功能。\n前后承接上，要把保持flashback（‘昔日’）的时…与保留‘次日’的时间跳跃继续压在同一股气口里。\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。\n\n# 第02集 人弦俱寂”的刹那\n\n本集围绕老残、差官、高公、宫保、白妞、茶房、黑妞、士子展开，主要场面落在明湖居戏台、戏台、趵突泉、金泉书院、金线泉、黑虎泉、南门、高公馆。十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。\n本集看点集中在“人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。”，并收在“更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…”。\n\n## 场次01 十二点半的时间点\n\n场面落在明湖居戏台、戏台，出场人物有差官、白妞。\n这一场先把十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝推到台前。\n场面里先见十二点半的时间点，紧跟着把弹弦男人上台及外貌特征压出来。\n临到场尾，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n本场推进：十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝，精湛技艺与丑陋外表的反差，暖场表演（黑妞）与观众更高期待（白妞）之间的潜在张力，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n场面目标：创造一场令人屏息凝神、极具感染力的表演戏，确立白妞作为核心人物的超凡魅力与技艺巅峰，并引发观众（剧中与剧外）的共鸣与赞叹。\n必留动作：十二点半的时间点；弹弦男人上台及外貌特征；三弦子轮指技法的精湛表现；台下观众从漫不经心到叫好不绝的反应转变；黑妞出场演唱。\n连续抓手：时间锚点：十二点半；空间连续性：明湖居戏台；角色出场顺序：弹弦男人 -> 黑妞；情绪递进：平淡 -> 精彩 -> 期待（议论白妞）\n前后承接上，要把十二点半与明湖居戏台继续压在同一股气口里。\n\n（明湖居戏台）\n白妞：霍然一声，人弦俱寂。\n观众：霍然一声，人弦俱寂。\n十二点半的时间点。\n弹弦男人上台及外貌特征。\n观众站在人堆里，脸色一下子就绷住了。\n黑妞出场演唱。\n\n## 场次02 黑妞简短说书作为过渡\n\n场面落在戏台、趵突泉、金泉书院、金线泉，出场人物有白妞、士子、黑妞。\n这一场先把黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一推到台前。\n场面里先见黑妞简短说书作为过渡，紧跟着把白妞表演“黑驴段”的快节奏与清晰吐字压出来。\n临到场尾，士子提及金线泉的奥秘。\n本场推进：黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一，白妞技艺的极致展现（快而清）与观众接收极限之间的张力，本段表演与前一段“绝调”之间的对比与观众评价。\n场面目标：通过视听语言，戏剧化地呈现白妞“黑驴段”表演的技艺特点（快而清），并与前段形成对比，同时将观众的期待情绪推向顶点。\n必留动作：黑妞简短说书作为过渡；白妞表演“黑驴段”的快节奏与清晰吐字；观众（包括士子）的惊叹与期待反应；时间提示（约下午五点）；表演意外收场，众人散去。\n连续抓手：紧接前一场白妞的表演；保持观众角色的连续性；时间线连贯（下午）；保留时间锚点‘次日’。\n前后承接上，要把紧接前一场白妞的表演与保持观众角色的连续性继续压在同一股气口里。\n\n（戏台）\n黑妞简短说书作为过渡。\n观众：黑驴段。\n观众站在人堆里，脸色一下子就绷住了。\n时间提示。\n士子提及金线泉的奥秘。\n表演意外收场，众人散去。\n士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\n\n## 场次03 游览黑虎泉的视觉呈现\n\n场面落在黑虎泉、南门、高公馆，出场人物有高公、茶房、差官。\n这一场先把老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾推到台前。\n场面里先见游览黑虎泉的视觉呈现，紧跟着把高公在公馆门口面带愁容拦路求医压出来。\n临到场尾，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n本场推进：老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾，高公小妾生命垂危（喉疾）与寻求救治的紧迫性，考验老残的医术，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n场面目标：自然地将老残从游览者过渡到医者角色，并通过高公的求医，引出后续的诊治情节和人物关系网。\n必留动作：游览黑虎泉的视觉呈现；高公在公馆门口面带愁容拦路求医；老残进入高公馆并诊脉；高公小妾喉疾的严重性（滴水不进）\n连续抓手：时间锚点：次日（承接S0010）；老残手持串铃的行医标志；高公的江苏口音或官话特征。\n前后承接上，要把次日（承接S0010）与老残手持串铃的行医标志继续压在同一股气口里。\n\n（黑虎泉）\n高公在公馆门口面带愁容拦路求医。\n老残进入高公馆并诊脉。\n高公小妾喉疾的严重性。\n高公小妾生命垂危与寻求救治的紧迫性。\n自然地将老残从游览者过渡到医者角色，并通过高公的求医。\n老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾。\n\n## 场次04 老残检查病人喉咙的细节\n\n场面落在高公馆内室、高公府邸、北柱楼，出场人物有高公。\n这一场先把老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方推到台前。\n场面里先见老残检查病人喉咙的细节，紧跟着把老残对病因的诊断与解释压出来。\n临到场尾，席间官员议论玉佐臣补曹州府及其酷政。\n本场推进：老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方，表面：疾病（火气被寒药所逼）与健康，席间官员议论玉佐臣补曹州府及其酷政，将场景从私人医疗成功转向公共政治议题。\n场面目标：1. 通过一场成功的诊治，立体塑造老残“神医”形象。\n必留动作：老残检查病人喉咙的细节；老残对病因的诊断与解释；开方配药的动作；高公设宴答谢；席间议论玉佐臣补曹州府之事。\n连续抓手：保留时间锚点：几天后；角色连续性：高公/老残；地点转换：高公馆内室->高公府邸->北柱楼；老残医术声望的建立。\n前后承接上，要把几天后与高公/老残继续压在同一股气口里。\n\n（高公馆内室）\n老残对病因的诊断与解释。\n开方配药。\n高公设宴答谢。\n席间议论玉佐臣补曹州府之事。\n表面：疾病与健康。\n老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方。\n表面：疾病（火气被寒药所逼）与健康。\n\n## 场次05 高绍殷乘轿拜访老残的场景\n\n场面落在老残寓所、抚署，出场人物有老残、高公。\n这一场先把高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随推到台前。\n场面里先见高绍殷乘轿拜访老残的场景，紧跟着把高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手…压出来。\n临到场尾，老残同意随高绍殷前往抚署面见宫保。\n本场推进：高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随，老残淡泊的游方郎中心态与宫保代表的官方招揽意图之间的潜在冲突，个人志趣与世俗功名价值观的碰撞，老残同意随高绍殷前往抚署面见宫保。\n场面目标：通过一场看似平常的拜访与对话，塑造老残学识渊博却淡泊名士的形象，同时揭示宫保对其的关注与招揽意图。\n必留动作：高绍殷乘轿拜访老残的场景；高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手写陶诗）的对话；高绍殷转达宫保招揽意图的试探性对话；老残对功名态度的自我剖白；老残同意前往抚署但要求便衣的细节。\n连续抓手：时间：承接前一日老残为妇人诊病后；地点：从老残寓所过渡到山东抚署；角色：老残与高绍殷的衣着、状态保持一致。\n前后承接上，要把承接前一日老残为妇人诊病后与从老残寓所过渡到山东抚署继续压在同一股气口里。\n\n（老残寓所）\n高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\n高绍殷乘轿拜访老残。\n老残同意前往抚署但要求便衣。\n高绍殷赞赏老残藏书。\n老残同意随高绍殷前往抚署面见宫保。\n高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随。\n\n## 场次06 张宫保求教河工治理的对话\n\n场面落在抚署、宫保签押房，出场人物有差官。\n这一场先把老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法推到台前。\n场面里先见老残随高绍殷进入抚署的路径与场景转换，紧跟着把张宫保的出场与外貌（魁梧、仁厚）压出来。\n临到场尾，老残提出“王景”的名字并简要阐述其理念。\n本场推进：老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法，理念冲突：张宫保（及主流）推崇的贾让“不与河争地”策略，与老残提出的王景“抑”字诀治河古法之间的根本对立，老残提出“王景”的名字并简要阐述其理念。\n场面目标：建立老残与张宫保的初次正式关系，将抽象的“河工”议题具体化为“贾让”与“王景”的治河理念之争，为后续情节埋下伏笔。\n必留动作：老残随高绍殷进入抚署的路径与场景转换；张宫保的出场与外貌（魁梧、仁厚）；张宫保求教河工治理的对话；老残对贾让与王景治河策略的对比分析；老残承诺呈递说帖。\n连续抓手：老残的衣着（随身穿戴）；高绍殷作为引荐人的角色；张宫保对河工问题的焦虑感；对话逻辑：从客套到具体议题。\n前后承接上，要把老残的衣着（随身穿戴）与高绍殷作为引荐人的角色继续压在同一股气口里。\n\n（抚署）\n老残盯住张宫保不放，非要追问出王景。\n张宫保的出场与外貌。\n老残对贾让与王景治河策略的对比分析。\n老残：王景。\n老残承诺呈递说帖。\n\n## 场次07 宫保邀请老残入住南书房\n\n场面落在抚署，出场人物有老残、宫保、高公。\n这一场先把宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙推到台前。\n场面里先见宫保邀请老残入住南书房，紧跟着把老残以探亲为由婉拒压出来。\n临到场尾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n本场推进：宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙，宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n场面目标：通过核心对话，明确老残的下一步行动（前往曹州），同时刻画宫保对其的重视与老残的自主性，建立角色间的张力与期待。\n必留动作：宫保邀请老残入住南书房；老残以探亲为由婉拒；老残提及将去曹州并考察玉守；宫保神色怏怏；老残告辞离开。\n连续抓手：紧接上一场景（S0014）的对话氛围；保持老残与宫保的角色状态连续性；维持叙事顺序与故事顺序差（order_delta: -2）\n前后承接上，要把紧接上一场景（S0014）的对话氛围与保持老残与宫保的角色状态连续性继续压在同一股气口里。\n\n（抚署）\n宫保：等鄙人从曹州回来，再领宫保的教罢。\n宫保邀请老残入住南书房。\n老残以探亲为由婉拒。\n老残提及将去曹州并考察玉守。\n老残：等鄙人从曹州回来，再领宫保的教罢。\n宫保站在人堆里，脸色一下子就绷住了。\n宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾。\n\n## 场次08 【传闻】老残否认抚台邀请的对话\n\n这一场属于传闻时间层，场面落在客栈，出场人物有茶房、差官。\n这一场先把老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席推到台前。\n场面里先见老残否认抚台邀请的对话，紧跟着把掌柜转述抚台催促的细节压出来。\n临到场尾，差官不仅送来酒席，更传达“打扫南书房”的明确指令。\n本场推进：老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席，老残的自我认知（普通访客）与外界对他的看法（被抚台、宫保争相礼遇的贵人）之间的错位与矛盾。\n场面目标：通过对话和动作，生动展现老残从被传言包围到收到宫保实质性礼遇的转变，为后续进入宫保府邸做铺垫，并强化老残低调、谨慎的性格。\n必留动作：老残否认抚台邀请的对话；掌柜转述抚台催促的细节；差官送礼并传达打扫南书房之命。\n连续抓手：时间：傍晚；地点：客栈；角色：老残、掌柜、差官、茶房；保持“传言”与“现实”的对比节奏。\n前后承接上，要把傍晚与客栈继续压在同一股气口里。\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。\n\n# 第03集 于朝栋说出‘亲家救我’并流泪\n\n本集围绕玉贤、差官、老董、茶房、三人展开，主要场面落在客栈房间、客店、济南、雒口、船上、董家口、城外、于家屯。老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。\n本集看点集中在“刻画老残作为“铁老爷”初受官场礼遇的场景。”，并收在“于朝栋说出‘亲家救我’并流泪。”。\n\n## 场次01 老残为差官倒茶\n\n场面落在客栈房间、客店，出场人物有茶房、差官。\n这一场先把老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开推到台前。\n场面里先见老残为差官倒茶，紧跟着把差官传达宫保安排南书房入住压出来。\n临到场尾，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n本场推进：老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开，老残的个人原则与即将面临的官场人情、利益诱惑之间的潜在冲突，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n场面目标：通过一系列礼节性互动，刻画老残作为“铁老爷”初受官场礼遇的场景，同时埋下被奉承和劝捐的伏笔，展现其身处漩涡边缘的微妙处境。\n必留动作：老残为差官倒茶；差官传达宫保安排南书房入住；老残写领谢帖子并送客至大门；武巡捕传抚台邀请；掌柜恭维抚台送席。\n连续抓手：承接上一场景（S0016）老残收到礼物的情绪；保持老残从容、客气但保持距离的人物基调；场景从房间内过渡到客店大堂。\n前后承接上，要把承接上一场景（S0016）老残收到礼物…与保持老残从容、客气但保持距离的人物基调继续压在同一股气口里。\n\n（客栈房间）\n老残为差官倒茶。\n老残写领谢帖子并送客至大门。\n张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n掌柜恭维抚台送席。\n老残：铁老爷。\n\n## 场次02 老残为避纠缠连夜离济\n\n场面落在济南、雒口、船上、董家口，出场人物有老董、玉贤。\n这一场先把老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严推到台前。\n场面里先见老残为避纠缠连夜离济，紧跟着把乘船数日抵达董家口压出来。\n临到场尾，老董说出“玉大人倒反做了強盜的兵器了”\n本场推进：老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严，表面冲突：老残打听与老董讲述，老董说出“玉大人倒反做了強盜的兵器了”，这是对玉贤“清官”形象的颠覆性评价，也是后续所有悲剧的根源揭示。\n场面目标：完成场景转换（济南到曹州），并通过关键对话，首次向观众（和老残）揭示核心冲突人物玉贤的矛盾性与危险性，建立悬疑感。\n必留动作：老残为避纠缠连夜离济；乘船数日抵达董家口；老残向老董打听玉贤政绩；老董叹息并讲述玉贤办案严酷反成强盗工具。\n连续抓手：老残从济南到曹州府的行动线；玉贤作为未出场但关键人物的首次侧面塑造。\n前后承接上，要把老残从济南到曹州府的行动线与玉贤作为未出场但关键人物的首次侧面塑造继续压在同一股气口里。\n\n（济南）\n玉贤：玉大人倒反做了強盜的兵器了。\n老残为避纠缠连夜离济。\n乘船数日抵达董家口。\n老残向老董打听玉贤政绩。\n老董叹息并讲述玉贤办案严酷反成强盗工具。\n老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严。\n老董：玉大人倒反做了強盜的兵器了。\n\n## 场次03 玉贤率马队追击\n\n场面落在城外、于家屯，出场人物有玉贤。\n这一场先把老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近推到台前。\n场面里先见玉贤率马队追击，紧跟着把强盗持火把与洋枪压出来。\n临到场尾，追至于家屯时，火光与枪声骤然消失，追捕线索中断。\n本场推进：老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近，玉贤（秩序/追捕方）与未知强盗（混乱/逃亡方）在夜色中的追逐对抗，追至于家屯时，火光与枪声骤然消失，追捕线索中断，行动从主动追击转入被动搜寻。\n场面目标：用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n必留动作：玉贤率马队追击；强盗持火把与洋枪；循火光与枪声追踪；追至于家屯附近时目标消失。\n连续抓手：紧接前序追捕场景（S0018）；保持夜间至天明的时序；玉贤人物状态（愤怒、追击）的连贯。\n前后承接上，要把紧接前序追捕场景（S0018）与保持夜间至天明的时序继续压在同一股气口里。\n\n（城外）\n玉贤率马队追击。\n强盗持火把与洋枪。\n循火光与枪声追踪。\n追至于家屯附近时目标消失。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面。\n老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n\n## 场次04 玉贤率马队夜间追捕强盗的火光与枪声…\n\n出场人物有玉贤。\n这一场先把玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子推到台前。\n场面里先见玉贤率马队夜间追捕强盗的火光与枪声线索，紧跟着把玉贤判断强盗藏匿于村庄并下令封锁压出来。\n临到场尾，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n本场推进：玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子，玉贤追捕强盗的执法行动 vs. 于家父子自称良民、私藏武器仅为自保的辩解，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n场面目标：通过一场紧张的追捕与审问戏，生动刻画玉贤雷厉风行但可能过于武断的执法者形象，同时将于家父子卷入冤案漩涡。\n必留动作：玉贤率马队夜间追捕强盗的火光与枪声线索；玉贤判断强盗藏匿于村庄并下令封锁；从于朝栋家搜出土枪、刀、竿子等物证；玉贤审问于家父子，质问藏匿强盗与私藏军器。\n连续抓手：保持夜间至天明的时序过渡；玉贤角色形象（威严、果断）的连贯性；空间连续性：从野外追捕到进入于家屯村庄。\n前后承接上，要把保持夜间至天明的时序过渡与玉贤角色形象（威严、果断）的连贯性继续压在同一股气口里。\n\n玉大人：我不是逞强，只是不肯糊里糊涂退下去。\n玉贤判断强盗藏匿于村庄并下令封锁。\n从于朝栋家搜出土枪、刀、竿子等物证。\n玉贤审问于家父子，质问藏匿强盗与私藏军器。\n玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子。\n\n## 场次05 玉贤搜查于家并发现可疑衣物\n\n场面落在撫署，出场人物有玉贤、三人。\n这一场先把玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助推到台前。\n场面里先见玉贤搜查于家并发现可疑衣物，紧跟着把玉贤将于家父子押回城压出来。\n临到场尾，于朝栋说出‘亲家救我’并流泪。\n本场推进：玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助，玉贤的武断强权与于家父子的无辜蒙冤之间的直接冲突，平民百姓（吴氏）试图通过合法途径（求助举人父亲）对抗不公司法体系的结构性冲突，于朝栋说出‘亲家救我’并流泪。\n场面目标：完整呈现玉贤如何基于微小且可疑的证据（衣物）武断定罪，展现其滥用职权，同时引出受害者家属（吴氏）的反抗与求助。\n必留动作：玉贤搜查于家并发现可疑衣物；玉贤将于家父子押回城；吴氏进城向父亲吴举人求助；吴举人求见玉贤被拒；吴举人东门焦急等待。\n连续抓手：玉贤的官员形象与行事风格需连贯；于家父子的无辜状态需明确；时间线：搜查（白天）-> 押解进城（傍晚至二更天）-> 吴氏求助（一更多天）；于家父子状态需与上场景被捕衔接。\n前后承接上，要把玉贤的官员形象与行事风格需连贯与于家父子的无辜状态需明确继续压在同一股气口里。\n\n（撫署）\n吴举人东门守在外头来回踱步，只等里面递出一句“亲家救我”的准话。\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": 12486,
      "single_file_within_limit": true,
      "episode_count": 3,
      "part_count": 1,
      "oversized_episode_count": 0,
      "oversized_part_count": 0,
      "source_screenplay_generation_status": "ok",
      "source_screenplay_blocked_block_count": 0,
      "source_screenplay_blocked_episode_count": 0,
      "source_screenplay_placeholder_block_count": 0
    },
    "source_screenplay_generation": {
      "generation_status": "ok",
      "blocked_block_count": 0,
      "blocked_episode_count": 0,
      "placeholder_block_count": 0,
      "generation_error_kinds": []
    },
    "episode_uploads": [
      {
        "episode_id": "EP0001",
        "title": "第01集 老残回店询问茶房",
        "filename": "03e_dramart_upload_EP0001.md",
        "char_count": 3793,
        "block_count": 6,
        "time_modes": [
          "flashback",
          "mainline",
          "dream"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006"
        ],
        "markdown": "# 第01集 老残回店询问茶房\n\n本集围绕老残、三人、白妞、德慧生、茶房、文章伯、黄瑞和、管事展开，主要场面落在登州、海上、渔船、帆船、小渔船、古水仙祠、大明湖、小布政司街。老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本集看点集中在“以及旁观者（三人）面对险境时“救与不救”、“如何救”的…”，并收在“老残回店询问茶房。”。\n\n## 场次01 【闪回】为黄瑞和治疗奇病的关键事件\n\n这一场属于回忆时间层，场面落在登州，出场人物有老残、黄瑞和。\n这一场先把介绍老残身世背景，以及他在山东为黄大户治病的经历推到台前。\n场面里先见老残的姓名、字号由来及江湖游医身份，紧跟着把为黄瑞和治疗奇病的关键事件压出来。\n临到场尾，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本场推进：介绍老残身世背景，以及他在山东为黄大户治病的经历，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n场面目标：快速、生动地向观众介绍主角老残，确立其核心身份（江湖郎中）、能力（医术）和当前处境（受人尊敬），为后续剧情展开奠定基础。\n必留动作：老残的姓名、字号由来及江湖游医身份；为黄瑞和治疗奇病的关键事件；黄家设宴庆祝的结局。\n连续抓手：保持倒叙（flashback）结构；明确时间锚点“那年春天”；老残形象首次亮相需清晰。\n前后承接上，要把保持倒叙（flashback）结构与明确时间锚点“那年春天”继续压在同一股气口里。\n\n（登州）\n老残的落魄身世与凭借医术获得尊重的现实转变。\n老残成功治愈黄大户多年顽疾，获得认可和款待。\n老残抬头盯住眼前动静，脚下已经往前迈了出去。\n老残的姓名、字号由来及江湖游医身份。\n黄家设宴庆祝的结局。\n为黄瑞和治疗奇病的关键事件。\n\n## 场次02 三人相约登蓬莱阁\n\n场面落在登州，出场人物有德慧生、文章伯、三人。\n这一场先把老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船推到台前。\n场面里先见三人相约登蓬莱阁，紧跟着把夜间饮酒等待日出的氛围压出来。\n临到场尾，德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n本场推进：老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船，人与自然（风浪中的危船）的冲突初现，以及旁观者（三人）面对险境时“救与不救”、“如何救”的内心萌芽。\n场面目标：在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n必留动作：三人相约登蓬莱阁；夜间饮酒等待日出的氛围；通过望远镜发现危船；德慧生首次惊呼发现危险；三人对危船状况的初步观察与讨论。\n连续抓手：时间锚点：紧接前一日（次日）；角色连续性：老残、文章伯、德慧生三人组；地点连续性：从客房转移到蓬莱阁上层。\n前后承接上，要把紧接前一日（次日）与老残、文章伯、德慧生三人组继续压在同一股气口里。\n\n（登州）\n德慧生盯住三人不放，非要追问出救与不救。\n三人相约登蓬莱阁。\n通过望远镜发现危船。\n德慧生首次惊呼发现危险。\n德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n三人对危船状况的初步观察与讨论。\n在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n\n## 场次03 三人驾船追赶大船\n\n场面落在海上、渔船、帆船、小渔船，出场人物有三人、德慧生、文章伯、差官。\n这一场先把三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑推到台前。\n场面里先见三人驾船追赶大船，紧跟着把清晰听到船上演说内容压出来。\n临到场尾，老残提出“这等人恐怕不是办事的人。\n本场推进：三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑，三人对船上“英雄”真实动机（救国 vs 敛财）的认知冲突，以及即将介入的外部力量与船上封闭权力体系的潜在冲突。\n场面目标：在紧张的海上追逐中，通过偷听演说和三人讨论，快速建立船上“英雄”的负面形象与核心冲突（骗局 vs 拯救）\n必留动作：三人驾船追赶大船；清晰听到船上演说内容；三人对演说者动机的讨论与怀疑；落帆尾随观察的决策。\n连续抓手：角色连续性：老残、德慧生、文章伯；空间连续性：从蓬莱阁到海上；道具连续性：向盘（罗盘）\n前后承接上，要把老残、德慧生、文章伯与从蓬莱阁到海上继续压在同一股气口里。\n\n（海上）\n三人：这等人恐怕不是办事的人，只是用几句文明。\n三人驾船追赶大船。\n清晰听到船上演说内容。\n落帆尾随观察的决策。\n老残：这等人恐怕不是办事的人，只是用几句文明的话头骗几个钱用用罢了！\n在紧张的海上追逐中，通过偷听演说和三人讨论。\n老残：这等人恐怕不是办事的人，只是用几句。\n\n## 场次04 以传统章回体句式留下三人命运的悬念。\n\n出场人物有三人。\n这一场先把以传统章回体句式留下三人命运的悬念推到台前。\n场面里先见“未知三人性命如何”的悬念核心，紧跟着把章回体结尾的叙事功能压出来。\n临到场尾，从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n本场推进：以传统章回体句式留下三人命运的悬念，命运与未知的冲突（三人 vs. 未知的危险/命运），从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n场面目标：通过旁白和画面，将文字悬念转化为视听悬念，自然过渡到下一章节，同时强化三人命运未卜的戏剧张力。\n必留动作：“未知三人性命如何”的悬念核心；章回体结尾的叙事功能。\n连续抓手：承接前一场三人遇险的紧张感；保持时间顺序（S0004在S0003之后）\n前后承接上，要把承接前一场三人遇险的紧张感与保持时间顺序（S0004在S0003之…继续压在同一股气口里。\n\n有人低声追问：“未知三人性命如何”\n\n## 场次05 【梦境】【蒙太奇】沉船梦醒的瞬间\n\n这一场属于梦境时间层，场面落在古水仙祠、大明湖、小布政司街，出场人物有老残、管事、白妞。\n这一场先把老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等推到台前。\n场面里先见沉船梦醒的瞬间，紧跟着把辞别管事的简短对话压出来。\n临到场尾，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n本场推进：老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等，内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n场面目标：用富有诗意的画面和简洁的蒙太奇，高效完成场景转换，建立济南的空间感，刻画老残作为旅人/观察者的角色状态。\n必留动作：沉船梦醒的瞬间；辞别管事的简短对话；抵达济南府的初印象（家家泉水，户户垂杨）；大明湖上千佛山倒影的经典画面；发现白妞说书招贴。\n连续抓手：梦境与现实的光影、色调区分；时间明确为“次日清晨”；老残服装、行李的连贯性；从乡村到城市，从静到闹的空间过渡。\n前后承接上，要把梦境与现实的光影、色调区分与时间明确为“次日清晨”继续压在同一股气口里。\n\n（古水仙祠）\n内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力。\n沉船梦醒的瞬间，发现白妞说书招贴。\n沉船梦醒的瞬间。\n发现白妞说书招贴。\n发现白妞说书招贴，视线从自然景观转向市井文化热点，预示故事焦点转移。\n老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等。\n\n## 场次06 【闪回】老残次日前往明湖居\n\n这一场属于回忆时间层，场面落在明湖居，出场人物有白妞、茶房、黑妞。\n这一场先把老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百推到台前。\n场面里先见茶房介绍白妞技艺（融合多种唱腔、天赋异禀），紧跟着把老残次日前往明湖居压出来。\n临到场尾，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚。\n本场推进：老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百，老残的理性怀疑与茶房/社会对白妞技艺的狂热推崇之间的潜在张力，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n场面目标：通过对话和场景，高效建立白妞说书事件的巨大吸引力与社会影响力，将老残（及观众）的期待值推向高点。\n必留动作：茶房介绍白妞技艺（融合多种唱腔、天赋异禀）；老残次日前往明湖居；明湖居内座无虚席、官员百姓聚集的盛况；老残对茶房所言将信将疑的态度。\n连续抓手：保持flashback（‘昔日’）的时间模式；保留‘次日’的时间跳跃；老残从高升店到明湖居的空间转换；茶房作为信息传递者的角色功能。\n前后承接上，要把保持flashback（‘昔日’）的时…与保留‘次日’的时间跳跃继续压在同一股气口里。\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。",
        "source_ref": {
          "episode_ids": [
            "EP0001"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "episode_id": "EP0002",
        "title": "第02集 人弦俱寂”的刹那",
        "filename": "03e_dramart_upload_EP0002.md",
        "char_count": 4916,
        "block_count": 8,
        "time_modes": [
          "mainline",
          "rumor"
        ],
        "source_scene_ids": [
          "S0008",
          "S0009",
          "S0011",
          "S0012",
          "S0013",
          "S0014",
          "S0015",
          "S0016"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011",
          "AG0012",
          "AG0013",
          "AG0014"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011",
          "AB0012",
          "AB0013",
          "AB0014"
        ],
        "markdown": "# 第02集 人弦俱寂”的刹那\n\n本集围绕老残、差官、高公、宫保、白妞、茶房、黑妞、士子展开，主要场面落在明湖居戏台、戏台、趵突泉、金泉书院、金线泉、黑虎泉、南门、高公馆。十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。\n本集看点集中在“人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。”，并收在“更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…”。\n\n## 场次01 十二点半的时间点\n\n场面落在明湖居戏台、戏台，出场人物有差官、白妞。\n这一场先把十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝推到台前。\n场面里先见十二点半的时间点，紧跟着把弹弦男人上台及外貌特征压出来。\n临到场尾，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n本场推进：十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝，精湛技艺与丑陋外表的反差，暖场表演（黑妞）与观众更高期待（白妞）之间的潜在张力，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n场面目标：创造一场令人屏息凝神、极具感染力的表演戏，确立白妞作为核心人物的超凡魅力与技艺巅峰，并引发观众（剧中与剧外）的共鸣与赞叹。\n必留动作：十二点半的时间点；弹弦男人上台及外貌特征；三弦子轮指技法的精湛表现；台下观众从漫不经心到叫好不绝的反应转变；黑妞出场演唱。\n连续抓手：时间锚点：十二点半；空间连续性：明湖居戏台；角色出场顺序：弹弦男人 -> 黑妞；情绪递进：平淡 -> 精彩 -> 期待（议论白妞）\n前后承接上，要把十二点半与明湖居戏台继续压在同一股气口里。\n\n（明湖居戏台）\n白妞：霍然一声，人弦俱寂。\n观众：霍然一声，人弦俱寂。\n十二点半的时间点。\n弹弦男人上台及外貌特征。\n观众站在人堆里，脸色一下子就绷住了。\n黑妞出场演唱。\n\n## 场次02 黑妞简短说书作为过渡\n\n场面落在戏台、趵突泉、金泉书院、金线泉，出场人物有白妞、士子、黑妞。\n这一场先把黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一推到台前。\n场面里先见黑妞简短说书作为过渡，紧跟着把白妞表演“黑驴段”的快节奏与清晰吐字压出来。\n临到场尾，士子提及金线泉的奥秘。\n本场推进：黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一，白妞技艺的极致展现（快而清）与观众接收极限之间的张力，本段表演与前一段“绝调”之间的对比与观众评价。\n场面目标：通过视听语言，戏剧化地呈现白妞“黑驴段”表演的技艺特点（快而清），并与前段形成对比，同时将观众的期待情绪推向顶点。\n必留动作：黑妞简短说书作为过渡；白妞表演“黑驴段”的快节奏与清晰吐字；观众（包括士子）的惊叹与期待反应；时间提示（约下午五点）；表演意外收场，众人散去。\n连续抓手：紧接前一场白妞的表演；保持观众角色的连续性；时间线连贯（下午）；保留时间锚点‘次日’。\n前后承接上，要把紧接前一场白妞的表演与保持观众角色的连续性继续压在同一股气口里。\n\n（戏台）\n黑妞简短说书作为过渡。\n观众：黑驴段。\n观众站在人堆里，脸色一下子就绷住了。\n时间提示。\n士子提及金线泉的奥秘。\n表演意外收场，众人散去。\n士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\n\n## 场次03 游览黑虎泉的视觉呈现\n\n场面落在黑虎泉、南门、高公馆，出场人物有高公、茶房、差官。\n这一场先把老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾推到台前。\n场面里先见游览黑虎泉的视觉呈现，紧跟着把高公在公馆门口面带愁容拦路求医压出来。\n临到场尾，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n本场推进：老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾，高公小妾生命垂危（喉疾）与寻求救治的紧迫性，考验老残的医术，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n场面目标：自然地将老残从游览者过渡到医者角色，并通过高公的求医，引出后续的诊治情节和人物关系网。\n必留动作：游览黑虎泉的视觉呈现；高公在公馆门口面带愁容拦路求医；老残进入高公馆并诊脉；高公小妾喉疾的严重性（滴水不进）\n连续抓手：时间锚点：次日（承接S0010）；老残手持串铃的行医标志；高公的江苏口音或官话特征。\n前后承接上，要把次日（承接S0010）与老残手持串铃的行医标志继续压在同一股气口里。\n\n（黑虎泉）\n高公在公馆门口面带愁容拦路求医。\n老残进入高公馆并诊脉。\n高公小妾喉疾的严重性。\n高公小妾生命垂危与寻求救治的紧迫性。\n自然地将老残从游览者过渡到医者角色，并通过高公的求医。\n老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾。\n\n## 场次04 老残检查病人喉咙的细节\n\n场面落在高公馆内室、高公府邸、北柱楼，出场人物有高公。\n这一场先把老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方推到台前。\n场面里先见老残检查病人喉咙的细节，紧跟着把老残对病因的诊断与解释压出来。\n临到场尾，席间官员议论玉佐臣补曹州府及其酷政。\n本场推进：老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方，表面：疾病（火气被寒药所逼）与健康，席间官员议论玉佐臣补曹州府及其酷政，将场景从私人医疗成功转向公共政治议题。\n场面目标：1. 通过一场成功的诊治，立体塑造老残“神医”形象。\n必留动作：老残检查病人喉咙的细节；老残对病因的诊断与解释；开方配药的动作；高公设宴答谢；席间议论玉佐臣补曹州府之事。\n连续抓手：保留时间锚点：几天后；角色连续性：高公/老残；地点转换：高公馆内室->高公府邸->北柱楼；老残医术声望的建立。\n前后承接上，要把几天后与高公/老残继续压在同一股气口里。\n\n（高公馆内室）\n老残对病因的诊断与解释。\n开方配药。\n高公设宴答谢。\n席间议论玉佐臣补曹州府之事。\n表面：疾病与健康。\n老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方。\n表面：疾病（火气被寒药所逼）与健康。\n\n## 场次05 高绍殷乘轿拜访老残的场景\n\n场面落在老残寓所、抚署，出场人物有老残、高公。\n这一场先把高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随推到台前。\n场面里先见高绍殷乘轿拜访老残的场景，紧跟着把高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手…压出来。\n临到场尾，老残同意随高绍殷前往抚署面见宫保。\n本场推进：高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随，老残淡泊的游方郎中心态与宫保代表的官方招揽意图之间的潜在冲突，个人志趣与世俗功名价值观的碰撞，老残同意随高绍殷前往抚署面见宫保。\n场面目标：通过一场看似平常的拜访与对话，塑造老残学识渊博却淡泊名士的形象，同时揭示宫保对其的关注与招揽意图。\n必留动作：高绍殷乘轿拜访老残的场景；高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手写陶诗）的对话；高绍殷转达宫保招揽意图的试探性对话；老残对功名态度的自我剖白；老残同意前往抚署但要求便衣的细节。\n连续抓手：时间：承接前一日老残为妇人诊病后；地点：从老残寓所过渡到山东抚署；角色：老残与高绍殷的衣着、状态保持一致。\n前后承接上，要把承接前一日老残为妇人诊病后与从老残寓所过渡到山东抚署继续压在同一股气口里。\n\n（老残寓所）\n高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\n高绍殷乘轿拜访老残。\n老残同意前往抚署但要求便衣。\n高绍殷赞赏老残藏书。\n老残同意随高绍殷前往抚署面见宫保。\n高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随。\n\n## 场次06 张宫保求教河工治理的对话\n\n场面落在抚署、宫保签押房，出场人物有差官。\n这一场先把老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法推到台前。\n场面里先见老残随高绍殷进入抚署的路径与场景转换，紧跟着把张宫保的出场与外貌（魁梧、仁厚）压出来。\n临到场尾，老残提出“王景”的名字并简要阐述其理念。\n本场推进：老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法，理念冲突：张宫保（及主流）推崇的贾让“不与河争地”策略，与老残提出的王景“抑”字诀治河古法之间的根本对立，老残提出“王景”的名字并简要阐述其理念。\n场面目标：建立老残与张宫保的初次正式关系，将抽象的“河工”议题具体化为“贾让”与“王景”的治河理念之争，为后续情节埋下伏笔。\n必留动作：老残随高绍殷进入抚署的路径与场景转换；张宫保的出场与外貌（魁梧、仁厚）；张宫保求教河工治理的对话；老残对贾让与王景治河策略的对比分析；老残承诺呈递说帖。\n连续抓手：老残的衣着（随身穿戴）；高绍殷作为引荐人的角色；张宫保对河工问题的焦虑感；对话逻辑：从客套到具体议题。\n前后承接上，要把老残的衣着（随身穿戴）与高绍殷作为引荐人的角色继续压在同一股气口里。\n\n（抚署）\n老残盯住张宫保不放，非要追问出王景。\n张宫保的出场与外貌。\n老残对贾让与王景治河策略的对比分析。\n老残：王景。\n老残承诺呈递说帖。\n\n## 场次07 宫保邀请老残入住南书房\n\n场面落在抚署，出场人物有老残、宫保、高公。\n这一场先把宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙推到台前。\n场面里先见宫保邀请老残入住南书房，紧跟着把老残以探亲为由婉拒压出来。\n临到场尾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n本场推进：宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙，宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n场面目标：通过核心对话，明确老残的下一步行动（前往曹州），同时刻画宫保对其的重视与老残的自主性，建立角色间的张力与期待。\n必留动作：宫保邀请老残入住南书房；老残以探亲为由婉拒；老残提及将去曹州并考察玉守；宫保神色怏怏；老残告辞离开。\n连续抓手：紧接上一场景（S0014）的对话氛围；保持老残与宫保的角色状态连续性；维持叙事顺序与故事顺序差（order_delta: -2）\n前后承接上，要把紧接上一场景（S0014）的对话氛围与保持老残与宫保的角色状态连续性继续压在同一股气口里。\n\n（抚署）\n宫保：等鄙人从曹州回来，再领宫保的教罢。\n宫保邀请老残入住南书房。\n老残以探亲为由婉拒。\n老残提及将去曹州并考察玉守。\n老残：等鄙人从曹州回来，再领宫保的教罢。\n宫保站在人堆里，脸色一下子就绷住了。\n宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾。\n\n## 场次08 【传闻】老残否认抚台邀请的对话\n\n这一场属于传闻时间层，场面落在客栈，出场人物有茶房、差官。\n这一场先把老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席推到台前。\n场面里先见老残否认抚台邀请的对话，紧跟着把掌柜转述抚台催促的细节压出来。\n临到场尾，差官不仅送来酒席，更传达“打扫南书房”的明确指令。\n本场推进：老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席，老残的自我认知（普通访客）与外界对他的看法（被抚台、宫保争相礼遇的贵人）之间的错位与矛盾。\n场面目标：通过对话和动作，生动展现老残从被传言包围到收到宫保实质性礼遇的转变，为后续进入宫保府邸做铺垫，并强化老残低调、谨慎的性格。\n必留动作：老残否认抚台邀请的对话；掌柜转述抚台催促的细节；差官送礼并传达打扫南书房之命。\n连续抓手：时间：傍晚；地点：客栈；角色：老残、掌柜、差官、茶房；保持“传言”与“现实”的对比节奏。\n前后承接上，要把傍晚与客栈继续压在同一股气口里。\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。",
        "source_ref": {
          "episode_ids": [
            "EP0002"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016"
          ],
          "source_group_ids": [
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014"
          ],
          "source_beat_ids": [
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      },
      {
        "episode_id": "EP0003",
        "title": "第03集 于朝栋说出‘亲家救我’并流泪",
        "filename": "03e_dramart_upload_EP0003.md",
        "char_count": 3284,
        "block_count": 5,
        "time_modes": [
          "mainline"
        ],
        "source_scene_ids": [
          "S0017",
          "S0018",
          "S0019",
          "S0020",
          "S0021"
        ],
        "source_group_ids": [
          "AG0015",
          "AG0016",
          "AG0017",
          "AG0018",
          "AG0019"
        ],
        "source_beat_ids": [
          "AB0015",
          "AB0016",
          "AB0017",
          "AB0018",
          "AB0019"
        ],
        "markdown": "# 第03集 于朝栋说出‘亲家救我’并流泪\n\n本集围绕玉贤、差官、老董、茶房、三人展开，主要场面落在客栈房间、客店、济南、雒口、船上、董家口、城外、于家屯。老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。\n本集看点集中在“刻画老残作为“铁老爷”初受官场礼遇的场景。”，并收在“于朝栋说出‘亲家救我’并流泪。”。\n\n## 场次01 老残为差官倒茶\n\n场面落在客栈房间、客店，出场人物有茶房、差官。\n这一场先把老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开推到台前。\n场面里先见老残为差官倒茶，紧跟着把差官传达宫保安排南书房入住压出来。\n临到场尾，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n本场推进：老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开，老残的个人原则与即将面临的官场人情、利益诱惑之间的潜在冲突，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n场面目标：通过一系列礼节性互动，刻画老残作为“铁老爷”初受官场礼遇的场景，同时埋下被奉承和劝捐的伏笔，展现其身处漩涡边缘的微妙处境。\n必留动作：老残为差官倒茶；差官传达宫保安排南书房入住；老残写领谢帖子并送客至大门；武巡捕传抚台邀请；掌柜恭维抚台送席。\n连续抓手：承接上一场景（S0016）老残收到礼物的情绪；保持老残从容、客气但保持距离的人物基调；场景从房间内过渡到客店大堂。\n前后承接上，要把承接上一场景（S0016）老残收到礼物…与保持老残从容、客气但保持距离的人物基调继续压在同一股气口里。\n\n（客栈房间）\n老残为差官倒茶。\n老残写领谢帖子并送客至大门。\n张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n掌柜恭维抚台送席。\n老残：铁老爷。\n\n## 场次02 老残为避纠缠连夜离济\n\n场面落在济南、雒口、船上、董家口，出场人物有老董、玉贤。\n这一场先把老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严推到台前。\n场面里先见老残为避纠缠连夜离济，紧跟着把乘船数日抵达董家口压出来。\n临到场尾，老董说出“玉大人倒反做了強盜的兵器了”\n本场推进：老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严，表面冲突：老残打听与老董讲述，老董说出“玉大人倒反做了強盜的兵器了”，这是对玉贤“清官”形象的颠覆性评价，也是后续所有悲剧的根源揭示。\n场面目标：完成场景转换（济南到曹州），并通过关键对话，首次向观众（和老残）揭示核心冲突人物玉贤的矛盾性与危险性，建立悬疑感。\n必留动作：老残为避纠缠连夜离济；乘船数日抵达董家口；老残向老董打听玉贤政绩；老董叹息并讲述玉贤办案严酷反成强盗工具。\n连续抓手：老残从济南到曹州府的行动线；玉贤作为未出场但关键人物的首次侧面塑造。\n前后承接上，要把老残从济南到曹州府的行动线与玉贤作为未出场但关键人物的首次侧面塑造继续压在同一股气口里。\n\n（济南）\n玉贤：玉大人倒反做了強盜的兵器了。\n老残为避纠缠连夜离济。\n乘船数日抵达董家口。\n老残向老董打听玉贤政绩。\n老董叹息并讲述玉贤办案严酷反成强盗工具。\n老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严。\n老董：玉大人倒反做了強盜的兵器了。\n\n## 场次03 玉贤率马队追击\n\n场面落在城外、于家屯，出场人物有玉贤。\n这一场先把老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近推到台前。\n场面里先见玉贤率马队追击，紧跟着把强盗持火把与洋枪压出来。\n临到场尾，追至于家屯时，火光与枪声骤然消失，追捕线索中断。\n本场推进：老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近，玉贤（秩序/追捕方）与未知强盗（混乱/逃亡方）在夜色中的追逐对抗，追至于家屯时，火光与枪声骤然消失，追捕线索中断，行动从主动追击转入被动搜寻。\n场面目标：用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n必留动作：玉贤率马队追击；强盗持火把与洋枪；循火光与枪声追踪；追至于家屯附近时目标消失。\n连续抓手：紧接前序追捕场景（S0018）；保持夜间至天明的时序；玉贤人物状态（愤怒、追击）的连贯。\n前后承接上，要把紧接前序追捕场景（S0018）与保持夜间至天明的时序继续压在同一股气口里。\n\n（城外）\n玉贤率马队追击。\n强盗持火把与洋枪。\n循火光与枪声追踪。\n追至于家屯附近时目标消失。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面。\n老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n\n## 场次04 玉贤率马队夜间追捕强盗的火光与枪声…\n\n出场人物有玉贤。\n这一场先把玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子推到台前。\n场面里先见玉贤率马队夜间追捕强盗的火光与枪声线索，紧跟着把玉贤判断强盗藏匿于村庄并下令封锁压出来。\n临到场尾，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n本场推进：玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子，玉贤追捕强盗的执法行动 vs. 于家父子自称良民、私藏武器仅为自保的辩解，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n场面目标：通过一场紧张的追捕与审问戏，生动刻画玉贤雷厉风行但可能过于武断的执法者形象，同时将于家父子卷入冤案漩涡。\n必留动作：玉贤率马队夜间追捕强盗的火光与枪声线索；玉贤判断强盗藏匿于村庄并下令封锁；从于朝栋家搜出土枪、刀、竿子等物证；玉贤审问于家父子，质问藏匿强盗与私藏军器。\n连续抓手：保持夜间至天明的时序过渡；玉贤角色形象（威严、果断）的连贯性；空间连续性：从野外追捕到进入于家屯村庄。\n前后承接上，要把保持夜间至天明的时序过渡与玉贤角色形象（威严、果断）的连贯性继续压在同一股气口里。\n\n玉大人：我不是逞强，只是不肯糊里糊涂退下去。\n玉贤判断强盗藏匿于村庄并下令封锁。\n从于朝栋家搜出土枪、刀、竿子等物证。\n玉贤审问于家父子，质问藏匿强盗与私藏军器。\n玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子。\n\n## 场次05 玉贤搜查于家并发现可疑衣物\n\n场面落在撫署，出场人物有玉贤、三人。\n这一场先把玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助推到台前。\n场面里先见玉贤搜查于家并发现可疑衣物，紧跟着把玉贤将于家父子押回城压出来。\n临到场尾，于朝栋说出‘亲家救我’并流泪。\n本场推进：玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助，玉贤的武断强权与于家父子的无辜蒙冤之间的直接冲突，平民百姓（吴氏）试图通过合法途径（求助举人父亲）对抗不公司法体系的结构性冲突，于朝栋说出‘亲家救我’并流泪。\n场面目标：完整呈现玉贤如何基于微小且可疑的证据（衣物）武断定罪，展现其滥用职权，同时引出受害者家属（吴氏）的反抗与求助。\n必留动作：玉贤搜查于家并发现可疑衣物；玉贤将于家父子押回城；吴氏进城向父亲吴举人求助；吴举人求见玉贤被拒；吴举人东门焦急等待。\n连续抓手：玉贤的官员形象与行事风格需连贯；于家父子的无辜状态需明确；时间线：搜查（白天）-> 押解进城（傍晚至二更天）-> 吴氏求助（一更多天）；于家父子状态需与上场景被捕衔接。\n前后承接上，要把玉贤的官员形象与行事风格需连贯与于家父子的无辜状态需明确继续压在同一股气口里。\n\n（撫署）\n吴举人东门守在外头来回踱步，只等里面递出一句“亲家救我”的准话。\n差人：亲家救我。\n玉贤搜查于家并发现可疑衣物。\n玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
        "source_ref": {
          "episode_ids": [
            "EP0003"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      }
    ],
    "upload_parts": [
      {
        "part_id": "UP001",
        "filename": "03e_dramart_upload_part_01_EP0001_EP0003.md",
        "start_episode_id": "EP0001",
        "end_episode_id": "EP0003",
        "episode_ids": [
          "EP0001",
          "EP0002",
          "EP0003"
        ],
        "char_count": 11997,
        "within_limit": true,
        "markdown": "# 第01集 老残回店询问茶房\n\n本集围绕老残、三人、白妞、德慧生、茶房、文章伯、黄瑞和、管事展开，主要场面落在登州、海上、渔船、帆船、小渔船、古水仙祠、大明湖、小布政司街。老残的落魄身世与凭借医术获得尊重的…，老残进入明湖居，亲眼目睹空前盛况，快速、生动地向观众介绍主角老残。\n快速、生动地向观众介绍主角老残，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本集看点集中在“以及旁观者（三人）面对险境时“救与不救”、“如何救”的…”，并收在“老残回店询问茶房。”。\n\n## 场次01 【闪回】为黄瑞和治疗奇病的关键事件\n\n这一场属于回忆时间层，场面落在登州，出场人物有老残、黄瑞和。\n这一场先把介绍老残身世背景，以及他在山东为黄大户治病的经历推到台前。\n场面里先见老残的姓名、字号由来及江湖游医身份，紧跟着把为黄瑞和治疗奇病的关键事件压出来。\n临到场尾，老残成功治愈黄大户多年顽疾，获得认可和款待。\n本场推进：介绍老残身世背景，以及他在山东为黄大户治病的经历，老残的落魄身世与凭借医术获得尊重的现实转变，老残成功治愈黄大户多年顽疾，获得认可和款待。\n场面目标：快速、生动地向观众介绍主角老残，确立其核心身份（江湖郎中）、能力（医术）和当前处境（受人尊敬），为后续剧情展开奠定基础。\n必留动作：老残的姓名、字号由来及江湖游医身份；为黄瑞和治疗奇病的关键事件；黄家设宴庆祝的结局。\n连续抓手：保持倒叙（flashback）结构；明确时间锚点“那年春天”；老残形象首次亮相需清晰。\n前后承接上，要把保持倒叙（flashback）结构与明确时间锚点“那年春天”继续压在同一股气口里。\n\n（登州）\n老残的落魄身世与凭借医术获得尊重的现实转变。\n老残成功治愈黄大户多年顽疾，获得认可和款待。\n老残抬头盯住眼前动静，脚下已经往前迈了出去。\n老残的姓名、字号由来及江湖游医身份。\n黄家设宴庆祝的结局。\n为黄瑞和治疗奇病的关键事件。\n\n## 场次02 三人相约登蓬莱阁\n\n场面落在登州，出场人物有德慧生、文章伯、三人。\n这一场先把老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船推到台前。\n场面里先见三人相约登蓬莱阁，紧跟着把夜间饮酒等待日出的氛围压出来。\n临到场尾，德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n本场推进：老残与两位朋友同游蓬莱阁，夜间饮酒等待日出，并观察到海上的帆船，人与自然（风浪中的危船）的冲突初现，以及旁观者（三人）面对险境时“救与不救”、“如何救”的内心萌芽。\n场面目标：在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n必留动作：三人相约登蓬莱阁；夜间饮酒等待日出的氛围；通过望远镜发现危船；德慧生首次惊呼发现危险；三人对危船状况的初步观察与讨论。\n连续抓手：时间锚点：紧接前一日（次日）；角色连续性：老残、文章伯、德慧生三人组；地点连续性：从客房转移到蓬莱阁上层。\n前后承接上，要把紧接前一日（次日）与老残、文章伯、德慧生三人组继续压在同一股气口里。\n\n（登州）\n德慧生盯住三人不放，非要追问出救与不救。\n三人相约登蓬莱阁。\n通过望远镜发现危船。\n德慧生首次惊呼发现危险。\n德慧生通过望远镜发现那艘在巨浪中挣扎、看似不妙的帆船。\n三人对危船状况的初步观察与讨论。\n在展现朋友情谊与古典意境的同时，自然引入海上危机，将观众的视角从闲适的赏景者转变为紧张的观察者与潜在的介入者。\n\n## 场次03 三人驾船追赶大船\n\n场面落在海上、渔船、帆船、小渔船，出场人物有三人、德慧生、文章伯、差官。\n这一场先把三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑推到台前。\n场面里先见三人驾船追赶大船，紧跟着把清晰听到船上演说内容压出来。\n临到场尾，老残提出“这等人恐怕不是办事的人。\n本场推进：三人驾渔船追赶大船，听到船上有人发表演说，对船上人的动机产生怀疑，三人对船上“英雄”真实动机（救国 vs 敛财）的认知冲突，以及即将介入的外部力量与船上封闭权力体系的潜在冲突。\n场面目标：在紧张的海上追逐中，通过偷听演说和三人讨论，快速建立船上“英雄”的负面形象与核心冲突（骗局 vs 拯救）\n必留动作：三人驾船追赶大船；清晰听到船上演说内容；三人对演说者动机的讨论与怀疑；落帆尾随观察的决策。\n连续抓手：角色连续性：老残、德慧生、文章伯；空间连续性：从蓬莱阁到海上；道具连续性：向盘（罗盘）\n前后承接上，要把老残、德慧生、文章伯与从蓬莱阁到海上继续压在同一股气口里。\n\n（海上）\n三人：这等人恐怕不是办事的人，只是用几句文明。\n三人驾船追赶大船。\n清晰听到船上演说内容。\n落帆尾随观察的决策。\n老残：这等人恐怕不是办事的人，只是用几句文明的话头骗几个钱用用罢了！\n在紧张的海上追逐中，通过偷听演说和三人讨论。\n老残：这等人恐怕不是办事的人，只是用几句。\n\n## 场次04 以传统章回体句式留下三人命运的悬念。\n\n出场人物有三人。\n这一场先把以传统章回体句式留下三人命运的悬念推到台前。\n场面里先见“未知三人性命如何”的悬念核心，紧跟着把章回体结尾的叙事功能压出来。\n临到场尾，从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n本场推进：以传统章回体句式留下三人命运的悬念，命运与未知的冲突（三人 vs. 未知的危险/命运），从具体情节推进转向悬念收束，为后续故事开启新的可能性。\n场面目标：通过旁白和画面，将文字悬念转化为视听悬念，自然过渡到下一章节，同时强化三人命运未卜的戏剧张力。\n必留动作：“未知三人性命如何”的悬念核心；章回体结尾的叙事功能。\n连续抓手：承接前一场三人遇险的紧张感；保持时间顺序（S0004在S0003之后）\n前后承接上，要把承接前一场三人遇险的紧张感与保持时间顺序（S0004在S0003之…继续压在同一股气口里。\n\n有人低声追问：“未知三人性命如何”\n\n## 场次05 【梦境】【蒙太奇】沉船梦醒的瞬间\n\n这一场属于梦境时间层，场面落在古水仙祠、大明湖、小布政司街，出场人物有老残、管事、白妞。\n这一场先把老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等推到台前。\n场面里先见沉船梦醒的瞬间，紧跟着把辞别管事的简短对话压出来。\n临到场尾，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n本场推进：老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等，内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力，发现白妞说书招贴，视线从自然景观转向市井文化热点。\n场面目标：用富有诗意的画面和简洁的蒙太奇，高效完成场景转换，建立济南的空间感，刻画老残作为旅人/观察者的角色状态。\n必留动作：沉船梦醒的瞬间；辞别管事的简短对话；抵达济南府的初印象（家家泉水，户户垂杨）；大明湖上千佛山倒影的经典画面；发现白妞说书招贴。\n连续抓手：梦境与现实的光影、色调区分；时间明确为“次日清晨”；老残服装、行李的连贯性；从乡村到城市，从静到闹的空间过渡。\n前后承接上，要把梦境与现实的光影、色调区分与时间明确为“次日清晨”继续压在同一股气口里。\n\n（古水仙祠）\n内心冲突：惊梦余悸与面对新环境的闲适好奇之间的微妙张力。\n沉船梦醒的瞬间，发现白妞说书招贴。\n沉船梦醒的瞬间。\n发现白妞说书招贴。\n发现白妞说书招贴，视线从自然景观转向市井文化热点，预示故事焦点转移。\n老残从沉船梦中惊醒，辞别管事后前往济南，游览大明湖、铁公祠、古水仙祠等。\n\n## 场次06 【闪回】老残次日前往明湖居\n\n这一场属于回忆时间层，场面落在明湖居，出场人物有白妞、茶房、黑妞。\n这一场先把老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百推到台前。\n场面里先见茶房介绍白妞技艺（融合多种唱腔、天赋异禀），紧跟着把老残次日前往明湖居压出来。\n临到场尾，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚。\n本场推进：老残回店询问茶房，得知白妞说书详情，次日前往明湖居，见场内已坐满官员百，老残的理性怀疑与茶房/社会对白妞技艺的狂热推崇之间的潜在张力，老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n场面目标：通过对话和场景，高效建立白妞说书事件的巨大吸引力与社会影响力，将老残（及观众）的期待值推向高点。\n必留动作：茶房介绍白妞技艺（融合多种唱腔、天赋异禀）；老残次日前往明湖居；明湖居内座无虚席、官员百姓聚集的盛况；老残对茶房所言将信将疑的态度。\n连续抓手：保持flashback（‘昔日’）的时间模式；保留‘次日’的时间跳跃；老残从高升店到明湖居的空间转换；茶房作为信息传递者的角色功能。\n前后承接上，要把保持flashback（‘昔日’）的时…与保留‘次日’的时间跳跃继续压在同一股气口里。\n\n（明湖居）\n白妞盯住老残不放，非要追问出茶房，得知白妞说书详情，次。\n茶房介绍白妞技艺。\n老残次日前往明湖居。\n明湖居内座无虚席、官员百姓聚集的盛况。\n老残进入明湖居，亲眼目睹空前盛况，开始相信茶房所言非虚，好奇心转为强烈期待。\n老残对茶房所言将信将疑的态度。\n\n# 第02集 人弦俱寂”的刹那\n\n本集围绕老残、差官、高公、宫保、白妞、茶房、黑妞、士子展开，主要场面落在明湖居戏台、戏台、趵突泉、金泉书院、金线泉、黑虎泉、南门、高公馆。十二点半，一男子上台弹奏三弦子，差官不仅送来酒席，精湛技艺与丑陋外表的反差。\n创造一场令人屏息凝神、极具感染力的表演戏，精湛技艺与丑陋外表的反差，曲终“霍然一声，人弦俱寂”的刹那。\n本集看点集中在“人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。”，并收在“更传达“打扫南书房”的明确指令，暗示宫保已为老残的长期…”。\n\n## 场次01 十二点半的时间点\n\n场面落在明湖居戏台、戏台，出场人物有差官、白妞。\n这一场先把十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝推到台前。\n场面里先见十二点半的时间点，紧跟着把弹弦男人上台及外貌特征压出来。\n临到场尾，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n本场推进：十二点半，一男子上台弹奏三弦子，指法精湛，台下叫好声不绝，精湛技艺与丑陋外表的反差，暖场表演（黑妞）与观众更高期待（白妞）之间的潜在张力，曲终“霍然一声，人弦俱寂”的刹那，以及紧随其后的“轰然雷动”的叫好声。\n场面目标：创造一场令人屏息凝神、极具感染力的表演戏，确立白妞作为核心人物的超凡魅力与技艺巅峰，并引发观众（剧中与剧外）的共鸣与赞叹。\n必留动作：十二点半的时间点；弹弦男人上台及外貌特征；三弦子轮指技法的精湛表现；台下观众从漫不经心到叫好不绝的反应转变；黑妞出场演唱。\n连续抓手：时间锚点：十二点半；空间连续性：明湖居戏台；角色出场顺序：弹弦男人 -> 黑妞；情绪递进：平淡 -> 精彩 -> 期待（议论白妞）\n前后承接上，要把十二点半与明湖居戏台继续压在同一股气口里。\n\n（明湖居戏台）\n白妞：霍然一声，人弦俱寂。\n观众：霍然一声，人弦俱寂。\n十二点半的时间点。\n弹弦男人上台及外貌特征。\n观众站在人堆里，脸色一下子就绷住了。\n黑妞出场演唱。\n\n## 场次02 黑妞简短说书作为过渡\n\n场面落在戏台、趵突泉、金泉书院、金线泉，出场人物有白妞、士子、黑妞。\n这一场先把黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一推到台前。\n场面里先见黑妞简短说书作为过渡，紧跟着把白妞表演“黑驴段”的快节奏与清晰吐字压出来。\n临到场尾，士子提及金线泉的奥秘。\n本场推进：黑妞又说了一段书，接着白妞上场表演节奏极快的“黑驴段”，众人期待她下一，白妞技艺的极致展现（快而清）与观众接收极限之间的张力，本段表演与前一段“绝调”之间的对比与观众评价。\n场面目标：通过视听语言，戏剧化地呈现白妞“黑驴段”表演的技艺特点（快而清），并与前段形成对比，同时将观众的期待情绪推向顶点。\n必留动作：黑妞简短说书作为过渡；白妞表演“黑驴段”的快节奏与清晰吐字；观众（包括士子）的惊叹与期待反应；时间提示（约下午五点）；表演意外收场，众人散去。\n连续抓手：紧接前一场白妞的表演；保持观众角色的连续性；时间线连贯（下午）；保留时间锚点‘次日’。\n前后承接上，要把紧接前一场白妞的表演与保持观众角色的连续性继续压在同一股气口里。\n\n（戏台）\n黑妞简短说书作为过渡。\n观众：黑驴段。\n观众站在人堆里，脸色一下子就绷住了。\n时间提示。\n士子提及金线泉的奥秘。\n表演意外收场，众人散去。\n士子提及金线泉的奥秘，将老残（及观众）的注意力从娱乐（说书）引向一个待解的谜题（自然/超自然现象）\n\n## 场次03 游览黑虎泉的视觉呈现\n\n场面落在黑虎泉、南门、高公馆，出场人物有高公、茶房、差官。\n这一场先把老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾推到台前。\n场面里先见游览黑虎泉的视觉呈现，紧跟着把高公在公馆门口面带愁容拦路求医压出来。\n临到场尾，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n本场推进：老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾，高公小妾生命垂危（喉疾）与寻求救治的紧迫性，考验老残的医术，老残同意进入高公馆诊病，标志其正式介入事件，从旁观者变为参与者。\n场面目标：自然地将老残从游览者过渡到医者角色，并通过高公的求医，引出后续的诊治情节和人物关系网。\n必留动作：游览黑虎泉的视觉呈现；高公在公馆门口面带愁容拦路求医；老残进入高公馆并诊脉；高公小妾喉疾的严重性（滴水不进）\n连续抓手：时间锚点：次日（承接S0010）；老残手持串铃的行医标志；高公的江苏口音或官话特征。\n前后承接上，要把次日（承接S0010）与老残手持串铃的行医标志继续压在同一股气口里。\n\n（黑虎泉）\n高公在公馆门口面带愁容拦路求医。\n老残进入高公馆并诊脉。\n高公小妾喉疾的严重性。\n高公小妾生命垂危与寻求救治的紧迫性。\n自然地将老残从游览者过渡到医者角色，并通过高公的求医。\n老残继续游览黑虎泉，次日摇铃行医时，被高公请入府中为其小妾诊治喉疾。\n\n## 场次04 老残检查病人喉咙的细节\n\n场面落在高公馆内室、高公府邸、北柱楼，出场人物有高公。\n这一场先把老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方推到台前。\n场面里先见老残检查病人喉咙的细节，紧跟着把老残对病因的诊断与解释压出来。\n临到场尾，席间官员议论玉佐臣补曹州府及其酷政。\n本场推进：老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方，表面：疾病（火气被寒药所逼）与健康，席间官员议论玉佐臣补曹州府及其酷政，将场景从私人医疗成功转向公共政治议题。\n场面目标：1. 通过一场成功的诊治，立体塑造老残“神医”形象。\n必留动作：老残检查病人喉咙的细节；老残对病因的诊断与解释；开方配药的动作；高公设宴答谢；席间议论玉佐臣补曹州府之事。\n连续抓手：保留时间锚点：几天后；角色连续性：高公/老残；地点转换：高公馆内室->高公府邸->北柱楼；老残医术声望的建立。\n前后承接上，要把几天后与高公/老残继续压在同一股气口里。\n\n（高公馆内室）\n老残对病因的诊断与解释。\n开方配药。\n高公设宴答谢。\n席间议论玉佐臣补曹州府之事。\n表面：疾病与健康。\n老残查看病人喉咙，诊断为火气被寒药所逼，开出辛凉发散药方。\n表面：疾病（火气被寒药所逼）与健康。\n\n## 场次05 高绍殷乘轿拜访老残的场景\n\n场面落在老残寓所、抚署，出场人物有老残、高公。\n这一场先把高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随推到台前。\n场面里先见高绍殷乘轿拜访老残的场景，紧跟着把高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手…压出来。\n临到场尾，老残同意随高绍殷前往抚署面见宫保。\n本场推进：高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随，老残淡泊的游方郎中心态与宫保代表的官方招揽意图之间的潜在冲突，个人志趣与世俗功名价值观的碰撞，老残同意随高绍殷前往抚署面见宫保。\n场面目标：通过一场看似平常的拜访与对话，塑造老残学识渊博却淡泊名士的形象，同时揭示宫保对其的关注与招揽意图。\n必留动作：高绍殷乘轿拜访老残的场景；高绍殷赞赏老残藏书（宋版《庄子》、苏东坡手写陶诗）的对话；高绍殷转达宫保招揽意图的试探性对话；老残对功名态度的自我剖白；老残同意前往抚署但要求便衣的细节。\n连续抓手：时间：承接前一日老残为妇人诊病后；地点：从老残寓所过渡到山东抚署；角色：老残与高绍殷的衣着、状态保持一致。\n前后承接上，要把承接前一日老残为妇人诊病后与从老残寓所过渡到山东抚署继续压在同一股气口里。\n\n（老残寓所）\n高绍殷乘轿拜访老残，高绍殷赞赏老残藏书，老残对功名态度的自我剖白，老残同意前往抚署但要求便衣。\n高绍殷乘轿拜访老残。\n老残同意前往抚署但要求便衣。\n高绍殷赞赏老残藏书。\n老残同意随高绍殷前往抚署面见宫保。\n高绍殷到老残寓所拜访，赞赏其藏书，并转达宫保欲招揽老残入幕府的意图，随。\n\n## 场次06 张宫保求教河工治理的对话\n\n场面落在抚署、宫保签押房，出场人物有差官。\n这一场先把老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法推到台前。\n场面里先见老残随高绍殷进入抚署的路径与场景转换，紧跟着把张宫保的出场与外貌（魁梧、仁厚）压出来。\n临到场尾，老残提出“王景”的名字并简要阐述其理念。\n本场推进：老残随高绍殷进入抚署，与张宫保会面，讨论河工治理之法，理念冲突：张宫保（及主流）推崇的贾让“不与河争地”策略，与老残提出的王景“抑”字诀治河古法之间的根本对立，老残提出“王景”的名字并简要阐述其理念。\n场面目标：建立老残与张宫保的初次正式关系，将抽象的“河工”议题具体化为“贾让”与“王景”的治河理念之争，为后续情节埋下伏笔。\n必留动作：老残随高绍殷进入抚署的路径与场景转换；张宫保的出场与外貌（魁梧、仁厚）；张宫保求教河工治理的对话；老残对贾让与王景治河策略的对比分析；老残承诺呈递说帖。\n连续抓手：老残的衣着（随身穿戴）；高绍殷作为引荐人的角色；张宫保对河工问题的焦虑感；对话逻辑：从客套到具体议题。\n前后承接上，要把老残的衣着（随身穿戴）与高绍殷作为引荐人的角色继续压在同一股气口里。\n\n（抚署）\n老残盯住张宫保不放，非要追问出王景。\n张宫保的出场与外貌。\n老残对贾让与王景治河策略的对比分析。\n老残：王景。\n老残承诺呈递说帖。\n\n## 场次07 宫保邀请老残入住南书房\n\n场面落在抚署，出场人物有老残、宫保、高公。\n这一场先把宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙推到台前。\n场面里先见宫保邀请老残入住南书房，紧跟着把老残以探亲为由婉拒压出来。\n临到场尾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n本场推进：宫保邀请老残入住南书房，老残以探亲为由婉拒，约定从曹州归来后再叙，宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾，老残明确说出“等鄙人从曹州回来，再领宫保的教罢”\n场面目标：通过核心对话，明确老残的下一步行动（前往曹州），同时刻画宫保对其的重视与老残的自主性，建立角色间的张力与期待。\n必留动作：宫保邀请老残入住南书房；老残以探亲为由婉拒；老残提及将去曹州并考察玉守；宫保神色怏怏；老残告辞离开。\n连续抓手：紧接上一场景（S0014）的对话氛围；保持老残与宫保的角色状态连续性；维持叙事顺序与故事顺序差（order_delta: -2）\n前后承接上，要把紧接上一场景（S0014）的对话氛围与保持老残与宫保的角色状态连续性继续压在同一股气口里。\n\n（抚署）\n宫保：等鄙人从曹州回来，再领宫保的教罢。\n宫保邀请老残入住南书房。\n老残以探亲为由婉拒。\n老残提及将去曹州并考察玉守。\n老残：等鄙人从曹州回来，再领宫保的教罢。\n宫保站在人堆里，脸色一下子就绷住了。\n宫保的盛情挽留与老残的自主行程计划之间的潜在矛盾。\n\n## 场次08 【传闻】老残否认抚台邀请的对话\n\n这一场属于传闻时间层，场面落在客栈，出场人物有茶房、差官。\n这一场先把老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席推到台前。\n场面里先见老残否认抚台邀请的对话，紧跟着把掌柜转述抚台催促的细节压出来。\n临到场尾，差官不仅送来酒席，更传达“打扫南书房”的明确指令。\n本场推进：老残回到客栈，掌柜道喜并转述抚台邀约的传闻，随后宫保差人送来酒席，老残的自我认知（普通访客）与外界对他的看法（被抚台、宫保争相礼遇的贵人）之间的错位与矛盾。\n场面目标：通过对话和动作，生动展现老残从被传言包围到收到宫保实质性礼遇的转变，为后续进入宫保府邸做铺垫，并强化老残低调、谨慎的性格。\n必留动作：老残否认抚台邀请的对话；掌柜转述抚台催促的细节；差官送礼并传达打扫南书房之命。\n连续抓手：时间：傍晚；地点：客栈；角色：老残、掌柜、差官、茶房；保持“传言”与“现实”的对比节奏。\n前后承接上，要把傍晚与客栈继续压在同一股气口里。\n\n（客栈）\n老残否认抚台邀请。\n老残：打扫南书房。\n\n# 第03集 于朝栋说出‘亲家救我’并流泪\n\n本集围绕玉贤、差官、老董、茶房、三人展开，主要场面落在客栈房间、客店、济南、雒口、船上、董家口、城外、于家屯。老残招待差官喝茶，于朝栋说出‘亲家救我’并流泪，玉贤搜查于家发现可疑衣物。\n通过一系列礼节性互动，老残的个人原则与即将面临的官场人情、利益诱…，张李二人开始奉承并劝捐。\n本集看点集中在“刻画老残作为“铁老爷”初受官场礼遇的场景。”，并收在“于朝栋说出‘亲家救我’并流泪。”。\n\n## 场次01 老残为差官倒茶\n\n场面落在客栈房间、客店，出场人物有茶房、差官。\n这一场先把老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开推到台前。\n场面里先见老残为差官倒茶，紧跟着把差官传达宫保安排南书房入住压出来。\n临到场尾，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n本场推进：老残招待差官喝茶，差官再次传达宫保安排，老残写领谢帖子送其离开，老残的个人原则与即将面临的官场人情、利益诱惑之间的潜在冲突，张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n场面目标：通过一系列礼节性互动，刻画老残作为“铁老爷”初受官场礼遇的场景，同时埋下被奉承和劝捐的伏笔，展现其身处漩涡边缘的微妙处境。\n必留动作：老残为差官倒茶；差官传达宫保安排南书房入住；老残写领谢帖子并送客至大门；武巡捕传抚台邀请；掌柜恭维抚台送席。\n连续抓手：承接上一场景（S0016）老残收到礼物的情绪；保持老残从容、客气但保持距离的人物基调；场景从房间内过渡到客店大堂。\n前后承接上，要把承接上一场景（S0016）老残收到礼物…与保持老残从容、客气但保持距离的人物基调继续压在同一股气口里。\n\n（客栈房间）\n老残为差官倒茶。\n老残写领谢帖子并送客至大门。\n张李二人开始奉承并劝捐，将单纯的接待转变为带有目的性的社交攻势。\n掌柜恭维抚台送席。\n老残：铁老爷。\n\n## 场次02 老残为避纠缠连夜离济\n\n场面落在济南、雒口、船上、董家口，出场人物有老董、玉贤。\n这一场先把老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严推到台前。\n场面里先见老残为避纠缠连夜离济，紧跟着把乘船数日抵达董家口压出来。\n临到场尾，老董说出“玉大人倒反做了強盜的兵器了”\n本场推进：老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严，表面冲突：老残打听与老董讲述，老董说出“玉大人倒反做了強盜的兵器了”，这是对玉贤“清官”形象的颠覆性评价，也是后续所有悲剧的根源揭示。\n场面目标：完成场景转换（济南到曹州），并通过关键对话，首次向观众（和老残）揭示核心冲突人物玉贤的矛盾性与危险性，建立悬疑感。\n必留动作：老残为避纠缠连夜离济；乘船数日抵达董家口；老残向老董打听玉贤政绩；老董叹息并讲述玉贤办案严酷反成强盗工具。\n连续抓手：老残从济南到曹州府的行动线；玉贤作为未出场但关键人物的首次侧面塑造。\n前后承接上，要把老残从济南到曹州府的行动线与玉贤作为未出场但关键人物的首次侧面塑造继续压在同一股气口里。\n\n（济南）\n玉贤：玉大人倒反做了強盜的兵器了。\n老残为避纠缠连夜离济。\n乘船数日抵达董家口。\n老残向老董打听玉贤政绩。\n老董叹息并讲述玉贤办案严酷反成强盗工具。\n老残为避纠缠离济南，乘船至董家口，向店主老董打听玉贤政绩，听闻其办案严。\n老董：玉大人倒反做了強盜的兵器了。\n\n## 场次03 玉贤率马队追击\n\n场面落在城外、于家屯，出场人物有玉贤。\n这一场先把老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近推到台前。\n场面里先见玉贤率马队追击，紧跟着把强盗持火把与洋枪压出来。\n临到场尾，追至于家屯时，火光与枪声骤然消失，追捕线索中断。\n本场推进：老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近，玉贤（秩序/追捕方）与未知强盗（混乱/逃亡方）在夜色中的追逐对抗，追至于家屯时，火光与枪声骤然消失，追捕线索中断，行动从主动追击转入被动搜寻。\n场面目标：用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n必留动作：玉贤率马队追击；强盗持火把与洋枪；循火光与枪声追踪；追至于家屯附近时目标消失。\n连续抓手：紧接前序追捕场景（S0018）；保持夜间至天明的时序；玉贤人物状态（愤怒、追击）的连贯。\n前后承接上，要把紧接前序追捕场景（S0018）与保持夜间至天明的时序继续压在同一股气口里。\n\n（城外）\n玉贤率马队追击。\n强盗持火把与洋枪。\n循火光与枪声追踪。\n追至于家屯附近时目标消失。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面。\n老董继续讲述玉大人率马队追击强盗，追至火光枪声消失的于家屯附近。\n用紧凑、富有动感的视听语言，将老董的口述追捕转化为银幕上的直接动作场面，强化戏剧张力。\n\n## 场次04 玉贤率马队夜间追捕强盗的火光与枪声…\n\n出场人物有玉贤。\n这一场先把玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子推到台前。\n场面里先见玉贤率马队夜间追捕强盗的火光与枪声线索，紧跟着把玉贤判断强盗藏匿于村庄并下令封锁压出来。\n临到场尾，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n本场推进：玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子，玉贤追捕强盗的执法行动 vs. 于家父子自称良民、私藏武器仅为自保的辩解，玉贤无视于学礼的合理解释，仅凭搜出的土枪便认定于家藏匿强盗。\n场面目标：通过一场紧张的追捕与审问戏，生动刻画玉贤雷厉风行但可能过于武断的执法者形象，同时将于家父子卷入冤案漩涡。\n必留动作：玉贤率马队夜间追捕强盗的火光与枪声线索；玉贤判断强盗藏匿于村庄并下令封锁；从于朝栋家搜出土枪、刀、竿子等物证；玉贤审问于家父子，质问藏匿强盗与私藏军器。\n连续抓手：保持夜间至天明的时序过渡；玉贤角色形象（威严、果断）的连贯性；空间连续性：从野外追捕到进入于家屯村庄。\n前后承接上，要把保持夜间至天明的时序过渡与玉贤角色形象（威严、果断）的连贯性继续压在同一股气口里。\n\n玉大人：我不是逞强，只是不肯糊里糊涂退下去。\n玉贤判断强盗藏匿于村庄并下令封锁。\n从于朝栋家搜出土枪、刀、竿子等物证。\n玉贤审问于家父子，质问藏匿强盗与私藏军器。\n玉贤率马队追捕强盗至村庄，搜出于家土枪，审问于家父子。\n\n## 场次05 玉贤搜查于家并发现可疑衣物\n\n场面落在撫署，出场人物有玉贤、三人。\n这一场先把玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助推到台前。\n场面里先见玉贤搜查于家并发现可疑衣物，紧跟着把玉贤将于家父子押回城压出来。\n临到场尾，于朝栋说出‘亲家救我’并流泪。\n本场推进：玉贤搜查于家发现可疑衣物，将于家父子押回城，吴氏进城求助，玉贤的武断强权与于家父子的无辜蒙冤之间的直接冲突，平民百姓（吴氏）试图通过合法途径（求助举人父亲）对抗不公司法体系的结构性冲突，于朝栋说出‘亲家救我’并流泪。\n场面目标：完整呈现玉贤如何基于微小且可疑的证据（衣物）武断定罪，展现其滥用职权，同时引出受害者家属（吴氏）的反抗与求助。\n必留动作：玉贤搜查于家并发现可疑衣物；玉贤将于家父子押回城；吴氏进城向父亲吴举人求助；吴举人求见玉贤被拒；吴举人东门焦急等待。\n连续抓手：玉贤的官员形象与行事风格需连贯；于家父子的无辜状态需明确；时间线：搜查（白天）-> 押解进城（傍晚至二更天）-> 吴氏求助（一更多天）；于家父子状态需与上场景被捕衔接。\n前后承接上，要把玉贤的官员形象与行事风格需连贯与于家父子的无辜状态需明确继续压在同一股气口里。\n\n（撫署）\n吴举人东门守在外头来回踱步，只等里面递出一句“亲家救我”的准话。\n差人：亲家救我。\n玉贤搜查于家并发现可疑衣物。\n玉贤将于家父子押回城。\n吴氏进城向父亲吴举人求助。\n吴举人求见玉贤被拒。\n于朝栋说出‘亲家救我’并流泪。\n三人：亲家救我。",
        "source_ref": {
          "episode_ids": [
            "EP0001",
            "EP0002",
            "EP0003"
          ],
          "block_ids": [],
          "source_scene_ids": [
            "S0001",
            "S0002",
            "S0003",
            "S0004",
            "S0005",
            "S0006",
            "S0008",
            "S0009",
            "S0011",
            "S0012",
            "S0013",
            "S0014",
            "S0015",
            "S0016",
            "S0017",
            "S0018",
            "S0019",
            "S0020",
            "S0021"
          ],
          "source_group_ids": [
            "AG0001",
            "AG0002",
            "AG0003",
            "AG0004",
            "AG0005",
            "AG0006",
            "AG0007",
            "AG0008",
            "AG0009",
            "AG0010",
            "AG0011",
            "AG0012",
            "AG0013",
            "AG0014",
            "AG0015",
            "AG0016",
            "AG0017",
            "AG0018",
            "AG0019"
          ],
          "source_beat_ids": [
            "AB0001",
            "AB0002",
            "AB0003",
            "AB0004",
            "AB0005",
            "AB0006",
            "AB0007",
            "AB0008",
            "AB0009",
            "AB0010",
            "AB0011",
            "AB0012",
            "AB0013",
            "AB0014",
            "AB0015",
            "AB0016",
            "AB0017",
            "AB0018",
            "AB0019"
          ],
          "entity_uid": "",
          "visual_card_id": "",
          "voice_card_id": "",
          "asset_binding_id": ""
        }
      }
    ],
    "warnings": [
      "存在回忆、梦境或并行线等时间层，上传时建议在正文标题中显式标注。"
    ],
    "notes": [
      "上传正文建议使用 upload_bundle 中的上传版正文，不混入 checklist 或资产说明。",
      "若 recommended_upload_mode=split_parts，请按 upload_parts 顺序逐段上传。",
      "其余角色、场景、道具与音色信息请从 dramart_package.json 中读取。"
    ],
    "source_ref": {
      "episode_ids": [
        "EP0001",
        "EP0002",
        "EP0003"
      ],
      "block_ids": [],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0008",
        "S0009",
        "S0011",
        "S0012",
        "S0013",
        "S0014",
        "S0015",
        "S0016",
        "S0017",
        "S0018",
        "S0019",
        "S0020",
        "S0021"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011",
        "AG0012",
        "AG0013",
        "AG0014",
        "AG0015",
        "AG0016",
        "AG0017",
        "AG0018",
        "AG0019"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011",
        "AB0012",
        "AB0013",
        "AB0014",
        "AB0015",
        "AB0016",
        "AB0017",
        "AB0018",
        "AB0019"
      ],
      "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": 3,
      "block_count": 19,
      "character_bio_count": 14,
      "named_episode_count": 3,
      "episode_with_summary_count": 3,
      "episode_with_opening_hook_count": 3,
      "episode_with_ending_hook_count": 3,
      "episode_with_upload_text_count": 3,
      "recommended_upload_mode": "single_file",
      "upload_script_char_count": 12486,
      "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,
      "source_screenplay_generation_status": "ok",
      "source_screenplay_blocked_block_count": 0,
      "source_screenplay_blocked_episode_count": 0,
      "source_screenplay_placeholder_block_count": 0
    },
    "readiness_issues": [
      {
        "code": "non_mainline_time_mode",
        "severity": "info",
        "title": "存在非主线时间层",
        "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传时建议显式标注，以免平台误解时态切换。",
        "target_type": "package",
        "target_id": "",
        "source_refs": [
          "flashback",
          "dream",
          "rumor"
        ],
        "recommended_action": "在分集标题、场次标题或正文中显式提示时间层切换。"
      }
    ]
  }
}