{
  "meta": {
    "package_version": "dramart_package.v2",
    "project_title": "ershinian_pg24099_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": 2,
    "block_count": 11,
    "source_scene_ref_count": 11,
    "character_bio_count": 22,
    "location_asset_count": 9,
    "prop_asset_count": 1,
    "voice_suggestion_count": 22,
    "review_checklist_count": 56,
    "upload_script_char_count": 10860,
    "upload_part_count": 1,
    "single_file_upload_ready": true,
    "missing_character_visual_count": 22,
    "missing_character_voice_count": 22,
    "manual_review_blocked_character_count": 0,
    "manual_review_needs_fix_character_count": 0,
    "manual_review_locked_scope_count": 0,
    "skipped_unbound_character_ref_count": 0,
    "entity_review_summary": {
      "entity": {
        "total": 42,
        "applicable": 42,
        "todo": 42,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 42
      },
      "visual": {
        "total": 42,
        "applicable": 42,
        "todo": 42,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 42
      },
      "voice": {
        "total": 42,
        "applicable": 24,
        "todo": 24,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 18,
        "locked": 0,
        "open": 24
      },
      "assets": {
        "total": 42,
        "applicable": 42,
        "todo": 42,
        "in_progress": 0,
        "approved": 0,
        "needs_fix": 0,
        "blocked": 0,
        "na": 0,
        "locked": 0,
        "open": 42
      },
      "event_count": 0
    },
    "time_mode_counts": {
      "flashback": 5,
      "mainline": 6
    }
  },
  "outline": {
    "title": "ershinian_pg24099_ch1_4",
    "format": "Dramart 漫剧/短剧输入包",
    "premise": "死裡逃生在上海豫园获赠奇书手稿，由此引出九死一生少年丧父、投亲无门的往事，最终在穷途末路时偶遇故人吴继之，命运迎来转机。",
    "core_hook": "上海豫园，喧嚣市井中，一个神秘汉子将一叠厚厚的手稿塞给死裡逃生。他低头看去，封面上赫然写着《二十年目睹之怪现状》，作者署名：九死一生。一股莫名的宿命感瞬间击中了他。",
    "episode_count": 2,
    "block_count": 11,
    "source_scene_ref_count": 11,
    "time_mode_counts": {
      "flashback": 5,
      "mainline": 6
    },
    "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"
      ],
      "character_names": [
        "死裡逃生",
        "九死一生",
        "漢子",
        "尤雲岫",
        "張鼎臣",
        "伯父",
        "母親",
        "廣東人",
        "買辦",
        "李氏",
        "藩臺",
        "土老兒"
      ],
      "character_display_names": [
        "死裡逃生",
        "九死一生",
        "漢子",
        "尤雲岫",
        "張鼎臣",
        "伯父",
        "母親",
        "廣東人",
        "買辦",
        "李氏",
        "藩臺",
        "土老兒"
      ],
      "character_entity_uids": [
        "E000002",
        "E000004",
        "E000003",
        "E000010",
        "E000011",
        "E000014",
        "E000015",
        "E000016",
        "E000017",
        "E000026",
        "E000035",
        "E000027"
      ],
      "location_names": [
        "上海",
        "四馬路",
        "邑廟豫園",
        "南京",
        "杭州",
        "客棧"
      ],
      "location_display_names": [
        "上海",
        "四馬路",
        "邑廟豫園",
        "南京",
        "杭州",
        "客棧"
      ],
      "location_entity_uids": [
        "E000001",
        "E000029",
        "E000006",
        "E000013",
        "E000012",
        "E000020"
      ],
      "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\n伯父拿着讣帖，难得露出赞许之色。\n\n伯父：嗯，文字得体，情真意切。看不出你小小年纪，有此文才。\n\n接着，伯父与张鼎臣商议，决定将九死一生父亲在杭州的店铺盘出，银钱分作三股，一股留作安家，两股让九死一生带去上海存在银号，以备将来。\n\n母亲却私下担忧。\n\n母親：你伯父让你一个人带这么多钱去上海……儿啊，世事险恶，千万小心。\n\n不久，九死一生扶父亲灵柩乘船回上海。船上，他目睹了一出闹剧：一个广东口音的乘客抓住一个衣着体面的官绅，大喊捉贼，指控对方偷了他的怀表。那官绅面红耳赤，百般抵赖，周围看客指指点点，却无人敢真正上前。\n\n广东人：（激动地）官老爷就了不起？官老爷就可以做贼？！\n\n九死一生缩在角落，看着那官绅体面下的狼狈，心中对“官”的想象，第一次出现了裂痕。原来，体面与丑恶，可以离得这么近。\n\n转场提示：处理完上海事务，九死一生前往南京寻找伯父。\n\n## 第三回：走穷途忽遇良朋，谈仁路初闻怪状\n\n（章节标题再次以视觉化形式呈现）\n“走穷途忽遇良朋，谈仁路初闻怪状”。\n\n这标题仿佛一道分水岭，预告着主角山穷水尽后的柳暗花明，以及更多光怪陆离的见闻即将涌入他的生命。\n\n转场提示：画面转入南京客栈。\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开场钩子：上海豫园，喧嚣市井中，一个神秘汉子将一叠厚厚的手稿塞给死裡逃生。他低头看去，封面上赫然写着《二十年目睹之怪现状》，作者署名：九死一生。一股莫名的宿命感瞬间击中了他。\n结尾钩子：南京街头，身无分文的九死一生几乎绝望，却与故人吴继之不期而遇。吴继之热情地拍着他的肩膀：“走，到我公馆住下！” 生存危机暂解，一个窥探官场百态的新窗口，正在他面前打开。\n\n## 场次01 豫园奇遇\n\n时间层：flashback\n人物：死裡逃生、九死一生、漢子\n场景：上海、四馬路、邑廟豫園\n结构锚点：\n剧情功能：establish_setting、introduce_protagonist、present_macguffin、set_narrative_frame\n呈现方式：信息交代\n时间层：回忆\n必保留点：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園；Handover of the manuscript '二十年目睹之怪现状'；Protagonist's decision to send the manuscript to 橫濱《新小說》\n连续性要求：Maintain 'flashback' time_mode established in chronology；Anchor temporal setting: '六十年前'；Establish '死裡逃生' as frame narrator/protagonist；Introduce '九死一生' as the manuscript's author (implied connection)\n改编锚点：\n本段概述：死裡逃生在上海豫园遇到神秘汉子，获赠《二十年目睹之怪现状》手稿，决定将…\n推进目标：To visually and narratively establish the corrupt world of late-Qing Shanghai, introduce the cynical protagonist who has escaped it, and present the mysterious manuscript that contains the stories which will form the series' core. This scene sets up the narrative frame device.\n必须保留：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園\n冲突：Man vs. Society (Protagonist's disillusionment with Shanghai's hypocrisy and corruption) / Man vs. Self (His search for meaning and purpose after his 'escape').\n转折：The moment the protagonist receives the manuscript and reads the title '二十年目睹之怪現狀' and the author's name '九死一生', realizing a profound connection and his new mission to disseminate these stories.\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连续性要求：紧接S0001之后；保持叙事顺序差\n改编锚点：\n本段概述：小说第二回标题：守常经不使疏逾戚，睹怪状几疑贼是官。\n推进目标：将章回标题转化为一个简短、有风格、能暗示本章主题的视觉化开场，自然过渡到后续情节。\n必须保留：第二回标题文字；标题的悬疑与讽刺基调\n冲突：标题本身蕴含的冲突：“守常经”（秩序）与“睹怪状”（混乱）、“戚”（亲近）与“疏”（疏远）、“贼”与“官”的身份错位。\n转折：标题画面出现，标志着故事进入以“身份错乱与秩序挑战”为核心的新篇章。\n\n（古朴的卷轴样式标题，毛笔字遒劲有力，缓缓浮现于屏幕）\n“守常经不使疏逾戚，睹怪状几疑贼是官”。\n\n标题透着强烈的反讽与悬疑，暗示着即将上演的，是一出亲情伦理与官贼身份错位的荒诞剧。\n\n转场：标题淡出，故事正式开始。\n\n## 场次03 父丧\n\n时间层：flashback\n人物：尤雲岫、張鼎臣、九死一生、伯父、死裡逃生、母親\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：背景揭示、人物关系建立、核心冲突引入\n呈现方式：对白主导\n时间层：回忆\n必保留点：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑；張鼎臣与九死一生关于是否通知伯父的对话；伯父抵达并吸鸦片烟\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“十五岁那年”；九死一生作为回忆叙述者视角；尤雲岫、張鼎臣、伯父角色首次亮相的连续性\n改编锚点：\n本段概述：九死一生回憶父親病逝杭州，尤雲岫伴他前往處理後事，張鼎臣與伯父介入財產…\n推进目标：通过对话和关键动作，生动呈现父亲去世后，年幼的九死一生被卷入复杂的财产与人际关系网，身边人各怀心思的初始状态，为后续的背叛与冲突埋下伏笔。\n必须保留：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑\n冲突：年幼丧父的九死一生，在處理後事時，面臨張鼎臣（怀疑尤雲岫）、尤雲岫（试图掌控）、伯父（即将介入）三方不同立场与意图的潜在角力。\n转折：張鼎臣私下向九死一生表达对尤雲岫的怀疑，并透露父亲遗嘱未提伯父，暗示家庭内部存在嫌隙与财产争夺的风险。\n\n（回忆）十五岁的九死一生在南京家中，接到父亲在杭州病逝的噩耗，如遭雷击。\n\n母亲六神无主，父亲生前好友尤雲岫主动提出陪他前往杭州料理后事。临行前，母亲将一包银子交给尤雲岫。\n\n母親：雲岫，这些钱你拿着，到杭州一切用度，还有……打点衙门，都拜托你了。\n\n尤雲岫：（接过，神色郑重）嫂子放心，我与兄长情同手足，一定办妥。\n\n到了杭州，另一位世交张鼎臣赶来帮忙。他看着尤雲岫忙前忙后，私下将九死一生拉到一边。\n\n張鼎臣：（眉头紧锁）贤侄，有句话不知当讲不当讲。你父亲这病，来得突然。尤雲岫他……是不是太过殷勤了些？你父亲留下的遗嘱我看过，里面可没提你那位在南京的伯父。\n\n九死一生心头一沉。这时，伯父竟也从南京赶到了，一见面并未多问丧事，倒是先让人摆开了烟具。\n\n伯父：（躺在榻上，吐着烟圈）姪儿来了？一路辛苦。先歇着，事缓则圆。\n\n九死一生看着烟雾后伯父模糊的脸，又想起张鼎臣的警告，第一次感到亲人之间那看不见的裂痕。\n\n转场：后事处理完毕，返回南京。\n\n## 场次04 讣帖与远行\n\n人物：張鼎臣、母親、伯父、廣東人、買辦、九死一生、尤雲岫\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：角色塑造、情节推进、悬念设置\n呈现方式：对白主导\n时间层：主线\n必保留点：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线；轮船偷窃事件（广东人指证）\n连续性要求：主角从家乡到上海再到南京的旅程；伯父返回南京的交代；主角母亲对存款的担忧\n改编锚点：\n本段概述：伯父赞赏我起草的讣帖，与张鼎臣商议盘店事宜，随后扶灵柩回上海处理财务，…\n推进目标：塑造主角初显文才与得到长辈认可的形象，同时通过处理父亲后事和旅途见闻，展现晚清社会风貌，并为后续寻找伯父和揭露社会丑态埋下伏笔。\n必须保留：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线\n冲突：主角对伯父的信任与后续伯父回避、存款无着的潜在矛盾；轮船上体面官绅与偷窃指控的表面冲突。\n转折：轮船偷窃事件，主角亲眼目睹官场体面下的丑恶，是其社会认知的转折点。\n\n回到南京，九死一生起草了父亲的讣帖。\n\n伯父拿着讣帖，难得露出赞许之色。\n\n伯父：嗯，文字得体，情真意切。看不出你小小年纪，有此文才。\n\n接着，伯父与张鼎臣商议，决定将九死一生父亲在杭州的店铺盘出，银钱分作三股，一股留作安家，两股让九死一生带去上海存在银号，以备将来。\n\n母亲却私下担忧。\n\n母親：你伯父让你一个人带这么多钱去上海……儿啊，世事险恶，千万小心。\n\n不久，九死一生扶父亲灵柩乘船回上海。船上，他目睹了一出闹剧：一个广东口音的乘客抓住一个衣着体面的官绅，大喊捉贼，指控对方偷了他的怀表。那官绅面红耳赤，百般抵赖，周围看客指指点点，却无人敢真正上前。\n\n广东人：（激动地）官老爷就了不起？官老爷就可以做贼？！\n\n九死一生缩在角落，看着那官绅体面下的狼狈，心中对“官”的想象，第一次出现了裂痕。原来，体面与丑恶，可以离得这么近。\n\n转场：处理完上海事务，九死一生前往南京寻找伯父。\n\n## 场次05 第三回：走穷途忽遇良朋，谈仁路初闻怪状\n\n结构锚点：\n剧情功能：章节过渡、主题预示\n呈现方式：信息交代\n时间层：主线\n必保留点：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n连续性要求：保持与S0004的叙事顺序差；作为新章节的明确起点\n改编锚点：\n本段概述：章节标题：走穷途忽遇良朋，谈仁路初闻怪状。\n推进目标：通过视觉与听觉元素，清晰、风格化地展示章节标题，为后续剧情设定悬念和基调。\n必须保留：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n冲突：标题本身不包含直接冲突，但预示了主角的“穷途”困境与即将听闻的“怪状”之间的潜在张力。\n转折：标题的出现标志着故事进入新的章节，主角命运将迎来“遇良朋”和“闻怪状”的转折。\n\n（章节标题再次以视觉化形式呈现）\n“走穷途忽遇良朋，谈仁路初闻怪状”。\n\n这标题仿佛一道分水岭，预告着主角山穷水尽后的柳暗花明，以及更多光怪陆离的见闻即将涌入他的生命。\n\n转场：画面转入南京客栈。\n\n## 场次06 绝处逢生\n\n时间层：flashback\n人物：伯父、李氏、藩臺、土老兒、吳景曾、太太、候補道\n场景：南京、上海、客棧\n结构锚点：\n剧情功能：建立关键关系、引入核心冲突、推进主角困境\n呈现方式：对白主导\n时间层：回忆\n必保留点：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程；主角搬入继之公馆的决定；继之提及“野鸡道台”新闻作为悬念钩子\n连续性要求：保持flashback结构，与S0005的“想起”锚点衔接；主角服装、精神状态与前一困境场景（S0005）的连贯；南京作为故事核心地点的视觉一致性\n改编锚点：\n本段概述：我在客栈等待伯父未果，盘缠将尽时偶遇同窗吴继之，受邀搬入其公馆居住，并…\n推进目标：通过主角与吴继之的重逢，完成主角从孤立无援到获得暂时庇护的转折，建立核心人物关系，并巧妙引入后续官场怪谈的引子。\n必须保留：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程\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_char_count": 5995
    },
    {
      "episode_id": "EP0002",
      "episode_index": 2,
      "title": "第02集 野鸡道台与献妻丑闻",
      "logline": "继之讲述“野鸡道台”的荒诞发迹史与候补道献妻的官场丑闻，主角在震惊中初窥世情险恶，并目睹了官场表面恭敬下的巨大反差。",
      "summary": "继之向主角讲述土老儿被妓女桂花劝捐、最终闹出“野鸡道台”丑闻的经过。随后，他又揭露了候补道为巴结上司献妻按摩、夫人受辱反得升迁，以及候补县太爷沦为盗贼等骇人听闻之事。谈话间，继之点破主角伯父有意回避的真相。最后，主角在伯父公馆外，亲眼目睹一位神秘客人被主人恭敬送出，内心对官场表象与内里产生了巨大疑问。",
      "opening_hook": "桂花一把扯下招牌，关上大门，对土老儿说：“只要你娶我做填房，不许再娶别人。我立刻帮你捐官，改换门庭！”",
      "ending_hook": "公馆大门敞开，一位衣着普通的神秘客人被主人点头哈腰地恭送出来。主角躲在暗处，看着这反常的恭敬场面，心头一沉：这官场，水到底有多深？",
      "block_count": 5,
      "block_ids": [
        "EP0002B001",
        "EP0002B002",
        "EP0002B003",
        "EP0002B004",
        "EP0002B005"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "time_modes": [
        "mainline",
        "flashback"
      ],
      "character_names": [
        "桂花",
        "太太",
        "土老兒",
        "吳景曾",
        "藩臺",
        "制臺",
        "撫臺",
        "候補道",
        "候補縣太爺",
        "總督大帥",
        "買辦",
        "伯父"
      ],
      "character_display_names": [
        "桂花",
        "太太",
        "土老兒",
        "吳景曾",
        "藩臺",
        "制臺",
        "撫臺",
        "候補道",
        "候補縣太爺",
        "總督大帥",
        "買辦",
        "伯父"
      ],
      "character_entity_uids": [
        "E000028",
        "E000019",
        "E000027",
        "E000025",
        "E000035",
        "E000034",
        "E000033",
        "E000036",
        "E000038",
        "E000037",
        "E000017",
        "E000014"
      ],
      "location_names": [
        "南京",
        "上海",
        "四馬路",
        "會香裡",
        "京城",
        "蘇州",
        "客棧"
      ],
      "location_display_names": [
        "南京",
        "上海",
        "四馬路",
        "會香裡",
        "京城",
        "蘇州",
        "客棧"
      ],
      "location_entity_uids": [
        "E000013",
        "E000001",
        "E000029",
        "E000030",
        "E000031",
        "E000032",
        "E000020"
      ],
      "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主角：（躲在街角，将一切看在眼里，心中疑窦丛生。那客人是谁？为何伯父家的主人对他如此恭敬？官场的表面之下，究竟藏着多少不为人知的暗流？）。",
      "episode_upload_markdown": "# 第02集 野鸡道台与献妻丑闻\n\n主要人物：桂花、太太、土老兒、吳景曾、藩臺、制臺、撫臺、候補道、候補縣太爺、總督大帥、買辦、伯父\n主要场景：南京、上海、四馬路、會香裡、京城、蘇州、客棧\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桂花：（眼波流转）爷是哪里人？家里做什么营生？\n土老儿：（老实巴交）种地的，有几百亩田。\n桂花：（眼睛一亮）既有家底，何不捐个官做做？光宗耀祖，强过在这里花冤枉钱。\n（闪回结束）\n主角：（好奇）后来呢？\n继之：那土老儿本分，不敢想。可桂花是个有手段的，竟自己除了招牌，关了大门，对土老儿说——\n（闪回：桂花一把扯下“桂花书寓”的招牌）\n桂花：（斩钉截铁）只要你娶我做填房，不许再娶别人。我立刻帮你打点，捐个官，咱们改换门庭！\n主角：（愕然）这就……嫁了？\n继之：（点头）次日就成了亲，桂花改口称“太太”，一心一意要捧出个“道台老爷”来。\n\n## 场次02 丑闻败露\n\n时间层：flashback\n人物：藩臺、制臺、土老兒、桂花、撫臺、吳景曾、候補道\n场景：南京、京城、會香裡、蘇州\n结构锚点：\n剧情功能：背景揭示、人物动机说明、讽刺主题强化、情节转折铺垫\n呈现方式：旁述桥接\n时间层：回忆\n必保留点：桂花为土老儿捐官谋差的核心情节；藩台识破真相并调查的过程；桂花最终成为诰封夫人的讽刺结局；继之作为叙述者的框架\n连续性要求：保持flashback结构，明确是继之的回忆性讲述；与S0007场景（继之开始讲述）紧密衔接；确保时间线从“次日”开始，顺序推进至结局\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连续性要求：继之与“我”的对话关系；场景色调与之前对话场景统一；闪回部分的视觉风格需与主叙事区分；与前后场景的叙事节奏衔接\n改编锚点：\n本段概述：繼之講述前兩年制臺生病，一位候補道獻上妻子為其按摩，結果被姨太太們發現… / 本章回標題，預告接下來的內容。\n推进目标：通过生动的对话和闪回画面，将一则官场丑闻讲述得既荒诞可笑又极具讽刺意味，强化继之作为观察者和评论者的角色形象。\n必须保留：继之作为讲述者；候补道献妻治病的核心情节；按摩丑事被姨太太们发现\n冲突：候补道为巴结上司，不惜献妻，与道德伦理、家庭尊严的冲突；丑事败露后，与制台姨太太们的直接肢体冲突。\n转折：无\n\n主角：（摇头叹息）真是荒唐。\n继之：（神色转为凝重）荒唐？还有更不堪的。就是前两年，南京那位制台大人病了，有个候补道为了巴结，竟想出一条“妙计”。\n主角：什么计策？\n继之：他声称自己的夫人精通按摩推拿，能治制台的病，亲自把夫人送进了制台府。\n（闪回：制台卧房，候补道夫人低头为床上的制台按摩脚部，神色屈辱。门外，几个姨太太偷窥）\n继之：这事被制台的几位姨太太撞破，哪能容她？当场冲进去，将那夫人揪出来，一顿撕打辱骂。\n（闪回：花园里，一群女人围着候补道夫人推搡叫骂，场面混乱）\n继之：这件丑事立刻传遍了南京城，成了笑柄。那候补道，脸算是丢尽了。\n\n转场：（话题自然引向此类丑闻的后续）\n\n## 场次04 真相刺心\n\n人物：候補道、候補縣太爺、藩臺、總督大帥、買辦、吳景曾、伯父\n场景：南京、客棧\n结构锚点：\n剧情功能：信息揭示、冲突推进、人物关系深化、世界观构建\n呈现方式：对白主导\n时间层：主线\n必保留点：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相；主人公听闻丑闻后的震惊与失言；主人公对继之劝诫的内心感激与反思；继之对主人公处世之道的告诫\n连续性要求：紧接前文对候补道夫人事件的讨论；保持吴继之作为讲述者和引导者的角色连贯性；主人公情绪从对官场的好奇，到听闻丑闻的震惊，再到得知被伯父回避的失落，需有清晰递进\n改编锚点：\n本段概述：继之讲述候补道夫人受辱后反得升迁、候补县太爷沦为盗贼的官场丑闻，并揭露…\n推进目标：通过密集的对话，完成两大核心信息揭露（官场腐败范例、家庭关系真相），塑造吴继之的世故与正直，并推动主人公从天真旁观者向初识世情险恶的转变。\n必须保留：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相\n冲突：主人公对官场/亲情的美好想象与残酷现实（官场颠倒黑白、亲人刻意疏远）之间的冲突；吴继之试图保护/教导主人公与主人公内心震撼之间的张力。\n转折：继之点破伯父是“有意回避”，主人公从对官场丑闻的震惊，转入对自身处境（被至亲抛弃）的直面与无言，标志着其天真阶段的彻底结束。\n\n主角：（难以置信）如此无耻，后来定被革职查办了吧？\n继之：（冷笑）革职？你太天真了。正相反，没过多久，那位献妻的候补道，反而被派了个优差！你说这官场，还有什么黑白可言？\n主角：（震惊失语）这……\n继之：（压低声音）还有更惨的。一个候补县太爷，候补了十几年，穷得吃不上饭，最后竟真去做了劫道的强盗，被拿了正法。\n主角：（脸色发白）官场……竟至于此？\n继之：（看着主角，意味深长）贤弟，你年纪轻，不知世路艰难。就说你伯父，他哪里是凑巧去了通州？分明是知道你来了南京，有意回避。\n主角：（如遭雷击，手中茶杯一晃）有……有意回避？为何？\n继之：（叹口气）人心难测，骨肉至亲亦如此。我告诉你这些，是让你心里有个防备，往后处世，切莫再这般赤诚了。\n主角：（低头，久久无言，心中暖流与寒意交织）。\n\n转场：（时间跳转，承接继之对主角的关照）\n\n## 场次05 暗流与恭送\n\n时间层：flashback\n人物：伯父、藩臺、主人、客人、母親、吳景曾、太太\n场景：上海\n结构锚点：\n剧情功能：establish_relationship、advance_plot、introduce_mystery\n呈现方式：对白主导\n时间层：回忆\n必保留点：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果；主角偶遇神秘客人及主人恭敬送客的对比\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“二十年前”；主角对伯父的疑虑持续；继之的官职变化（接办大关）\n改编锚点：\n本段概述：继之告知主角将接办大关差使，并为其安排书启职位。主角对伯父去通州之事起…\n推进目标：展现主角在继之帮助下获得立足之地，同时强化伯父失踪的谜团，并通过偶遇场景暗示官场中隐藏的复杂人际关系。\n必须保留：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果\n冲突：主角对骨肉至亲（伯父）可能有意回避自己的内心怀疑与不安。\n转折：主角目睹神秘客人被恭敬送出的场景，意识到官场表面与内里可能存在的巨大反差。\n\n（闪回：二十年前，上海客栈）\n继之：（对年轻的主角）我即将接办苏州的厘金大关。你既暂无去处，不如先跟我去，做个书启先生，也算有个着落。这二十两银子，你且拿着安顿。\n主角：（感激）景曾兄大恩……\n继之：（摆手）不说这些。只是你伯父那里，我劝你再打听清楚。\n（主角来到伯父上海公馆前，大门紧闭。他上前向门房打听）\n主角：请问，贵府老爷可在？\n门房：（打量他，冷淡）老爷出远门了，不知何时回来。\n主角：（失望，转身欲走，忽见侧门打开）\n（一个穿着半旧长衫、貌不惊人的中年男子从侧门走出，公馆主人——一位穿戴体面的官员，竟亲自送到门口，态度异常恭敬，甚至带着几分谄媚）\n官员：（拱手，压低声音）您老慢走，事情我一定办妥……\n（神秘客人略一点头，匆匆离去。官员直到对方背影消失，才直起身，恢复威严神色，转身进门。）\n主角：（躲在街角，将一切看在眼里，心中疑窦丛生。那客人是谁？为何伯父家的主人对他如此恭敬？官场的表面之下，究竟藏着多少不为人知的暗流？）。",
      "episode_upload_char_count": 4863
    }
  ],
  "character_bios": [
    {
      "entity_uid": "E000004",
      "name": "九死一生",
      "canonical_name": "九死一生",
      "display_name": "九死一生",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "core",
      "priority": "P0",
      "role_tier": "lead",
      "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",
        "EP0001B003",
        "EP0001B004"
      ],
      "visual_card_id": "VC000004",
      "voice_card_id": "VO000004",
      "asset_binding_id": "AB000004",
      "identity_summary": "笔记作者；父亲去世",
      "visual_anchor_summary": "笔记作者；父亲去世",
      "design_keywords": [
        "九死一生",
        "笔记作者",
        "父亲去世",
        "筆記作者"
      ],
      "design_prompt_fragments": [
        "笔记作者；父亲去世",
        "九死一生",
        "笔记作者",
        "父亲去世",
        "筆記作者"
      ],
      "appearance_core": [
        "笔记作者",
        "父亲去世",
        "筆記作者",
        "篇首署著「九死一生筆記」六個字"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000004:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "笔记作者",
            "父亲去世",
            "筆記作者"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：九死一生 / 我 / 姪兒 / 姪少爺",
        "常见关联对象：杭州、上海、尤雲岫",
        "已处理文本出现范围：C0001 -> C0007"
      ],
      "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": "core",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "杭州",
          "上海",
          "尤雲岫",
          "張鼎臣"
        ],
        "variant_keys": [
          "VC000004:costume:default",
          "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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：九死一生 - 前往 - 杭州；九死一生 - 前往 - 上海；尤雲岫 - 告知 - 九死一生",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000014",
      "name": "伯父",
      "canonical_name": "伯父",
      "display_name": "伯父",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "major",
      "priority": "P1",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B003",
        "EP0001B004",
        "EP0001B006",
        "EP0002B004",
        "EP0002B005"
      ],
      "visual_card_id": "VC000014",
      "voice_card_id": "VO000014",
      "asset_binding_id": "AB000014",
      "identity_summary": "九死一生伯父；南京候补",
      "visual_anchor_summary": "九死一生伯父；南京候补",
      "design_keywords": [
        "伯父",
        "九死一生伯父",
        "南京候补",
        "南京候補"
      ],
      "design_prompt_fragments": [
        "九死一生伯父；南京候补",
        "伯父",
        "九死一生伯父",
        "南京候补",
        "南京候補"
      ],
      "appearance_core": [
        "九死一生伯父",
        "南京候补",
        "南京候補",
        "我伯父看見了，便立起來問道"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000014:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "九死一生伯父",
            "南京候补",
            "南京候補"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：伯父 / 令伯",
        "常见关联对象：張鼎臣、九死一生、南京",
        "已处理文本出现范围：C0004 -> 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": "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": "major",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "張鼎臣",
          "九死一生",
          "南京",
          "吳景曾"
        ],
        "variant_keys": [
          "VC000014:costume:default",
          "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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：伯父 - 告知 - 張鼎臣；九死一生 - 告知 - 伯父；伯父 - 前往 - 南京",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000025",
      "name": "吳景曾",
      "canonical_name": "吳景曾",
      "display_name": "吳景曾",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "major",
      "priority": "P1",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B001",
        "EP0002B002",
        "EP0002B003",
        "EP0002B004",
        "EP0002B005"
      ],
      "visual_card_id": "VC000025",
      "voice_card_id": "VO000025",
      "asset_binding_id": "AB000025",
      "identity_summary": "九死一生同窗；勸戒九死一生",
      "visual_anchor_summary": "九死一生同窗；勸戒九死一生",
      "design_keywords": [
        "吳景曾",
        "九死一生同窗",
        "勸戒九死一生",
        "姓吳，名景曾，表字繼之"
      ],
      "design_prompt_fragments": [
        "九死一生同窗；勸戒九死一生",
        "吳景曾",
        "九死一生同窗",
        "勸戒九死一生",
        "姓吳，名景曾，表字繼之"
      ],
      "appearance_core": [
        "九死一生同窗",
        "勸戒九死一生",
        "姓吳，名景曾，表字繼之",
        "繼之道：「跑街是到外面收帳的意思。"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000025:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "九死一生同窗",
            "勸戒九死一生",
            "姓吳，名景曾，表字繼之"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：吳景曾 / 繼之",
        "常见关联对象：九死一生、李氏、伯父",
        "已处理文本出现范围：C0006 -> C0012"
      ],
      "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": "VO000025:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000025:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000025:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "major",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "九死一生",
          "李氏",
          "伯父",
          "藩臺"
        ],
        "variant_keys": [
          "VC000025:costume:default",
          "VO000025:default",
          "VO000025:low",
          "VO000025: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：九死一生 - 告知 - 吳景曾；吳景曾 - 告知 - 九死一生；吳景曾 - 告知 - 李氏",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000036",
      "name": "候補道",
      "canonical_name": "候補道",
      "display_name": "候補道",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B002",
        "EP0002B003",
        "EP0002B004"
      ],
      "visual_card_id": "VC000036",
      "voice_card_id": "VO000036",
      "asset_binding_id": "AB000036",
      "identity_summary": "年輕官員；自稱懂醫",
      "visual_anchor_summary": "年輕官員；自稱懂醫",
      "design_keywords": [
        "候補道",
        "年輕官員",
        "自稱懂醫",
        "懂按摩術"
      ],
      "design_prompt_fragments": [
        "年輕官員；自稱懂醫",
        "候補道",
        "年輕官員",
        "自稱懂醫",
        "懂按摩術"
      ],
      "appearance_core": [
        "年輕官員",
        "自稱懂醫",
        "懂按摩術",
        "花枝招展"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000036:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "年輕官員",
            "自稱懂醫",
            "懂按摩術"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：候補道 / 尊夫人 / 婦人 / 妾 / 候補道夫人 / 夫人",
        "常见关联对象：制臺、太太、總督大帥",
        "已处理文本出现范围：C0009 -> C0010"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "feminine",
        "age_impression": "unknown",
        "voice_anchor_summary": "候補道；角色 / 女性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "女性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000036:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000036:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000036: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": [
          "VC000036:costume:default",
          "VO000036:default",
          "VO000036:low",
          "VO000036: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：候補道 - 告知 - 制臺；太太 - 对抗 - 候補道；候補道 - 对抗 - 總督大帥",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000027",
      "name": "土老兒",
      "canonical_name": "土老兒",
      "display_name": "土老兒",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B001",
        "EP0002B002"
      ],
      "visual_card_id": "VC000027",
      "voice_card_id": "VO000027",
      "asset_binding_id": "AB000027",
      "identity_summary": "跑街夥計；聽桂花勸做官",
      "visual_anchor_summary": "跑街夥計；聽桂花勸做官",
      "design_keywords": [
        "土老兒",
        "跑街夥計",
        "聽桂花勸做官",
        "捐官道臺"
      ],
      "design_prompt_fragments": [
        "跑街夥計；聽桂花勸做官",
        "土老兒",
        "跑街夥計",
        "聽桂花勸做官",
        "捐官道臺"
      ],
      "appearance_core": [
        "跑街夥計",
        "聽桂花勸做官",
        "捐官道臺",
        "這土老兒做了一年多，倒還安分。"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000027:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "跑街夥計",
            "聽桂花勸做官",
            "捐官道臺"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：四馬路、會香裡、桂花",
        "已处理文本出现范围：C0007 -> C0008"
      ],
      "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": "VO000027:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000027:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000027: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": [
          "VC000027:costume:default",
          "VO000027:default",
          "VO000027:low",
          "VO000027: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：土老兒 - 前往 - 四馬路；土老兒 - 前往 - 會香裡；桂花 - 告知 - 土老兒",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000019",
      "name": "太太",
      "canonical_name": "太太",
      "display_name": "太太",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B001",
        "EP0002B003",
        "EP0002B005"
      ],
      "visual_card_id": "VC000019",
      "voice_card_id": "VO000019",
      "asset_binding_id": "AB000019",
      "identity_summary": "伯父妻子；制臺妾室",
      "visual_anchor_summary": "伯父妻子；制臺妾室",
      "design_keywords": [
        "太太",
        "伯父妻子",
        "制臺妾室",
        "多人"
      ],
      "design_prompt_fragments": [
        "伯父妻子；制臺妾室",
        "太太",
        "伯父妻子",
        "制臺妾室",
        "多人"
      ],
      "appearance_core": [
        "伯父妻子",
        "制臺妾室",
        "多人",
        "太太又向來沒有見過"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000019:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "伯父妻子",
            "制臺妾室",
            "多人"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：太太 / 伯母 / 姨太太",
        "常见关联对象：九死一生、候補道、吳景曾",
        "已处理文本出现范围：C0005 -> 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": "VO000019:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000019:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000019: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": [
          "VC000019:costume:default",
          "VO000019:default",
          "VO000019:low",
          "VO000019: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：太太 - 告知 - 九死一生；太太 - 对抗 - 候補道；吳景曾 - 告知 - 太太",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000035",
      "name": "藩臺",
      "canonical_name": "藩臺",
      "display_name": "藩臺",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B006",
        "EP0002B002",
        "EP0002B004",
        "EP0002B005"
      ],
      "visual_card_id": "VC000035",
      "voice_card_id": "VO000035",
      "asset_binding_id": "AB000035",
      "identity_summary": "旗人官員；與某王姻親",
      "visual_anchor_summary": "旗人官員；與某王姻親",
      "design_keywords": [
        "藩臺",
        "旗人官員",
        "與某王姻親",
        "怪罪候補縣太爺"
      ],
      "design_prompt_fragments": [
        "旗人官員；與某王姻親",
        "藩臺",
        "旗人官員",
        "與某王姻親",
        "怪罪候補縣太爺"
      ],
      "appearance_core": [
        "旗人官員",
        "與某王姻親",
        "怪罪候補縣太爺",
        "這個藩臺是旗人"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000035:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "旗人官員",
            "與某王姻親",
            "怪罪候補縣太爺"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：候補縣太爺、吳景曾",
        "已处理文本出现范围：C0008 -> 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": "VO000035:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000035:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000035: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": [
          "VC000035:costume:default",
          "VO000035:default",
          "VO000035:low",
          "VO000035: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：候補縣太爺 - 对抗 - 藩臺；藩臺 - 告知 - 吳景曾",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000011",
      "name": "張鼎臣",
      "canonical_name": "張鼎臣",
      "display_name": "張鼎臣",
      "identity_conflict": {},
      "conflict_group_id": "",
      "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": [
        "EP0001B003",
        "EP0001B004"
      ],
      "visual_card_id": "VC000011",
      "voice_card_id": "VO000011",
      "asset_binding_id": "AB000011",
      "identity_summary": "店中当手；处理父亲后事",
      "visual_anchor_summary": "店中当手；鼎臣看著我，笑了一笑",
      "design_keywords": [
        "張鼎臣",
        "店中当手",
        "处理父亲后事",
        "店中有一位當手，姓張，表字…",
        "鼎臣看著我，笑了一笑"
      ],
      "design_prompt_fragments": [
        "店中当手；鼎臣看著我，笑了一笑",
        "張鼎臣",
        "店中当手",
        "处理父亲后事",
        "店中有一位當手，姓張，表字…",
        "鼎臣看著我，笑了一笑"
      ],
      "appearance_core": [
        "店中当手",
        "处理父亲后事",
        "店中有一位當手，姓張，表字鼎臣",
        "鼎臣看著我，笑了一笑"
      ],
      "clothing_core": [],
      "prop_core": [
        "鼎臣看著我，笑了一笑",
        "店中有一位當手，姓張，表字鼎臣"
      ],
      "costume_variants": [
        {
          "variant_id": "VC000011:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "店中当手",
            "处理父亲后事",
            "店中有一位當手，姓張，表字鼎臣"
          ],
          "clothing": [],
          "props": [
            "鼎臣看著我，笑了一笑",
            "店中有一位當手，姓張，表字鼎臣"
          ],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：張鼎臣 / 世伯 / 鼎臣",
        "常见关联对象：九死一生、伯父",
        "已处理文本出现范围：C0003 -> C0004"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "張鼎臣；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000011:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000011:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000011:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图",
          "关键随身物参考"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "九死一生",
          "伯父"
        ],
        "variant_keys": [
          "VC000011:costume:default",
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "prompt_fragments": [
          "店中当手；鼎臣看著我，笑了一笑",
          "張鼎臣",
          "店中当手",
          "处理父亲后事",
          "店中有一位當手，姓張，表字…",
          "鼎臣看著我，笑了一笑"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "required_visual_asset_count": 3,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "店中当手；鼎臣看著我，笑了一笑\n外观要点：店中当手；处理父亲后事；店中有一位當手，姓張，表字鼎臣\n常带物：鼎臣看著我，笑了一笑；店中有一位當手，姓張，表字鼎臣\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图；关键随身物参考\n主要出现集次：EP0001\n补充：关系上下文：張鼎臣 - 告知 - 九死一生；九死一生 - 告知 - 張鼎臣；伯父 - 告知 - 張鼎臣",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000028",
      "name": "桂花",
      "canonical_name": "桂花",
      "display_name": "桂花",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "supporting",
      "priority": "P2",
      "role_tier": "supporting",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0002B001",
        "EP0002B002"
      ],
      "visual_card_id": "VC000028",
      "voice_card_id": "VO000028",
      "asset_binding_id": "AB000028",
      "identity_summary": "大腳妓女；勸土老兒做官",
      "visual_anchor_summary": "大腳妓女；勸土老兒做官",
      "design_keywords": [
        "桂花",
        "大腳妓女",
        "勸土老兒做官",
        "王府丫頭出身"
      ],
      "design_prompt_fragments": [
        "大腳妓女；勸土老兒做官",
        "桂花",
        "大腳妓女",
        "勸土老兒做官",
        "王府丫頭出身"
      ],
      "appearance_core": [
        "大腳妓女",
        "勸土老兒做官",
        "王府丫頭出身",
        "幫土老兒捐官"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000028:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "大腳妓女",
            "勸土老兒做官",
            "王府丫頭出身"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：桂花 / 黃魚",
        "常见关联对象：土老兒、京城",
        "已处理文本出现范围：C0007 -> C0008"
      ],
      "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": "VO000028:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000028:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000028: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": [
          "VC000028:costume:default",
          "VO000028:default",
          "VO000028:low",
          "VO000028: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000002",
      "name": "死裡逃生",
      "canonical_name": "死裡逃生",
      "display_name": "死裡逃生",
      "identity_conflict": {},
      "conflict_group_id": "",
      "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": [
        "EP0001B001",
        "EP0001B003"
      ],
      "visual_card_id": "VC000002",
      "voice_card_id": "VO000002",
      "asset_binding_id": "AB000002",
      "identity_summary": "小说主角；经历坎坷后醒悟",
      "visual_anchor_summary": "小说主角；经历坎坷后醒悟",
      "design_keywords": [
        "死裡逃生",
        "小说主角",
        "经历坎坷后醒悟",
        "自家起了一個別號，叫做「死…"
      ],
      "design_prompt_fragments": [
        "小说主角；经历坎坷后醒悟",
        "死裡逃生",
        "小说主角",
        "经历坎坷后醒悟",
        "自家起了一個別號，叫做「死…"
      ],
      "appearance_core": [
        "小说主角",
        "经历坎坷后醒悟",
        "自家起了一個別號，叫做「死裡逃生」",
        "一朝改了前非，迴避從前那些交遊"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000002:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "小说主角",
            "经历坎坷后醒悟",
            "自家起了一個別號，叫做「死裡逃生」"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [
        {
          "variant_id": "VC000002:state:age",
          "label": "少年感",
          "variant_type": "age",
          "signals": [
            "少年感"
          ],
          "evidence": [],
          "notes": "年龄感属于静态主设约束，可直接用于角色资产初始化。"
        }
      ],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：死裡逃生 / 少年 / 中年",
        "常见关联对象：邑廟豫園、漢子、虹口蓬路日本郵便局",
        "已处理文本出现范围：C0001 -> C0003"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "masculine",
        "age_impression": "teen",
        "voice_anchor_summary": "死裡逃生；角色 / 男性向 / 少年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持少年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "少年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000002:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000002:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000002:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ]
      },
      "asset_profile": {
        "asset_role": "character",
        "priority": "supporting",
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "usage_hints": [],
        "owner_candidates": [
          "邑廟豫園",
          "漢子",
          "虹口蓬路日本郵便局",
          "深山窮谷"
        ],
        "variant_keys": [
          "VC000002:costume:default",
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "prompt_fragments": [
          "小说主角；经历坎坷后醒悟",
          "死裡逃生",
          "小说主角",
          "经历坎坷后醒悟",
          "自家起了一個別號，叫做「死…"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          }
        },
        "blocked_scopes": [],
        "needs_fix_scopes": [],
        "approved_scopes": [],
        "locked_scopes": [],
        "open_scopes": [],
        "manual_blocked": false,
        "manual_needs_fix": false
      },
      "bio_text": "小说主角；经历坎坷后醒悟\n外观要点：小说主角；经历坎坷后醒悟；自家起了一個別號，叫做「死裡逃生」\n状态候选：少年感\n声音建议：自然人声；保持跨场景音色稳定；吐字清晰；语流更轻快\n配音约束：锁定基础音色，不因场景切换改变发声位置；情绪变化优先通过力度和语速调整，不改人声底色\n建议资产：角色主设图；角色半身参考图\n主要出现集次：EP0001\n补充：关系上下文：死裡逃生 - 前往 - 邑廟豫園；死裡逃生 - 告知 - 漢子；漢子 - 告知 - 死裡逃生",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000015",
      "name": "母親",
      "canonical_name": "母親",
      "display_name": "母親",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0012"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B003",
        "EP0001B004",
        "EP0002B005"
      ],
      "visual_card_id": "VC000015",
      "voice_card_id": "VO000015",
      "asset_binding_id": "AB000015",
      "identity_summary": "九死一生母亲",
      "visual_anchor_summary": "九死一生母亲",
      "design_keywords": [
        "母親",
        "九死一生母亲",
        "我母親二人，在家中過了半年",
        "可知尊堂伯母在那裡盼望呢。"
      ],
      "design_prompt_fragments": [
        "九死一生母亲",
        "母親",
        "我母親二人，在家中過了半年",
        "可知尊堂伯母在那裡盼望呢。"
      ],
      "appearance_core": [
        "九死一生母亲",
        "我母親二人，在家中過了半年",
        "可知尊堂伯母在那裡盼望呢。"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000015:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "九死一生母亲",
            "我母親二人，在家中過了半年",
            "可知尊堂伯母在那裡盼望呢。"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：母親 / 家母 / 尊堂",
        "常见关联对象：九死一生、吳景曾",
        "已处理文本出现范围：C0004 -> 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": "VO000015:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000015:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000015: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": [
          "VC000015:costume:default",
          "VO000015:default",
          "VO000015:low",
          "VO000015: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：母親 - 告知 - 九死一生；吳景曾 - 告知 - 母親",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000017",
      "name": "買辦",
      "canonical_name": "買辦",
      "display_name": "買辦",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "lead",
      "episode_ids": [
        "EP0001",
        "EP0002"
      ],
      "source_scene_ids": [
        "S0001",
        "S0002",
        "S0003",
        "S0004",
        "S0005",
        "S0006",
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0001",
        "AG0002",
        "AG0003",
        "AG0004",
        "AG0005",
        "AG0006",
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0001",
        "AB0002",
        "AB0003",
        "AB0004",
        "AB0005",
        "AB0006",
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0001B004",
        "EP0002B004"
      ],
      "visual_card_id": "VC000017",
      "voice_card_id": "VO000017",
      "asset_binding_id": "AB000017",
      "identity_summary": "船上管理人員",
      "visual_anchor_summary": "船上管理人員",
      "design_keywords": [
        "買辦",
        "船上管理人員",
        "買辦搶著說道"
      ],
      "design_prompt_fragments": [
        "船上管理人員",
        "買辦",
        "買辦搶著說道"
      ],
      "appearance_core": [
        "船上管理人員",
        "買辦搶著說道"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000017:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "船上管理人員",
            "買辦搶著說道"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "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": "VO000017:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000017:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000017: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": [
          "VC000017:costume:default",
          "VO000017:default",
          "VO000017:low",
          "VO000017: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：買辦 - 告知 - 廣東人",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000038",
      "name": "候補縣太爺",
      "canonical_name": "候補縣太爺",
      "display_name": "候補縣太爺",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0002B004"
      ],
      "visual_card_id": "VC000038",
      "voice_card_id": "VO000038",
      "asset_binding_id": "AB000038",
      "identity_summary": "扮官做賊；做賭棍騙子",
      "visual_anchor_summary": "扮官做賊；做賭棍騙子",
      "design_keywords": [
        "候補縣太爺",
        "扮官做賊",
        "做賭棍騙子",
        "候補縣太爺做賊"
      ],
      "design_prompt_fragments": [
        "扮官做賊；做賭棍騙子",
        "候補縣太爺",
        "扮官做賊",
        "做賭棍騙子",
        "候補縣太爺做賊"
      ],
      "appearance_core": [
        "扮官做賊",
        "做賭棍騙子",
        "候補縣太爺做賊"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000038:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "扮官做賊",
            "做賭棍騙子",
            "候補縣太爺做賊"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：候補縣太爺 / 老班子",
        "常见关联对象：藩臺、巡防局",
        "已处理文本出现范围：C0010 -> C0010"
      ],
      "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": "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",
          "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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000034",
      "name": "制臺",
      "canonical_name": "制臺",
      "display_name": "制臺",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0002B002",
        "EP0002B003"
      ],
      "visual_card_id": "VC000034",
      "voice_card_id": "VO000034",
      "asset_binding_id": "AB000034",
      "identity_summary": "南京官員；年老糊塗",
      "visual_anchor_summary": "南京官員；年老糊塗",
      "design_keywords": [
        "制臺",
        "南京官員",
        "年老糊塗",
        "年老好色"
      ],
      "design_prompt_fragments": [
        "南京官員；年老糊塗",
        "制臺",
        "南京官員",
        "年老糊塗",
        "年老好色"
      ],
      "appearance_core": [
        "南京官員",
        "年老糊塗",
        "年老好色",
        "制臺年紀大了"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000034:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "南京官員",
            "年老糊塗",
            "年老好色"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [
        {
          "variant_id": "VC000034:state:weak",
          "label": "虚弱态",
          "variant_type": "weak",
          "signals": [
            "病"
          ],
          "evidence": [
            "制臺得了個心神彷彿的病"
          ],
          "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
        }
      ],
      "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": "VO000034:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000034:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000034: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": [
          "VC000034:costume:default",
          "VC000034:state:weak",
          "VO000034:default",
          "VO000034:low",
          "VO000034: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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主要出现集次：EP0002\n补充：关系上下文：候補道 - 告知 - 制臺",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000010",
      "name": "尤雲岫",
      "canonical_name": "尤雲岫",
      "display_name": "尤雲岫",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "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": [
        "EP0001B003",
        "EP0001B004"
      ],
      "visual_card_id": "VC000010",
      "voice_card_id": "VO000010",
      "asset_binding_id": "AB000010",
      "identity_summary": "父亲朋友；伴主角出门",
      "visual_anchor_summary": "父亲朋友；伴主角出门",
      "design_keywords": [
        "尤雲岫",
        "父亲朋友",
        "伴主角出门",
        "這個人姓尤，表字雲岫"
      ],
      "design_prompt_fragments": [
        "父亲朋友；伴主角出门",
        "尤雲岫",
        "父亲朋友",
        "伴主角出门",
        "這個人姓尤，表字雲岫"
      ],
      "appearance_core": [
        "父亲朋友",
        "伴主角出门",
        "這個人姓尤，表字雲岫",
        "尋著了雲岫"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000010:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "父亲朋友",
            "伴主角出门",
            "這個人姓尤，表字雲岫"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：尤雲岫 / 尤公 / 雲岫 / 姓尤的",
        "常见关联对象：九死一生",
        "已处理文本出现范围：C0003 -> C0004"
      ],
      "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": "VO000010:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000010:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000010: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": [
          "VC000010:costume:default",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "prompt_fragments": [
          "父亲朋友；伴主角出门",
          "尤雲岫",
          "父亲朋友",
          "伴主角出门",
          "這個人姓尤，表字雲岫"
        ],
        "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
      },
      "asset_readiness": {
        "reference_image_count": 0,
        "reference_audio_count": 0,
        "lora_binding_count": 0,
        "voice_binding_count": 0,
        "manual_override_count": 0,
        "auto_needs_visual_reference": true,
        "auto_needs_visual_lock": true,
        "auto_needs_voice_reference": true,
        "auto_needs_voice_binding": true,
        "needs_visual_reference": true,
        "needs_visual_lock": true,
        "needs_voice_reference": true,
        "needs_voice_binding": true,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：尤雲岫 - 告知 - 九死一生；九死一生 - 告知 - 尤雲岫",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000016",
      "name": "廣東人",
      "canonical_name": "廣東人",
      "display_name": "廣東人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "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": [
        "EP0001B004"
      ],
      "visual_card_id": "VC000016",
      "voice_card_id": "VO000016",
      "asset_binding_id": "AB000016",
      "identity_summary": "機警；眼明手快",
      "visual_anchor_summary": "機警；眼明手快",
      "design_keywords": [
        "廣東人",
        "眼明手快"
      ],
      "design_prompt_fragments": [
        "機警；眼明手快",
        "廣東人",
        "眼明手快"
      ],
      "appearance_core": [
        "眼明手快"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000016:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "眼明手快"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "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": "VO000016:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000016:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000016: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": [
          "VC000016:costume:default",
          "VO000016:default",
          "VO000016:low",
          "VO000016: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：買辦 - 告知 - 廣東人；賊人 - 告知 - 廣東人",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000033",
      "name": "撫臺",
      "canonical_name": "撫臺",
      "display_name": "撫臺",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0002B002"
      ],
      "visual_card_id": "VC000033",
      "voice_card_id": "VO000033",
      "asset_binding_id": "AB000033",
      "identity_summary": "蘇州官員；圓通之人",
      "visual_anchor_summary": "蘇州官員；圓通之人",
      "design_keywords": [
        "撫臺",
        "蘇州官員",
        "圓通之人",
        "撫臺見他土形土狀的"
      ],
      "design_prompt_fragments": [
        "蘇州官員；圓通之人",
        "撫臺",
        "蘇州官員",
        "圓通之人",
        "撫臺見他土形土狀的"
      ],
      "appearance_core": [
        "蘇州官員",
        "圓通之人",
        "撫臺見他土形土狀的"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000033:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "蘇州官員",
            "圓通之人",
            "撫臺見他土形土狀的"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：土老兒",
        "已处理文本出现范围：C0008 -> C0008"
      ],
      "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": "VO000033:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000033:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000033: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": [
          "VC000033:costume:default",
          "VO000033:default",
          "VO000033:low",
          "VO000033: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000026",
      "name": "李氏",
      "canonical_name": "李氏",
      "display_name": "李氏",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "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": [
        "EP0001B006"
      ],
      "visual_card_id": "VC000026",
      "voice_card_id": "VO000026",
      "asset_binding_id": "AB000026",
      "identity_summary": "繼之夫人",
      "visual_anchor_summary": "繼之夫人",
      "design_keywords": [
        "李氏",
        "繼之夫人",
        "請出他夫人李氏來相見"
      ],
      "design_prompt_fragments": [
        "繼之夫人",
        "李氏",
        "請出他夫人李氏來相見"
      ],
      "appearance_core": [
        "繼之夫人",
        "請出他夫人李氏來相見"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000026:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "繼之夫人",
            "請出他夫人李氏來相見"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "别名与本名指向同一实体：李氏 / 大嫂",
        "常见关联对象：吳景曾",
        "已处理文本出现范围：C0006 -> C0006"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "feminine",
        "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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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\n补充：关系上下文：吳景曾 - 告知 - 李氏",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000003",
      "name": "漢子",
      "canonical_name": "漢子",
      "display_name": "漢子",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "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": "VC000003",
      "voice_card_id": "VO000003",
      "asset_binding_id": "AB000003",
      "identity_summary": "神秘赠书人",
      "visual_anchor_summary": "神秘赠书人；忽見一個漢子，衣衫襤褸，氣宇軒昂",
      "design_keywords": [
        "漢子",
        "神秘赠书人",
        "忽見一個漢子，衣衫襤褸，氣…",
        "手中拿著一本冊子"
      ],
      "design_prompt_fragments": [
        "神秘赠书人；忽見一個漢子，衣衫襤褸，氣宇軒昂",
        "漢子",
        "神秘赠书人",
        "忽見一個漢子，衣衫襤褸，氣…",
        "手中拿著一本冊子"
      ],
      "appearance_core": [
        "神秘赠书人",
        "忽見一個漢子，衣衫襤褸，氣宇軒昂",
        "手中拿著一本冊子"
      ],
      "clothing_core": [
        "忽見一個漢子，衣衫襤褸，氣宇軒昂"
      ],
      "prop_core": [
        "神秘赠书人"
      ],
      "costume_variants": [
        {
          "variant_id": "VC000003:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "神秘赠书人",
            "忽見一個漢子，衣衫襤褸，氣宇軒昂",
            "手中拿著一本冊子"
          ],
          "clothing": [
            "忽見一個漢子，衣衫襤褸，氣宇軒昂"
          ],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：死裡逃生",
        "已处理文本出现范围：C0001 -> C0001"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "unknown",
        "age_impression": "unknown",
        "voice_anchor_summary": "漢子；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000003:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000003:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000003: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": [
          "VC000003:costume:default",
          "VO000003:default",
          "VO000003:low",
          "VO000003: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000037",
      "name": "總督大帥",
      "canonical_name": "總督大帥",
      "display_name": "總督大帥",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "minor",
      "priority": "P3",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0007",
        "S0008",
        "S0009",
        "S0011",
        "S0012"
      ],
      "source_group_ids": [
        "AG0007",
        "AG0008",
        "AG0009",
        "AG0010",
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0007",
        "AB0008",
        "AB0009",
        "AB0010",
        "AB0011"
      ],
      "block_ids": [
        "EP0002B004"
      ],
      "visual_card_id": "VC000037",
      "voice_card_id": "VO000037",
      "asset_binding_id": "AB000037",
      "identity_summary": "被夫人影響",
      "visual_anchor_summary": "被夫人影響",
      "design_keywords": [
        "總督大帥",
        "被夫人影響",
        "總督大帥被夫人影響"
      ],
      "design_prompt_fragments": [
        "被夫人影響",
        "總督大帥",
        "總督大帥被夫人影響"
      ],
      "appearance_core": [
        "被夫人影響",
        "總督大帥被夫人影響"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000037:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "被夫人影響",
            "總督大帥被夫人影響"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "常见关联对象：候補道",
        "已处理文本出现范围：C0010 -> C0010"
      ],
      "voice_profile": {
        "voice_role": "character",
        "gender_presentation": "feminine",
        "age_impression": "unknown",
        "voice_anchor_summary": "總督大帥；角色 / 女性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "女性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000037:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000037:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000037: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": [
          "VC000037:costume:default",
          "VO000037:default",
          "VO000037:low",
          "VO000037: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000042",
      "name": "主人",
      "canonical_name": "主人",
      "display_name": "主人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0012"
      ],
      "source_group_ids": [
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0011"
      ],
      "block_ids": [
        "EP0002B005"
      ],
      "visual_card_id": "VC000042",
      "voice_card_id": "VO000042",
      "asset_binding_id": "AB000042",
      "identity_summary": "公館主人",
      "visual_anchor_summary": "公館主人",
      "design_keywords": [
        "主人",
        "公館主人",
        "再看那主人時"
      ],
      "design_prompt_fragments": [
        "公館主人",
        "主人",
        "再看那主人時"
      ],
      "appearance_core": [
        "公館主人",
        "再看那主人時"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000042:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "公館主人",
            "再看那主人時"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0012 -> C0012"
      ],
      "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": "VO000042:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000042:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000042: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": [
          "VC000042:costume:default",
          "VO000042:default",
          "VO000042:low",
          "VO000042: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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    },
    {
      "entity_uid": "E000043",
      "name": "客人",
      "canonical_name": "客人",
      "display_name": "客人",
      "identity_conflict": {},
      "conflict_group_id": "",
      "type": "人物",
      "subtype": "",
      "importance": "background",
      "priority": "P4",
      "role_tier": "featured",
      "episode_ids": [
        "EP0002"
      ],
      "source_scene_ids": [
        "S0012"
      ],
      "source_group_ids": [
        "AG0011"
      ],
      "source_beat_ids": [
        "AB0011"
      ],
      "block_ids": [
        "EP0002B005"
      ],
      "visual_card_id": "VC000043",
      "voice_card_id": "VO000043",
      "asset_binding_id": "AB000043",
      "identity_summary": "公館訪客",
      "visual_anchor_summary": "公館訪客",
      "design_keywords": [
        "客人",
        "公館訪客",
        "直到那客人走的"
      ],
      "design_prompt_fragments": [
        "公館訪客",
        "客人",
        "直到那客人走的"
      ],
      "appearance_core": [
        "公館訪客",
        "直到那客人走的"
      ],
      "clothing_core": [],
      "prop_core": [],
      "costume_variants": [
        {
          "variant_id": "VC000043:costume:default",
          "label": "基础造型",
          "variant_type": "default",
          "appearance": [
            "公館訪客",
            "直到那客人走的"
          ],
          "clothing": [],
          "props": [],
          "source_mode": "static_core",
          "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
        }
      ],
      "state_variants": [],
      "style_constraints": [
        "保持同一实体在跨镜头中的核心身份稳定",
        "保持角色核心外貌、服饰母题和主要随身物一致"
      ],
      "consistency_rules": [
        "后续 scene 与 shot 只能在此静态身份卡之上叠加动态状态",
        "已处理文本出现范围：C0012 -> C0012"
      ],
      "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": "background",
        "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,
        "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
      },
      "review_overlay": {
        "scopes": {
          "entity": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "visual": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "voice": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_needs_fix": false,
            "is_open": true
          },
          "assets": {
            "status": "todo",
            "locked": false,
            "reviewer": "",
            "review_note": "",
            "labels": [],
            "updated_at": "",
            "is_approved": false,
            "is_na": false,
            "is_blocked": false,
            "is_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",
      "review_notes": [
        "缺少参考图",
        "缺少视觉锁定绑定",
        "缺少语音参考",
        "缺少音色绑定"
      ]
    }
  ],
  "skipped_unbound_character_refs": [],
  "asset_suggestions": {
    "characters": [
      {
        "entity_uid": "E000004",
        "name": "九死一生",
        "canonical_name": "九死一生",
        "display_name": "九死一生",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P0",
        "role_tier": "lead",
        "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",
          "EP0001B003",
          "EP0001B004"
        ],
        "visual_card_id": "VC000004",
        "voice_card_id": "VO000004",
        "asset_binding_id": "AB000004",
        "visual_anchor_summary": "笔记作者；父亲去世",
        "design_prompt_fragments": [
          "笔记作者；父亲去世",
          "九死一生",
          "笔记作者",
          "父亲去世",
          "筆記作者"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000004:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "笔记作者",
              "父亲去世",
              "筆記作者"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "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": "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": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "core",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "杭州",
            "上海",
            "尤雲岫",
            "張鼎臣"
          ],
          "variant_keys": [
            "VC000004:costume:default",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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",
          "VO000004:default",
          "VO000004:low",
          "VO000004:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000014",
        "name": "伯父",
        "canonical_name": "伯父",
        "display_name": "伯父",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P1",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0001B004",
          "EP0001B006",
          "EP0002B004",
          "EP0002B005"
        ],
        "visual_card_id": "VC000014",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014",
        "visual_anchor_summary": "九死一生伯父；南京候补",
        "design_prompt_fragments": [
          "九死一生伯父；南京候补",
          "伯父",
          "九死一生伯父",
          "南京候补",
          "南京候補"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000014:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "九死一生伯父",
              "南京候补",
              "南京候補"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "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": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "major",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "張鼎臣",
            "九死一生",
            "南京",
            "吳景曾"
          ],
          "variant_keys": [
            "VC000014:costume:default",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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",
          "VO000014:default",
          "VO000014:low",
          "VO000014:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000025",
        "name": "吳景曾",
        "canonical_name": "吳景曾",
        "display_name": "吳景曾",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P1",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B002",
          "EP0002B003",
          "EP0002B004",
          "EP0002B005"
        ],
        "visual_card_id": "VC000025",
        "voice_card_id": "VO000025",
        "asset_binding_id": "AB000025",
        "visual_anchor_summary": "九死一生同窗；勸戒九死一生",
        "design_prompt_fragments": [
          "九死一生同窗；勸戒九死一生",
          "吳景曾",
          "九死一生同窗",
          "勸戒九死一生",
          "姓吳，名景曾，表字繼之"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000025:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "九死一生同窗",
              "勸戒九死一生",
              "姓吳，名景曾，表字繼之"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "major",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "李氏",
            "伯父",
            "藩臺"
          ],
          "variant_keys": [
            "VC000025:costume:default",
            "VO000025:default",
            "VO000025:low",
            "VO000025: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000025:costume:default",
          "VO000025:default",
          "VO000025:low",
          "VO000025:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000036",
        "name": "候補道",
        "canonical_name": "候補道",
        "display_name": "候補道",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002",
          "EP0002B003",
          "EP0002B004"
        ],
        "visual_card_id": "VC000036",
        "voice_card_id": "VO000036",
        "asset_binding_id": "AB000036",
        "visual_anchor_summary": "年輕官員；自稱懂醫",
        "design_prompt_fragments": [
          "年輕官員；自稱懂醫",
          "候補道",
          "年輕官員",
          "自稱懂醫",
          "懂按摩術"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000036:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "年輕官員",
              "自稱懂醫",
              "懂按摩術"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "制臺",
            "太太",
            "總督大帥"
          ],
          "variant_keys": [
            "VC000036:costume:default",
            "VO000036:default",
            "VO000036:low",
            "VO000036: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000036:costume:default",
          "VO000036:default",
          "VO000036:low",
          "VO000036:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000027",
        "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",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "visual_card_id": "VC000027",
        "voice_card_id": "VO000027",
        "asset_binding_id": "AB000027",
        "visual_anchor_summary": "跑街夥計；聽桂花勸做官",
        "design_prompt_fragments": [
          "跑街夥計；聽桂花勸做官",
          "土老兒",
          "跑街夥計",
          "聽桂花勸做官",
          "捐官道臺"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000027:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "跑街夥計",
              "聽桂花勸做官",
              "捐官道臺"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "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": [
            "VC000027:costume:default",
            "VO000027:default",
            "VO000027:low",
            "VO000027: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000027:costume:default",
          "VO000027:default",
          "VO000027:low",
          "VO000027:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000019",
        "name": "太太",
        "canonical_name": "太太",
        "display_name": "太太",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B003",
          "EP0002B005"
        ],
        "visual_card_id": "VC000019",
        "voice_card_id": "VO000019",
        "asset_binding_id": "AB000019",
        "visual_anchor_summary": "伯父妻子；制臺妾室",
        "design_prompt_fragments": [
          "伯父妻子；制臺妾室",
          "太太",
          "伯父妻子",
          "制臺妾室",
          "多人"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000019:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "伯父妻子",
              "制臺妾室",
              "多人"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "候補道",
            "吳景曾"
          ],
          "variant_keys": [
            "VC000019:costume:default",
            "VO000019:default",
            "VO000019:low",
            "VO000019: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000019:costume:default",
          "VO000019:default",
          "VO000019:low",
          "VO000019:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000035",
        "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",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002",
          "EP0002B004",
          "EP0002B005"
        ],
        "visual_card_id": "VC000035",
        "voice_card_id": "VO000035",
        "asset_binding_id": "AB000035",
        "visual_anchor_summary": "旗人官員；與某王姻親",
        "design_prompt_fragments": [
          "旗人官員；與某王姻親",
          "藩臺",
          "旗人官員",
          "與某王姻親",
          "怪罪候補縣太爺"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000035:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "旗人官員",
              "與某王姻親",
              "怪罪候補縣太爺"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "候補縣太爺",
            "吳景曾"
          ],
          "variant_keys": [
            "VC000035:costume:default",
            "VO000035:default",
            "VO000035:low",
            "VO000035: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000035:costume:default",
          "VO000035:default",
          "VO000035:low",
          "VO000035:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000011",
        "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": [
          "EP0001B003",
          "EP0001B004"
        ],
        "visual_card_id": "VC000011",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011",
        "visual_anchor_summary": "店中当手；鼎臣看著我，笑了一笑",
        "design_prompt_fragments": [
          "店中当手；鼎臣看著我，笑了一笑",
          "張鼎臣",
          "店中当手",
          "处理父亲后事",
          "店中有一位當手，姓張，表字…",
          "鼎臣看著我，笑了一笑"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000011:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "店中当手",
              "处理父亲后事",
              "店中有一位當手，姓張，表字鼎臣"
            ],
            "clothing": [],
            "props": [
              "鼎臣看著我，笑了一笑",
              "店中有一位當手，姓張，表字鼎臣"
            ],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图",
            "关键随身物参考"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "伯父"
          ],
          "variant_keys": [
            "VC000011:costume:default",
            "VO000011:default",
            "VO000011:low",
            "VO000011:high"
          ],
          "prompt_fragments": [
            "店中当手；鼎臣看著我，笑了一笑",
            "張鼎臣",
            "店中当手",
            "处理父亲后事",
            "店中有一位當手，姓張，表字…",
            "鼎臣看著我，笑了一笑"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "required_visual_asset_count": 3,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000011:costume:default",
          "VO000011:default",
          "VO000011:low",
          "VO000011:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000028",
        "name": "桂花",
        "canonical_name": "桂花",
        "display_name": "桂花",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B001",
          "EP0002B002"
        ],
        "visual_card_id": "VC000028",
        "voice_card_id": "VO000028",
        "asset_binding_id": "AB000028",
        "visual_anchor_summary": "大腳妓女；勸土老兒做官",
        "design_prompt_fragments": [
          "大腳妓女；勸土老兒做官",
          "桂花",
          "大腳妓女",
          "勸土老兒做官",
          "王府丫頭出身"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000028:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "大腳妓女",
              "勸土老兒做官",
              "王府丫頭出身"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "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": [
            "VC000028:costume:default",
            "VO000028:default",
            "VO000028:low",
            "VO000028: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000028:costume:default",
          "VO000028:default",
          "VO000028:low",
          "VO000028:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000002",
        "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": [
          "EP0001B001",
          "EP0001B003"
        ],
        "visual_card_id": "VC000002",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002",
        "visual_anchor_summary": "小说主角；经历坎坷后醒悟",
        "design_prompt_fragments": [
          "小说主角；经历坎坷后醒悟",
          "死裡逃生",
          "小说主角",
          "经历坎坷后醒悟",
          "自家起了一個別號，叫做「死…"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000002:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "小说主角",
              "经历坎坷后醒悟",
              "自家起了一個別號，叫做「死裡逃生」"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [
          {
            "variant_id": "VC000002:state:age",
            "label": "少年感",
            "variant_type": "age",
            "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": "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": [
            "VC000002:costume:default",
            "VC000002:state:age",
            "VO000002:default",
            "VO000002:low",
            "VO000002:high"
          ],
          "prompt_fragments": [
            "小说主角；经历坎坷后醒悟",
            "死裡逃生",
            "小说主角",
            "经历坎坷后醒悟",
            "自家起了一個別號，叫做「死…"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [
          "状态变体图"
        ],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000002:costume:default",
          "VC000002:state:age",
          "VO000002:default",
          "VO000002:low",
          "VO000002:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000015",
        "name": "母親",
        "canonical_name": "母親",
        "display_name": "母親",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0001B004",
          "EP0002B005"
        ],
        "visual_card_id": "VC000015",
        "voice_card_id": "VO000015",
        "asset_binding_id": "AB000015",
        "visual_anchor_summary": "九死一生母亲",
        "design_prompt_fragments": [
          "九死一生母亲",
          "母親",
          "我母親二人，在家中過了半年",
          "可知尊堂伯母在那裡盼望呢。"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000015:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "九死一生母亲",
              "我母親二人，在家中過了半年",
              "可知尊堂伯母在那裡盼望呢。"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "吳景曾"
          ],
          "variant_keys": [
            "VC000015:costume:default",
            "VO000015:default",
            "VO000015:low",
            "VO000015: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000015:costume:default",
          "VO000015:default",
          "VO000015:low",
          "VO000015:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000017",
        "name": "買辦",
        "canonical_name": "買辦",
        "display_name": "買辦",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B004",
          "EP0002B004"
        ],
        "visual_card_id": "VC000017",
        "voice_card_id": "VO000017",
        "asset_binding_id": "AB000017",
        "visual_anchor_summary": "船上管理人員",
        "design_prompt_fragments": [
          "船上管理人員",
          "買辦",
          "買辦搶著說道"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000017:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "船上管理人員",
              "買辦搶著說道"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "廣東人"
          ],
          "variant_keys": [
            "VC000017:costume:default",
            "VO000017:default",
            "VO000017:low",
            "VO000017: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000017:costume:default",
          "VO000017:default",
          "VO000017:low",
          "VO000017:high"
        ],
        "reason": "角色覆盖 2 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000038",
        "name": "候補縣太爺",
        "canonical_name": "候補縣太爺",
        "display_name": "候補縣太爺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "visual_card_id": "VC000038",
        "voice_card_id": "VO000038",
        "asset_binding_id": "AB000038",
        "visual_anchor_summary": "扮官做賊；做賭棍騙子",
        "design_prompt_fragments": [
          "扮官做賊；做賭棍騙子",
          "候補縣太爺",
          "扮官做賊",
          "做賭棍騙子",
          "候補縣太爺做賊"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000038:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "扮官做賊",
              "做賭棍騙子",
              "候補縣太爺做賊"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "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",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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",
          "VO000038:default",
          "VO000038:low",
          "VO000038:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000034",
        "name": "制臺",
        "canonical_name": "制臺",
        "display_name": "制臺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002",
          "EP0002B003"
        ],
        "visual_card_id": "VC000034",
        "voice_card_id": "VO000034",
        "asset_binding_id": "AB000034",
        "visual_anchor_summary": "南京官員；年老糊塗",
        "design_prompt_fragments": [
          "南京官員；年老糊塗",
          "制臺",
          "南京官員",
          "年老糊塗",
          "年老好色"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000034:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "南京官員",
              "年老糊塗",
              "年老好色"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [
          {
            "variant_id": "VC000034:state:weak",
            "label": "虚弱态",
            "variant_type": "weak",
            "signals": [
              "病"
            ],
            "evidence": [
              "制臺得了個心神彷彿的病"
            ],
            "notes": "候选状态变体，仅在后续剧情明确进入该状态时使用。"
          }
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "候補道"
          ],
          "variant_keys": [
            "VC000034:costume:default",
            "VC000034:state:weak",
            "VO000034:default",
            "VO000034:low",
            "VO000034: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000034:costume:default",
          "VC000034:state:weak",
          "VO000034:default",
          "VO000034:low",
          "VO000034:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000010",
        "name": "尤雲岫",
        "canonical_name": "尤雲岫",
        "display_name": "尤雲岫",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "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",
          "EP0001B004"
        ],
        "visual_card_id": "VC000010",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010",
        "visual_anchor_summary": "父亲朋友；伴主角出门",
        "design_prompt_fragments": [
          "父亲朋友；伴主角出门",
          "尤雲岫",
          "父亲朋友",
          "伴主角出门",
          "這個人姓尤，表字雲岫"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000010:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "父亲朋友",
              "伴主角出门",
              "這個人姓尤，表字雲岫"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [
            "伴主角出门"
          ],
          "owner_candidates": [
            "九死一生"
          ],
          "variant_keys": [
            "VC000010:costume:default",
            "VO000010:default",
            "VO000010:low",
            "VO000010:high"
          ],
          "prompt_fragments": [
            "父亲朋友；伴主角出门",
            "尤雲岫",
            "父亲朋友",
            "伴主角出门",
            "這個人姓尤，表字雲岫"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            }
          },
          "blocked_scopes": [],
          "needs_fix_scopes": [],
          "approved_scopes": [],
          "locked_scopes": [],
          "open_scopes": [],
          "manual_blocked": false,
          "manual_needs_fix": false
        },
        "required_visual_assets": [
          "角色主设图",
          "角色半身参考图"
        ],
        "optional_visual_assets": [],
        "required_voice_assets": [
          "基础音色样例",
          "情绪扩展样例"
        ],
        "variant_keys": [
          "VC000010:costume:default",
          "VO000010:default",
          "VO000010:low",
          "VO000010:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000016",
        "name": "廣東人",
        "canonical_name": "廣東人",
        "display_name": "廣東人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "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": [
          "EP0001B004"
        ],
        "visual_card_id": "VC000016",
        "voice_card_id": "VO000016",
        "asset_binding_id": "AB000016",
        "visual_anchor_summary": "機警；眼明手快",
        "design_prompt_fragments": [
          "機警；眼明手快",
          "廣東人",
          "眼明手快"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000016:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "眼明手快"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "買辦",
            "賊人"
          ],
          "variant_keys": [
            "VC000016:costume:default",
            "VO000016:default",
            "VO000016:low",
            "VO000016: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000016:costume:default",
          "VO000016:default",
          "VO000016:low",
          "VO000016:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000033",
        "name": "撫臺",
        "canonical_name": "撫臺",
        "display_name": "撫臺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000033",
        "voice_card_id": "VO000033",
        "asset_binding_id": "AB000033",
        "visual_anchor_summary": "蘇州官員；圓通之人",
        "design_prompt_fragments": [
          "蘇州官員；圓通之人",
          "撫臺",
          "蘇州官員",
          "圓通之人",
          "撫臺見他土形土狀的"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000033:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "蘇州官員",
              "圓通之人",
              "撫臺見他土形土狀的"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "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": [
            "VC000033:costume:default",
            "VO000033:default",
            "VO000033:low",
            "VO000033: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000033:costume:default",
          "VO000033:default",
          "VO000033:low",
          "VO000033:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000026",
        "name": "李氏",
        "canonical_name": "李氏",
        "display_name": "李氏",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "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": [
          "EP0001B006"
        ],
        "visual_card_id": "VC000026",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026",
        "visual_anchor_summary": "繼之夫人",
        "design_prompt_fragments": [
          "繼之夫人",
          "李氏",
          "請出他夫人李氏來相見"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000026:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "繼之夫人",
              "請出他夫人李氏來相見"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "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"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000003",
        "name": "漢子",
        "canonical_name": "漢子",
        "display_name": "漢子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "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": "VC000003",
        "voice_card_id": "VO000003",
        "asset_binding_id": "AB000003",
        "visual_anchor_summary": "神秘赠书人；忽見一個漢子，衣衫襤褸，氣宇軒昂",
        "design_prompt_fragments": [
          "神秘赠书人；忽見一個漢子，衣衫襤褸，氣宇軒昂",
          "漢子",
          "神秘赠书人",
          "忽見一個漢子，衣衫襤褸，氣…",
          "手中拿著一本冊子"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000003:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "神秘赠书人",
              "忽見一個漢子，衣衫襤褸，氣宇軒昂",
              "手中拿著一本冊子"
            ],
            "clothing": [
              "忽見一個漢子，衣衫襤褸，氣宇軒昂"
            ],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "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": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "死裡逃生"
          ],
          "variant_keys": [
            "VC000003:costume:default",
            "VO000003:default",
            "VO000003:low",
            "VO000003: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000003:costume:default",
          "VO000003:default",
          "VO000003:low",
          "VO000003:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000037",
        "name": "總督大帥",
        "canonical_name": "總督大帥",
        "display_name": "總督大帥",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "visual_card_id": "VC000037",
        "voice_card_id": "VO000037",
        "asset_binding_id": "AB000037",
        "visual_anchor_summary": "被夫人影響",
        "design_prompt_fragments": [
          "被夫人影響",
          "總督大帥",
          "總督大帥被夫人影響"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000037:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "被夫人影響",
              "總督大帥被夫人影響"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "minor",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "候補道"
          ],
          "variant_keys": [
            "VC000037:costume:default",
            "VO000037:default",
            "VO000037:low",
            "VO000037: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000037:costume:default",
          "VO000037:default",
          "VO000037:low",
          "VO000037:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000042",
        "name": "主人",
        "canonical_name": "主人",
        "display_name": "主人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "visual_card_id": "VC000042",
        "voice_card_id": "VO000042",
        "asset_binding_id": "AB000042",
        "visual_anchor_summary": "公館主人",
        "design_prompt_fragments": [
          "公館主人",
          "主人",
          "再看那主人時"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000042:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "公館主人",
              "再看那主人時"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [],
          "variant_keys": [
            "VC000042:costume:default",
            "VO000042:default",
            "VO000042:low",
            "VO000042: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "VC000042:costume:default",
          "VO000042:default",
          "VO000042:low",
          "VO000042:high"
        ],
        "reason": "角色覆盖 1 集，建议优先建立稳定角色资产。",
        "needs": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      },
      {
        "entity_uid": "E000043",
        "name": "客人",
        "canonical_name": "客人",
        "display_name": "客人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "visual_card_id": "VC000043",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043",
        "visual_anchor_summary": "公館訪客",
        "design_prompt_fragments": [
          "公館訪客",
          "客人",
          "直到那客人走的"
        ],
        "costume_variants": [
          {
            "variant_id": "VC000043:costume:default",
            "label": "基础造型",
            "variant_type": "default",
            "appearance": [
              "公館訪客",
              "直到那客人走的"
            ],
            "clothing": [],
            "props": [],
            "source_mode": "static_core",
            "notes": "默认角色主设；后续镜头只在此基础上叠加情绪、动作和状态。"
          }
        ],
        "state_variants": [],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "background",
          "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "缺少参考图",
          "缺少视觉锁定绑定",
          "缺少语音参考",
          "缺少音色绑定"
        ]
      }
    ],
    "locations": [
      {
        "entity_uid": "E000013",
        "name": "南京",
        "canonical_name": "南京",
        "display_name": "南京",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "major",
        "priority": "P1",
        "location_role": "main_set",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0001B004",
          "EP0001B006",
          "EP0002B001",
          "EP0002B002",
          "EP0002B003",
          "EP0002B004"
        ],
        "visual_card_id": "VC000013",
        "asset_binding_id": "AB000013",
        "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"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "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": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ],
        "asset_profile": {
          "asset_role": "location",
          "priority": "major",
          "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 集、命中 7 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000001",
        "name": "上海",
        "canonical_name": "上海",
        "display_name": "上海",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "山岳/洞天",
        "importance": "supporting",
        "priority": "P2",
        "location_role": "main_set",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0001B003",
          "EP0001B004",
          "EP0001B006",
          "EP0002B001",
          "EP0002B005"
        ],
        "visual_card_id": "VC000001",
        "asset_binding_id": "AB000001",
        "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": "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": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "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": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 集、命中 6 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000029",
        "name": "四馬路",
        "canonical_name": "四馬路",
        "display_name": "四馬路",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "recurring_set",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B001",
          "EP0002B001"
        ],
        "visual_card_id": "VC000029",
        "asset_binding_id": "AB000029",
        "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": "EP0002",
            "block_id": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 集、命中 2 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000020",
        "name": "客棧",
        "canonical_name": "客棧",
        "display_name": "客棧",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "地点",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "location_role": "recurring_set",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B004"
        ],
        "visual_card_id": "VC000020",
        "asset_binding_id": "AB000020",
        "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"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 集、命中 2 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000031",
        "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": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002",
          "EP0002B003"
        ],
        "visual_card_id": "VC000031",
        "asset_binding_id": "AB000031",
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000030",
        "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": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B001",
          "EP0002B002"
        ],
        "visual_card_id": "VC000030",
        "asset_binding_id": "AB000030",
        "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": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000012",
        "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": [
          "EP0001B003",
          "EP0001B004"
        ],
        "visual_card_id": "VC000012",
        "asset_binding_id": "AB000012",
        "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"
            ]
          },
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000032",
        "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": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "visual_card_id": "VC000032",
        "asset_binding_id": "AB000032",
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 个剧本块，适合优先建主场景。"
      },
      {
        "entity_uid": "E000006",
        "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": [
          "EP0001B001"
        ],
        "visual_card_id": "VC000006",
        "asset_binding_id": "AB000006",
        "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"
            ]
          }
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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 个剧本块，适合优先建主场景。"
      }
    ],
    "props": [
      {
        "entity_uid": "E000005",
        "name": "二十年目睹之怪現狀",
        "canonical_name": "二十年目睹之怪現狀",
        "display_name": "二十年目睹之怪現狀",
        "identity_conflict": {},
        "conflict_group_id": "",
        "type": "物品",
        "subtype": "",
        "importance": "minor",
        "priority": "P3",
        "prop_role": "incidental_prop",
        "episode_ids": [],
        "first_seen": "C0001",
        "last_seen": "C0002",
        "source_scene_ids": [],
        "source_group_ids": [],
        "source_beat_ids": [],
        "block_ids": [],
        "visual_card_id": "VC000005",
        "asset_binding_id": "AB000005",
        "identity_summary": "奇书；记录怪现状",
        "visual_anchor_summary": "奇书",
        "design_prompt_fragments": [
          "奇书",
          "二十年目睹之怪現狀",
          "書面上黏著一個窄窄的簽條兒…",
          "將這冊子的記載，改做了小說…"
        ],
        "prop_core": [
          "奇书"
        ],
        "material_core": [],
        "form_core": [
          "奇书"
        ],
        "usage_core": [
          "書面上黏著一個窄窄的簽條兒，上面寫著「二十年目睹之怪現狀」",
          "將這冊子的記載，改做了小說體裁"
        ],
        "owner_candidates": [],
        "matched_terms": [],
        "usage_hits": 0,
        "main_scene_candidates": [],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "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": "高重要度非角色资产，适合在 Dramart 项目中先建立道具或界面资产。"
      }
    ],
    "voices": [
      {
        "entity_uid": "E000004",
        "name": "九死一生",
        "canonical_name": "九死一生",
        "display_name": "九死一生",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P0",
        "role_tier": "lead",
        "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",
          "EP0001B003",
          "EP0001B004"
        ],
        "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": "core",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "杭州",
            "上海",
            "尤雲岫",
            "張鼎臣"
          ],
          "variant_keys": [
            "VC000004:costume:default",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "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": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000014",
        "name": "伯父",
        "canonical_name": "伯父",
        "display_name": "伯父",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P1",
        "role_tier": "lead",
        "voice_card_id": "VO000014",
        "asset_binding_id": "AB000014",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0001B004",
          "EP0001B006",
          "EP0002B004",
          "EP0002B005"
        ],
        "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": "major",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "張鼎臣",
            "九死一生",
            "南京",
            "吳景曾"
          ],
          "variant_keys": [
            "VC000014:costume:default",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "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": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000025",
        "name": "吳景曾",
        "canonical_name": "吳景曾",
        "display_name": "吳景曾",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P1",
        "role_tier": "lead",
        "voice_card_id": "VO000025",
        "asset_binding_id": "AB000025",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B002",
          "EP0002B003",
          "EP0002B004",
          "EP0002B005"
        ],
        "voice_anchor_summary": "吳景曾；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000025:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000025:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000025:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "major",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "李氏",
            "伯父",
            "藩臺"
          ],
          "variant_keys": [
            "VC000025:costume:default",
            "VO000025:default",
            "VO000025:low",
            "VO000025: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000036",
        "name": "候補道",
        "canonical_name": "候補道",
        "display_name": "候補道",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000036",
        "asset_binding_id": "AB000036",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002",
          "EP0002B003",
          "EP0002B004"
        ],
        "voice_anchor_summary": "候補道；角色 / 女性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "女性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000036:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000036:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000036: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": [
            "VC000036:costume:default",
            "VO000036:default",
            "VO000036:low",
            "VO000036: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000027",
        "name": "土老兒",
        "canonical_name": "土老兒",
        "display_name": "土老兒",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000027",
        "asset_binding_id": "AB000027",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B002"
        ],
        "voice_anchor_summary": "土老兒；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000027:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000027:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000027: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": [
            "VC000027:costume:default",
            "VO000027:default",
            "VO000027:low",
            "VO000027: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000019",
        "name": "太太",
        "canonical_name": "太太",
        "display_name": "太太",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000019",
        "asset_binding_id": "AB000019",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B001",
          "EP0002B003",
          "EP0002B005"
        ],
        "voice_anchor_summary": "太太；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000019:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000019:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000019: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": [
            "VC000019:costume:default",
            "VO000019:default",
            "VO000019:low",
            "VO000019: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000035",
        "name": "藩臺",
        "canonical_name": "藩臺",
        "display_name": "藩臺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "lead",
        "voice_card_id": "VO000035",
        "asset_binding_id": "AB000035",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B006",
          "EP0002B002",
          "EP0002B004",
          "EP0002B005"
        ],
        "voice_anchor_summary": "藩臺；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000035:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000035:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000035: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": [
            "VC000035:costume:default",
            "VO000035:default",
            "VO000035:low",
            "VO000035: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000011",
        "name": "張鼎臣",
        "canonical_name": "張鼎臣",
        "display_name": "張鼎臣",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000011",
        "asset_binding_id": "AB000011",
        "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": [
          "EP0001B003",
          "EP0001B004"
        ],
        "voice_anchor_summary": "張鼎臣；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000011:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000011:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000011:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图",
            "关键随身物参考"
          ],
          "optional_visual_assets": [],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "九死一生",
            "伯父"
          ],
          "variant_keys": [
            "VC000011:costume:default",
            "VO000011:default",
            "VO000011:low",
            "VO000011:high"
          ],
          "prompt_fragments": [
            "店中当手；鼎臣看著我，笑了一笑",
            "張鼎臣",
            "店中当手",
            "处理父亲后事",
            "店中有一位當手，姓張，表字…",
            "鼎臣看著我，笑了一笑"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "required_visual_asset_count": 3,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000028",
        "name": "桂花",
        "canonical_name": "桂花",
        "display_name": "桂花",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000028",
        "asset_binding_id": "AB000028",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B001",
          "EP0002B002"
        ],
        "voice_anchor_summary": "桂花；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000028:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000028:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000028: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": [
            "VC000028:costume:default",
            "VO000028:default",
            "VO000028:low",
            "VO000028: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B001",
            "title": "野鸡劝捐",
            "kind": "dialogue",
            "lead_scene_id": "S0007",
            "source_scene_ids": [
              "S0007"
            ],
            "source_group_ids": [
              "AG0007"
            ],
            "source_beat_ids": [
              "AB0007"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000002",
        "name": "死裡逃生",
        "canonical_name": "死裡逃生",
        "display_name": "死裡逃生",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P2",
        "role_tier": "supporting",
        "voice_card_id": "VO000002",
        "asset_binding_id": "AB000002",
        "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",
          "EP0001B003"
        ],
        "voice_anchor_summary": "死裡逃生；角色 / 男性向 / 少年感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定",
          "带年轻感"
        ],
        "pitch": "high",
        "pace": "fast",
        "speaking_style": [
          "吐字清晰",
          "语流更轻快"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色",
          "保持少年感，不在不同段落间来回漂移"
        ],
        "casting_tags": [
          "角色",
          "男性向",
          "少年感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰",
          "语流更轻快"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000002:default",
            "label": "常规对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰",
              "语流更轻快"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000002:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000002:high",
            "label": "高强度对白",
            "pace": "fast",
            "pitch": "high",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "提高爆发力"
            ],
            "notes": "适用于冲突、喊叫或高压时刻。"
          }
        ],
        "asset_profile": {
          "asset_role": "character",
          "priority": "supporting",
          "required_visual_assets": [
            "角色主设图",
            "角色半身参考图"
          ],
          "optional_visual_assets": [
            "状态变体图"
          ],
          "required_voice_assets": [
            "基础音色样例",
            "情绪扩展样例"
          ],
          "usage_hints": [],
          "owner_candidates": [
            "邑廟豫園",
            "漢子",
            "虹口蓬路日本郵便局",
            "深山窮谷"
          ],
          "variant_keys": [
            "VC000002:costume:default",
            "VC000002:state:age",
            "VO000002:default",
            "VO000002:low",
            "VO000002:high"
          ],
          "prompt_fragments": [
            "小说主角；经历坎坷后醒悟",
            "死裡逃生",
            "小说主角",
            "经历坎坷后醒悟",
            "自家起了一個別號，叫做「死…"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0001B003",
            "title": "父丧",
            "kind": "dialogue",
            "lead_scene_id": "S0003",
            "source_scene_ids": [
              "S0003"
            ],
            "source_group_ids": [
              "AG0003"
            ],
            "source_beat_ids": [
              "AB0003"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000015",
        "name": "母親",
        "canonical_name": "母親",
        "display_name": "母親",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "voice_card_id": "VO000015",
        "asset_binding_id": "AB000015",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B003",
          "EP0001B004",
          "EP0002B005"
        ],
        "voice_anchor_summary": "母親；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000015:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000015:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000015: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": [
            "VC000015:costume:default",
            "VO000015:default",
            "VO000015:low",
            "VO000015: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000017",
        "name": "買辦",
        "canonical_name": "買辦",
        "display_name": "買辦",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "lead",
        "voice_card_id": "VO000017",
        "asset_binding_id": "AB000017",
        "voice_role": "character",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "S0003",
          "S0004",
          "S0005",
          "S0006",
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0001",
          "AG0002",
          "AG0003",
          "AG0004",
          "AG0005",
          "AG0006",
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0001",
          "AB0002",
          "AB0003",
          "AB0004",
          "AB0005",
          "AB0006",
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0001B004",
          "EP0002B004"
        ],
        "voice_anchor_summary": "買辦；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000017:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000017:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000017: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": [
            "VC000017:costume:default",
            "VO000017:default",
            "VO000017:low",
            "VO000017: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ]
      },
      {
        "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": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "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",
            "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000034",
        "name": "制臺",
        "canonical_name": "制臺",
        "display_name": "制臺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000034",
        "asset_binding_id": "AB000034",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002",
          "EP0002B003"
        ],
        "voice_anchor_summary": "制臺；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000034:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000034:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000034: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": [
            "VC000034:costume:default",
            "VC000034:state:weak",
            "VO000034:default",
            "VO000034:low",
            "VO000034: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          },
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B003",
            "title": "献妻求荣",
            "kind": "dialogue",
            "lead_scene_id": "S0009",
            "source_scene_ids": [
              "S0009"
            ],
            "source_group_ids": [
              "AG0009"
            ],
            "source_beat_ids": [
              "AB0009"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000010",
        "name": "尤雲岫",
        "canonical_name": "尤雲岫",
        "display_name": "尤雲岫",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000010",
        "asset_binding_id": "AB000010",
        "voice_role": "character",
        "episode_ids": [
          "EP0001"
        ],
        "source_scene_ids": [
          "S0001",
          "S0002",
          "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",
          "EP0001B004"
        ],
        "voice_anchor_summary": "尤雲岫；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000010:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000010:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000010: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": [
            "VC000010:costume:default",
            "VO000010:default",
            "VO000010:low",
            "VO000010:high"
          ],
          "prompt_fragments": [
            "父亲朋友；伴主角出门",
            "尤雲岫",
            "父亲朋友",
            "伴主角出门",
            "這個人姓尤，表字雲岫"
          ],
          "notes": "Dramart 资产初始化建议位；先补主设，再逐步补变体与音色。"
        },
        "asset_readiness": {
          "reference_image_count": 0,
          "reference_audio_count": 0,
          "lora_binding_count": 0,
          "voice_binding_count": 0,
          "manual_override_count": 0,
          "auto_needs_visual_reference": true,
          "auto_needs_visual_lock": true,
          "auto_needs_voice_reference": true,
          "auto_needs_voice_binding": true,
          "needs_visual_reference": true,
          "needs_visual_lock": true,
          "needs_voice_reference": true,
          "needs_voice_binding": true,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000016",
        "name": "廣東人",
        "canonical_name": "廣東人",
        "display_name": "廣東人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000016",
        "asset_binding_id": "AB000016",
        "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": [
          "EP0001B004"
        ],
        "voice_anchor_summary": "廣東人；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000016:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000016:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000016: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": [
            "VC000016:costume:default",
            "VO000016:default",
            "VO000016:low",
            "VO000016: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0001",
            "block_id": "EP0001B004",
            "title": "讣帖与远行",
            "kind": "dialogue",
            "lead_scene_id": "S0004",
            "source_scene_ids": [
              "S0004"
            ],
            "source_group_ids": [
              "AG0004"
            ],
            "source_beat_ids": [
              "AB0004"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000033",
        "name": "撫臺",
        "canonical_name": "撫臺",
        "display_name": "撫臺",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000033",
        "asset_binding_id": "AB000033",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B002"
        ],
        "voice_anchor_summary": "撫臺；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000033:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000033:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000033: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": [
            "VC000033:costume:default",
            "VO000033:default",
            "VO000033:low",
            "VO000033: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B002",
            "title": "丑闻败露",
            "kind": "bridge",
            "lead_scene_id": "S0008",
            "source_scene_ids": [
              "S0008"
            ],
            "source_group_ids": [
              "AG0008"
            ],
            "source_beat_ids": [
              "AB0008"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000026",
        "name": "李氏",
        "canonical_name": "李氏",
        "display_name": "李氏",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000026",
        "asset_binding_id": "AB000026",
        "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": [
          "EP0001B006"
        ],
        "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000003",
        "name": "漢子",
        "canonical_name": "漢子",
        "display_name": "漢子",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000003",
        "asset_binding_id": "AB000003",
        "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": "VO000003:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000003:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000003: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": [
            "VC000003:costume:default",
            "VO000003:default",
            "VO000003:low",
            "VO000003: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "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"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000037",
        "name": "總督大帥",
        "canonical_name": "總督大帥",
        "display_name": "總督大帥",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P3",
        "role_tier": "featured",
        "voice_card_id": "VO000037",
        "asset_binding_id": "AB000037",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "block_ids": [
          "EP0002B004"
        ],
        "voice_anchor_summary": "總督大帥；角色 / 女性向 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "女性向",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000037:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000037:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000037: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": [
            "VC000037:costume:default",
            "VO000037:default",
            "VO000037:low",
            "VO000037: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B004",
            "title": "真相刺心",
            "kind": "dialogue",
            "lead_scene_id": "S0011",
            "source_scene_ids": [
              "S0011"
            ],
            "source_group_ids": [
              "AG0010"
            ],
            "source_beat_ids": [
              "AB0010"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000042",
        "name": "主人",
        "canonical_name": "主人",
        "display_name": "主人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000042",
        "asset_binding_id": "AB000042",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "voice_anchor_summary": "主人；角色 / 未知性别呈现 / 未知年龄感；自然人声",
        "timbre": [
          "自然人声",
          "保持跨场景音色稳定"
        ],
        "pitch": "unknown",
        "pace": "medium",
        "speaking_style": [
          "吐字清晰"
        ],
        "delivery_core": [
          "锁定基础音色，不因场景切换改变发声位置",
          "情绪变化优先通过力度和语速调整，不改人声底色"
        ],
        "casting_tags": [
          "角色",
          "未知性别呈现",
          "未知年龄感",
          "自然人声",
          "保持跨场景音色稳定",
          "吐字清晰"
        ],
        "voice_variants": [
          {
            "variant_id": "VO000042:default",
            "label": "常规对白",
            "pace": "medium",
            "pitch": "unknown",
            "timbre": [
              "自然人声",
              "保持跨场景音色稳定"
            ],
            "speaking_style": [
              "吐字清晰"
            ],
            "notes": "默认对白态，用于大多数正常交流场景。"
          },
          {
            "variant_id": "VO000042:low",
            "label": "低强度对白",
            "pace": "slow",
            "pitch": "unknown",
            "timbre": [
              "自然人声"
            ],
            "speaking_style": [
              "吐字清晰",
              "压低力度"
            ],
            "notes": "适用于密谈、独白或收束段落。"
          },
          {
            "variant_id": "VO000042: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": [
            "VC000042:costume:default",
            "VO000042:default",
            "VO000042:low",
            "VO000042: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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      },
      {
        "entity_uid": "E000043",
        "name": "客人",
        "canonical_name": "客人",
        "display_name": "客人",
        "identity_conflict": {},
        "conflict_group_id": "",
        "priority": "P4",
        "role_tier": "featured",
        "voice_card_id": "VO000043",
        "asset_binding_id": "AB000043",
        "voice_role": "character",
        "episode_ids": [
          "EP0002"
        ],
        "source_scene_ids": [
          "S0012"
        ],
        "source_group_ids": [
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0011"
        ],
        "block_ids": [
          "EP0002B005"
        ],
        "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": "background",
          "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,
          "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
        },
        "review_overlay": {
          "scopes": {
            "entity": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "visual": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "voice": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_needs_fix": false,
              "is_open": true
            },
            "assets": {
              "status": "todo",
              "locked": false,
              "reviewer": "",
              "review_note": "",
              "labels": [],
              "updated_at": "",
              "is_approved": false,
              "is_na": false,
              "is_blocked": false,
              "is_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": [
          "补角色语音参考",
          "补角色音色绑定"
        ],
        "main_scene_candidates": [
          {
            "episode_id": "EP0002",
            "block_id": "EP0002B005",
            "title": "暗流与恭送",
            "kind": "dialogue",
            "lead_scene_id": "S0012",
            "source_scene_ids": [
              "S0012"
            ],
            "source_group_ids": [
              "AG0011"
            ],
            "source_beat_ids": [
              "AB0011"
            ]
          }
        ]
      }
    ]
  },
  "review_checklist": [
    {
      "check_id": "CHK0001",
      "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": "CHK0002",
      "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": "CHK0003",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：伯父",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000014",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "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",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0005",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：吳景曾",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000025",
      "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": "E000025",
      "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": "E000036",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0008",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：候補道",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000036",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0009",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：土老兒",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000027",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0010",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：土老兒",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000027",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0011",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：太太",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000019",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0012",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：太太",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000019",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0013",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：藩臺",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000035",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0014",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：藩臺",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000035",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0015",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：張鼎臣",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000011",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0016",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：張鼎臣",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000011",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0017",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：桂花",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000028",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0018",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：桂花",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000028",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0019",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：死裡逃生",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000002",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0020",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：死裡逃生",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000002",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0021",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：母親",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000015",
      "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": "E000015",
      "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": "E000017",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0024",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：買辦",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000017",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0025",
      "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": "CHK0026",
      "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": "CHK0027",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：制臺",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000034",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0028",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：制臺",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000034",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0029",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：尤雲岫",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000010",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0030",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：尤雲岫",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000010",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0031",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：廣東人",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000016",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0032",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：廣東人",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000016",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0033",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：撫臺",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000033",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0034",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：撫臺",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000033",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0035",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：李氏",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000026",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0036",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：李氏",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000026",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0037",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：漢子",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000003",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0038",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：漢子",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000003",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0039",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：總督大帥",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000037",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0040",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：總督大帥",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000037",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0041",
      "category": "character_asset",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺参考图：主人",
      "detail": "该角色尚未提供 reference_images，Dramart 项目初始化时容易出现形象漂移。",
      "target_type": "character",
      "target_id": "E000042",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "先补主形象图，再决定是否做 LoRA 或角色锁定。"
    },
    {
      "check_id": "CHK0042",
      "category": "voice_binding",
      "severity": "warning",
      "status": "todo",
      "title": "角色缺音色绑定：主人",
      "detail": "该角色已有声音卡或语音角色设定，但还没有 provider voice 绑定。",
      "target_type": "character",
      "target_id": "E000042",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "在 Dramart 或配音侧先绑定稳定音色。"
    },
    {
      "check_id": "CHK0043",
      "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": "CHK0044",
      "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": "CHK0045",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：南京",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000013",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0046",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：上海",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000001",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0047",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：四馬路",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000029",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0048",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：客棧",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000020",
      "source_refs": [
        "EP0001",
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0049",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：京城",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000031",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0050",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：會香裡",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000030",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0051",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：杭州",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000012",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0052",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：蘇州",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000032",
      "source_refs": [
        "EP0002"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0053",
      "category": "location_asset",
      "severity": "info",
      "status": "todo",
      "title": "场景建议补参考：邑廟豫園",
      "detail": "主场景尚未准备参考图，后续搭建分镜时可能缺乏统一视觉锚点。",
      "target_type": "location",
      "target_id": "E000006",
      "source_refs": [
        "EP0001"
      ],
      "recommended_action": "优先补一张主场景参考图或情绪板。"
    },
    {
      "check_id": "CHK0054",
      "category": "prop_asset",
      "severity": "info",
      "status": "todo",
      "title": "道具建议补参考：二十年目睹之怪現狀",
      "detail": "关键道具/系统资产尚未准备参考图。",
      "target_type": "prop",
      "target_id": "E000005",
      "source_refs": [
        "C0001",
        "C0002"
      ],
      "recommended_action": "补一张标准参考图，必要时再补特写或界面规范。"
    },
    {
      "check_id": "CHK0055",
      "category": "prop_asset",
      "severity": "info",
      "status": "todo",
      "title": "道具缺剧本命中：二十年目睹之怪現狀",
      "detail": "该道具目前主要根据实体重要度入选，尚未在 screenplay block 中建立稳定命中。",
      "target_type": "prop",
      "target_id": "E000005",
      "source_refs": [
        "C0001",
        "C0002"
      ],
      "recommended_action": "人工确认它是否属于必须建模的关键道具，必要时补充与 block 的绑定。"
    },
    {
      "check_id": "CHK0056",
      "category": "time_mode",
      "severity": "info",
      "status": "todo",
      "title": "存在非主线时间层",
      "detail": "当前剧本包含回忆、梦境或并行线等时间层，上传到 Dramart 前需要显式标注。",
      "target_type": "package",
      "target_id": "outline",
      "source_refs": [
        "flashback"
      ],
      "recommended_action": "在分集文本或场次标题中明确标出时间层切换。"
    }
  ],
  "upload_bundle": {
    "contract_version": "dramart_upload_bundle.v2",
    "upload_script_filename": "03e_dramart_upload_script.md",
    "upload_script_markdown": "# 第01集 手稿奇缘\n\n主要人物：死裡逃生、九死一生、漢子、尤雲岫、張鼎臣、伯父、母親、廣東人、買辦、李氏、藩臺、土老兒\n主要场景：上海、四馬路、邑廟豫園、南京、杭州、客棧\n一句话梗概：死裡逃生在上海豫园获赠奇书手稿，由此引出九死一生少年丧父、投亲无门的往事，最终在穷途末路时偶遇故人吴继之，命运迎来转机。\n剧情摘要：死裡逃生在上海豫园偶遇神秘汉子，获赠《二十年目睹之怪现状》手稿，决心将其公之于世。手稿内容随即展开：九死一生回忆十五岁那年父亲病逝杭州，世交尤雲岫与张鼎臣各怀心思介入后事。随后，伯父赞赏九死一生起草的讣帖，并商议盘店事宜，但在扶柩回乡的轮船上，九死一生初次目睹官场丑态。章节转换，九死一生在南京客栈苦等伯父不至、盘缠将尽之际，于街头惊喜重逢同窗吴继之，受邀入住其公馆，暂时摆脱生存危机。\n开场钩子：上海豫园，喧嚣市井中，一个神秘汉子将一叠厚厚的手稿塞给死裡逃生。他低头看去，封面上赫然写着《二十年目睹之怪现状》，作者署名：九死一生。一股莫名的宿命感瞬间击中了他。\n结尾钩子：南京街头，身无分文的九死一生几乎绝望，却与故人吴继之不期而遇。吴继之热情地拍着他的肩膀：“走，到我公馆住下！” 生存危机暂解，一个窥探官场百态的新窗口，正在他面前打开。\n\n## 场次01 豫园奇遇\n\n时间层：flashback\n人物：死裡逃生、九死一生、漢子\n场景：上海、四馬路、邑廟豫園\n结构锚点：\n剧情功能：establish_setting、introduce_protagonist、present_macguffin、set_narrative_frame\n呈现方式：信息交代\n时间层：回忆\n必保留点：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園；Handover of the manuscript '二十年目睹之怪现状'；Protagonist's decision to send the manuscript to 橫濱《新小說》\n连续性要求：Maintain 'flashback' time_mode established in chronology；Anchor temporal setting: '六十年前'；Establish '死裡逃生' as frame narrator/protagonist；Introduce '九死一生' as the manuscript's author (implied connection)\n改编锚点：\n本段概述：死裡逃生在上海豫园遇到神秘汉子，获赠《二十年目睹之怪现状》手稿，决定将…\n推进目标：To visually and narratively establish the corrupt world of late-Qing Shanghai, introduce the cynical protagonist who has escaped it, and present the mysterious manuscript that contains the stories which will form the series' core. This scene sets up the narrative frame device.\n必须保留：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園\n冲突：Man vs. Society (Protagonist's disillusionment with Shanghai's hypocrisy and corruption) / Man vs. Self (His search for meaning and purpose after his 'escape').\n转折：The moment the protagonist receives the manuscript and reads the title '二十年目睹之怪現狀' and the author's name '九死一生', realizing a profound connection and his new mission to disseminate these stories.\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连续性要求：紧接S0001之后；保持叙事顺序差\n改编锚点：\n本段概述：小说第二回标题：守常经不使疏逾戚，睹怪状几疑贼是官。\n推进目标：将章回标题转化为一个简短、有风格、能暗示本章主题的视觉化开场，自然过渡到后续情节。\n必须保留：第二回标题文字；标题的悬疑与讽刺基调\n冲突：标题本身蕴含的冲突：“守常经”（秩序）与“睹怪状”（混乱）、“戚”（亲近）与“疏”（疏远）、“贼”与“官”的身份错位。\n转折：标题画面出现，标志着故事进入以“身份错乱与秩序挑战”为核心的新篇章。\n\n（古朴的卷轴样式标题，毛笔字遒劲有力，缓缓浮现于屏幕）\n“守常经不使疏逾戚，睹怪状几疑贼是官”。\n\n标题透着强烈的反讽与悬疑，暗示着即将上演的，是一出亲情伦理与官贼身份错位的荒诞剧。\n\n转场：标题淡出，故事正式开始。\n\n## 场次03 父丧\n\n时间层：flashback\n人物：尤雲岫、張鼎臣、九死一生、伯父、死裡逃生、母親\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：背景揭示、人物关系建立、核心冲突引入\n呈现方式：对白主导\n时间层：回忆\n必保留点：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑；張鼎臣与九死一生关于是否通知伯父的对话；伯父抵达并吸鸦片烟\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“十五岁那年”；九死一生作为回忆叙述者视角；尤雲岫、張鼎臣、伯父角色首次亮相的连续性\n改编锚点：\n本段概述：九死一生回憶父親病逝杭州，尤雲岫伴他前往處理後事，張鼎臣與伯父介入財產…\n推进目标：通过对话和关键动作，生动呈现父亲去世后，年幼的九死一生被卷入复杂的财产与人际关系网，身边人各怀心思的初始状态，为后续的背叛与冲突埋下伏笔。\n必须保留：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑\n冲突：年幼丧父的九死一生，在處理後事時，面臨張鼎臣（怀疑尤雲岫）、尤雲岫（试图掌控）、伯父（即将介入）三方不同立场与意图的潜在角力。\n转折：張鼎臣私下向九死一生表达对尤雲岫的怀疑，并透露父亲遗嘱未提伯父，暗示家庭内部存在嫌隙与财产争夺的风险。\n\n（回忆）十五岁的九死一生在南京家中，接到父亲在杭州病逝的噩耗，如遭雷击。\n\n母亲六神无主，父亲生前好友尤雲岫主动提出陪他前往杭州料理后事。临行前，母亲将一包银子交给尤雲岫。\n\n母親：雲岫，这些钱你拿着，到杭州一切用度，还有……打点衙门，都拜托你了。\n\n尤雲岫：（接过，神色郑重）嫂子放心，我与兄长情同手足，一定办妥。\n\n到了杭州，另一位世交张鼎臣赶来帮忙。他看着尤雲岫忙前忙后，私下将九死一生拉到一边。\n\n張鼎臣：（眉头紧锁）贤侄，有句话不知当讲不当讲。你父亲这病，来得突然。尤雲岫他……是不是太过殷勤了些？你父亲留下的遗嘱我看过，里面可没提你那位在南京的伯父。\n\n九死一生心头一沉。这时，伯父竟也从南京赶到了，一见面并未多问丧事，倒是先让人摆开了烟具。\n\n伯父：（躺在榻上，吐着烟圈）姪儿来了？一路辛苦。先歇着，事缓则圆。\n\n九死一生看着烟雾后伯父模糊的脸，又想起张鼎臣的警告，第一次感到亲人之间那看不见的裂痕。\n\n转场：后事处理完毕，返回南京。\n\n## 场次04 讣帖与远行\n\n人物：張鼎臣、母親、伯父、廣東人、買辦、九死一生、尤雲岫\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：角色塑造、情节推进、悬念设置\n呈现方式：对白主导\n时间层：主线\n必保留点：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线；轮船偷窃事件（广东人指证）\n连续性要求：主角从家乡到上海再到南京的旅程；伯父返回南京的交代；主角母亲对存款的担忧\n改编锚点：\n本段概述：伯父赞赏我起草的讣帖，与张鼎臣商议盘店事宜，随后扶灵柩回上海处理财务，…\n推进目标：塑造主角初显文才与得到长辈认可的形象，同时通过处理父亲后事和旅途见闻，展现晚清社会风貌，并为后续寻找伯父和揭露社会丑态埋下伏笔。\n必须保留：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线\n冲突：主角对伯父的信任与后续伯父回避、存款无着的潜在矛盾；轮船上体面官绅与偷窃指控的表面冲突。\n转折：轮船偷窃事件，主角亲眼目睹官场体面下的丑恶，是其社会认知的转折点。\n\n回到南京，九死一生起草了父亲的讣帖。\n\n伯父拿着讣帖，难得露出赞许之色。\n\n伯父：嗯，文字得体，情真意切。看不出你小小年纪，有此文才。\n\n接着，伯父与张鼎臣商议，决定将九死一生父亲在杭州的店铺盘出，银钱分作三股，一股留作安家，两股让九死一生带去上海存在银号，以备将来。\n\n母亲却私下担忧。\n\n母親：你伯父让你一个人带这么多钱去上海……儿啊，世事险恶，千万小心。\n\n不久，九死一生扶父亲灵柩乘船回上海。船上，他目睹了一出闹剧：一个广东口音的乘客抓住一个衣着体面的官绅，大喊捉贼，指控对方偷了他的怀表。那官绅面红耳赤，百般抵赖，周围看客指指点点，却无人敢真正上前。\n\n广东人：（激动地）官老爷就了不起？官老爷就可以做贼？！\n\n九死一生缩在角落，看着那官绅体面下的狼狈，心中对“官”的想象，第一次出现了裂痕。原来，体面与丑恶，可以离得这么近。\n\n转场：处理完上海事务，九死一生前往南京寻找伯父。\n\n## 场次05 第三回：走穷途忽遇良朋，谈仁路初闻怪状\n\n结构锚点：\n剧情功能：章节过渡、主题预示\n呈现方式：信息交代\n时间层：主线\n必保留点：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n连续性要求：保持与S0004的叙事顺序差；作为新章节的明确起点\n改编锚点：\n本段概述：章节标题：走穷途忽遇良朋，谈仁路初闻怪状。\n推进目标：通过视觉与听觉元素，清晰、风格化地展示章节标题，为后续剧情设定悬念和基调。\n必须保留：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n冲突：标题本身不包含直接冲突，但预示了主角的“穷途”困境与即将听闻的“怪状”之间的潜在张力。\n转折：标题的出现标志着故事进入新的章节，主角命运将迎来“遇良朋”和“闻怪状”的转折。\n\n（章节标题再次以视觉化形式呈现）\n“走穷途忽遇良朋，谈仁路初闻怪状”。\n\n这标题仿佛一道分水岭，预告着主角山穷水尽后的柳暗花明，以及更多光怪陆离的见闻即将涌入他的生命。\n\n转场：画面转入南京客栈。\n\n## 场次06 绝处逢生\n\n时间层：flashback\n人物：伯父、李氏、藩臺、土老兒、吳景曾、太太、候補道\n场景：南京、上海、客棧\n结构锚点：\n剧情功能：建立关键关系、引入核心冲突、推进主角困境\n呈现方式：对白主导\n时间层：回忆\n必保留点：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程；主角搬入继之公馆的决定；继之提及“野鸡道台”新闻作为悬念钩子\n连续性要求：保持flashback结构，与S0005的“想起”锚点衔接；主角服装、精神状态与前一困境场景（S0005）的连贯；南京作为故事核心地点的视觉一致性\n改编锚点：\n本段概述：我在客栈等待伯父未果，盘缠将尽时偶遇同窗吴继之，受邀搬入其公馆居住，并…\n推进目标：通过主角与吴继之的重逢，完成主角从孤立无援到获得暂时庇护的转折，建立核心人物关系，并巧妙引入后续官场怪谈的引子。\n必须保留：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程\n冲突：主角面临经济耗尽、投亲无门的现实生存危机，与内心对家族亲情的困惑和失望。\n转折：街头偶遇吴继之，并被邀请入住其公馆，主角的生存危机得到暂时缓解，叙事重心从个人困境转向通过继之观察社会。\n\n（回忆）南京客栈里，九死一生已苦等伯父多日。盘缠所剩无几，伯父却始终避而不见，托人传话只说公务繁忙。\n\n他摸着干瘪的钱袋，站在客栈门口，望着陌生的街巷，感到前所未有的茫然与恐慌。投亲无门，经济耗尽，下一步该如何是好？\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## 场次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## 场次02 丑闻败露\n\n时间层：flashback\n人物：藩臺、制臺、土老兒、桂花、撫臺、吳景曾、候補道\n场景：南京、京城、會香裡、蘇州\n结构锚点：\n剧情功能：背景揭示、人物动机说明、讽刺主题强化、情节转折铺垫\n呈现方式：旁述桥接\n时间层：回忆\n必保留点：桂花为土老儿捐官谋差的核心情节；藩台识破真相并调查的过程；桂花最终成为诰封夫人的讽刺结局；继之作为叙述者的框架\n连续性要求：保持flashback结构，明确是继之的回忆性讲述；与S0007场景（继之开始讲述）紧密衔接；确保时间线从“次日”开始，顺序推进至结局\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连续性要求：继之与“我”的对话关系；场景色调与之前对话场景统一；闪回部分的视觉风格需与主叙事区分；与前后场景的叙事节奏衔接\n改编锚点：\n本段概述：繼之講述前兩年制臺生病，一位候補道獻上妻子為其按摩，結果被姨太太們發現… / 本章回標題，預告接下來的內容。\n推进目标：通过生动的对话和闪回画面，将一则官场丑闻讲述得既荒诞可笑又极具讽刺意味，强化继之作为观察者和评论者的角色形象。\n必须保留：继之作为讲述者；候补道献妻治病的核心情节；按摩丑事被姨太太们发现\n冲突：候补道为巴结上司，不惜献妻，与道德伦理、家庭尊严的冲突；丑事败露后，与制台姨太太们的直接肢体冲突。\n转折：无\n\n主角：（摇头叹息）真是荒唐。\n继之：（神色转为凝重）荒唐？还有更不堪的。就是前两年，南京那位制台大人病了，有个候补道为了巴结，竟想出一条“妙计”。\n主角：什么计策？\n继之：他声称自己的夫人精通按摩推拿，能治制台的病，亲自把夫人送进了制台府。\n（闪回：制台卧房，候补道夫人低头为床上的制台按摩脚部，神色屈辱。门外，几个姨太太偷窥）\n继之：这事被制台的几位姨太太撞破，哪能容她？当场冲进去，将那夫人揪出来，一顿撕打辱骂。\n（闪回：花园里，一群女人围着候补道夫人推搡叫骂，场面混乱）\n继之：这件丑事立刻传遍了南京城，成了笑柄。那候补道，脸算是丢尽了。\n\n转场：（话题自然引向此类丑闻的后续）\n\n## 场次04 真相刺心\n\n人物：候補道、候補縣太爺、藩臺、總督大帥、買辦、吳景曾、伯父\n场景：南京、客棧\n结构锚点：\n剧情功能：信息揭示、冲突推进、人物关系深化、世界观构建\n呈现方式：对白主导\n时间层：主线\n必保留点：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相；主人公听闻丑闻后的震惊与失言；主人公对继之劝诫的内心感激与反思；继之对主人公处世之道的告诫\n连续性要求：紧接前文对候补道夫人事件的讨论；保持吴继之作为讲述者和引导者的角色连贯性；主人公情绪从对官场的好奇，到听闻丑闻的震惊，再到得知被伯父回避的失落，需有清晰递进\n改编锚点：\n本段概述：继之讲述候补道夫人受辱后反得升迁、候补县太爷沦为盗贼的官场丑闻，并揭露…\n推进目标：通过密集的对话，完成两大核心信息揭露（官场腐败范例、家庭关系真相），塑造吴继之的世故与正直，并推动主人公从天真旁观者向初识世情险恶的转变。\n必须保留：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相\n冲突：主人公对官场/亲情的美好想象与残酷现实（官场颠倒黑白、亲人刻意疏远）之间的冲突；吴继之试图保护/教导主人公与主人公内心震撼之间的张力。\n转折：继之点破伯父是“有意回避”，主人公从对官场丑闻的震惊，转入对自身处境（被至亲抛弃）的直面与无言，标志着其天真阶段的彻底结束。\n\n主角：（难以置信）如此无耻，后来定被革职查办了吧？\n继之：（冷笑）革职？你太天真了。正相反，没过多久，那位献妻的候补道，反而被派了个优差！你说这官场，还有什么黑白可言？\n主角：（震惊失语）这……\n继之：（压低声音）还有更惨的。一个候补县太爷，候补了十几年，穷得吃不上饭，最后竟真去做了劫道的强盗，被拿了正法。\n主角：（脸色发白）官场……竟至于此？\n继之：（看着主角，意味深长）贤弟，你年纪轻，不知世路艰难。就说你伯父，他哪里是凑巧去了通州？分明是知道你来了南京，有意回避。\n主角：（如遭雷击，手中茶杯一晃）有……有意回避？为何？\n继之：（叹口气）人心难测，骨肉至亲亦如此。我告诉你这些，是让你心里有个防备，往后处世，切莫再这般赤诚了。\n主角：（低头，久久无言，心中暖流与寒意交织）。\n\n转场：（时间跳转，承接继之对主角的关照）\n\n## 场次05 暗流与恭送\n\n时间层：flashback\n人物：伯父、藩臺、主人、客人、母親、吳景曾、太太\n场景：上海\n结构锚点：\n剧情功能：establish_relationship、advance_plot、introduce_mystery\n呈现方式：对白主导\n时间层：回忆\n必保留点：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果；主角偶遇神秘客人及主人恭敬送客的对比\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“二十年前”；主角对伯父的疑虑持续；继之的官职变化（接办大关）\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": 10860,
      "single_file_within_limit": true,
      "episode_count": 2,
      "part_count": 1,
      "oversized_episode_count": 0,
      "oversized_part_count": 0
    },
    "episode_uploads": [
      {
        "episode_id": "EP0001",
        "title": "第01集 手稿奇缘",
        "filename": "03e_dramart_upload_EP0001.md",
        "char_count": 5995,
        "block_count": 6,
        "time_modes": [
          "flashback",
          "mainline"
        ],
        "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开场钩子：上海豫园，喧嚣市井中，一个神秘汉子将一叠厚厚的手稿塞给死裡逃生。他低头看去，封面上赫然写着《二十年目睹之怪现状》，作者署名：九死一生。一股莫名的宿命感瞬间击中了他。\n结尾钩子：南京街头，身无分文的九死一生几乎绝望，却与故人吴继之不期而遇。吴继之热情地拍着他的肩膀：“走，到我公馆住下！” 生存危机暂解，一个窥探官场百态的新窗口，正在他面前打开。\n\n## 场次01 豫园奇遇\n\n时间层：flashback\n人物：死裡逃生、九死一生、漢子\n场景：上海、四馬路、邑廟豫園\n结构锚点：\n剧情功能：establish_setting、introduce_protagonist、present_macguffin、set_narrative_frame\n呈现方式：信息交代\n时间层：回忆\n必保留点：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園；Handover of the manuscript '二十年目睹之怪现状'；Protagonist's decision to send the manuscript to 橫濱《新小說》\n连续性要求：Maintain 'flashback' time_mode established in chronology；Anchor temporal setting: '六十年前'；Establish '死裡逃生' as frame narrator/protagonist；Introduce '九死一生' as the manuscript's author (implied connection)\n改编锚点：\n本段概述：死裡逃生在上海豫园遇到神秘汉子，获赠《二十年目睹之怪现状》手稿，决定将…\n推进目标：To visually and narratively establish the corrupt world of late-Qing Shanghai, introduce the cynical protagonist who has escaped it, and present the mysterious manuscript that contains the stories which will form the series' core. This scene sets up the narrative frame device.\n必须保留：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園\n冲突：Man vs. Society (Protagonist's disillusionment with Shanghai's hypocrisy and corruption) / Man vs. Self (His search for meaning and purpose after his 'escape').\n转折：The moment the protagonist receives the manuscript and reads the title '二十年目睹之怪現狀' and the author's name '九死一生', realizing a profound connection and his new mission to disseminate these stories.\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连续性要求：紧接S0001之后；保持叙事顺序差\n改编锚点：\n本段概述：小说第二回标题：守常经不使疏逾戚，睹怪状几疑贼是官。\n推进目标：将章回标题转化为一个简短、有风格、能暗示本章主题的视觉化开场，自然过渡到后续情节。\n必须保留：第二回标题文字；标题的悬疑与讽刺基调\n冲突：标题本身蕴含的冲突：“守常经”（秩序）与“睹怪状”（混乱）、“戚”（亲近）与“疏”（疏远）、“贼”与“官”的身份错位。\n转折：标题画面出现，标志着故事进入以“身份错乱与秩序挑战”为核心的新篇章。\n\n（古朴的卷轴样式标题，毛笔字遒劲有力，缓缓浮现于屏幕）\n“守常经不使疏逾戚，睹怪状几疑贼是官”。\n\n标题透着强烈的反讽与悬疑，暗示着即将上演的，是一出亲情伦理与官贼身份错位的荒诞剧。\n\n转场：标题淡出，故事正式开始。\n\n## 场次03 父丧\n\n时间层：flashback\n人物：尤雲岫、張鼎臣、九死一生、伯父、死裡逃生、母親\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：背景揭示、人物关系建立、核心冲突引入\n呈现方式：对白主导\n时间层：回忆\n必保留点：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑；張鼎臣与九死一生关于是否通知伯父的对话；伯父抵达并吸鸦片烟\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“十五岁那年”；九死一生作为回忆叙述者视角；尤雲岫、張鼎臣、伯父角色首次亮相的连续性\n改编锚点：\n本段概述：九死一生回憶父親病逝杭州，尤雲岫伴他前往處理後事，張鼎臣與伯父介入財產…\n推进目标：通过对话和关键动作，生动呈现父亲去世后，年幼的九死一生被卷入复杂的财产与人际关系网，身边人各怀心思的初始状态，为后续的背叛与冲突埋下伏笔。\n必须保留：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑\n冲突：年幼丧父的九死一生，在處理後事時，面臨張鼎臣（怀疑尤雲岫）、尤雲岫（试图掌控）、伯父（即将介入）三方不同立场与意图的潜在角力。\n转折：張鼎臣私下向九死一生表达对尤雲岫的怀疑，并透露父亲遗嘱未提伯父，暗示家庭内部存在嫌隙与财产争夺的风险。\n\n（回忆）十五岁的九死一生在南京家中，接到父亲在杭州病逝的噩耗，如遭雷击。\n\n母亲六神无主，父亲生前好友尤雲岫主动提出陪他前往杭州料理后事。临行前，母亲将一包银子交给尤雲岫。\n\n母親：雲岫，这些钱你拿着，到杭州一切用度，还有……打点衙门，都拜托你了。\n\n尤雲岫：（接过，神色郑重）嫂子放心，我与兄长情同手足，一定办妥。\n\n到了杭州，另一位世交张鼎臣赶来帮忙。他看着尤雲岫忙前忙后，私下将九死一生拉到一边。\n\n張鼎臣：（眉头紧锁）贤侄，有句话不知当讲不当讲。你父亲这病，来得突然。尤雲岫他……是不是太过殷勤了些？你父亲留下的遗嘱我看过，里面可没提你那位在南京的伯父。\n\n九死一生心头一沉。这时，伯父竟也从南京赶到了，一见面并未多问丧事，倒是先让人摆开了烟具。\n\n伯父：（躺在榻上，吐着烟圈）姪儿来了？一路辛苦。先歇着，事缓则圆。\n\n九死一生看着烟雾后伯父模糊的脸，又想起张鼎臣的警告，第一次感到亲人之间那看不见的裂痕。\n\n转场：后事处理完毕，返回南京。\n\n## 场次04 讣帖与远行\n\n人物：張鼎臣、母親、伯父、廣東人、買辦、九死一生、尤雲岫\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：角色塑造、情节推进、悬念设置\n呈现方式：对白主导\n时间层：主线\n必保留点：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线；轮船偷窃事件（广东人指证）\n连续性要求：主角从家乡到上海再到南京的旅程；伯父返回南京的交代；主角母亲对存款的担忧\n改编锚点：\n本段概述：伯父赞赏我起草的讣帖，与张鼎臣商议盘店事宜，随后扶灵柩回上海处理财务，…\n推进目标：塑造主角初显文才与得到长辈认可的形象，同时通过处理父亲后事和旅途见闻，展现晚清社会风貌，并为后续寻找伯父和揭露社会丑态埋下伏笔。\n必须保留：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线\n冲突：主角对伯父的信任与后续伯父回避、存款无着的潜在矛盾；轮船上体面官绅与偷窃指控的表面冲突。\n转折：轮船偷窃事件，主角亲眼目睹官场体面下的丑恶，是其社会认知的转折点。\n\n回到南京，九死一生起草了父亲的讣帖。\n\n伯父拿着讣帖，难得露出赞许之色。\n\n伯父：嗯，文字得体，情真意切。看不出你小小年纪，有此文才。\n\n接着，伯父与张鼎臣商议，决定将九死一生父亲在杭州的店铺盘出，银钱分作三股，一股留作安家，两股让九死一生带去上海存在银号，以备将来。\n\n母亲却私下担忧。\n\n母親：你伯父让你一个人带这么多钱去上海……儿啊，世事险恶，千万小心。\n\n不久，九死一生扶父亲灵柩乘船回上海。船上，他目睹了一出闹剧：一个广东口音的乘客抓住一个衣着体面的官绅，大喊捉贼，指控对方偷了他的怀表。那官绅面红耳赤，百般抵赖，周围看客指指点点，却无人敢真正上前。\n\n广东人：（激动地）官老爷就了不起？官老爷就可以做贼？！\n\n九死一生缩在角落，看着那官绅体面下的狼狈，心中对“官”的想象，第一次出现了裂痕。原来，体面与丑恶，可以离得这么近。\n\n转场：处理完上海事务，九死一生前往南京寻找伯父。\n\n## 场次05 第三回：走穷途忽遇良朋，谈仁路初闻怪状\n\n结构锚点：\n剧情功能：章节过渡、主题预示\n呈现方式：信息交代\n时间层：主线\n必保留点：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n连续性要求：保持与S0004的叙事顺序差；作为新章节的明确起点\n改编锚点：\n本段概述：章节标题：走穷途忽遇良朋，谈仁路初闻怪状。\n推进目标：通过视觉与听觉元素，清晰、风格化地展示章节标题，为后续剧情设定悬念和基调。\n必须保留：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n冲突：标题本身不包含直接冲突，但预示了主角的“穷途”困境与即将听闻的“怪状”之间的潜在张力。\n转折：标题的出现标志着故事进入新的章节，主角命运将迎来“遇良朋”和“闻怪状”的转折。\n\n（章节标题再次以视觉化形式呈现）\n“走穷途忽遇良朋，谈仁路初闻怪状”。\n\n这标题仿佛一道分水岭，预告着主角山穷水尽后的柳暗花明，以及更多光怪陆离的见闻即将涌入他的生命。\n\n转场：画面转入南京客栈。\n\n## 场次06 绝处逢生\n\n时间层：flashback\n人物：伯父、李氏、藩臺、土老兒、吳景曾、太太、候補道\n场景：南京、上海、客棧\n结构锚点：\n剧情功能：建立关键关系、引入核心冲突、推进主角困境\n呈现方式：对白主导\n时间层：回忆\n必保留点：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程；主角搬入继之公馆的决定；继之提及“野鸡道台”新闻作为悬念钩子\n连续性要求：保持flashback结构，与S0005的“想起”锚点衔接；主角服装、精神状态与前一困境场景（S0005）的连贯；南京作为故事核心地点的视觉一致性\n改编锚点：\n本段概述：我在客栈等待伯父未果，盘缠将尽时偶遇同窗吴继之，受邀搬入其公馆居住，并…\n推进目标：通过主角与吴继之的重逢，完成主角从孤立无援到获得暂时庇护的转折，建立核心人物关系，并巧妙引入后续官场怪谈的引子。\n必须保留：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程\n冲突：主角面临经济耗尽、投亲无门的现实生存危机，与内心对家族亲情的困惑和失望。\n转折：街头偶遇吴继之，并被邀请入住其公馆，主角的生存危机得到暂时缓解，叙事重心从个人困境转向通过继之观察社会。\n\n（回忆）南京客栈里，九死一生已苦等伯父多日。盘缠所剩无几，伯父却始终避而不见，托人传话只说公务繁忙。\n\n他摸着干瘪的钱袋，站在客栈门口，望着陌生的街巷，感到前所未有的茫然与恐慌。投亲无门，经济耗尽，下一步该如何是好？\n\n正当他心灰意冷，踟蹰街头时，一个熟悉的身影从对面走来。那人盯着他看了几眼，突然快步上前，一把抓住他的胳膊。\n\n吳景曾：（惊喜地）是你？九死一生？\n\n九死一生愣住，仔细辨认，终于认出是昔日的同窗吴继之！\n\n九死一生：继之兄！真的是你！\n\n吴继之打量着他略显潦倒的衣衫，热情地揽住他的肩膀。\n\n吳景曾：看你这样子，是遇到难处了？走，别住客栈了，到我公馆去！咱们好好叙叙旧。\n\n绝境逢生，九死一生几乎要落下泪来。他随吴继之前往公馆，路上，吴继之随口提起：\n\n吳景曾：对了，你可听说最近南京城里一桩奇闻？有个“野鸡道台”的案子，闹得沸沸扬扬，真是怪状百出……\n\n九死一生的注意力被吸引，他的生存危机暂时解除，而一段通过好友眼睛观察官场怪现状的旅程，就此开始。",
        "file_path": "logs/stage_artifacts/dramart_package_uploads/20260401T010309550610Z/episodes/03e_dramart_upload_EP0001.md"
      },
      {
        "episode_id": "EP0002",
        "title": "第02集 野鸡道台与献妻丑闻",
        "filename": "03e_dramart_upload_EP0002.md",
        "char_count": 4863,
        "block_count": 5,
        "time_modes": [
          "mainline",
          "flashback"
        ],
        "source_scene_ids": [
          "S0007",
          "S0008",
          "S0009",
          "S0011",
          "S0012"
        ],
        "source_group_ids": [
          "AG0007",
          "AG0008",
          "AG0009",
          "AG0010",
          "AG0011"
        ],
        "source_beat_ids": [
          "AB0007",
          "AB0008",
          "AB0009",
          "AB0010",
          "AB0011"
        ],
        "markdown": "# 第02集 野鸡道台与献妻丑闻\n\n主要人物：桂花、太太、土老兒、吳景曾、藩臺、制臺、撫臺、候補道、候補縣太爺、總督大帥、買辦、伯父\n主要场景：南京、上海、四馬路、會香裡、京城、蘇州、客棧\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桂花：（眼波流转）爷是哪里人？家里做什么营生？\n土老儿：（老实巴交）种地的，有几百亩田。\n桂花：（眼睛一亮）既有家底，何不捐个官做做？光宗耀祖，强过在这里花冤枉钱。\n（闪回结束）\n主角：（好奇）后来呢？\n继之：那土老儿本分，不敢想。可桂花是个有手段的，竟自己除了招牌，关了大门，对土老儿说——\n（闪回：桂花一把扯下“桂花书寓”的招牌）\n桂花：（斩钉截铁）只要你娶我做填房，不许再娶别人。我立刻帮你打点，捐个官，咱们改换门庭！\n主角：（愕然）这就……嫁了？\n继之：（点头）次日就成了亲，桂花改口称“太太”，一心一意要捧出个“道台老爷”来。\n\n## 场次02 丑闻败露\n\n时间层：flashback\n人物：藩臺、制臺、土老兒、桂花、撫臺、吳景曾、候補道\n场景：南京、京城、會香裡、蘇州\n结构锚点：\n剧情功能：背景揭示、人物动机说明、讽刺主题强化、情节转折铺垫\n呈现方式：旁述桥接\n时间层：回忆\n必保留点：桂花为土老儿捐官谋差的核心情节；藩台识破真相并调查的过程；桂花最终成为诰封夫人的讽刺结局；继之作为叙述者的框架\n连续性要求：保持flashback结构，明确是继之的回忆性讲述；与S0007场景（继之开始讲述）紧密衔接；确保时间线从“次日”开始，顺序推进至结局\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连续性要求：继之与“我”的对话关系；场景色调与之前对话场景统一；闪回部分的视觉风格需与主叙事区分；与前后场景的叙事节奏衔接\n改编锚点：\n本段概述：繼之講述前兩年制臺生病，一位候補道獻上妻子為其按摩，結果被姨太太們發現… / 本章回標題，預告接下來的內容。\n推进目标：通过生动的对话和闪回画面，将一则官场丑闻讲述得既荒诞可笑又极具讽刺意味，强化继之作为观察者和评论者的角色形象。\n必须保留：继之作为讲述者；候补道献妻治病的核心情节；按摩丑事被姨太太们发现\n冲突：候补道为巴结上司，不惜献妻，与道德伦理、家庭尊严的冲突；丑事败露后，与制台姨太太们的直接肢体冲突。\n转折：无\n\n主角：（摇头叹息）真是荒唐。\n继之：（神色转为凝重）荒唐？还有更不堪的。就是前两年，南京那位制台大人病了，有个候补道为了巴结，竟想出一条“妙计”。\n主角：什么计策？\n继之：他声称自己的夫人精通按摩推拿，能治制台的病，亲自把夫人送进了制台府。\n（闪回：制台卧房，候补道夫人低头为床上的制台按摩脚部，神色屈辱。门外，几个姨太太偷窥）\n继之：这事被制台的几位姨太太撞破，哪能容她？当场冲进去，将那夫人揪出来，一顿撕打辱骂。\n（闪回：花园里，一群女人围着候补道夫人推搡叫骂，场面混乱）\n继之：这件丑事立刻传遍了南京城，成了笑柄。那候补道，脸算是丢尽了。\n\n转场：（话题自然引向此类丑闻的后续）\n\n## 场次04 真相刺心\n\n人物：候補道、候補縣太爺、藩臺、總督大帥、買辦、吳景曾、伯父\n场景：南京、客棧\n结构锚点：\n剧情功能：信息揭示、冲突推进、人物关系深化、世界观构建\n呈现方式：对白主导\n时间层：主线\n必保留点：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相；主人公听闻丑闻后的震惊与失言；主人公对继之劝诫的内心感激与反思；继之对主人公处世之道的告诫\n连续性要求：紧接前文对候补道夫人事件的讨论；保持吴继之作为讲述者和引导者的角色连贯性；主人公情绪从对官场的好奇，到听闻丑闻的震惊，再到得知被伯父回避的失落，需有清晰递进\n改编锚点：\n本段概述：继之讲述候补道夫人受辱后反得升迁、候补县太爷沦为盗贼的官场丑闻，并揭露…\n推进目标：通过密集的对话，完成两大核心信息揭露（官场腐败范例、家庭关系真相），塑造吴继之的世故与正直，并推动主人公从天真旁观者向初识世情险恶的转变。\n必须保留：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相\n冲突：主人公对官场/亲情的美好想象与残酷现实（官场颠倒黑白、亲人刻意疏远）之间的冲突；吴继之试图保护/教导主人公与主人公内心震撼之间的张力。\n转折：继之点破伯父是“有意回避”，主人公从对官场丑闻的震惊，转入对自身处境（被至亲抛弃）的直面与无言，标志着其天真阶段的彻底结束。\n\n主角：（难以置信）如此无耻，后来定被革职查办了吧？\n继之：（冷笑）革职？你太天真了。正相反，没过多久，那位献妻的候补道，反而被派了个优差！你说这官场，还有什么黑白可言？\n主角：（震惊失语）这……\n继之：（压低声音）还有更惨的。一个候补县太爷，候补了十几年，穷得吃不上饭，最后竟真去做了劫道的强盗，被拿了正法。\n主角：（脸色发白）官场……竟至于此？\n继之：（看着主角，意味深长）贤弟，你年纪轻，不知世路艰难。就说你伯父，他哪里是凑巧去了通州？分明是知道你来了南京，有意回避。\n主角：（如遭雷击，手中茶杯一晃）有……有意回避？为何？\n继之：（叹口气）人心难测，骨肉至亲亦如此。我告诉你这些，是让你心里有个防备，往后处世，切莫再这般赤诚了。\n主角：（低头，久久无言，心中暖流与寒意交织）。\n\n转场：（时间跳转，承接继之对主角的关照）\n\n## 场次05 暗流与恭送\n\n时间层：flashback\n人物：伯父、藩臺、主人、客人、母親、吳景曾、太太\n场景：上海\n结构锚点：\n剧情功能：establish_relationship、advance_plot、introduce_mystery\n呈现方式：对白主导\n时间层：回忆\n必保留点：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果；主角偶遇神秘客人及主人恭敬送客的对比\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“二十年前”；主角对伯父的疑虑持续；继之的官职变化（接办大关）\n改编锚点：\n本段概述：继之告知主角将接办大关差使，并为其安排书启职位。主角对伯父去通州之事起…\n推进目标：展现主角在继之帮助下获得立足之地，同时强化伯父失踪的谜团，并通过偶遇场景暗示官场中隐藏的复杂人际关系。\n必须保留：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果\n冲突：主角对骨肉至亲（伯父）可能有意回避自己的内心怀疑与不安。\n转折：主角目睹神秘客人被恭敬送出的场景，意识到官场表面与内里可能存在的巨大反差。\n\n（闪回：二十年前，上海客栈）\n继之：（对年轻的主角）我即将接办苏州的厘金大关。你既暂无去处，不如先跟我去，做个书启先生，也算有个着落。这二十两银子，你且拿着安顿。\n主角：（感激）景曾兄大恩……\n继之：（摆手）不说这些。只是你伯父那里，我劝你再打听清楚。\n（主角来到伯父上海公馆前，大门紧闭。他上前向门房打听）\n主角：请问，贵府老爷可在？\n门房：（打量他，冷淡）老爷出远门了，不知何时回来。\n主角：（失望，转身欲走，忽见侧门打开）\n（一个穿着半旧长衫、貌不惊人的中年男子从侧门走出，公馆主人——一位穿戴体面的官员，竟亲自送到门口，态度异常恭敬，甚至带着几分谄媚）\n官员：（拱手，压低声音）您老慢走，事情我一定办妥……\n（神秘客人略一点头，匆匆离去。官员直到对方背影消失，才直起身，恢复威严神色，转身进门。）\n主角：（躲在街角，将一切看在眼里，心中疑窦丛生。那客人是谁？为何伯父家的主人对他如此恭敬？官场的表面之下，究竟藏着多少不为人知的暗流？）。",
        "file_path": "logs/stage_artifacts/dramart_package_uploads/20260401T010309550610Z/episodes/03e_dramart_upload_EP0002.md"
      }
    ],
    "upload_parts": [
      {
        "part_id": "UP001",
        "filename": "03e_dramart_upload_part_01_EP0001_EP0002.md",
        "start_episode_id": "EP0001",
        "end_episode_id": "EP0002",
        "episode_ids": [
          "EP0001",
          "EP0002"
        ],
        "char_count": 10860,
        "within_limit": true,
        "markdown": "# 第01集 手稿奇缘\n\n主要人物：死裡逃生、九死一生、漢子、尤雲岫、張鼎臣、伯父、母親、廣東人、買辦、李氏、藩臺、土老兒\n主要场景：上海、四馬路、邑廟豫園、南京、杭州、客棧\n一句话梗概：死裡逃生在上海豫园获赠奇书手稿，由此引出九死一生少年丧父、投亲无门的往事，最终在穷途末路时偶遇故人吴继之，命运迎来转机。\n剧情摘要：死裡逃生在上海豫园偶遇神秘汉子，获赠《二十年目睹之怪现状》手稿，决心将其公之于世。手稿内容随即展开：九死一生回忆十五岁那年父亲病逝杭州，世交尤雲岫与张鼎臣各怀心思介入后事。随后，伯父赞赏九死一生起草的讣帖，并商议盘店事宜，但在扶柩回乡的轮船上，九死一生初次目睹官场丑态。章节转换，九死一生在南京客栈苦等伯父不至、盘缠将尽之际，于街头惊喜重逢同窗吴继之，受邀入住其公馆，暂时摆脱生存危机。\n开场钩子：上海豫园，喧嚣市井中，一个神秘汉子将一叠厚厚的手稿塞给死裡逃生。他低头看去，封面上赫然写着《二十年目睹之怪现状》，作者署名：九死一生。一股莫名的宿命感瞬间击中了他。\n结尾钩子：南京街头，身无分文的九死一生几乎绝望，却与故人吴继之不期而遇。吴继之热情地拍着他的肩膀：“走，到我公馆住下！” 生存危机暂解，一个窥探官场百态的新窗口，正在他面前打开。\n\n## 场次01 豫园奇遇\n\n时间层：flashback\n人物：死裡逃生、九死一生、漢子\n场景：上海、四馬路、邑廟豫園\n结构锚点：\n剧情功能：establish_setting、introduce_protagonist、present_macguffin、set_narrative_frame\n呈现方式：信息交代\n时间层：回忆\n必保留点：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園；Handover of the manuscript '二十年目睹之怪现状'；Protagonist's decision to send the manuscript to 橫濱《新小說》\n连续性要求：Maintain 'flashback' time_mode established in chronology；Anchor temporal setting: '六十年前'；Establish '死裡逃生' as frame narrator/protagonist；Introduce '九死一生' as the manuscript's author (implied connection)\n改编锚点：\n本段概述：死裡逃生在上海豫园遇到神秘汉子，获赠《二十年目睹之怪现状》手稿，决定将…\n推进目标：To visually and narratively establish the corrupt world of late-Qing Shanghai, introduce the cynical protagonist who has escaped it, and present the mysterious manuscript that contains the stories which will form the series' core. This scene sets up the narrative frame device.\n必须保留：Shanghai's transformation from marshland to decadent metropolis；Protagonist's backstory and alias '死裡逃生'；Mysterious encounter with the '漢子' at 邑廟豫園\n冲突：Man vs. Society (Protagonist's disillusionment with Shanghai's hypocrisy and corruption) / Man vs. Self (His search for meaning and purpose after his 'escape').\n转折：The moment the protagonist receives the manuscript and reads the title '二十年目睹之怪現狀' and the author's name '九死一生', realizing a profound connection and his new mission to disseminate these stories.\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连续性要求：紧接S0001之后；保持叙事顺序差\n改编锚点：\n本段概述：小说第二回标题：守常经不使疏逾戚，睹怪状几疑贼是官。\n推进目标：将章回标题转化为一个简短、有风格、能暗示本章主题的视觉化开场，自然过渡到后续情节。\n必须保留：第二回标题文字；标题的悬疑与讽刺基调\n冲突：标题本身蕴含的冲突：“守常经”（秩序）与“睹怪状”（混乱）、“戚”（亲近）与“疏”（疏远）、“贼”与“官”的身份错位。\n转折：标题画面出现，标志着故事进入以“身份错乱与秩序挑战”为核心的新篇章。\n\n（古朴的卷轴样式标题，毛笔字遒劲有力，缓缓浮现于屏幕）\n“守常经不使疏逾戚，睹怪状几疑贼是官”。\n\n标题透着强烈的反讽与悬疑，暗示着即将上演的，是一出亲情伦理与官贼身份错位的荒诞剧。\n\n转场：标题淡出，故事正式开始。\n\n## 场次03 父丧\n\n时间层：flashback\n人物：尤雲岫、張鼎臣、九死一生、伯父、死裡逃生、母親\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：背景揭示、人物关系建立、核心冲突引入\n呈现方式：对白主导\n时间层：回忆\n必保留点：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑；張鼎臣与九死一生关于是否通知伯父的对话；伯父抵达并吸鸦片烟\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“十五岁那年”；九死一生作为回忆叙述者视角；尤雲岫、張鼎臣、伯父角色首次亮相的连续性\n改编锚点：\n本段概述：九死一生回憶父親病逝杭州，尤雲岫伴他前往處理後事，張鼎臣與伯父介入財產…\n推进目标：通过对话和关键动作，生动呈现父亲去世后，年幼的九死一生被卷入复杂的财产与人际关系网，身边人各怀心思的初始状态，为后续的背叛与冲突埋下伏笔。\n必须保留：父亲病逝杭州的噩耗；尤雲岫伴行及受托寄钱；張鼎臣对尤雲岫的怀疑\n冲突：年幼丧父的九死一生，在處理後事時，面臨張鼎臣（怀疑尤雲岫）、尤雲岫（试图掌控）、伯父（即将介入）三方不同立场与意图的潜在角力。\n转折：張鼎臣私下向九死一生表达对尤雲岫的怀疑，并透露父亲遗嘱未提伯父，暗示家庭内部存在嫌隙与财产争夺的风险。\n\n（回忆）十五岁的九死一生在南京家中，接到父亲在杭州病逝的噩耗，如遭雷击。\n\n母亲六神无主，父亲生前好友尤雲岫主动提出陪他前往杭州料理后事。临行前，母亲将一包银子交给尤雲岫。\n\n母親：雲岫，这些钱你拿着，到杭州一切用度，还有……打点衙门，都拜托你了。\n\n尤雲岫：（接过，神色郑重）嫂子放心，我与兄长情同手足，一定办妥。\n\n到了杭州，另一位世交张鼎臣赶来帮忙。他看着尤雲岫忙前忙后，私下将九死一生拉到一边。\n\n張鼎臣：（眉头紧锁）贤侄，有句话不知当讲不当讲。你父亲这病，来得突然。尤雲岫他……是不是太过殷勤了些？你父亲留下的遗嘱我看过，里面可没提你那位在南京的伯父。\n\n九死一生心头一沉。这时，伯父竟也从南京赶到了，一见面并未多问丧事，倒是先让人摆开了烟具。\n\n伯父：（躺在榻上，吐着烟圈）姪儿来了？一路辛苦。先歇着，事缓则圆。\n\n九死一生看着烟雾后伯父模糊的脸，又想起张鼎臣的警告，第一次感到亲人之间那看不见的裂痕。\n\n转场：后事处理完毕，返回南京。\n\n## 场次04 讣帖与远行\n\n人物：張鼎臣、母親、伯父、廣東人、買辦、九死一生、尤雲岫\n场景：南京、上海、杭州\n结构锚点：\n剧情功能：角色塑造、情节推进、悬念设置\n呈现方式：对白主导\n时间层：主线\n必保留点：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线；轮船偷窃事件（广东人指证）\n连续性要求：主角从家乡到上海再到南京的旅程；伯父返回南京的交代；主角母亲对存款的担忧\n改编锚点：\n本段概述：伯父赞赏我起草的讣帖，与张鼎臣商议盘店事宜，随后扶灵柩回上海处理财务，…\n推进目标：塑造主角初显文才与得到长辈认可的形象，同时通过处理父亲后事和旅途见闻，展现晚清社会风貌，并为后续寻找伯父和揭露社会丑态埋下伏笔。\n必须保留：伯父评讣帖的对话；盘店分银的决定；扶柩回乡的时间线\n冲突：主角对伯父的信任与后续伯父回避、存款无着的潜在矛盾；轮船上体面官绅与偷窃指控的表面冲突。\n转折：轮船偷窃事件，主角亲眼目睹官场体面下的丑恶，是其社会认知的转折点。\n\n回到南京，九死一生起草了父亲的讣帖。\n\n伯父拿着讣帖，难得露出赞许之色。\n\n伯父：嗯，文字得体，情真意切。看不出你小小年纪，有此文才。\n\n接着，伯父与张鼎臣商议，决定将九死一生父亲在杭州的店铺盘出，银钱分作三股，一股留作安家，两股让九死一生带去上海存在银号，以备将来。\n\n母亲却私下担忧。\n\n母親：你伯父让你一个人带这么多钱去上海……儿啊，世事险恶，千万小心。\n\n不久，九死一生扶父亲灵柩乘船回上海。船上，他目睹了一出闹剧：一个广东口音的乘客抓住一个衣着体面的官绅，大喊捉贼，指控对方偷了他的怀表。那官绅面红耳赤，百般抵赖，周围看客指指点点，却无人敢真正上前。\n\n广东人：（激动地）官老爷就了不起？官老爷就可以做贼？！\n\n九死一生缩在角落，看着那官绅体面下的狼狈，心中对“官”的想象，第一次出现了裂痕。原来，体面与丑恶，可以离得这么近。\n\n转场：处理完上海事务，九死一生前往南京寻找伯父。\n\n## 场次05 第三回：走穷途忽遇良朋，谈仁路初闻怪状\n\n结构锚点：\n剧情功能：章节过渡、主题预示\n呈现方式：信息交代\n时间层：主线\n必保留点：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n连续性要求：保持与S0004的叙事顺序差；作为新章节的明确起点\n改编锚点：\n本段概述：章节标题：走穷途忽遇良朋，谈仁路初闻怪状。\n推进目标：通过视觉与听觉元素，清晰、风格化地展示章节标题，为后续剧情设定悬念和基调。\n必须保留：第三回标题；走穷途忽遇良朋；谈仁路初闻怪状\n冲突：标题本身不包含直接冲突，但预示了主角的“穷途”困境与即将听闻的“怪状”之间的潜在张力。\n转折：标题的出现标志着故事进入新的章节，主角命运将迎来“遇良朋”和“闻怪状”的转折。\n\n（章节标题再次以视觉化形式呈现）\n“走穷途忽遇良朋，谈仁路初闻怪状”。\n\n这标题仿佛一道分水岭，预告着主角山穷水尽后的柳暗花明，以及更多光怪陆离的见闻即将涌入他的生命。\n\n转场：画面转入南京客栈。\n\n## 场次06 绝处逢生\n\n时间层：flashback\n人物：伯父、李氏、藩臺、土老兒、吳景曾、太太、候補道\n场景：南京、上海、客棧\n结构锚点：\n剧情功能：建立关键关系、引入核心冲突、推进主角困境\n呈现方式：对白主导\n时间层：回忆\n必保留点：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程；主角搬入继之公馆的决定；继之提及“野鸡道台”新闻作为悬念钩子\n连续性要求：保持flashback结构，与S0005的“想起”锚点衔接；主角服装、精神状态与前一困境场景（S0005）的连贯；南京作为故事核心地点的视觉一致性\n改编锚点：\n本段概述：我在客栈等待伯父未果，盘缠将尽时偶遇同窗吴继之，受邀搬入其公馆居住，并…\n推进目标：通过主角与吴继之的重逢，完成主角从孤立无援到获得暂时庇护的转折，建立核心人物关系，并巧妙引入后续官场怪谈的引子。\n必须保留：主角客栈苦等伯父未果的焦虑；盘缠将尽的紧迫感；街头偶遇吴继之的惊喜与识别过程\n冲突：主角面临经济耗尽、投亲无门的现实生存危机，与内心对家族亲情的困惑和失望。\n转折：街头偶遇吴继之，并被邀请入住其公馆，主角的生存危机得到暂时缓解，叙事重心从个人困境转向通过继之观察社会。\n\n（回忆）南京客栈里，九死一生已苦等伯父多日。盘缠所剩无几，伯父却始终避而不见，托人传话只说公务繁忙。\n\n他摸着干瘪的钱袋，站在客栈门口，望着陌生的街巷，感到前所未有的茫然与恐慌。投亲无门，经济耗尽，下一步该如何是好？\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## 场次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## 场次02 丑闻败露\n\n时间层：flashback\n人物：藩臺、制臺、土老兒、桂花、撫臺、吳景曾、候補道\n场景：南京、京城、會香裡、蘇州\n结构锚点：\n剧情功能：背景揭示、人物动机说明、讽刺主题强化、情节转折铺垫\n呈现方式：旁述桥接\n时间层：回忆\n必保留点：桂花为土老儿捐官谋差的核心情节；藩台识破真相并调查的过程；桂花最终成为诰封夫人的讽刺结局；继之作为叙述者的框架\n连续性要求：保持flashback结构，明确是继之的回忆性讲述；与S0007场景（继之开始讲述）紧密衔接；确保时间线从“次日”开始，顺序推进至结局\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连续性要求：继之与“我”的对话关系；场景色调与之前对话场景统一；闪回部分的视觉风格需与主叙事区分；与前后场景的叙事节奏衔接\n改编锚点：\n本段概述：繼之講述前兩年制臺生病，一位候補道獻上妻子為其按摩，結果被姨太太們發現… / 本章回標題，預告接下來的內容。\n推进目标：通过生动的对话和闪回画面，将一则官场丑闻讲述得既荒诞可笑又极具讽刺意味，强化继之作为观察者和评论者的角色形象。\n必须保留：继之作为讲述者；候补道献妻治病的核心情节；按摩丑事被姨太太们发现\n冲突：候补道为巴结上司，不惜献妻，与道德伦理、家庭尊严的冲突；丑事败露后，与制台姨太太们的直接肢体冲突。\n转折：无\n\n主角：（摇头叹息）真是荒唐。\n继之：（神色转为凝重）荒唐？还有更不堪的。就是前两年，南京那位制台大人病了，有个候补道为了巴结，竟想出一条“妙计”。\n主角：什么计策？\n继之：他声称自己的夫人精通按摩推拿，能治制台的病，亲自把夫人送进了制台府。\n（闪回：制台卧房，候补道夫人低头为床上的制台按摩脚部，神色屈辱。门外，几个姨太太偷窥）\n继之：这事被制台的几位姨太太撞破，哪能容她？当场冲进去，将那夫人揪出来，一顿撕打辱骂。\n（闪回：花园里，一群女人围着候补道夫人推搡叫骂，场面混乱）\n继之：这件丑事立刻传遍了南京城，成了笑柄。那候补道，脸算是丢尽了。\n\n转场：（话题自然引向此类丑闻的后续）\n\n## 场次04 真相刺心\n\n人物：候補道、候補縣太爺、藩臺、總督大帥、買辦、吳景曾、伯父\n场景：南京、客棧\n结构锚点：\n剧情功能：信息揭示、冲突推进、人物关系深化、世界观构建\n呈现方式：对白主导\n时间层：主线\n必保留点：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相；主人公听闻丑闻后的震惊与失言；主人公对继之劝诫的内心感激与反思；继之对主人公处世之道的告诫\n连续性要求：紧接前文对候补道夫人事件的讨论；保持吴继之作为讲述者和引导者的角色连贯性；主人公情绪从对官场的好奇，到听闻丑闻的震惊，再到得知被伯父回避的失落，需有清晰递进\n改编锚点：\n本段概述：继之讲述候补道夫人受辱后反得升迁、候补县太爷沦为盗贼的官场丑闻，并揭露…\n推进目标：通过密集的对话，完成两大核心信息揭露（官场腐败范例、家庭关系真相），塑造吴继之的世故与正直，并推动主人公从天真旁观者向初识世情险恶的转变。\n必须保留：继之讲述候补道夫人受辱反得升迁的丑闻；继之讲述候补县太爷沦为盗贼的丑闻；继之揭露伯父故意回避主人公的真相\n冲突：主人公对官场/亲情的美好想象与残酷现实（官场颠倒黑白、亲人刻意疏远）之间的冲突；吴继之试图保护/教导主人公与主人公内心震撼之间的张力。\n转折：继之点破伯父是“有意回避”，主人公从对官场丑闻的震惊，转入对自身处境（被至亲抛弃）的直面与无言，标志着其天真阶段的彻底结束。\n\n主角：（难以置信）如此无耻，后来定被革职查办了吧？\n继之：（冷笑）革职？你太天真了。正相反，没过多久，那位献妻的候补道，反而被派了个优差！你说这官场，还有什么黑白可言？\n主角：（震惊失语）这……\n继之：（压低声音）还有更惨的。一个候补县太爷，候补了十几年，穷得吃不上饭，最后竟真去做了劫道的强盗，被拿了正法。\n主角：（脸色发白）官场……竟至于此？\n继之：（看着主角，意味深长）贤弟，你年纪轻，不知世路艰难。就说你伯父，他哪里是凑巧去了通州？分明是知道你来了南京，有意回避。\n主角：（如遭雷击，手中茶杯一晃）有……有意回避？为何？\n继之：（叹口气）人心难测，骨肉至亲亦如此。我告诉你这些，是让你心里有个防备，往后处世，切莫再这般赤诚了。\n主角：（低头，久久无言，心中暖流与寒意交织）。\n\n转场：（时间跳转，承接继之对主角的关照）\n\n## 场次05 暗流与恭送\n\n时间层：flashback\n人物：伯父、藩臺、主人、客人、母親、吳景曾、太太\n场景：上海\n结构锚点：\n剧情功能：establish_relationship、advance_plot、introduce_mystery\n呈现方式：对白主导\n时间层：回忆\n必保留点：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果；主角偶遇神秘客人及主人恭敬送客的对比\n连续性要求：保持倒叙（flashback）结构；明确时间锚点“二十年前”；主角对伯父的疑虑持续；继之的官职变化（接办大关）\n改编锚点：\n本段概述：继之告知主角将接办大关差使，并为其安排书启职位。主角对伯父去通州之事起…\n推进目标：展现主角在继之帮助下获得立足之地，同时强化伯父失踪的谜团，并通过偶遇场景暗示官场中隐藏的复杂人际关系。\n必须保留：继之告知主角将接办大关差使；继之为主角安排书启职位并借银；主角前往伯父公馆打听行踪未果\n冲突：主角对骨肉至亲（伯父）可能有意回避自己的内心怀疑与不安。\n转折：主角目睹神秘客人被恭敬送出的场景，意识到官场表面与内里可能存在的巨大反差。\n\n（闪回：二十年前，上海客栈）\n继之：（对年轻的主角）我即将接办苏州的厘金大关。你既暂无去处，不如先跟我去，做个书启先生，也算有个着落。这二十两银子，你且拿着安顿。\n主角：（感激）景曾兄大恩……\n继之：（摆手）不说这些。只是你伯父那里，我劝你再打听清楚。\n（主角来到伯父上海公馆前，大门紧闭。他上前向门房打听）\n主角：请问，贵府老爷可在？\n门房：（打量他，冷淡）老爷出远门了，不知何时回来。\n主角：（失望，转身欲走，忽见侧门打开）\n（一个穿着半旧长衫、貌不惊人的中年男子从侧门走出，公馆主人——一位穿戴体面的官员，竟亲自送到门口，态度异常恭敬，甚至带着几分谄媚）\n官员：（拱手，压低声音）您老慢走，事情我一定办妥……\n（神秘客人略一点头，匆匆离去。官员直到对方背影消失，才直起身，恢复威严神色，转身进门。）\n主角：（躲在街角，将一切看在眼里，心中疑窦丛生。那客人是谁？为何伯父家的主人对他如此恭敬？官场的表面之下，究竟藏着多少不为人知的暗流？）。",
        "file_path": "logs/stage_artifacts/dramart_package_uploads/20260401T010309550610Z/parts/03e_dramart_upload_part_01_EP0001_EP0002.md"
      }
    ],
    "warnings": [
      "存在回忆、梦境或并行线等时间层，上传时建议在正文标题中显式标注。"
    ],
    "notes": [
      "上传正文建议使用 upload_bundle 中的上传版正文，不混入 checklist 或资产说明。",
      "若 recommended_upload_mode=split_parts，请按 upload_parts 顺序逐段上传。",
      "其余角色、场景、道具与音色信息请从 dramart_package.json 中读取。"
    ],
    "upload_script_file_path": "logs/stage_artifacts/dramart_package_uploads/20260401T010309550610Z/03e_dramart_upload_script.md",
    "export_root": "logs/stage_artifacts/dramart_package_uploads/20260401T010309550610Z"
  }
}