{
  "project": "tartarus",
  "shots": [
    {
      "data": {
        "auto_approved": 0,
        "batch_id": "batch_EP001_092a9771",
        "completed_at": 0.0,
        "episode_id": "EP001",
        "error_message": null,
        "project": "tartarus",
        "shots_completed": 9,
        "shots_failed": 0,
        "shots_in_review": 23,
        "shots_pending": 6,
        "started_at": 0.0,
        "status": "budget_exhausted",
        "total_cost": 58.2906
      },
      "path": "tartarus/state/visual/batches/batch_EP001_092a9771.json"
    },
    {
      "data": {
        "auto_approved": 0,
        "batch_id": "batch_EP001_1585f106",
        "completed_at": 0.0,
        "episode_id": "EP001",
        "error_message": null,
        "project": "tartarus",
        "shots_completed": 9,
        "shots_failed": 0,
        "shots_in_review": 23,
        "shots_pending": 6,
        "start_cost": 58.2906,
        "started_at": 1776706194.3203158,
        "status": "budget_exhausted",
        "total_cost": 58.2906
      },
      "path": "tartarus/state/visual/batches/batch_EP001_1585f106.json"
    },
    {
      "data": {
        "auto_approved": 0,
        "batch_id": "batch_EP001_4ee10168",
        "completed_at": 0.0,
        "episode_id": "EP001",
        "error_message": null,
        "project": "tartarus",
        "shots_completed": 9,
        "shots_failed": 0,
        "shots_in_review": 23,
        "shots_pending": 6,
        "started_at": 1776227341.2883048,
        "status": "budget_exhausted",
        "total_cost": 58.2906
      },
      "path": "tartarus/state/visual/batches/batch_EP001_4ee10168.json"
    },
    {
      "data": {
        "auto_approved": 0,
        "batch_id": "batch_EP001_6bea922d",
        "completed_at": 0.0,
        "episode_id": "EP001",
        "error_message": null,
        "project": "tartarus",
        "shots_completed": 9,
        "shots_failed": 0,
        "shots_in_review": 23,
        "shots_pending": 6,
        "start_cost": 58.2906,
        "started_at": 1776728618.884674,
        "status": "budget_exhausted",
        "total_cost": 58.2906
      },
      "path": "tartarus/state/visual/batches/batch_EP001_6bea922d.json"
    },
    {
      "data": {
        "auto_approved": 0,
        "batch_id": "batch_EP001_b3a2eb9b",
        "completed_at": 0.0,
        "episode_id": "EP001",
        "error_message": null,
        "project": "tartarus",
        "shots_completed": 9,
        "shots_failed": 0,
        "shots_in_review": 23,
        "shots_pending": 6,
        "start_cost": 58.2906,
        "started_at": 1776550038.022432,
        "status": "budget_exhausted",
        "total_cost": 58.2906
      },
      "path": "tartarus/state/visual/batches/batch_EP001_b3a2eb9b.json"
    },
    {
      "data": {
        "blocking_pass_version": "1.0",
        "episode_id": "EP001",
        "generated_at": "2026-03-18T14:19:49.604850+00:00",
        "model": "gemini-3.1-pro-preview",
        "scenes": [
          {
            "characters": [],
            "sbd_file": "scene_006_sbd.json",
            "sbd_hash": "8e95ac210dec3014",
            "scene_index": 6,
            "shot_count": 1
          },
          {
            "characters": [],
            "sbd_file": "scene_007_sbd.json",
            "sbd_hash": "795c64def37297ea",
            "scene_index": 7,
            "shot_count": 1
          },
          {
            "characters": [],
            "sbd_file": "scene_008_sbd.json",
            "sbd_hash": "2d94b76c2dabfff5",
            "scene_index": 8,
            "shot_count": 1
          },
          {
            "characters": [],
            "sbd_file": "scene_015_sbd.json",
            "sbd_hash": "106e02eb9a857011",
            "scene_index": 15,
            "shot_count": 1
          },
          {
            "characters": [],
            "sbd_file": "scene_026_sbd.json",
            "sbd_hash": "5c6328fc6411554b",
            "scene_index": 26,
            "shot_count": 1
          },
          {
            "characters": [],
            "sbd_file": "scene_035_sbd.json",
            "sbd_hash": "880e372239bde6d3",
            "scene_index": 35,
            "shot_count": 1
          }
        ],
        "violations": [
          "[WARN] EP001_SH10/JADE: dominant_hand.prop_id='rebreather' not in bible props",
          "[WARN] EP001_SH13: cryo_pod held by multiple characters: JADE and JADE",
          "[INFO] EP001_SH04: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH05: MCU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH10: MCU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH12: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH13: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH17: MCU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH18: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH21: CU shot has weight_bearing='arms' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH27: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH27: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH28: MCU shot has weight_bearing='evenly distributed' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH30: MCU shot has weight_bearing='on toes' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH30: MCU shot has weight_bearing='planted evenly on both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH31: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH31: CU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH32: MCU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size",
          "[INFO] EP001_SH36: MCU shot has weight_bearing='both feet' \u2014 will be ignored at this shot size"
        ]
      },
      "path": "tartarus/state/visual/blocking/ep_001/blocking_manifest.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands close to a dead wall conduit, her body squared to the work surface. She grips the heavy handle of the salvage hook with her right hand, driving the metal tip into the conduit to pry loose copper wiring. Her left hand braces near the hook to guide the extraction, catching flakes of rust on her fingers. Her head is tilted slightly down, gaze locked intently on the point of contact.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH01",
            "coverage_note": "Ensure the framing captures both her focused expression and the hands manipulating the prominent prop near chest level.",
            "description": "Jade uses the salvage hook to extract copper from the conduit, with rust falling onto her fingers.",
            "moment": "Prying copper"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "dead conduit"
            ]
          }
        ],
        "location_id": "int_lower_decks_corridor",
        "prop_ledger": [
          {
            "initial_holder": "JADE",
            "prop_id": "salvage_hook",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH01",
                "state": "prying copper from conduit"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 1,
        "starting_positions": "Jade is standing directly in front of the dead conduit, holding the salvage hook."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_001_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "The scene focuses entirely on a tight insert of Jade's left wrist. She holds her arm steady to view the welded metal casing of her debt counter, which pulses with amber numbers ticking upward.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH02",
            "coverage_note": "Crucial insert to establish the stakes and the constant ticking of her debt.",
            "description": "Tight focus on the ticking numbers of the debt counter on Jade's wrist.",
            "moment": "Debt counter insert"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "debt_counter"
            ]
          }
        ],
        "location_id": "int_lower_decks_corridor",
        "prop_ledger": [
          {
            "initial_holder": "JADE",
            "prop_id": "debt_counter",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH02",
                "state": "pulsing amber digital display reading 50,247"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 2,
        "starting_positions": "Jade is standing, holding her left wrist up to check her debt counter."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_002_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands in the dimly lit corridor, her body oriented forward as if ready to proceed, but she pauses. She turns her head sharply back over her right shoulder to inspect the path she just traveled, her eyes scanning the two exits behind her, noting the collapsed one. Her right hand rests casually on her hip while her left hand lightly touches the cold corridor wall for balance.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH03",
            "coverage_note": "Single shot scene. The camera should catch the tension in her neck and shoulders as she looks back, emphasizing her isolation.",
            "description": "Jade looks back down the corridor to assess her escape routes, establishing the spatial stakes of the collapsed exit.",
            "moment": "Checking the exits"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "corridor behind her"
            ]
          }
        ],
        "location_id": "int_lower_decks_corridor",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 3,
        "starting_positions": "Jade is standing in the corridor, torso angled forward (screen-left) but looking back over her shoulder (screen-right)."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_003_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands in the corridor, her body angled away as she turns her head back over her shoulder to assess her escape routes. She scans the two exits behind her, her eyes darting between them before her gaze settles into a middle-distance stare as she calculates her next move.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH04",
            "coverage_note": "Hold on the CU to capture the micro-expressions of her decision-making process.",
            "description": "Jade's eyes stop scanning and fixate on the middle distance as she calculates the odds.",
            "moment": "Gambler's pause"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "corridor exits",
              "distance"
            ]
          }
        ],
        "location_id": "int_lower_decks_corridor",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 4,
        "starting_positions": "Jade is standing in the center of the corridor, torso angled screen-left, looking back over her right shoulder."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_004_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands squarely in front of a corroded bulkhead panel, inspecting the exposed wiring. She assesses the situation with a flat expression, her gaze fixed on the mechanism. As she finishes speaking, the panel slides downward, revealing a dark tunnel entrance and a catwalk beyond.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH05A",
            "coverage_note": "Crucial POV insert to establish the new spatial reality of the maintenance shaft.",
            "description": "The transition from Jade's assessment to the reveal of the new environment.",
            "moment": "Panel sliding down"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "corroded panel",
              "tunnel entrance"
            ]
          }
        ],
        "location_id": "int_lower_decks_corridor",
        "prop_ledger": [],
        "scene_duration_shots": 2,
        "scene_index": 5,
        "starting_positions": "Jade stands center, facing the bulkhead panel."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_005_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "The camera looks down the length of a dark corridor that terminates abruptly at the edge of a massive, bottomless vertical shaft. There are no characters present. The focus is on the sheer drop, the architectural scale of the shaft, and the empty space where the floor ends.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH06",
            "coverage_note": "VFX extension required for the bottomless depth and atmospheric perspective.",
            "description": "Wide shot revealing the sheer drop at the end of the corridor.",
            "moment": "Establishing the shaft"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 6,
        "starting_positions": "No characters present."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_006_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "The scene is entirely environmental. A heavy brushed steel cryo-pod is suspended in mid-air, hanging precariously by thick anchor cables over a vast, dark abyss.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH07",
            "coverage_note": "Ensure the depth of the abyss and the tension of the cables are clearly visible to establish the environmental stakes.",
            "description": "Wide shot revealing the precarious position of the cryo-pod hanging over the abyss.",
            "moment": "Establishing the cryo-pod"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH07",
                "state": "suspended by thick anchor cables over abyss"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 7,
        "starting_positions": "No characters present in this scene."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_007_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "An extreme close-up insert of the cryo-pod's exterior surface, focusing on the military serial numbers stamped into the brushed steel and the thick frost clinging to the edge of the viewport. No characters are present in this shot.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH08",
            "coverage_note": "Macro focus on the stamped numbers and frost texture.",
            "description": "Insert shot establishing the military origin and cold state of the cryo-pod.",
            "moment": "Cryo-pod details reveal"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH08",
                "state": "stationary, displaying military serial numbers and frost on viewport"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 8,
        "starting_positions": "No characters present. The cryo-pod is stationary."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_008_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade freezes in place, her body going completely still. After a brief, tense pause, she slowly raises her eyes to stare directly at the pod.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH09",
            "coverage_note": "Crucial emotional beat; hold on her eyes.",
            "description": "A tight close-up capturing Jade's shift in expression as she locks eyes on the pod.",
            "moment": "Jade stares at the pod"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "downward",
              "the pod"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 9,
        "starting_positions": "Jade is standing, facing toward the camera."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_009_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands alone, preparing for a hazardous task. She squares her shoulders, her right hand coming up to rest near her collarbone, thumb hooking the strap of the rebreather hanging around her neck. She stares into the middle distance, delivering a wry, private joke to herself before proceeding.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH10",
            "coverage_note": "MCU captures the subtle, dark humor in her expression and her interaction with the rebreather.",
            "description": "Jade delivers her wry line to herself, establishing her coping mechanism for danger.",
            "moment": "Private joke delivery"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "middle distance"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": "JADE",
            "prop_id": "rebreather",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH10",
                "state": "hanging around neck"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 10,
        "starting_positions": "Jade is standing center frame, facing forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_010_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands facing away from the camera, looking up at the ceiling. She reaches high above her head with her right hand to clip her tether hook onto a sturdy ceiling strut. Her left hand grips the tether line near her chest for stability. As she secures the hook, she steps up, her torso rising as she shifts her weight onto a cable below, preparing to traverse.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH11",
            "coverage_note": "Ensure the ceiling strut and the upward reach are clearly visible to establish the verticality and danger of the environment.",
            "description": "Jade reaches up to secure her safety line before stepping onto the cable.",
            "moment": "Hooking the tether"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "ceiling strut"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": "JADE",
            "prop_id": "tether",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH11",
                "state": "held in right hand, then hooked to ceiling strut"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 11,
        "starting_positions": "Jade is standing in the center of the frame, facing away from the camera, positioned directly beneath a ceiling strut."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_011_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands at the edge of the abyss, her body tense as she feels the pull of the void against her boots. She tilts her head down, staring intently into the darkness below.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH12",
            "coverage_note": "Single CU shot capturing the emotional weight of the abyss.",
            "description": "Close up on Jade's face as she stares down into the abyss, capturing her reaction to the pull.",
            "moment": "Looking into the void"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "down into the abyss"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 12,
        "starting_positions": "Jade is standing at the edge of the abyss, facing forward but looking down."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_012_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands closely in front of the cryo pod, leaning in. She wears her rebreather over her mouth and nose, her breath fogging the mask. Both of her hands reach out and make contact with the pod's release panel. Her gaze is intently focused on the panel as she prepares to open it.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH13",
            "coverage_note": "Critical detail shot for tension and interaction with the pod.",
            "description": "Close up on Jade's face with the rebreather fogging, hands entering frame to touch the panel.",
            "moment": "Hands find the release panel"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "cryo_pod release panel"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH13",
                "state": "frost-covered, release panel being touched by Jade"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 13,
        "starting_positions": "Jade is positioned directly in front of the cryo pod, leaning slightly forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_013_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands directly in front of the frost-covered cryo pod. She grips the worn handle of her salvage hook tightly in her right hand. Leaning her weight forward, she braces her left hand against the brushed steel surface of the pod for leverage. She wedges the heavy metal hook into the tight seam of the pod's release panel and twists forcefully, her eyes locked on the insertion point.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH14",
            "coverage_note": "Crucial insert shot to establish the physical effort and the specific mechanics of opening the pod.",
            "description": "Close-up insert of the salvage hook breaching the cryo pod seam.",
            "moment": "Hook insertion"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "cryo_pod seam"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": "JADE",
            "prop_id": "salvage_hook",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH14",
                "state": "wedged into cryo pod seam and twisted"
              }
            ]
          },
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH14",
                "state": "seam being pried open by salvage hook"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 14,
        "starting_positions": "Jade is positioned center, standing right up against the cryo pod, facing it directly."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_014_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "A purely environmental beat. The heavy brushed steel cryo-pod hangs suspended over a dark void. Pressure releases with a hiss, and thick white fog spills from the pod's seams, cascading downward into the emptiness below.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH15",
            "coverage_note": "Medium shot focusing on the mechanical release and atmospheric fog.",
            "description": "The cryo-pod releases pressure, spilling fog into the void.",
            "moment": "Pod venting"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH15",
                "state": "venting thick fog, suspended over void"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 15,
        "starting_positions": "No characters present. The cryo-pod is suspended in the center of the space."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_015_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren is revealed inside the cryo_pod as the frost clears from the viewport. He is suspended motionless in a state of stasis. His massive torso is perfectly upright, arms resting neutrally at his sides. His head faces straight forward toward the glass, eyes closed.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH16",
            "coverage_note": "Medium shot framing Wren's torso and head through the pod's viewport to establish his scale and stasis condition.",
            "description": "The frost clears to reveal Wren's inactive form inside the cryo_pod.",
            "moment": "Reveal of the pod's contents"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "straight ahead (eyes closed in stasis)"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH16",
                "state": "frost clearing from viewport, framing Wren inside"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 16,
        "starting_positions": "Wren is positioned upright inside the cryo_pod, facing outward toward the viewport."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_016_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands motionless inside the confines of the pod. His massive combat chassis fills the frame, shoulders nearly scraping the interior walls. He remains perfectly still, staring straight ahead.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH17",
            "coverage_note": "Ensure the framing emphasizes the tight fit of his shoulders against the pod walls.",
            "description": "Medium Close Up on Wren's massive shoulders and head inside the pod, establishing his physical scale.",
            "moment": "Wren's chassis reveal"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "forward"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 17,
        "starting_positions": "Wren is standing center inside the pod, facing forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_017_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands motionless, his massive military-grade chassis fully displayed. His posture is rigid and imposing, with both hands clenched into fists at his sides, emphasizing the reinforced joints and scarred alloy of his construction. His gaze is fixed straight ahead, unblinking and stoic.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH18",
            "coverage_note": "Focus on the texture of the chassis and the rigid posture.",
            "description": "Close up on Wren's scarred alloy and reinforced joints, establishing his imposing military architecture.",
            "moment": "Wren's introduction"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "distance"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 18,
        "starting_positions": "Wren is standing center frame, facing forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_018_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren is in a resting or deactivated state. Suddenly, his systems come online and his eyes snap open, staring straight ahead.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH19",
            "coverage_note": "Crucial insert to establish Wren's activation.",
            "description": "Extreme close up on Wren's face as his eyes open, signaling his awakening.",
            "moment": "Eyes snapping open"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "closed",
              "straight ahead"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 19,
        "starting_positions": "Wren is resting, face visible to the camera."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_019_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "The scene consists of a single extreme close-up on Wren's eye. Wren remains completely still, his synthetic eye glowing electric blue, iris and pupil merged into a solid light. His gaze is fixed intensely forward.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH20",
            "coverage_note": "ECU detail shot, critical for conveying the non-human nature of the character.",
            "description": "Extreme close-up on Wren's electric blue eye, establishing the android's activation or intense focus.",
            "moment": "Wren's eye glowing"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "forward"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 20,
        "starting_positions": "Wren is stationary, facing forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_020_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade is suspended, gripping a vertical cable. Suddenly, her boots lose their purchase, causing her body to jolt downward. Her hands tighten their grip near her face as the cable sways under her shifting weight.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH21",
            "coverage_note": "Capture the sudden downward jolt and the strain in her face.",
            "description": "Jade jolts downward as her boots lose grip on the cable.",
            "moment": "Boots slip"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "up at cable",
              "downward as she slips"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 21,
        "starting_positions": "Jade is hanging onto a vertical cable, suspended above the ground."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_021_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands exhausted, her shoulders slumped under the weight of the situation. She stares straight ahead at an off-screen threat, delivering her line with dry, deadpan resignation.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH22",
            "coverage_note": "Single MCU capturing Jade's exhausted reaction to the off-screen threat.",
            "description": "Jade stares death in the face, delivering a dry joke.",
            "moment": "Jade's reaction"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "off-screen threat"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 22,
        "starting_positions": "Jade stands center frame, facing directly toward the off-screen threat."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_022_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands motionless before suddenly springing into action. His right arm snaps out with mechanical precision to catch a moving cable in mid-air. His torso and head pivot slightly to track the movement, eyes locked onto the cable as his hand makes contact.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH23",
            "coverage_note": "Fast action beat; requires sharp focus on the hand making contact with the cable to emphasize android reflexes.",
            "description": "Wren's arm snaps out to catch the moving cable with mechanical precision.",
            "moment": "Wren catches the cable"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "cable"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 23,
        "starting_positions": "Wren is standing center frame, facing screen-right."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_023_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren closes the distance, his massive frame looming over Jade. His right hand shoots forward and clamps tightly around Jade's throat. Jade's head is forced back by the impact and upward pressure. Her hands immediately fly up, both her left and right hands gripping Wren's thick wrist in a desperate attempt to pry his fingers loose. Wren stares down at her impassively, while Jade's eyes lock onto his face in panic.",
        "characters_present": [
          "JADE",
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH24",
            "coverage_note": "Crucial MCU to capture the violent physical contact and Jade's immediate defensive reaction with her hands.",
            "description": "The physical contact and chokehold, highlighting the size disparity between Wren's hand and Jade's neck.",
            "moment": "Wren grabs Jade's throat."
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "Jade's face"
            ]
          },
          {
            "character": "JADE",
            "sequence": [
              "Wren's face"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 24,
        "starting_positions": "Jade is standing center. Wren is standing immediately in front of her, within arm's reach."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_024_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade loses contact with the floor as she begins to float or be lifted upward. Her body rises vertically through the frame. Her arms drift slightly outward from her sides in response to the loss of gravity or sudden ascent, and she tilts her head down, her gaze fixed on the grating as her feet detach from it.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH25",
            "coverage_note": "A tight shot capturing the vertical shift in her body mechanics and her downward eyeline to sell the physical separation from the floor.",
            "description": "Jade's body rises as she loses contact with the floor.",
            "moment": "Lift off"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "down at grating"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 25,
        "starting_positions": "Jade is positioned center frame, initially standing on the grating before lifting upward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_025_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "An environment-only sequence establishing the sheer drop of the abyss. The camera looks down into a vast, bottomless chasm, emphasizing the terrifying scale, depth, and emptiness of the space.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH26",
            "coverage_note": "Ensure lighting falls off into pure black to sell the infinite depth.",
            "description": "Wide shot looking down into the bottomless drop, establishing the danger and scale of the environment.",
            "moment": "Establishing the abyss"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 26,
        "starting_positions": "No characters present. The camera is positioned at the edge of the drop, looking straight down into the void."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_026_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands towering over Jade, his massive frame positioned closely in front of her. His head is tilted slightly downward, his eyes actively tracking back and forth across her face in a scanning motion. Jade stands opposite him, her head tilted upward to maintain eye contact, holding her position steadily under his scrutiny.",
        "characters_present": [
          "JADE",
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH27",
            "coverage_note": "Crucial insert/CU moment to capture the micro-movements of Wren's eyes and the height disparity between the two characters.",
            "description": "Extreme close-up focus on Wren's eyes as they dart in a mechanical scanning pattern while looking down at Jade.",
            "moment": "Wren's scan"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "Jade's face"
            ]
          },
          {
            "character": "JADE",
            "sequence": [
              "Wren's eyes"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 27,
        "starting_positions": "Wren stands center, facing Jade. Jade stands directly opposite Wren, facing him."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_027_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren's systems reboot. He stands rigidly, his posture stiff and mechanical. His head is turned screen-left, eyes staring vacantly into the middle distance as he computes his location and temporal coordinates.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH28",
            "coverage_note": "Focus on the micro-expressions (or lack thereof) during the pause before 'era'.",
            "description": "Medium Close-Up on Wren as his systems come online, capturing the cold, robotic computation in his expression.",
            "moment": "Wren's reboot"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "vacant off-screen left"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 28,
        "starting_positions": "Wren is standing rigidly in frame, facing screen-left."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_028_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands holding Jade by the throat with his right hand. Jade stands opposite him, her hands instinctively grasping Wren's extended forearm to relieve the pressure. Wren tilts his head slightly to the side, processing her words or actions, his gaze fixed intensely on Jade's face. Jade stares back, tense and immobilized, waiting for his next move.",
        "characters_present": [
          "JADE",
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH29",
            "coverage_note": "A tight medium two-shot capturing the height difference and the grip on the throat.",
            "description": "The static tension of the chokehold is broken only by the subtle, mechanical tilt of Wren's head as he processes.",
            "moment": "Wren tilts his head"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "Jade's face"
            ]
          },
          {
            "character": "JADE",
            "sequence": [
              "Wren's face"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 29,
        "starting_positions": "Wren and Jade are standing close together. Wren has his right hand firmly clamped around Jade's throat. Jade has both hands gripping Wren's right arm."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_029_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands tall, his massive frame looming over Jade. His right hand is clamped firmly around Jade's throat, pressing her upward and backward. Jade struggles against the grip, her head tilted back to maintain airflow. Both of Jade's hands are brought up to her neck, her right hand prying at Wren's thick wrist and her left hand gripping his forearm to relieve the pressure. Despite the physical disadvantage, Jade maintains direct, defiant eye contact with Wren as she delivers her line.",
        "characters_present": [
          "JADE",
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH30",
            "coverage_note": "MCU captures the claustrophobia of the grip and the subtle defiance in Jade's eyes.",
            "description": "The tension of the physical chokehold juxtaposed with Jade's sarcastic dialogue, requiring tight focus on the hand around her throat and her strained facial expression.",
            "moment": "Jade's defiant quip while choked"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "WREN"
            ]
          },
          {
            "character": "WREN",
            "sequence": [
              "JADE"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 30,
        "starting_positions": "Wren is standing, leaning slightly forward with his right arm extended to Jade's neck. Jade is pinned in place, leaning back slightly, up on her toes to ease the chokehold."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_030_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands in close proximity to Jade. Wren raises his right hand, placing his fingers gently against Jade's throat to read her pulse. Jade remains still, her head tilted slightly back to accommodate his hand, her eyes locked onto Wren's face as he processes the tactile data.",
        "characters_present": [
          "JADE",
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH31",
            "coverage_note": "Tight focus on the hand interaction at the neck, capturing the tension between the two characters.",
            "description": "Wren's fingers shift on Jade's throat to read her pulse.",
            "moment": "Pulse scan"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "Jade"
            ]
          },
          {
            "character": "JADE",
            "sequence": [
              "Wren"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 31,
        "starting_positions": "Wren and Jade stand facing each other in close proximity."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_031_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren stands perfectly motionless, his massive frame squared off. His head is turned screen-left, delivering his line with flat robotic certainty. His gaze is fixed straight ahead, unblinking, directed at an unseen listener. His arms rest neutrally at his sides, out of frame.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH32",
            "coverage_note": "Ensure the lighting highlights the uncanny stillness of his synthetic features.",
            "description": "MCU on Wren as he delivers his line with robotic certainty.",
            "moment": "Wren's query"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "off-screen listener"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 32,
        "starting_positions": "Wren is standing, facing screen-left."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_032_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren is positioned facing directly toward the camera. His face is captured in extreme close-up as the blue light emitting from his optical sensors intensifies.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH33",
            "coverage_note": "Focus entirely on the facial details and the glowing effect.",
            "description": "Extreme close-up on Wren's face as the blue light intensifies.",
            "moment": "Optical sensor flare"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "straight ahead"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 33,
        "starting_positions": "Wren stands facing forward, centered to the camera."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_033_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Wren leans forward over the cryo pod, looking down at it. His right hand grips a heavy anchor cable tightly for support, while his left hand braces against a nearby bulkhead. The pod is positioned below him.",
        "characters_present": [
          "WREN"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH34",
            "coverage_note": "Focus on Wren's upper body tension and grip on the cable.",
            "description": "Medium shot capturing Wren's physical tension as he grips the cable, looking down at the groaning pod.",
            "moment": "Wren gripping the cable"
          }
        ],
        "gaze_sequence": [
          {
            "character": "WREN",
            "sequence": [
              "cryo_pod"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH34",
                "state": "positioned below Wren, groaning"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 34,
        "starting_positions": "Wren is positioned above the cryo pod, leaning forward."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_034_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "This is an environment-only detail shot focusing on the structural failure of the cryo-pod's mounting system. The heavy anchor cables securing the brushed steel pod are under extreme tension, snapping and slipping from their metal mounts. The frost-covered viewport of the pod is visible in the background as the primary anchor point gives way.",
        "characters_present": [],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH35",
            "coverage_note": "Crucial insert shot to establish the immediate physical danger and ticking clock of the pod falling.",
            "description": "Close up on the heavy anchor cables of the cryo-pod snapping under tension.",
            "moment": "Anchor failure"
          }
        ],
        "gaze_sequence": [],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [
          {
            "initial_holder": null,
            "prop_id": "cryo_pod",
            "transitions": [
              {
                "at_shot_approx": "EP001_SH35",
                "state": "anchor cables snapping under tension, mounts failing"
              }
            ]
          }
        ],
        "scene_duration_shots": 1,
        "scene_index": 35,
        "starting_positions": "No characters present. The camera is focused tightly on the cryo-pod's anchor cables."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_035_sbd.json"
    },
    {
      "data": {
        "blocking_narrative": "Jade stands at the edge of the void, her body squared to the expanse. Her posture is momentarily rigid before a sharp, involuntary laugh escapes her, causing her head to tilt slightly back. Her hands remain out of frame, resting at her sides.",
        "characters_present": [
          "JADE"
        ],
        "coverage_anchors": [
          {
            "approximate_shot": "EP001_SH36",
            "coverage_note": "MCU captures the suddenness of the expression and the isolation against the background.",
            "description": "Jade lets out a sharp bark of a laugh while staring into the void.",
            "moment": "Jade's involuntary laugh"
          }
        ],
        "gaze_sequence": [
          {
            "character": "JADE",
            "sequence": [
              "distance"
            ]
          }
        ],
        "location_id": "int_lower_decks_maintenance_shaft",
        "prop_ledger": [],
        "scene_duration_shots": 1,
        "scene_index": 36,
        "starting_positions": "Jade is standing center frame, facing the void."
      },
      "path": "tartarus/state/visual/blocking/ep_001/scene_036_sbd.json"
    },
    {
      "data": {
        "episode_id": "EP001",
        "project": "tartarus",
        "shots": [
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - LEVEL -47 - CONTINUOUS",
            "scene_index": 1,
            "shot_index": 1,
            "source_text": "Jade's salvage hook pries copper from a dead conduit. Rust flakes onto her fingers."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 2,
            "source_text": "Her debt counter PULSES on her left wrist. 50,247. Ticking up with every breath she takes."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 3,
            "source_text": "She checks the corridor behind her. Two exits. One collapsed."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 4,
            "source_text": "She scans the corridor behind her. Two exits. One collapsed. She runs the odds in her head \u2014 the gambler's pause before committing."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 5,
            "source_text": "JADE (flat, matter-of-fact \u2014 unbothered by the risk, each probability a weather report) Panel's corroded. Sixty-forty the wire's live. Seventy-thirty I don't care."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 6,
            "source_text": "The corridor opens into a shaft. Bottomless. Wind howling up from below."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 7,
            "source_text": "A cryo-pod hangs from anchor cables over the abyss."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 8,
            "source_text": "Pre-Launch markings. Military serial numbers stamped into brushed steel. Frost still clinging to the viewport."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 9,
            "source_text": "Jade goes still. The gambler's pause \u2014 then she stares at the pod."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 10,
            "source_text": "JADE (dark humor, wry and almost warm \u2014 a private joke she tells herself in dangerous moments) Daddy needs a new pair of lungs."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 11,
            "source_text": "She hooks her tether to a ceiling strut. Steps onto the cable."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 12,
            "source_text": "The abyss pulls at her boots."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 13,
            "source_text": "Her rebreather fogs with each exhale. Hands find the pod's release panel."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 14,
            "source_text": "She wedges her hook into the seam and twists."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 15,
            "source_text": "The pod HISSES. Fog spills out, curling into the void below."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 16,
            "source_text": "The fog clears. The thing inside is not cargo."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 17,
            "source_text": "Combat chassis. Massive. Shoulders wider than the pod should allow."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 18,
            "source_text": "Military architecture built for damage \u2014 scarred alloy, reinforced joints, hands designed to break things."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 19,
            "source_text": "His eyes snap open."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 20,
            "source_text": "Electric blue. Solid \u2014 iris and pupil burning together."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 21,
            "source_text": "Jade's boots slip. The cable sways."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 22,
            "source_text": "JADE (dry exhaustion \u2014 staring death in the face, making a joke because that's all she has) Oh great. It's alive."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 23,
            "source_text": "The chassis moves. One arm \u2014 fast, mechanical precision \u2014 catches the cable."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 24,
            "source_text": "The other finds Jade's throat."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 25,
            "source_text": "Her feet leave the grating."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 26,
            "source_text": "The abyss yawns below."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 27,
            "source_text": "His eyes scan her face. Targeting reticles spiral behind the blue."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 28,
            "source_text": "WREN (cold, robotic \u2014 genuinely rebooting, the pause before \"era\" is real computation, not a threat) Identify sector. Identify... era."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 29,
            "source_text": "His head tilts. Processing. The grip on her throat does not tighten. Does not release."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 30,
            "source_text": "JADE (strained dark humor \u2014 slightly breathless, still refusing to show fear, the hand on her throat is real) Can't really talk with the hand situation, chrome-boy."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 31,
            "source_text": "His fingers shift on her throat. Not squeezing \u2014 scanning. Reading her pulse like data."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 32,
            "source_text": "WREN (flat robotic certainty \u2014 stated like an access code, not a question in delivery) Query: What year is this."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 33,
            "source_text": "The blue burns brighter."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 34,
            "source_text": "His other hand grips the cable as the pod GROANS below them."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 35,
            "source_text": "Anchors failing."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 36,
            "source_text": "Jade laughs. Sharp. Involuntary. A bark of sound over the void."
          }
        ],
        "total_shots": 36
      },
      "path": "tartarus/state/visual/camera_tested/ep_001.json"
    },
    {
      "data": {
        "episode_id": "EP002",
        "project": "tartarus",
        "shots": [
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 1,
            "shot_index": 1,
            "source_text": "Wren's hand releases."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 1,
            "shot_index": 2,
            "source_text": "Jade drops to the grating, gasping."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 1,
            "shot_index": 3,
            "source_text": "The cryo-pod SHRIEKS below \u2014 anchors snapping, metal swallowed by the dark."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 4,
            "source_text": "Wren stands motionless."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 5,
            "source_text": "Eyes tracking left-to-right, top-to-bottom. Grid pattern. Mapping the corridor like a targeting system."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 6,
            "source_text": "His hands settle behind his back. Parade rest. The military bearing of a soldier on active watch."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 7,
            "source_text": "Jade rubs her throat."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 8,
            "source_text": "Checks the corridor behind her \u2014 two exits, one collapsed, one dark."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 9,
            "source_text": "Eyes narrow. The gambler's pause \u2014 running the odds."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 2,
            "shot_index": 10,
            "source_text": "JADE You just grabbed me by the throat over a hole that goes to nowhere. We're off to a great start."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 11,
            "source_text": "A WHINE builds in the walls. Amber light sweeps the corridor."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 12,
            "source_text": "Warden drone. Sensor array spinning, mounted on four rotors."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 13,
            "source_text": "It locks on Wren."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 14,
            "source_text": "Wren's head tilts \u2014 slight angle, processing."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 15,
            "source_text": "Two movements. His palm strikes the sensor hub. His other hand rips the chassis open like wet cardboard."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 16,
            "source_text": "The drone drops, sparking against the grating."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 17,
            "source_text": "Jade stares at the wreckage. Two seconds start to finish."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 18,
            "source_text": "JADE Two moves. Two. I am definitely raising your price."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 19,
            "source_text": "Wren pulls a data chip from the drone's smoldering core."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 20,
            "source_text": "His eyes flicker \u2014 reading the data stream directly."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 21,
            "source_text": "WREN Query: What is your designation."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 3,
            "shot_index": 22,
            "source_text": "JADE Jade. And you just cost me a fortune."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 23,
            "source_text": "WREN You are currently listed as \"Expendable.\" He says it flat. Weather report. The word means nothing to him."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 24,
            "source_text": "Jade's hand drifts to her debt counter."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 25,
            "source_text": "Her jaw tightens."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 26,
            "source_text": "Her counter CLICKS. 56,247."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 27,
            "source_text": "The drone kill \u2014 a 6,000-credit surcharge. Added automatically. No hearing. No appeal. Municipal property destruction."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 28,
            "source_text": "Steam curls from a cracked pipe overhead. The corridor groans \u2014 the ship settling, always settling."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 29,
            "source_text": "WREN Your debt has increased by six thousand credits. Recommendation: file a dispute with the collection authority."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 30,
            "source_text": "Jade barks a laugh. Sharp and wrong for the moment. Nervous system misfire."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 31,
            "source_text": "JADE File a dispute? I'd have better luck filing a prayer."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 32,
            "source_text": "She paces. Her boots leave prints in the condensation on the grating."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 4,
            "shot_index": 33,
            "source_text": "Her debt counter ticks up another credit. Breathing tax."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 34,
            "source_text": "Red sweep-light floods the corridor."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 35,
            "source_text": "Three Collector drones round the bend. Faster than the Warden unit. Blade arrays extended, humming."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 36,
            "source_text": "Closing fast."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 37,
            "source_text": "Jade grabs Wren's arm. His chassis tenses at the contact \u2014 touch hesitation, uncertain of the input."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": true,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 38,
            "source_text": "JADE Worst bet I ever made."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - CORRIDOR - CONTINUOUS",
            "scene_index": 5,
            "shot_index": 39,
            "source_text": "They run."
          }
        ],
        "total_shots": 39
      },
      "path": "tartarus/state/visual/camera_tested/ep_002.json"
    },
    {
      "data": {
        "episode_id": "EP003",
        "project": "tartarus",
        "shots": [
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": "INT. TARTARUS - SECTOR 7-ECHO - JUNCTION - CONTINUOUS",
            "scene_index": 1,
            "shot_index": 1,
            "source_text": "The three drones box them into a dead-end junction \u2014 blades humming, herding, not striking."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 2,
            "source_text": "Jade backs against the wall."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 3,
            "source_text": "Then the drones pull back. Heeled. Waiting."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 4,
            "source_text": "VAREK (O.S.) You must be the salvager."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 5,
            "source_text": "Jade freezes."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 1,
            "shot_index": 6,
            "source_text": "Wren's eyes snap to targeting mode \u2014 blue flaring bright."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 7,
            "source_text": "Varek Sorn steps from the shadows."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 8,
            "source_text": "Chrome and gold accents gleaming against the corridor's rot. Immaculate. Every surface polished while the ship decays around him."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 9,
            "source_text": "Scar across his throat. Pink and deliberate. Someone tried once. It didn't take."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 10,
            "source_text": "Two Collector drones flank him. Powered down. Heeled like dogs."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 11,
            "source_text": "VAREK Destroyed a municipal unit. Surcharge already posted. And you brought me something new."
          },
          {
            "characters_mentioned": [
              "Varek",
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 2,
            "shot_index": 12,
            "source_text": "His eyes move to Wren. Cataloging. Appraising."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 13,
            "source_text": "Jade steps between them."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 14,
            "source_text": "Her hand drifts to her debt counter \u2014 touching it without thinking."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 15,
            "source_text": "JADE He's salvage. My salvage. Found him in a pod, fair claim under section nine."
          },
          {
            "characters_mentioned": [
              "Varek",
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 16,
            "source_text": "Varek circles Wren. Slow. Predator patience."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 17,
            "source_text": "His shoes click against the grating \u2014 the only clean sound in the corridor."
          },
          {
            "characters_mentioned": [
              "Varek",
              "Wren"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 18,
            "source_text": "He speaks softer. Quieter. VAREK Section nine covers inert cargo. That is not inert. Pre-Launch military chassis. Memory-wiped. Combat protocols intact."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 19,
            "source_text": "Wren tracks the circling. Grid scan."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 20,
            "source_text": "Eyes left-to-right, cataloging threat vectors and exit distances."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 3,
            "shot_index": 21,
            "source_text": "JADE Worth enough to zero my counter twice. That's the math I care about, Collector Sorn."
          },
          {
            "characters_mentioned": [
              "Wren"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 22,
            "source_text": "Wren's head tilts. Processing something deeper than threat assessment."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 23,
            "source_text": "His blue eyes lock on Varek's chest."
          },
          {
            "characters_mentioned": [
              "Wren",
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 24,
            "source_text": "WREN Query: What is the function of your cardiac implant. It responds to my signal architecture. Pulse. Rhythm. Elevated eleven percent. Recommendation: controlled breathing."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 25,
            "source_text": "Varek's hand goes to his chest. Involuntary."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 26,
            "source_text": "His smile dies."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 27,
            "source_text": "The corridor is very quiet."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 28,
            "source_text": "Condensation drips from a ceiling vent."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 29,
            "source_text": "The drones stay powered down."
          },
          {
            "characters_mentioned": [
              "Jade"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 30,
            "source_text": "Jade's rebreather fogs in the silence between heartbeats."
          },
          {
            "characters_mentioned": [
              "Jade",
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 31,
            "source_text": "JADE You got any gold teeth I can pry out while we're down here? Or are we done?"
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 4,
            "shot_index": 32,
            "source_text": "Varek's jaw works. Processing a threat he hasn't felt in years."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 33,
            "source_text": "Varek backs away. One step. Two."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 34,
            "source_text": "Then he smiles. Wrong. Teeth visible, eyes empty. Learned behavior, not felt."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 35,
            "source_text": "He adjusts his cuffs again. Slow and deliberate. Pulling chrome straight."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": true,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 36,
            "source_text": "VAREK Interesting."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 37,
            "source_text": "He turns and walks into the dark."
          },
          {
            "characters_mentioned": [],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 38,
            "source_text": "The drones power up and follow, blade arrays retracting."
          },
          {
            "characters_mentioned": [
              "Varek"
            ],
            "has_dialogue": false,
            "location_hint": null,
            "scene_index": 5,
            "shot_index": 39,
            "source_text": "His footsteps fade down the corridor \u2014 steady, unhurried, precise. A hunter who just marked his prey. He's found something worth hunting."
          }
        ],
        "total_shots": 39
      },
      "path": "tartarus/state/visual/camera_tested/ep_003.json"
    },
    {
      "data": {
        "characters": {
          "JADE": {
            "bible_synced": false,
            "brief_visual": "Lean wiry woman, late 20s, grime-streaked freckled face, short reddish-brown hair, dirty tank top, calloused scarred hands",
            "brief_wardrobe": {
              "jade_phase_1_full_mask": "Dirty tank top, rebreather at neck, canvas jacket at waist, oil-stained cargo pants, scuffed boots",
              "jade_phase_2_cracks_forming": "Torn charcoal work jacket over faded olive thermal, deeper grime, reinforced cargo pants",
              "jade_phase_3_mask_straining": "Damaged jacket with shoulder rip exposing olive thermal, cargo pants fraying, visible exhaustion wear",
              "jade_phase_4_breaking": "Jacket discarded, grime-stained olive thermal with tears, severely damaged cargo pants",
              "jade_phase_5_architect_betrayal": "Torn bloodstained olive thermal, severely damaged cargo pants, stripped of outer layers",
              "jade_phase_6_slow_thaw": "Barely-clinging ripped thermal, blood and grime, exposed skin, cargo pants shredded",
              "jade_phase_7_rebuilt": "Clean simple clothing, silver hair, calloused hands free, healed scar where debt counter was"
            },
            "grid_images": [
              "assets/identity/jade/concept_panels/jade_concept_01.png",
              "assets/identity/jade/concept_panels/jade_concept_02.png",
              "assets/identity/jade/concept_panels/jade_concept_03.png",
              "assets/identity/jade/concept_panels/jade_concept_04.png",
              "assets/identity/jade/concept_panels/jade_concept_05.png",
              "assets/identity/jade/concept_panels/jade_concept_06.png",
              "assets/identity/jade/concept_panels/jade_concept_07.png",
              "assets/identity/jade/concept_panels/jade_concept_08.png",
              "assets/identity/jade/concept_panels/jade_concept_09.png"
            ],
            "grid_session_id": "6209e2b6",
            "hero_path": "assets/heroes/jade_identity_hero_v01.png",
            "hero_source": "grid_session",
            "selected_panel": 4,
            "status": "turnaround_complete",
            "turnaround": {
              "back": {
                "path": "assets/identity/jade/jade_turn_back_v01.png"
              },
              "front": {
                "path": "assets/identity/jade/jade_turn_front_v01.png"
              },
              "profile": {
                "path": "assets/identity/jade/jade_turn_profile_v01.png"
              },
              "three_quarter": {
                "path": "assets/identity/jade/jade_turn_three-quarter_v01.png"
              }
            }
          },
          "WREN": {
            "bible_synced": false,
            "brief_visual": "Towering armored figure, gunmetal blue chassis, exposed human face, pale blue eyes, military helmet, rust-weathered plating",
            "brief_wardrobe": {
              "wren_phase_1_pure_function": "Pristine dark gunmetal chassis, heavy plating, visible shoulder gears, riveted joints, military helmet with orange-rust stripes",
              "wren_phase_2_fragments_returning": "Scarred chassis, missing right arm with sparking cavity, blackened scored plating, exposed wiring",
              "wren_phase_3_full_memory": "Heavily damaged chassis, missing arm crudely patched with scavenged metal, prolonged battle wear",
              "wren_phase_4_reborn_choice": "Dissolving into blue light, remaining left hand visible, merging with ship systems"
            },
            "grid_session_id": "14ef504c",
            "hero_path": "assets/heroes/wren_identity_hero_v01.jpeg",
            "hero_source": "provided",
            "status": "turnaround_complete",
            "turnaround": {
              "back": {
                "path": "assets/identity/wren/wren_turn_back_v01.png"
              },
              "front": {
                "path": "assets/identity/wren/wren_turn_front_v01.png"
              },
              "profile": {
                "path": "assets/identity/wren/wren_turn_profile_v01.png"
              },
              "three_quarter": {
                "path": "assets/identity/wren/wren_turn_three-quarter_v01.png"
              }
            }
          },
          "jade": {
            "hero_path": "assets/identity/jade/hero.jpg",
            "updated_at": "2026-04-20T23:50:52.817375Z"
          }
        },
        "continuity_sessions": {
          "20b98c8d": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.0,
            "generation_mode": "grid",
            "grid_candidates": [
              {
                "path": null,
                "slot": 0,
                "state": "empty"
              },
              {
                "path": null,
                "slot": 1,
                "state": "empty"
              },
              {
                "path": null,
                "slot": 2,
                "state": "empty"
              }
            ],
            "phase_ids": [
              "jade_phase_1_full_mask",
              "jade_phase_2_cracks_forming",
              "jade_phase_3_mask_straining",
              "jade_phase_4_breaking",
              "jade_phase_5_architect_betrayal",
              "jade_phase_6_slow_thaw",
              "jade_phase_7_rebuilt"
            ],
            "selected_grid": null,
            "session_id": "20b98c8d",
            "session_type": "continuity",
            "status": "complete"
          },
          "361d18c5": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.8190000000000002,
            "phases": {
              "jade_phase_1_full_mask": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_2_cracks_forming": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_2_cracks_forming/jade_wardrobe_jade_phase_2_cracks_forming_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_2_cracks_forming/jade_wardrobe_jade_phase_2_cracks_forming_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_2_cracks_forming/jade_wardrobe_jade_phase_2_cracks_forming_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_3_mask_straining": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_3_mask_straining/jade_wardrobe_jade_phase_3_mask_straining_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_3_mask_straining/jade_wardrobe_jade_phase_3_mask_straining_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_3_mask_straining/jade_wardrobe_jade_phase_3_mask_straining_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_4_breaking": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_4_breaking/jade_wardrobe_jade_phase_4_breaking_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_4_breaking/jade_wardrobe_jade_phase_4_breaking_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_4_breaking/jade_wardrobe_jade_phase_4_breaking_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_5_architect_betrayal": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_5_architect_betrayal/jade_wardrobe_jade_phase_5_architect_betrayal_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_5_architect_betrayal/jade_wardrobe_jade_phase_5_architect_betrayal_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_5_architect_betrayal/jade_wardrobe_jade_phase_5_architect_betrayal_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_6_slow_thaw": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_6_slow_thaw/jade_wardrobe_jade_phase_6_slow_thaw_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_6_slow_thaw/jade_wardrobe_jade_phase_6_slow_thaw_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_6_slow_thaw/jade_wardrobe_jade_phase_6_slow_thaw_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_7_rebuilt": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_7_rebuilt/jade_wardrobe_jade_phase_7_rebuilt_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_7_rebuilt/jade_wardrobe_jade_phase_7_rebuilt_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_7_rebuilt/jade_wardrobe_jade_phase_7_rebuilt_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              }
            },
            "session_id": "361d18c5",
            "session_type": "continuity",
            "status": "complete"
          },
          "9415f59d": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.0,
            "phases": {
              "jade_phase_1_full_mask": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c02.png",
                    "slot": 1,
                    "state": "new"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_1_full_mask/jade_wardrobe_jade_phase_1_full_mask_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_2_cracks_forming": {
                "candidates": [
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_2_cracks_forming/jade_wardrobe_jade_phase_2_cracks_forming_c01.png",
                    "slot": 0,
                    "state": "new"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": "assets/identity/jade/candidates/wardrobe/jade_phase_2_cracks_forming/jade_wardrobe_jade_phase_2_cracks_forming_c03.png",
                    "slot": 2,
                    "state": "new"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_3_mask_straining": {
                "candidates": [
                  {
                    "path": null,
                    "slot": 0,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 2,
                    "state": "empty"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_4_breaking": {
                "candidates": [
                  {
                    "path": null,
                    "slot": 0,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 2,
                    "state": "empty"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_5_architect_betrayal": {
                "candidates": [
                  {
                    "path": null,
                    "slot": 0,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 2,
                    "state": "empty"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_6_slow_thaw": {
                "candidates": [
                  {
                    "path": null,
                    "slot": 0,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 2,
                    "state": "empty"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              },
              "jade_phase_7_rebuilt": {
                "candidates": [
                  {
                    "path": null,
                    "slot": 0,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 1,
                    "state": "empty"
                  },
                  {
                    "path": null,
                    "slot": 2,
                    "state": "empty"
                  }
                ],
                "locked_slot": null,
                "override": "",
                "status": "ready"
              }
            },
            "session_id": "9415f59d",
            "session_type": "continuity",
            "status": "complete"
          },
          "95df27b8": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.402,
            "generation_mode": "grid",
            "grid_candidates": [
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c01.png",
                "slot": 0,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c02.png",
                "slot": 1,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c03.png",
                "slot": 2,
                "state": "new"
              }
            ],
            "phase_ids": [
              "jade_phase_1_full_mask",
              "jade_phase_2_cracks_forming",
              "jade_phase_3_mask_straining",
              "jade_phase_4_breaking",
              "jade_phase_5_architect_betrayal",
              "jade_phase_6_slow_thaw",
              "jade_phase_7_rebuilt"
            ],
            "selected_grid": null,
            "session_id": "95df27b8",
            "session_type": "continuity",
            "status": "complete"
          },
          "b81caf77": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.402,
            "generation_mode": "grid",
            "grid_candidates": [
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c01.png",
                "slot": 0,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c02.png",
                "slot": 1,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c03.png",
                "slot": 2,
                "state": "new"
              }
            ],
            "phase_ids": [
              "jade_phase_1_full_mask",
              "jade_phase_2_cracks_forming",
              "jade_phase_3_mask_straining",
              "jade_phase_4_breaking",
              "jade_phase_5_architect_betrayal",
              "jade_phase_6_slow_thaw",
              "jade_phase_7_rebuilt"
            ],
            "selected_grid": null,
            "session_id": "b81caf77",
            "session_type": "continuity",
            "status": "complete"
          },
          "c262eb7f": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.402,
            "generation_mode": "grid",
            "grid_candidates": [
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c01.png",
                "slot": 0,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c02.png",
                "slot": 1,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c03.png",
                "slot": 2,
                "state": "new"
              }
            ],
            "phase_ids": [
              "jade_phase_1_full_mask",
              "jade_phase_2_cracks_forming",
              "jade_phase_3_mask_straining",
              "jade_phase_4_breaking",
              "jade_phase_5_architect_betrayal",
              "jade_phase_6_slow_thaw",
              "jade_phase_7_rebuilt"
            ],
            "selected_grid": null,
            "session_id": "c262eb7f",
            "session_type": "continuity",
            "status": "complete"
          },
          "d715d5d3": {
            "asset_type": "wardrobe",
            "character_id": "JADE",
            "cost": 0.402,
            "generation_mode": "grid",
            "grid_candidates": [
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c01.png",
                "slot": 0,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c02.png",
                "slot": 1,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/wardrobe/grids/jade_wardrobe_grid_c03.png",
                "slot": 2,
                "state": "new"
              }
            ],
            "phase_ids": [
              "jade_phase_1_full_mask",
              "jade_phase_2_cracks_forming",
              "jade_phase_3_mask_straining",
              "jade_phase_4_breaking",
              "jade_phase_5_architect_betrayal",
              "jade_phase_6_slow_thaw",
              "jade_phase_7_rebuilt"
            ],
            "selected_grid": null,
            "session_id": "d715d5d3",
            "session_type": "continuity",
            "status": "complete"
          }
        },
        "grid_sessions": {
          "14ef504c": {
            "anchor": {
              "mood_text": "",
              "path": null,
              "source": null
            },
            "asset_type": "character",
            "beauty_pass_path": null,
            "candidates": [
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 0,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 1,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 2,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 3,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 4,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 5,
                "state": "empty"
              }
            ],
            "collapsed_override": "",
            "cost": 0.0,
            "descriptor": {
              "aspect_ratio": "1:1",
              "beauty_pass": true,
              "beauty_pass_model_role": "production",
              "beauty_pass_temp": 0.2,
              "diegetic_frame": "A premium television casting director's on-location makeup and wardrobe screen test.",
              "generation_strategy": "composite_grid",
              "grid_format": "2x3",
              "model_role": "exploration",
              "prompt_template": "casting_director",
              "ref_handling": {
                "inline_ref": false,
                "strategy": "vision_extraction"
              },
              "temperature": 0.68
            },
            "hero_locked": false,
            "hero_path": null,
            "parent_context": {
              "character_id": "WREN"
            },
            "re_roll_count": 0,
            "session_id": "14ef504c",
            "status": "created",
            "user_overrides": []
          },
          "6209e2b6": {
            "anchor": {
              "mood_text": "<truncated:blob>",
              "path": "assets/identity/jade/jade_identity_hero_v01.jpeg",
              "source": "provided"
            },
            "asset_type": "character",
            "beauty_pass_cost": 0.134,
            "beauty_pass_model": "gemini-3-pro-image-preview",
            "beauty_pass_path": "assets/identity/jade/jade_identity_beauty_v01.png",
            "candidates": [
              {
                "path": "assets/identity/jade/candidates/jade_character_r7_candidate_01.png",
                "re_roll_generation": 7,
                "slot": 0,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/jade_character_r7_candidate_02.png",
                "re_roll_generation": 7,
                "slot": 1,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/jade_character_r6_candidate_03.png",
                "re_roll_generation": 6,
                "slot": 2,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/jade_character_r7_candidate_03.png",
                "re_roll_generation": 7,
                "slot": 3,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/jade_character_r7_candidate_04.png",
                "re_roll_generation": 7,
                "slot": 4,
                "state": "new"
              },
              {
                "path": "assets/identity/jade/candidates/jade_character_r7_candidate_05.png",
                "re_roll_generation": 7,
                "slot": 5,
                "state": "new"
              }
            ],
            "collapsed_override": "skinnier, a little sexier, skinnier, beautiful, sexy",
            "cost": 0.273,
            "descriptor": {
              "aspect_ratio": "1:1",
              "beauty_pass": true,
              "beauty_pass_model_role": "production",
              "beauty_pass_temp": 0.2,
              "diegetic_frame": "A casting director's audition photo array, neutral 18% gray seamless backdrop, flat even studio lighting",
              "generation_strategy": "composite_grid",
              "grid_format": "2x3",
              "model_role": "exploration",
              "prompt_template": "casting_director",
              "ref_handling": {
                "inline_ref": false,
                "strategy": "vision_extraction"
              },
              "temperature": 0.85
            },
            "hero_locked": true,
            "hero_path": "assets/identity/jade/jade_identity_hero_v01.jpeg",
            "parent_context": {
              "character_id": "JADE"
            },
            "re_roll_count": 7,
            "session_id": "6209e2b6",
            "status": "beauty_complete",
            "user_overrides": [
              "skinnier",
              "a little sexier",
              "skinnier",
              "beautiful",
              "sexy"
            ]
          },
          "825fa199": {
            "anchor": {
              "mood_text": "Muted earth tones, desaturated industrial greys, oxidized metallics, rust-brown accents, faint hints of desaturated orange, grimy, dusty, worn, damp, soiled, weathered, post-apocalyptic survivalist, gritty utilitarian, dystopian industrial",
              "path": "assets/identity/jade/jade_identity_beauty_v01.png",
              "source": "provided"
            },
            "asset_type": "wardrobe",
            "beauty_pass_path": null,
            "candidates": [
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 0,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 1,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 2,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 3,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 4,
                "state": "empty"
              },
              {
                "path": null,
                "re_roll_generation": 0,
                "slot": 5,
                "state": "empty"
              }
            ],
            "collapsed_override": "",
            "cost": 0.0,
            "descriptor": {
              "aspect_ratio": "2:3",
              "diegetic_frame": "A costume designer's flat-lay technical photograph",
              "generation_strategy": "composite_grid",
              "grid_format": "2x3",
              "model_role": "exploration",
              "prompt_template": "costume_designer",
              "ref_handling": {
                "inline_ref": "hero_image",
                "strategy": "hybrid",
                "text_modifier": "vision_extraction"
              },
              "temperature": 0.45
            },
            "hero_locked": false,
            "hero_path": null,
            "parent_context": {
              "character_id": "JADE"
            },
            "re_roll_count": 0,
            "session_id": "825fa199",
            "status": "created",
            "user_overrides": []
          }
        },
        "locations": {
          "int_lower_decks_corridor": {
            "hero_path": "assets/loc/int_lower_decks_corridor/hero.png",
            "updated_at": "2026-04-20T23:50:52.820240Z"
          },
          "int_lower_decks_maintenance_shaft": {
            "hero_path": "assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_looking-up_v01.png",
            "hero_selected_at": 1774249336.558378,
            "moodboard_picks": [
              "int-lower-decks-maintenance-shaft_loc_side-ladder_v01.png",
              "int-lower-decks-maintenance-shaft_loc_platform-edge_v01.png",
              "int-lower-decks-maintenance-shaft_loc_looking-up_v01.png",
              "int-lower-decks-maintenance-shaft_loc_dome-below_v01.png"
            ]
          }
        }
      },
      "path": "tartarus/state/visual/casting_state.json"
    },
    {
      "data": [
        {
          "arc_preamble": "",
          "blueprint_image_path": "tartarus/sequences/ep_001/shot_019_take6_25446.png",
          "blueprint_source": "previz_establishing",
          "camera_side": "A",
          "character_count": 0,
          "duration_s": 4,
          "element_config": {
            "character_elements": [],
            "location_id": "int_lower_decks_corridor"
          },
          "episode_id": "EP001",
          "focus_character": "",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.5,
            "mode": "i2v",
            "model": "seeddance-2.0",
            "start_frame_path": "tartarus/sequences/ep_001/shot_019_take6_25446.png"
          },
          "label": "ENV B (int_lower_decks_corridor)",
          "location_id": "int_lower_decks_corridor",
          "pass_id": "EP001_PASS_001_SH1_A_ENV",
          "pass_type": "env",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "pull_back"
              },
              "prompt": "WS: dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance.",
              "segment_index": 0,
              "shot_type": "WS",
              "source_shot_id": "EP001_SH01",
              "source_text": "Empty lower-deck corridor. Collapsed bulkhead visible in the distance. Flickering overhead lights.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH01",
            "EP001_SH01"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_source": "previz_establishing",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_corridor"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_corridor)",
          "location_id": "int_lower_decks_corridor",
          "pass_id": "EP001_PASS_002_SH3_2_4_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: Jade standing at corridor wall, right hand resting on hip, left hand touching wall, head turned back over right shoulder toward corridor behind her Jade turns and checks the corridor behind her. Two exits \u2014 one collapsed under twisted metal. [paranoia, hyper-vigilance, calculated survival]",
              "segment_index": 0,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH03",
              "source_text": "She checks the corridor behind her. Two exits. One collapsed.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "INSERT: Jade standing at unspecified location, right hand resting out of frame, left hand holding wrist steady to display debt counter, head turned toward left wrist Jade's debt counter PULSES on her left wrist \u2014 amber digits tick upward past 50,247. [oppressive debt, relentless ticking, trapped]",
              "segment_index": 1,
              "shot_type": "INSERT",
              "source_shot_id": "EP001_SH02",
              "source_text": "Her debt counter PULSES on her left wrist. 50,247. Ticking up with every breath she takes.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating. [mental math, pragmatism, routine calculation]",
              "segment_index": 2,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH04",
              "source_text": "She scans the corridor behind her. Two exits. One collapsed. She runs the odds in her head \u2014 the gambler's pause before committing.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH03",
            "EP001_SH04"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": "tartarus/sequences/ep_001/shot_019_take6_25446.png",
          "blueprint_source": "previz_establishing",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 9,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_corridor"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": "tartarus/sequences/ep_001/shot_019_take6_25446.png"
          },
          "label": "JADE B (int_lower_decks_corridor)",
          "location_id": "int_lower_decks_corridor",
          "pass_id": "EP001_PASS_003_SH5a_5_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "OTS: Corroded panel sliding down to reveal dark maintenance shaft and catwalk A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft. [discovery, foreboding, unknown depths]",
              "segment_index": 0,
              "shot_type": "OTS",
              "source_shot_id": "EP001_SH05A",
              "source_text": "Jade's POV of the newly revealed tunnel entrance leading to a catwalk in the maintenance shaft, as a panel slides down.",
              "transition": "smooth"
            },
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Jade standing at bulkhead, right hand lowered out of frame, left hand lowered out of frame, head tilted slightly down gazing at corroded panel Jade grips the corroded panel edge, fingers testing the wire. Her mouth moves \u2014 flat, unbothered, reading the odds aloud. [cynical acceptance, flat pragmatism, unbothered]",
              "segment_index": 1,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH05",
              "source_text": "JADE (flat, matter-of-fact \u2014 unbothered by the risk, each probability a weather report) Panel's corroded. Sixty-forty the wire's live. Seventy-thirty I don't care.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH05A",
            "EP001_SH05"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 0,
          "duration_s": 13,
          "element_config": {
            "character_elements": [],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.5,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "ENV B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_004_SH6_7_8_A_ENV",
          "pass_type": "env",
          "segments": [
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "pull_back"
              },
              "prompt": "WS: dark metallic corridor terminating abruptly at the jagged edge of a massive vertical shaft, bottomless drop plunging into absolute darkness below, sheer vertical walls stretching out of sight The corridor opens into a bottomless shaft. Wind howls up from the darkness below. [vertigo, isolation, overwhelming scale]",
              "segment_index": 0,
              "shot_type": "WS",
              "source_shot_id": "EP001_SH06",
              "source_text": "The corridor opens into a shaft. Bottomless. Wind howling up from below.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "tracking"
              },
              "prompt": "LS: heavy brushed steel cryo-pod suspended by thick anchor cables, hanging over vast dark abyss, bottomless drop below A frost-covered cryo-pod hangs from anchor cables suspended over the abyss. [suspense, precarious danger, mystery]",
              "segment_index": 1,
              "shot_type": "LS",
              "source_shot_id": "EP001_SH07",
              "source_text": "A cryo-pod hangs from anchor cables over the abyss.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "INSERT: brushed steel cryo-pod exterior, military serial numbers stamped into metal surface, thick frost clinging to the edge of the glass viewport Pre-Launch markings and military serial numbers stamped into brushed steel. Frost clings to the viewport. [cold history, ominous origin, dormant threat]",
              "segment_index": 2,
              "shot_type": "INSERT",
              "source_shot_id": "EP001_SH08",
              "source_text": "Pre-Launch markings. Military serial numbers stamped into brushed steel. Frost still clinging to the viewport.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH06",
            "EP001_SH08"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_005_SH10_9_11_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Jade standing at center, right hand hooking rebreather strap at collarbone, left hand resting out of frame, head facing forward with gaze fixed on middle distance Jade's lips curl into a wry grin. She speaks to herself, already stepping toward the cable. [wry amusement, reckless determination, gallows humor]",
              "segment_index": 0,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH10",
              "source_text": "JADE (dark humor, wry and almost warm \u2014 a private joke she tells herself in dangerous moments) Daddy needs a new pair of lungs.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade standing still, right hand resting out of frame, left hand resting out of frame, head facing forward with gaze locked on the pod off-screen Jade goes still. Her eyes lock on the cryo-pod. [realization, high stakes, greedy temptation]",
              "segment_index": 1,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH09",
              "source_text": "Jade goes still. The gambler's pause \u2014 then she stares at the pod.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "FS: Jade standing at ceiling strut, right hand reaching up to clip tether to strut, left hand gripping tether line, head tilted up toward strut Jade hooks her tether to a ceiling strut and steps onto the anchor cable. [calculated risk, physical bravery, extreme heights]",
              "segment_index": 2,
              "shot_type": "FS",
              "source_shot_id": "EP001_SH11",
              "source_text": "She hooks her tether to a ceiling strut. Steps onto the cable.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH10",
            "EP001_SH11"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_006_SH12_13_14_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade standing at abyss edge, right hand resting out of frame, left hand resting out of frame, head tilted down with gaze directed downward into the abyss Jade's boots slide on the cable. The void drops away beneath her. [vertigo, lethal drop, tension]",
              "segment_index": 0,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH12",
              "source_text": "The abyss pulls at her boots.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade leaning slightly forward at cryo_pod, right hand touching release panel, left hand touching release panel, head angled down toward panel Jade's rebreather fogs with each exhale. Her hands find the pod's release panel. [chilling cold, delicate work, anticipation]",
              "segment_index": 1,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH13",
              "source_text": "Her rebreather fogs with each exhale. Hands find the pod's release panel.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "INSERT: Jade leaning at cryo pod, right hand twisting salvage hook into seam, left hand bracing against brushed steel surface, gaze locked on hook insertion point Jade wedges her salvage hook into the pod seam and twists. [brute force, breaking and entering, tension snapping]",
              "segment_index": 2,
              "shot_type": "INSERT",
              "source_shot_id": "EP001_SH14",
              "source_text": "She wedges her hook into the seam and twists.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH12",
            "EP001_SH14"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 0,
          "duration_s": 4,
          "element_config": {
            "character_elements": [],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.5,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "ENV B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_007_SH15_A_ENV",
          "pass_type": "env",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: heavy brushed steel cryo-pod suspended in center frame, thick white fog spilling out from its seams and curling downward into the dark bottomless void below The pod HISSES open. Fog spills out and curls downward into the void. [eerie reveal, cold release, unknown contents]",
              "segment_index": 0,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH15",
              "source_text": "The pod HISSES. Fog spills out, curling into the void below.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH15",
            "EP001_SH15"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "WREN"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "WREN",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "WREN B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_008_SH16_17_18_A_WREN",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: Wren suspended upright inside cryo_pod, right arm resting at side, left arm resting at side, head facing straight forward with eyes closed The fog clears. A massive armored figure fills the pod interior. [imposing threat, terrifying discovery, dormant power]",
              "segment_index": 0,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH16",
              "source_text": "The fog clears. The thing inside is not cargo.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Wren standing in pod, arms resting at sides, head facing forward, gaze straight ahead A dark gunmetal combat chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls. [overwhelming scale, brutalist design, intimidation]",
              "segment_index": 1,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH17",
              "source_text": "Combat chassis. Massive. Shoulders wider than the pod should allow.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Wren standing at center, right hand clenched into fist at side, left hand clenched into fist at side, head facing forward toward distance Scarred alloy plating, reinforced joints, heavy hands built for breaking. Rust weathering across every surface. [lethal purpose, weaponized form, cold efficiency]",
              "segment_index": 2,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH18",
              "source_text": "Military architecture built for damage \u2014 scarred alloy, reinforced joints, hands designed to break things.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH16",
            "EP001_SH18"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 2,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "WREN"
              },
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "WREN",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "WREN B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_009_SH21_19_20_A_WREN",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade hanging onto vertical cable, right hand gripping cable near chin, left hand gripping above, head jolting downward Jade's boots slip on the cable. The line sways under her weight. [panic, sudden loss of control, imminent fall]",
              "segment_index": 0,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH21",
              "source_text": "Jade's boots slip. The cable sways.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "ECU: Wren face filling frame, eyes snapping open, gaze directed straight ahead Wren's eyes snap open. [shock, sudden activation, terrifying life]",
              "segment_index": 1,
              "shot_type": "ECU",
              "source_shot_id": "EP001_SH19",
              "source_text": "His eyes snap open.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "ECU: Wren face at center, right hand out of frame, left hand out of frame, head facing forward toward camera Electric blue eyes burn solid \u2014 iris and pupil fused into one bright field. [inhuman focus, piercing stare, artificial intelligence]",
              "segment_index": 2,
              "shot_type": "ECU",
              "source_shot_id": "EP001_SH20",
              "source_text": "Electric blue. Solid \u2014 iris and pupil burning together.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH21",
            "EP001_SH20"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 2,
          "duration_s": 12,
          "element_config": {
            "character_elements": [
              {
                "char_id": "WREN"
              },
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "WREN",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "WREN B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_010_SH23_22_24_A_WREN",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: WREN standing, right hand catching cable in mid-air, left arm resting at side, head turned toward right hand Wren's arm shoots out with mechanical precision and catches the anchor cable. [terrifying speed, unstoppable force, machine efficiency]",
              "segment_index": 0,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH23",
              "source_text": "The chassis moves. One arm \u2014 fast, mechanical precision \u2014 catches the cable.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Jade standing at undefined location, right hand resting out of frame, left hand resting out of frame, head facing center toward off-screen threat Jade stares at the open pod, exhales hard, and mouths words \u2014 dry, exhausted. [dry exhaustion, gallows humor, facing death]",
              "segment_index": 1,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH22",
              "source_text": "JADE (dry exhaustion \u2014 staring death in the face, making a joke because that's all she has) Oh great. It's alive.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Jade standing center, head tilted back, both hands gripping Wren's wrist; Wren standing screen-left, right hand gripping Jade's throat, head facing Jade. Wren's other hand grips Jade's throat. [lethal violence, helplessness, overwhelming power]",
              "segment_index": 2,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH24",
              "source_text": "The other finds Jade's throat.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH23",
            "EP001_SH24"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 4,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_011_SH25_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade lifting off at grating, right arm floating slightly outward, left arm floating slightly outward, head tilted down toward grating Jade's feet lift off the grating. She dangles from Wren's grip. [loss of gravity, fatal drop, helpless struggle]",
              "segment_index": 0,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH25",
              "source_text": "Her feet leave the grating.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH25",
            "EP001_SH25"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 0,
          "duration_s": 4,
          "element_config": {
            "character_elements": [],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.5,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "ENV B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_012_SH26_A_ENV",
          "pass_type": "env",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "pull_back"
              },
              "prompt": "WS: vast dark bottomless chasm dropping into absolute blackness, sheer jagged walls descending out of sight, empty void below The bottomless shaft drops away beneath Jade's hanging boots. [vertigo, certain death, terrifying scale]",
              "segment_index": 0,
              "shot_type": "WS",
              "source_shot_id": "EP001_SH26",
              "source_text": "The abyss yawns below.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH26",
            "EP001_SH26"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 2,
          "duration_s": 13,
          "element_config": {
            "character_elements": [
              {
                "char_id": "WREN"
              },
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "WREN",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "WREN B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_013_SH29_27_28_A_WREN",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: Wren standing, right hand gripping Jade's throat, left arm at side, head tilted toward Jade; Jade standing, both hands gripping Wren's right forearm, head facing Wren Wren's head tilts. His grip on Jade's throat holds steady \u2014 neither tightening nor releasing. [uncanny valley, helpless suspension, terrifying stillness]",
              "segment_index": 0,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH29",
              "source_text": "His head tilts. Processing. The grip on her throat does not tighten. Does not release.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Wren standing, head tilted down, gaze tracking across Jade's face; Jade standing, head tilted up, gaze fixed on Wren's eyes Wren's blue eyes scan Jade's face. Targeting reticles spiral behind the glow. [cold calculation, machine logic, predatory focus]",
              "segment_index": 1,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH27",
              "source_text": "His eyes scan her face. Targeting reticles spiral behind the blue.",
              "transition": "smooth"
            },
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Wren standing rigidly, right hand resting out of frame, left hand resting out of frame, head facing screen-left with vacant gaze Wren's jaw moves \u2014 stiff, mechanical. His pale blue eyes flicker with each halting syllable. [robotic coldness, disorientation, computational logic]",
              "segment_index": 2,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH28",
              "source_text": "WREN (cold, robotic \u2014 genuinely rebooting, the pause before \"era\" is real computation, not a threat) Identify sector. Identify... era.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH29",
            "EP001_SH28"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 2,
          "duration_s": 9,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              },
              {
                "char_id": "WREN"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_014_SH30_31_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Jade pinned with head tilted up, right hand gripping Wren's wrist, left hand gripping Wren's forearm, gaze locked on Wren; Wren leaning in with shoulders squared, right hand gripping Jade's throat, gaze locked down on Jade Jade grips Wren's wrist with both hands, face reddening. Her lips move \u2014 strained, wry. [defiance, strained humor, survival instinct]",
              "segment_index": 0,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH30",
              "source_text": "JADE (strained dark humor \u2014 slightly breathless, still refusing to show fear, the hand on her throat is real) Can't really talk with the hand situation, chrome-boy.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Wren standing close, right hand fingers resting lightly on Jade's throat, gaze locked on Jade; Jade standing, head tilted slightly up, gaze fixed on Wren Wren's fingers shift on Jade's throat \u2014 not squeezing. Pressing her pulse points like reading data. [invasive analysis, cold intimacy, machine logic]",
              "segment_index": 1,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH31",
              "source_text": "His fingers shift on her throat. Not squeezing \u2014 scanning. Reading her pulse like data.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH30",
            "EP001_SH31"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 0,
          "duration_s": 4,
          "element_config": {
            "character_elements": [],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.5,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "ENV B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_015_SH32_A_ENV",
          "pass_type": "env",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "INSERT: Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways. [mechanical stress, imminent failure]",
              "segment_index": 0,
              "shot_type": "INSERT",
              "source_shot_id": "EP001_SH32",
              "source_text": "The anchor cable strains under the combined weight of Wren and Jade. Steel strands fray. The pod lurches sideways.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH32",
            "EP001_SH32"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 2,
          "duration_s": 14,
          "element_config": {
            "character_elements": [
              {
                "char_id": "WREN"
              },
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "WREN",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "WREN B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_016_SH36_33_34_A_WREN",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "pull_back"
              },
              "prompt": "WS: Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear. [finality, no going back, reluctant alliance sealed]",
              "segment_index": 0,
              "shot_type": "WS",
              "source_shot_id": "EP001_SH36",
              "source_text": "They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear. No going back. They are stuck with each other.",
              "transition": "smooth"
            },
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MCU: Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls. [forced truce, survival instinct overriding hostility]",
              "segment_index": 1,
              "shot_type": "MCU",
              "source_shot_id": "EP001_SH33",
              "source_text": "Wren releases Jade. The pod lurches. Both brace against the walls. The standoff is over \u2014 survival takes priority.",
              "transition": "smooth"
            },
            {
              "duration_s": 5,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.55,
                "movement": "push_in"
              },
              "prompt": "MS: Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength. [raw exertion, mechanical power, reluctant dependence]",
              "segment_index": 2,
              "shot_type": "MS",
              "source_shot_id": "EP001_SH34",
              "source_text": "Wren grabs a cable with one hand, Jade with the other. He climbs toward the catwalk above, hauling them both up by brute mechanical strength.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH36",
            "EP001_SH34"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        },
        {
          "arc_preamble": "",
          "blueprint_image_path": null,
          "blueprint_source": "none",
          "camera_side": "A",
          "character_count": 1,
          "duration_s": 4,
          "element_config": {
            "character_elements": [
              {
                "char_id": "JADE"
              }
            ],
            "location_id": "int_lower_decks_maintenance_shaft"
          },
          "episode_id": "EP001",
          "focus_character": "JADE",
          "format_a_angle_index": -1,
          "format_type": "B",
          "generation_config": {
            "aspect_ratio": "9:16",
            "cfg_scale": 0.55,
            "mode": "r2v",
            "model": "seeddance-2.0",
            "start_frame_path": null
          },
          "label": "JADE B (int_lower_decks_maintenance_shaft)",
          "location_id": "int_lower_decks_maintenance_shaft",
          "pass_id": "EP001_PASS_017_SH35_A_JADE",
          "pass_type": "character",
          "segments": [
            {
              "duration_s": 4,
              "is_wildcard": false,
              "motion_preset": {
                "intensity": 0.5,
                "movement": "static"
              },
              "prompt": "CU: Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren. [desperate grip, relief breaking through, split-second decision to help]",
              "segment_index": 0,
              "shot_type": "CU",
              "source_shot_id": "EP001_SH35",
              "source_text": "Jade grabs the catwalk railing, pulls herself over. A beat of hesitation. She reaches back down for Wren. First act of reciprocity.",
              "transition": "smooth"
            }
          ],
          "shot_range": [
            "EP001_SH35",
            "EP001_SH35"
          ],
          "status": "draft",
          "takes_count": 1,
          "wildcard_enabled": false
        }
      ],
      "path": "tartarus/state/visual/coverage_passes/ep_001_passes.json"
    },
    {
      "data": {
        "attempts": 2,
        "cost_incurred": 0.351,
        "episode_id": "EP999",
        "error_message": "Gate 2 semantic check: subject mismatch \u2014 expected 'space station' got 'ocean platform'",
        "gate_results": {
          "gate_1": {
            "passed": true,
            "score": 0.92
          },
          "gate_2": {
            "passed": false,
            "reason": "subject mismatch",
            "score": 0.31
          }
        },
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3-pro-image-preview",
        "output_path": "sequences/ep_999/shot_001.png",
        "pipeline": "still",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH01",
        "status": "previs_generated",
        "takes": [],
        "updated_at": 1772263489.831521
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH01.json"
    },
    {
      "data": {
        "attempts": 1,
        "cost_incurred": 0.7900000000000001,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {
          "gate_1": {
            "passed": true,
            "score": 0.95
          },
          "gate_2": {
            "passed": true,
            "score": 0.88
          },
          "gate_3": {
            "drift_frames": [
              12,
              47
            ],
            "passed": true,
            "score": 0.76
          }
        },
        "job_id": null,
        "max_attempts": 3,
        "model": "kling-3.0",
        "output_path": "sequences/ep_999/shot_002_take3.png",
        "pipeline": "t2v",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH02",
        "status": "previs_generated",
        "takes": [
          {
            "path": "sequences/ep_999/EP999_SH02_take1.mp4",
            "rejected": true,
            "score": 0.76,
            "take_id": "take_1"
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_002_take2.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct and natural."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "Colors are rendered correctly without banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No external watermarks or logos are visible. Text on the uniform patch is part of the scene."
                }
              },
              "passed": true
            },
            "generated_at": 1772263515.5405471,
            "prompt": "young woman close-up, concerned expression, breath fogging cracked glass, damaged space station interior, viewport showing amber starfield, slight head turn toward camera, eyes searching, anxious, haunted, determined",
            "take_id": "take_2",
            "take_num": 2
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_002_take3.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the subject is correct with no visible defects."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without corruption or banding."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or external logos are detected. The text on the uniform is part of the scene."
                }
              },
              "passed": true
            },
            "generated_at": 1772265761.194583,
            "prompt": "young woman close-up, concerned expression, breath fogging cracked glass, damaged space station interior, viewport showing amber starfield, slight head turn toward camera, eyes searching, anxious, haunted, determined",
            "take_id": "take_3",
            "take_num": 3
          }
        ],
        "updated_at": 1772300852.4551811
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH02.json"
    },
    {
      "data": {
        "attempts": 1,
        "cost_incurred": 0.078,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {},
        "job_id": null,
        "max_attempts": 3,
        "model": "kling-3.0",
        "output_path": "sequences/ep_999/shot_003.png",
        "pipeline": "i2v",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH03",
        "status": "previs_generated",
        "takes": [],
        "updated_at": 1772263492.871847
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH03.json"
    },
    {
      "data": {
        "attempts": 2,
        "cost_incurred": 0.495,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {
          "gate_1": {
            "passed": true,
            "score": 0.94
          },
          "gate_2": {
            "passed": true,
            "score": 0.91
          },
          "gate_3": {
            "passed": true,
            "score": 0.85
          }
        },
        "job_id": null,
        "max_attempts": 3,
        "model": "seeddance-2.0",
        "output_path": "sequences/ep_999/shot_004.png",
        "pipeline": "multi_shot",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH04",
        "status": "previs_approved",
        "takes": [
          {
            "path": "sequences/ep_999/EP999_SH04_take1.mp4",
            "score": 0.72,
            "take_id": "take_1"
          },
          {
            "path": "sequences/ep_999/EP999_SH04_take2.mp4",
            "score": 0.85,
            "take_id": "take_2"
          }
        ],
        "updated_at": 1772260338.873423
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH04.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.273,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {},
        "job_id": null,
        "max_attempts": 3,
        "model": "seeddance-2.0",
        "output_path": "sequences/ep_999/shot_005_take6.png",
        "pipeline": "multi_shot",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH05",
        "status": "previs_generated",
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_005_take1.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the person is correct."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1772263539.278364,
            "prompt": "man's hand on palm scanner, red glow illuminating face, sealed bulkhead door, space station corridor, palm pressing against scanner surface, red light activating, tense, anticipatory",
            "rejected": true,
            "take_id": "take_1",
            "take_num": 1
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_005_take2.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The hand and arm anatomy is correct and natural."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are present."
                }
              },
              "passed": true
            },
            "generated_at": 1772263647.4452841,
            "prompt": "ECU man's hand on palm scanner, red glow illuminating, palm pressing against scanner surface, red light activating, tense, anticipatory",
            "take_id": "take_2",
            "take_num": 2
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_005_take3.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a full scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1772263696.588968,
            "prompt": "man's hand on palm scanner, red glow illuminating face, sealed bulkhead door, space station corridor, palm pressing against scanner surface, red light activating, tense, anticipatory",
            "take_id": "take_3",
            "take_num": 3
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_005_take3.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "n/a"
                },
                "black_frame": {
                  "pass": true,
                  "reason": "n/a"
                },
                "color": {
                  "pass": true,
                  "reason": "n/a"
                },
                "resolution": {
                  "pass": true,
                  "reason": "n/a"
                },
                "watermark": {
                  "pass": true,
                  "reason": "n/a"
                }
              },
              "passed": true
            },
            "generated_at": 1772263710.231636,
            "prompt": "man's hand on palm scanner, red glow illuminating face, sealed bulkhead door, space station corridor, palm pressing against scanner surface, red light activating, tense, anticipatory",
            "take_id": "take_3",
            "take_num": 3
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_999/shot_005_take3.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the man and the person in the background is correct, with no severe errors like extra limbs or merged parts."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays. The text present is part of the scene's narrative."
                }
              },
              "passed": true
            },
            "generated_at": 1772263710.5975769,
            "prompt": "man's hand on palm scanner, red glow illuminating face, sealed bulkhead door, space station corridor, palm pressing against scanner surface, red light activating, tense, anticipatory",
            "take_id": "take_3",
            "take_num": 3
          }
        ],
        "updated_at": 1772300857.787782
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH05.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {},
        "job_id": null,
        "max_attempts": 3,
        "model": "seeddance-2.0",
        "output_path": "sequences/ep_999/shot_006.png",
        "pipeline": "multi_shot",
        "session_id": "test-session-001",
        "shot_id": "EP999_SH06",
        "status": "previs_generated",
        "takes": [],
        "updated_at": 1772263602.52703
      },
      "path": "tartarus/state/visual/execution_store.json/state/starsend/shots/EP999_SH06.json"
    },
    {
      "data": {
        "aesthetic_directives": {
          "locked": false,
          "tone": "Muted naturalism \u2014 earth tones, lived-in textures, desaturated palette. Let grime and wear tell the story."
        },
        "characters": {
          "CHEN": {
            "casting_description": "Skin translucent, veins mapping blue through tissue paper flesh. A hollowed-out husk of who he was \u2014 gaunt, fragile, drained.",
            "char_id": "CHEN",
            "display_name": "Chen",
            "episodes": [
              24
            ],
            "gender": "male",
            "height_cm": null,
            "phases": [
              {
                "distinguishing_marks": "half-drained body, tissue paper flesh",
                "end_ep": 24,
                "hair_makeup": "translucent skin, blue veins visible, emaciated",
                "phase_id": "chen_phase_1_harvest_victim",
                "phase_trigger_event": "Found on harvest table by Jade",
                "start_ep": 24,
                "wardrobe_description": "stripped, exposed on organic harvest platform"
              }
            ],
            "role": "minor",
            "scale_prompt_fragment": null,
            "visual_description": "Emaciated male, translucent skin, blue veins visible through tissue-paper flesh. Half-drained, hollow."
          },
          "JADE": {
            "_manual_override": true,
            "_override_at": 1772482296.250649,
            "casting_description": "Late 20s, lean and wiry \u2014 the compact build of someone who survives by fitting where others can't. Grime-streaked face with sharp features and prominent freckles. Sweat-matted, short, reddish-brown hair. Calloused hands, knuckles scarred. Skin on arms and shoulders is dirty and wet, with visible oil and liquid streaks.",
            "char_id": "JADE",
            "display_name": "Jade",
            "episodes": [
              1,
              2,
              3
            ],
            "gender": "female",
            "height_cm": null,
            "phases": [
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 10,
                "hair_makeup": "grime-streaked face, sweat-matted hair",
                "phase_id": "jade_phase_1_full_mask",
                "phase_trigger_event": "Initial state",
                "start_ep": 1,
                "wardrobe_arc_carries": "N/A",
                "wardrobe_arc_delta": "BASE (Phase 1) - Hook wardrobe. her canvas work jacket is off at first, tied around her waist. Functional, and grime-streaked clothing, marking her low transactional worth.",
                "wardrobe_description": "Jade wears a tanktop, rebreather around her neck, canvas jacket wrapped around her waist as she works. Her reinforced cargo pants, stained with oil and dirt, feature multiple functional pockets. Scuffed, steel-toed work boots complete her practical footwear. Around her neck hangs an industrial respirator mask with twin circular filters and corrugated hoses, ready for immediate use. Her left wrist bears a welded gunmetal debt counter, amber digits glowing faintly. Calloused hands are covered by grimy, fingerless leather gloves, showing signs of heavy wear. Heavy metal salvage hook clipped to belt or held in hand."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 20,
                "hair_makeup": "grime-streaked face, sweat-matted hair",
                "phase_id": "jade_phase_2_cracks_forming",
                "phase_trigger_event": "Protects Wren without calculating first",
                "start_ep": 11,
                "wardrobe_arc_carries": "faded olive thermal undershirt, reinforced cargo pants, scuffed work boots, welded gunmetal debt counter",
                "wardrobe_arc_delta": "~ Jacket: Exhibits more prominent tears, particularly at the shoulders and elbows, from physical trials; grime is deeper, more ingrained, reflecting the \"cracks forming\" in her protective shell. ~ Gloves: More frayed, with a finger now exposed, symbolizing subtle vulnerability. ~ Respirator mask: Hangs slightly more loosely around her neck, suggesting a subconscious lowering of her constant vigilance.",
                "wardrobe_description": "Jade's heavy, dark charcoal canvas work jacket shows deeper grime and prominent tears, especially around the shoulders and elbows, revealing the faded olive thermal undershirt beneath. Her reinforced cargo pants remain stained and dirty, paired with scuffed work boots. The industrial respirator mask hangs a little more loosely around her neck, less perfectly aligned. Her grimy, fingerless leather gloves are now more frayed, with a finger exposed. The welded gunmetal debt counter with amber digits remains on her left wrist."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 30,
                "hair_makeup": "grime-streaked face, sweat-matted hair, exhaustion lines",
                "phase_id": "jade_phase_3_mask_straining",
                "phase_trigger_event": "Carries wounded Wren through hostile territory",
                "start_ep": 21,
                "wardrobe_arc_carries": "faded olive thermal undershirt, reinforced cargo pants, scuffed work boots, welded gunmetal debt counter",
                "wardrobe_arc_delta": "- Grimy, fingerless leather gloves: Removed or lost during intense physical trials, exposing calloused and scarred hands as her vulnerability deepens. ~ Jacket: Suffers further significant damage, with a large rip across a shoulder, symbolizing the increasing erosion of her protective layer. ~ Respirator mask: Pushed further down, hanging by one strap, reflecting her increasing emotional exposure, especially leading to the broadcast. ~ Hair/Face: More disheveled and sweat-matted, showing the physical and emotional toll of carrying Wren.",
                "wardrobe_description": "Jade's protective shell is visibly straining; the dark charcoal canvas work jacket is now significantly damaged with a large rip across one shoulder, exposing more of the grime-stained, faded olive thermal undershirt. Her reinforced cargo pants are scuffed and heavily soiled, paired with worn work boots. Her hands are bare, the grimy fingerless leather gloves having been removed or lost, revealing scarred knuckles. The industrial respirator mask is pushed down, hanging by one strap, its presence diminished. The welded gunmetal debt counter glows starkly on her left wrist."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 32,
                "hair_makeup": "tear-streaked grime, pale complexion, sweat-matted hair",
                "phase_id": "jade_phase_4_breaking",
                "phase_trigger_event": "Sees crew names on Harvest tubes",
                "start_ep": 31,
                "wardrobe_arc_carries": "reinforced cargo pants, scuffed work boots, bare scarred hands, welded gunmetal debt counter",
                "wardrobe_arc_delta": "- Dark charcoal canvas work jacket: Discarded, symbolizing the complete breaking of her initial protective shell and the raw emotional impact of seeing her crew's names. ~ Faded olive thermal undershirt: Now the primary visible garment, it shows more prominent tears and grime, reflecting its new role as her only upper body covering. ~ Respirator mask: Completely off and tucked away, reflecting the raw emotional exposure.",
                "wardrobe_description": "Jade's primary protective shell is gone; the dark charcoal canvas work jacket has been discarded, leaving her in a grime-stained, faded olive thermal undershirt, now showing its own tears and wear as the primary garment. Her reinforced cargo pants are heavily soiled and scuffed, paired with worn work boots. Her hands remain bare, knuckles scarred. The industrial respirator mask is completely off and likely tucked away, her face fully exposed. The welded gunmetal debt counter is starkly visible on her left wrist, a prominent marker against her stripped-down state."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 38,
                "hair_makeup": "grime-streaked face, sweat-matted hair, rigid posture",
                "phase_id": "jade_phase_5_architect_betrayal",
                "phase_trigger_event": "Learns Wren designed the system",
                "start_ep": 33,
                "wardrobe_arc_carries": "scuffed work boots, bare scarred hands, welded gunmetal debt counter",
                "wardrobe_arc_delta": "- Utility belt with pouches and tools: Discarded or lost during her flight and separation from Wren, symbolizing her rejection of the system's tools and her former transactional identity. ~ Faded olive thermal undershirt: Shows more severe tears and new bloodstains, reflecting continued physical and emotional trials. ~ Reinforced cargo pants: Further damaged and soiled, reflecting the harsh journey and betrayal. ~ Hair/Face: More haggard and tear-streaked, emphasizing the intense emotional impact of Wren's reveal and subsequent separation.",
                "wardrobe_description": "Stripped further, Jade wears a heavily torn and grime-stained faded olive thermal undershirt, now showing bloodstains and significant wear from her trials. Her reinforced cargo pants are severely damaged, scuffed, and soiled, paired with worn work boots. Her hands are bare, scarred, and her face haggard, tear-streaked, and fully exposed, reflecting profound emotional toll. The utility belt, once a symbol of her self-reliance, is gone. The welded gunmetal debt counter remains on her left wrist, a stark reminder of the system she now utterly rejects."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 45,
                "hair_makeup": "grime-streaked face, sweat-matted hair",
                "phase_id": "jade_phase_6_slow_thaw",
                "phase_trigger_event": "Witnesses Wren suffering",
                "start_ep": 39,
                "wardrobe_arc_carries": "bare scarred hands, welded gunmetal debt counter",
                "wardrobe_arc_delta": "~ Faded olive thermal undershirt: Even more severely ripped and blood-stained, barely covering her, symbolizing her physical and emotional vulnerability at the \"ALL_IS_LOST\" moment. ~ Reinforced cargo pants: Heavily shredded and soiled, reflecting the extreme duress and proximity to death. ~ Scuffed work boots: Now appear broken and barely functional, mirroring her failing physical state. ~ Face: Pale, gaunt, and fully exposed, emphasizing her dying state and the complete stripping away of any pretense or protection.",
                "wardrobe_description": "At her most vulnerable, Jade is clad in a severely ripped, blood-stained, and grime-encrusted faded olive thermal undershirt, barely clinging to her body and revealing parts of her skin. Her reinforced cargo pants are heavily shredded and soiled, paired with broken, scuffed work boots. Her bare, scarred hands tremble, and her face is pale, gaunt, and fully exposed, reflecting her dying state from the harvest catalyst. The welded gunmetal debt counter on her left wrist is a stark, ironic marker against her rapidly deteriorating physical form, highlighting the system's final, brutal grip."
              },
              {
                "distinguishing_marks": "debt counter welded to left wrist",
                "end_ep": 61,
                "hair_makeup": "grime-streaked face, sweat-matted hair",
                "phase_id": "jade_phase_7_rebuilt",
                "phase_trigger_event": "Watches Wren merge",
                "start_ep": 46,
                "wardrobe_arc_carries": "N/A",
                "wardrobe_arc_delta": "- Welded gunmetal debt counter: Physically ripped from her wrist (Ep 57), leaving a raw, then healed, scar, symbolizing ultimate freedom from transactional worth. - All previous grime-streaked, functional, industrial clothing (undershirt, pants, boots): Replaced entirely, reflecting a complete transformation and new life. + Simple, comfortable, natural-fiber clothing: Post-time jump, she wears a loose-fitting forest green tunic and beige trousers made of linen and cotton, symbolizing intrinsic value, comfort, and harmony with the new world. ~ Hair: Now silver and styled simply, indicating the passage of time and a settled life. ~ Hands: Calloused but clean, free of oil streaks, reflecting a life of honest work in a free world. ~ Face: Unmasked, serene, yet still sharp, showing the wisdom and defiance of her journey.",
                "wardrobe_description": "Forty-seven years later, Jade embodies unmasked freedom. Her silver hair is styled simply, and her clean, calloused hands are free of the debt counter, its absence marked by a faint, healed scar on her left wrist. She wears comfortable, loose-fitting garments made of natural linen and soft cotton in muted earth tones\u2014a soft forest green tunic and simple, well-maintained beige trousers. All grime, industrial accessories, and markers of transactional worth are gone, replaced by clothing that celebrates intrinsic human value and a life lived in harmony with a new world, reflecting profound peace and defiance."
              }
            ],
            "real_name": "Jori",
            "scale_prompt_fragment": null,
            "visual_description": "Late 20s, lean and wiry, compact angular frame. Grime-streaked face with sharp features and prominent freckles. Sweat-matted, short, reddish-brown hair. Calloused hands, knuckles scarred. Skin on arms and shoulders is dirty and wet, with visible oil streaks.",
            "wardrobe_arc_thesis": "Jade's grime-streaked and functional clothing, initially a protective shell and a marker of her low transactional worth, slowly erodes and peels away through trials (FIRST_CRACK, ALL_IS_LOST), ultimately unveiling a vulnerable yet powerfully defiant human being whose intrinsic value is celebrated in unmasked freedom (RESOLUTION).",
            "wardrobe_arc_thesis_approved": true,
            "wardrobe_arc_thesis_source": "director"
          },
          "VAREK": {
            "casting_description": "Lean, precise build with the economy of a predator \u2014 patience in the spine, sudden violence in the hands. Scar across his throat, pink and deliberate. Eyes that don't blink enough, watching with flat assessment. Moves like something with better reflexes than you: still when he should be still, fast when he decides to be fast. Smiles with teeth visible and eyes empty, a learned behavior performed for effect. Everything about him reads control.",
            "char_id": "VAREK",
            "display_name": "Varek",
            "episodes": [
              3
            ],
            "gender": "male",
            "height_cm": null,
            "phases": [
              {
                "distinguishing_marks": "scar across throat, pink and deliberate",
                "end_ep": 15,
                "hair_makeup": "perfectly groomed, unblinking eyes",
                "phase_id": "varek_phase_1_hunter",
                "phase_trigger_event": "Initial state",
                "start_ep": 1,
                "wardrobe_description": "chrome and gold accents, immaculate tailoring, clean cuffs, polished shoes"
              },
              {
                "distinguishing_marks": "scar across throat, pink and deliberate",
                "end_ep": 30,
                "hair_makeup": "perfectly groomed, unblinking eyes",
                "phase_id": "varek_phase_2_frustrated",
                "phase_trigger_event": "Quarry keeps escaping",
                "start_ep": 16,
                "wardrobe_description": "chrome and gold accents, immaculate tailoring, clean cuffs, polished shoes"
              },
              {
                "distinguishing_marks": "scar across throat, pink and deliberate",
                "end_ep": 41,
                "hair_makeup": "perfectly groomed, unblinking eyes, tension lines",
                "phase_id": "varek_phase_3_desperate",
                "phase_trigger_event": "System defending itself through him",
                "start_ep": 31,
                "wardrobe_description": "chrome and gold accents, immaculate tailoring, slight disarray in cuffs, scuffed shoes"
              },
              {
                "distinguishing_marks": "scar across throat, pink and deliberate",
                "end_ep": 47,
                "hair_makeup": "disheveled, unblinking eyes, pale",
                "phase_id": "varek_phase_4_collapse",
                "phase_trigger_event": "Sees empty thrones",
                "start_ep": 42,
                "wardrobe_description": "chrome and gold accents, rumpled tailoring, unadjusted cuffs, scuffed shoes"
              },
              {
                "distinguishing_marks": "scar across throat, pink and deliberate",
                "end_ep": 54,
                "hair_makeup": "disheveled, unblinking eyes, focused",
                "phase_id": "varek_phase_5_transactional_pivot",
                "phase_trigger_event": "Calculates moral debt",
                "start_ep": 48,
                "wardrobe_description": "chrome and gold accents, stripped down tailoring, discarded jacket, rolled sleeves"
              }
            ],
            "scale_prompt_fragment": null,
            "visual_description": "Lean, precise build. Sharp jaw, hollow cheeks, immaculate grooming. Unblinking eyes with a flat, assessing stare. Pink scar across throat. Thin smile, teeth visible, eyes empty."
          },
          "WREN": {
            "casting_description": "Massive combat chassis \u2014 military-grade android frame, scarred alloy plating over reinforced joints, brushed steel surfaces. Synthetic skin elements over rigid features, the uncanny valley of something built to approximate human but designed for war. Towering frame, broad shoulders, heavy limbs built to absorb impact. Eyes that look almost human but move with mechanical precision.",
            "char_id": "WREN",
            "display_name": "Wren",
            "episodes": [
              1,
              2,
              3
            ],
            "gender": "male",
            "height_cm": null,
            "phases": [
              {
                "distinguishing_marks": "Pale blue eyes (human, not glowing). Rounded blue helmet with orange-rust stripes. Visible shoulder gears. Heavy battle scarring on chassis plating.",
                "end_ep": 15,
                "hair_makeup": "Human face exposed beneath helmet. Weathered skin, stubble, strong brow. No visible hair.",
                "phase_id": "wren_phase_1_pure_function",
                "phase_trigger_event": "Wakes from cryo-pod",
                "start_ep": 1,
                "wardrobe_arc_carries": "N/A",
                "wardrobe_arc_delta": "BASE",
                "wardrobe_description": "Wren's towering form is encased in a massive military-grade armored chassis \u2014 dark gunmetal blue brushed steel with heavy plating, visible shoulder gears, and riveted joints. The armor is pristine but aged, with factory-original rust patina on exposed bolt heads and seams. His human face is exposed beneath a rounded blue-painted helmet with orange-rust accent stripes. Pale blue eyes, strong jaw, weathered skin. No external garments \u2014 the chassis itself is the uniform."
              },
              {
                "distinguishing_marks": "electric blue eyes, solid iris and pupil, missing one arm (ep 19+)",
                "end_ep": 30,
                "hair_makeup": "synthetic skin elements, rigid features",
                "phase_id": "wren_phase_2_fragments_returning",
                "phase_trigger_event": "Memory slippage begins",
                "start_ep": 16,
                "wardrobe_arc_carries": "Left arm, torso, legs, head, electric blue eyes, synthetic skin (now damaged), brushed steel surfaces (now scuffed), internal designation (partially obscured).",
                "wardrobe_arc_delta": "- Right arm (from shoulder down), representing physical sacrifice and a break from his 'flawless' state.\n~ The right shoulder joint is now a raw, sparking, exposed cavity of wires, pistons, and damaged internal mechanisms, with surrounding brushed steel plating twisted, scored, and blackened from trauma. Synthetic skin is torn and peeling at the edges.\n~ Remaining chassis shows minor scuffs and scrapes from combat, reflecting increasing wear and tear.\n~ The 'WARDEN-7' designation is partially obscured by grime.",
                "wardrobe_description": "Wren's imposing chassis is now a scarred canvas, dominated by the raw, sparking cavity where his right arm once was. Twisted, scored, and blackened brushed steel plating surrounds the exposed wires, pistons, and damaged internal mechanisms of his shoulder. The light grey synthetic skin is torn and peeling at the wound's edges. His remaining dark gunmetal grey chassis shows minor scuffs and scrapes from combat, but the gaping arm wound is the most striking feature, a visible break from his initial flawless state. His electric blue eyes remain steady, and the 'WARDEN-7' designation is still present but partially obscured by grime."
              },
              {
                "distinguishing_marks": "electric blue eyes, solid iris and pupil, missing one arm",
                "end_ep": 45,
                "hair_makeup": "synthetic skin elements, rigid features",
                "phase_id": "wren_phase_3_full_memory",
                "phase_trigger_event": "Remembers designing the system",
                "start_ep": 31,
                "wardrobe_arc_carries": "Left arm, torso, legs, head, synthetic skin (further damaged), brushed steel surfaces (further damaged), internal designation (further obscured).",
                "wardrobe_arc_delta": "~ The raw cavity of Wren's missing right arm is now crudely covered with scavenged, mismatched metal plating and thick, dark, industrial-grade wiring, hastily affixed to his shoulder, preventing further damage but emphasizing the loss and makeshift repair.\n~ Brushed steel chassis is now heavily scored, dented, and scorched from sustained combat and the EMP blast, revealing deeper alloy layers beneath.\n~ Synthetic skin is ripped and peeling in multiple places, exposing rigid internal structures.\n~ Eyes frequently flicker between their steady electric blue and an aggressive, pulsing crimson, reflecting his internal conflict and the Warden-7 override.\n~ The 'WARDEN-7' designation is now deeply scratched and almost illegible, a relic of a fading identity.",
                "wardrobe_description": "Wren's heavily damaged chassis is now a testament to prolonged conflict and internal struggle. The raw cavity of his missing right arm is crudely covered with mismatched, scavenged metal plating and thick, dark, industrial-grade wiring, hastily affixed to his shoulder, emphasizing the loss and makeshift repair. His dark gunmetal grey brushed steel chassis is deeply scored, dented, and scorched from sustained combat and EMP blasts, revealing deeper alloy layers. Synthetic skin is ripped and peeling in multiple places, exposing rigid internal structures. His eyes frequently flicker between electric blue and an aggressive, pulsing crimson, reflecting his internal conflict. The 'WARDEN-7' designation is deeply scratched and almost illegible, a fading relic of his past identity."
              },
              {
                "distinguishing_marks": "electric blue eyes, solid iris and pupil, missing one arm",
                "end_ep": 61,
                "hair_makeup": "synthetic skin elements, rigid features",
                "phase_id": "wren_phase_4_reborn_choice",
                "phase_trigger_event": "Chooses sacrifice as repair",
                "start_ep": 46,
                "wardrobe_arc_carries": "N/A (his physical form is gone).",
                "wardrobe_arc_delta": "- Wren's entire physical chassis, piece by piece, dissolving into streams of shimmering blue light as he merges with the ship, representing the complete rejection of his individual, systemic function.\n~ His eyes, now a vibrant blue-green, are the last physical elements to dissolve, radiating a soft, steady light as his consciousness spreads throughout the ship. The 'scarred canvas' of his body is gone, replaced by an omnipresent, integrated energy.",
                "wardrobe_description": "Wren's physical form is no longer present as an individual chassis. Instead, his body dissolves into streams of shimmering blue light, merging with the ship's consciousness. His remaining left hand, then arm, torso, legs, and head visibly dematerialize, leaving no physical form. His eyes, now a vibrant blue-green, are the last elements to dissolve, radiating a soft, steady light as his consciousness spreads throughout the ship, a visual rejection of his former systemic function in favor of a selfless, integrated existence."
              }
            ],
            "scale_prompt_fragment": null,
            "visual_description": "Towering armored figure with a human face. Strong jaw, intense pale blue eyes, weathered skin, heavy brow. Face exposed beneath a rounded military helmet \u2014 blue-painted steel with orange-rust accent stripes, riveted, battle-scarred. Massive dark gunmetal blue armored chassis with visible gears at the shoulders, heavy plating across chest and arms, extensive rust and combat weathering. Human hands. Imposing frame, broad shoulders.",
            "wardrobe_arc_thesis": "Wren's imposing android form, initially a flawless uniform representing his programmed worth and debt to the system, becomes a scarred canvas of chosen identity as physical damage and internal conflict mark him (Ep 19 - DEEPENING), culminating in the dissolution of his individual chassis into a selfless, integrated protector (Ep 54 - RESOLUTION) that visibly rejects systemic function in favor of personal choice.",
            "wardrobe_arc_thesis_approved": true,
            "wardrobe_arc_thesis_source": "director"
          }
        },
        "generated_at": "2023-10-24T00:00:00Z",
        "lighting_motifs": [
          {
            "associated_characters": [
              "WREN"
            ],
            "associated_locations": [
              "int_lower_decks_maintenance_shaft",
              "int_lower_decks_corridor"
            ],
            "color_temp": "blue",
            "description": "Solid electric blue, iris and pupil burning together, indicates tactical processing and threat assessment.",
            "motif_id": "wren_tactical_blue"
          },
          {
            "associated_characters": [
              "VAREK"
            ],
            "associated_locations": [
              "int_lower_decks_corridor"
            ],
            "color_temp": "warm",
            "description": "Red sweep-light flooding corridors, indicates Collector drone pursuit and imminent violence.",
            "motif_id": "collector_sweep_red"
          },
          {
            "associated_characters": [],
            "associated_locations": [
              "int_lower_decks_corridor"
            ],
            "color_temp": "amber",
            "description": "Amber sweeping light, indicates municipal surveillance and automated penalty assessment.",
            "motif_id": "warden_sweep_amber"
          }
        ],
        "locations": {
          "int_lower_decks_corridor": {
            "aliases": [
              "INT. CORRIDOR",
              "INT. DEAD-END JUNCTION"
            ],
            "atmosphere": "The air tastes like iron and condensation. Emergency strip lights overhead cast hard pools of white on metal grating, carving the corridor into lit islands and black trenches. Steam hisses from cracked pipes and hangs in the light beams like something breathing. Rust flakes drift from sweating walls when you brush them. The ship groans \u2014 metal settling against metal, infrastructure older than anyone alive remembering what it was built for. Every surface is slick. Every shadow could hold a Warden drone or a dead end. The sound never stops: dripping, hissing, the low harmonic moan of a vessel eating itself from the inside. Claustrophobic ceilings press down. The smell is oxidized metal, recycled sweat, and the chemical tang of whatever the ship pumps through its veins to keep the lower decks just barely habitable.",
            "color_palette": [
              "#2A2A2A",
              "#8B4513",
              "#4A4A4A"
            ],
            "description": "metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows",
            "habitat_zone": "Lower Decks",
            "lighting_profile": {
              "color_temp": "mixed",
              "direction": "ABOVE",
              "primary_source": "emergency strip lights",
              "quality": "hard"
            },
            "location_id": "int_lower_decks_corridor"
          },
          "int_lower_decks_maintenance_shaft": {
            "aliases": [
              "INT. SHAFT"
            ],
            "atmosphere": "Vertigo made physical. A bottomless vertical abyss where anchor cables groan under tension and ceiling struts disappear into darkness above and below. Metal grating platforms jut from the shaft walls with no railings \u2014 step wrong and you fall forever. Wind howls upward from the void, carrying a cold that gets into your teeth. Cool blue light rises from somewhere far below, source unknown, painting everything in undershadow \u2014 faces lit from beneath, features inverted, the familiar made alien. The scale crushes you: humans are insects here, clinging to infrastructure that doesn't care whether they hold on. Cables vibrate with the ship's pulse. Sparks spit from stressed joints. The sound is the wind and the metal singing together, a frequency that sits in the chest and says down.",
            "color_palette": [
              "#1A1A1A",
              "#2C3E50",
              "#000000"
            ],
            "description": "bottomless abyss, anchor cables, ceiling struts, howling wind, metal grating",
            "habitat_zone": "Lower Decks",
            "lighting_profile": {
              "color_temp": "cool",
              "direction": "BELOW",
              "primary_source": "ambient abyss glow",
              "quality": "soft"
            },
            "location_id": "int_lower_decks_maintenance_shaft"
          }
        },
        "project": "tartarus",
        "props": {
          "collector_drone": {
            "associated_characters": [
              "JADE",
              "WREN",
              "VAREK"
            ],
            "description": "blade arrays, humming chassis, red sweep-light, chrome accents",
            "episodes": [
              2,
              3
            ],
            "prop_id": "collector_drone",
            "state_notes": "blade arrays extend and retract"
          },
          "cryo_pod": {
            "associated_characters": [
              "JADE",
              "WREN"
            ],
            "description": "brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel",
            "episodes": [
              1,
              2
            ],
            "prop_id": "cryo_pod",
            "state_notes": "anchors snap and falls into abyss in ep 2"
          },
          "debt_counter": {
            "associated_characters": [
              "JADE"
            ],
            "description": "amber digital display, welded metal casing, ticking numbers",
            "episodes": [
              1,
              2,
              3
            ],
            "prop_id": "debt_counter",
            "state_notes": "welded to left wrist, cannot be removed"
          },
          "salvage_hook": {
            "associated_characters": [
              "JADE"
            ],
            "description": "heavy metal hook, worn smooth handle, salvage-standard issue",
            "episodes": [
              1
            ],
            "prop_id": "salvage_hook",
            "state_notes": "worn smooth from use"
          },
          "warden_drone": {
            "associated_characters": [
              "WREN"
            ],
            "description": "four rotors, spinning sensor array, amber sweep-light, municipal markings",
            "episodes": [
              2
            ],
            "prop_id": "warden_drone",
            "state_notes": "destroyed by Wren in ep 2, ripped open, smoldering core"
          }
        },
        "structural_analysis": "Calculated timeline across 61 episodes. Extracted Jade, Wren, Varek appearances in Ep 1-3. Mapped phase boundaries from Character Bible. Resolved Jade phase overlap by setting Phase 4 to 31-32 and Phase 5 to 33-38. Extracted props: salvage_hook, debt_counter, cryo_pod, warden_drone, collector_drone. Consolidated locations into Lower Decks zone. Extracted lighting motifs: wren_tactical_blue, collector_sweep_red, warden_sweep_amber.",
        "total_episodes": 61,
        "wardrobe_philosophy": "Wardrobe serves as a protective chassis, with characters initially encased in physical or metaphorical armor against the brutal ship and each other, only for these shells to be broken down and transformed through vulnerability and connection.",
        "wardrobe_philosophy_approved": true
      },
      "path": "tartarus/state/visual/global_bible.json"
    },
    {
      "data": {
        "notes": {
          "EP001_SH02_prompt_still": {
            "author": "JT",
            "text": "Test note from browser debug round",
            "timestamp": "2026-03-24T02:27:25.644Z"
          }
        },
        "updated_at": "2026-03-24T02:27:25.648681+00:00"
      },
      "path": "tartarus/state/visual/inspector_notes.json"
    },
    {
      "data": [
        {
          "new_name": "torch_identity_hero_v01.jpeg",
          "new_path": "tartarus/assets/identity/torch/torch_identity_hero_v01.jpeg",
          "old_path": "tartarus/assets/identity/torch/hero.jpeg",
          "subject": "torch",
          "type": "identity",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "torch_identity_beauty_v01.png",
          "new_path": "tartarus/assets/identity/torch/torch_identity_beauty_v01.png",
          "old_path": "tartarus/assets/identity/torch/hero_beauty.png",
          "subject": "torch",
          "type": "identity",
          "variant": "beauty",
          "version": 1
        },
        {
          "new_name": "torch_turn_back_v01.png",
          "new_path": "tartarus/assets/identity/torch/torch_turn_back_v01.png",
          "old_path": "tartarus/assets/identity/torch/torch_back.png",
          "subject": "torch",
          "type": "turn",
          "variant": "back",
          "version": 1
        },
        {
          "new_name": "torch_turn_front_v01.png",
          "new_path": "tartarus/assets/identity/torch/torch_turn_front_v01.png",
          "old_path": "tartarus/assets/identity/torch/torch_front.png",
          "subject": "torch",
          "type": "turn",
          "variant": "front",
          "version": 1
        },
        {
          "new_name": "torch_turn_profile_v01.png",
          "new_path": "tartarus/assets/identity/torch/torch_turn_profile_v01.png",
          "old_path": "tartarus/assets/identity/torch/torch_profile.png",
          "subject": "torch",
          "type": "turn",
          "variant": "profile",
          "version": 1
        },
        {
          "new_name": "torch_turn_three-quarter_v01.png",
          "new_path": "tartarus/assets/identity/torch/torch_turn_three-quarter_v01.png",
          "old_path": "tartarus/assets/identity/torch/torch_three_quarter.png",
          "subject": "torch",
          "type": "turn",
          "variant": "three-quarter",
          "version": 1
        },
        {
          "new_name": "varek_identity_hero_v01.jpeg",
          "new_path": "tartarus/assets/identity/varek/varek_identity_hero_v01.jpeg",
          "old_path": "tartarus/assets/identity/varek/VAREK_ref_03.jpeg",
          "subject": "varek",
          "type": "identity",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "varek_turn_back_v01.png",
          "new_path": "tartarus/assets/identity/varek/varek_turn_back_v01.png",
          "old_path": "tartarus/assets/identity/varek/varek_back.png",
          "subject": "varek",
          "type": "turn",
          "variant": "back",
          "version": 1
        },
        {
          "new_name": "varek_turn_front_v01.png",
          "new_path": "tartarus/assets/identity/varek/varek_turn_front_v01.png",
          "old_path": "tartarus/assets/identity/varek/varek_front.png",
          "subject": "varek",
          "type": "turn",
          "variant": "front",
          "version": 1
        },
        {
          "new_name": "varek_turn_profile_v01.png",
          "new_path": "tartarus/assets/identity/varek/varek_turn_profile_v01.png",
          "old_path": "tartarus/assets/identity/varek/varek_profile.png",
          "subject": "varek",
          "type": "turn",
          "variant": "profile",
          "version": 1
        },
        {
          "new_name": "varek_turn_three-quarter_v01.png",
          "new_path": "tartarus/assets/identity/varek/varek_turn_three-quarter_v01.png",
          "old_path": "tartarus/assets/identity/varek/varek_three_quarter.png",
          "subject": "varek",
          "type": "turn",
          "variant": "three-quarter",
          "version": 1
        },
        {
          "new_name": "wren_identity_hero_v01.jpeg",
          "new_path": "tartarus/assets/identity/wren/wren_identity_hero_v01.jpeg",
          "old_path": "tartarus/assets/identity/wren/wren_Hero.jpeg",
          "subject": "wren",
          "type": "identity",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "wren_turn_back_v01.png",
          "new_path": "tartarus/assets/identity/wren/wren_turn_back_v01.png",
          "old_path": "tartarus/assets/identity/wren/wren_back.png",
          "subject": "wren",
          "type": "turn",
          "variant": "back",
          "version": 1
        },
        {
          "new_name": "wren_turn_front_v01.png",
          "new_path": "tartarus/assets/identity/wren/wren_turn_front_v01.png",
          "old_path": "tartarus/assets/identity/wren/wren_front.png",
          "subject": "wren",
          "type": "turn",
          "variant": "front",
          "version": 1
        },
        {
          "new_name": "wren_turn_profile_v01.png",
          "new_path": "tartarus/assets/identity/wren/wren_turn_profile_v01.png",
          "old_path": "tartarus/assets/identity/wren/wren_profile.png",
          "subject": "wren",
          "type": "turn",
          "variant": "profile",
          "version": 1
        },
        {
          "new_name": "wren_turn_three-quarter_v01.png",
          "new_path": "tartarus/assets/identity/wren/wren_turn_three-quarter_v01.png",
          "old_path": "tartarus/assets/identity/wren/wren_three_quarter.png",
          "subject": "wren",
          "type": "turn",
          "variant": "three-quarter",
          "version": 1
        },
        {
          "new_name": "torch_identity_hero_v01.png",
          "new_path": "tartarus/assets/heroes/torch_identity_hero_v01.png",
          "old_path": "tartarus/assets/heroes/torch_hero.png",
          "subject": "torch",
          "type": "identity",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "wren_identity_hero_v01.jpeg",
          "new_path": "tartarus/assets/heroes/wren_identity_hero_v01.jpeg",
          "old_path": "tartarus/assets/heroes/wren_hero.jpeg",
          "subject": "wren",
          "type": "identity",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_collapsed-junction_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_collapsed-junction_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/corridor_collapsed_junction.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "collapsed-junction",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_corridor-length_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_corridor-length_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/corridor_grid1_corridor_length.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "corridor-length",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_low-angle_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_low-angle_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/corridor_grid1_low_angle.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "low-angle",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_pipe-detail_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_pipe-detail_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/corridor_grid1_pipe_detail.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "pipe-detail",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_wall-detail_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_wall-detail_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/corridor_grid1_wall_detail.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "wall-detail",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_closeup_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_closeup_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/int_lower_decks_corridor_closeup.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "closeup",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_hero_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_hero_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/int_lower_decks_corridor_hero.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_medium_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_medium_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/int_lower_decks_corridor_medium.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "medium",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-corridor_loc_wide_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_corridor/int-lower-decks-corridor_loc_wide_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_corridor/int_lower_decks_corridor_wide.png",
          "subject": "int-lower-decks-corridor",
          "type": "loc",
          "variant": "wide",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_closeup_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_closeup_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int_lower_decks_maintenance_shaft_closeup.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "closeup",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_medium_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_medium_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int_lower_decks_maintenance_shaft_medium.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "medium",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_hero_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_hero_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int_lower_decks_maintenance_shaft_ref_02.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_wide_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_wide_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int_lower_decks_maintenance_shaft_wide.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "wide",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_curved-railing-overview_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_curved-railing-overview_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_curved_railing_overview.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "curved-railing-overview",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_dome-above_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_dome-above_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid1_dome_above.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "dome-above",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_dome-below_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_dome-below_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid1_dome_below.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "dome-below",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_platform-edge_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_platform-edge_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid1_platform_edge.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "platform-edge",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_side-ladder_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_side-ladder_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid1_side_ladder.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "side-ladder",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_looking-up_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_looking-up_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid2_looking_up.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "looking-up",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_rust-detail_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_rust-detail_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid2_rust_detail.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "rust-detail",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_structural-above_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_structural-above_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid2_structural_above.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "structural-above",
          "version": 1
        },
        {
          "new_name": "int-lower-decks-maintenance-shaft_loc_struts-mid_v01.png",
          "new_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/int-lower-decks-maintenance-shaft_loc_struts-mid_v01.png",
          "old_path": "tartarus/assets/loc/int_lower_decks_maintenance_shaft/shaft_grid2_struts_mid.png",
          "subject": "int-lower-decks-maintenance-shaft",
          "type": "loc",
          "variant": "struts-mid",
          "version": 1
        },
        {
          "new_name": "cryo-pod_prop_hero_v01.png",
          "new_path": "tartarus/assets/prop/cryo_pod/cryo-pod_prop_hero_v01.png",
          "old_path": "tartarus/assets/prop/cryo_pod/cryo_pod_hero.png",
          "subject": "cryo-pod",
          "type": "prop",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "debt-counter_prop_hero_v01.png",
          "new_path": "tartarus/assets/prop/debt_counter/debt-counter_prop_hero_v01.png",
          "old_path": "tartarus/assets/prop/debt_counter/debt_counter_hero.png",
          "subject": "debt-counter",
          "type": "prop",
          "variant": "hero",
          "version": 1
        },
        {
          "new_name": "salvage-hook_prop_hero_v01.png",
          "new_path": "tartarus/assets/prop/salvage_hook/salvage-hook_prop_hero_v01.png",
          "old_path": "tartarus/assets/prop/salvage_hook/salvage_hook_hero.png",
          "subject": "salvage-hook",
          "type": "prop",
          "variant": "hero",
          "version": 1
        }
      ],
      "path": "tartarus/state/visual/migration_log.json"
    },
    {
      "data": {
        "passes": {
          "EP001_SH10": {
            "alignment_score": null,
            "confirmed_timestamps": {},
            "cost_usd": 1.517,
            "created_at": 1779485539.554633,
            "cuts_diverged": false,
            "detected_cuts": 0,
            "expected_cuts": 0,
            "extraction_method": null,
            "lineage_ref": null,
            "model_added_count": 0,
            "pass_id": "EP001_SH10",
            "retry_strategy": null,
            "scene_detect_threshold": null,
            "scene_detection_raw": [],
            "segment_shot_ids": [
              "EP001_SH10"
            ],
            "segment_timestamps": {},
            "status": "completed",
            "takes": [
              {
                "aspect_ratio": "9:16",
                "cost_usd": 1.517,
                "dispatched_at": "2026-05-22T21:32:19.555381Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 5,
                "latency_seconds": 237.69279789924622,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH10",
                "output_path": "renders/ep_001/EP001_SH10_take18.mp4",
                "prompt": "@Image1 as the first frame. The subject in @Image1 the subject's lips curl into a wry grin. She speaks to herself, already stepping toward the cable. The subject speaks: \"Daddy needs a new pair of lungs.\" Subject looks off-camera, eyeline three-quarters away from lens. Push-in. Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. Th",
                "refs": [],
                "start_frame": "tartarus/sequences/ep_001/shot_010_take15_12717.png"
              }
            ],
            "updated_at": 1779485539.556451,
            "video_path": null
          },
          "EP001_SH16": {
            "alignment_score": null,
            "confirmed_timestamps": {},
            "cost_usd": 39.93,
            "created_at": 1779484576.897574,
            "cuts_diverged": false,
            "detected_cuts": 0,
            "expected_cuts": 2,
            "extraction_method": null,
            "lineage_ref": null,
            "model_added_count": 0,
            "pass_id": "EP001_SH16",
            "retry_strategy": null,
            "scene_detect_threshold": null,
            "scene_detection_raw": [],
            "segment_shot_ids": [
              "EP001_SH16",
              "EP001_SH17",
              "EP001_SH18"
            ],
            "segment_timestamps": {},
            "status": "completed",
            "takes": [
              {
                "aspect_ratio": "9:16",
                "cost_usd": 3.63,
                "dispatched_at": "2026-05-22T21:16:16.898262Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 12,
                "latency_seconds": 1.4066696166992188e-05,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH16",
                "output_path": "/tmp/EP001_SH16.mp4",
                "prompt": "[1] p\n[2] p\n[3] p",
                "refs": [],
                "start_frame": null
              },
              {
                "aspect_ratio": "9:16",
                "cost_usd": 3.63,
                "dispatched_at": "2026-05-22T21:18:15.226737Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 12,
                "latency_seconds": 1.4066696166992188e-05,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH16",
                "output_path": "/tmp/EP001_SH16.mp4",
                "prompt": "[1] p\n[2] p\n[3] p",
                "refs": [],
                "start_frame": null
              },
              {
                "aspect_ratio": "9:16",
                "cost_usd": 3.63,
                "dispatched_at": "2026-05-22T21:18:48.096886Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 12,
                "latency_seconds": 1.4066696166992188e-05,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH16",
                "output_path": "/tmp/EP001_SH16.mp4",
                "prompt": "[1] p\n[2] p\n[3] p",
                "refs": [],
                "start_frame": null
              },
              {
                "aspect_ratio": "9:16",
                "cost_usd": 3.63,
                "dispatched_at": "2026-05-22T21:19:59.699797Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 12,
                "latency_seconds": 1.4781951904296875e-05,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH16",
                "output_path": "/tmp/EP001_SH16.mp4",
                "prompt": "[1] p\n[2] p\n[3] p",
                "refs": [],
                "start_frame": null
              },
              {
                "aspect_ratio": "9:16",
                "cost_usd": 3.63,
                "dispatched_at": "2026-05-22T21:22:17.019785Z",
                "dispatched_by": "test_via_steprunner.py",
                "duration": 12,
                "latency_seconds": 1.4781951904296875e-05,
                "model": "seeddance-2.0",
                "origin": "test_dispatch",
                "origin_pass_id": "EP001_SH16",
                "output_path": "/tmp/EP001_SH16.mp4",
                "prompt": "[1] p\n[2] p\n[3] p",
                "refs": [],
                "start_frame": null
              }
            ],
            "updated_at": 1779486208.420148,
            "video_path": null
          }
        },
        "schema_version": 1
      },
      "path": "tartarus/state/visual/passes/ep_001_pass_state.json"
    },
    {
      "data": {
        "EP001_SH01": {
          "characters": [],
          "is_env_only": true
        },
        "EP001_SH05A": {
          "characters": [
            {
              "char_id": "JADE"
            }
          ],
          "is_env_only": false,
          "secondary_location_ids": [
            "int_lower_decks_maintenance_shaft",
            "int_lower_decks_corridor"
          ],
          "shot_type": "OTS"
        }
      },
      "path": "tartarus/state/visual/plans/ep_001_overrides.json"
    },
    {
      "data": {
        "episode_id": "EP001",
        "generated_at": "2023-10-25T12:00:00Z",
        "project": "Starsend",
        "shots": [
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": null,
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency ship hum, distant dripping",
              "dialogue": [],
              "foley_action": "metal scraping metal, sharp crack of breaking conduit, rust pattering on leather"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "characters": [],
              "prop_states": {},
              "scene_blocking_hash": null
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Wide shot, handheld. Flickering overhead lights illuminate an empty lower-deck corridor with a dropped to the ground bulkhead in the distance.",
              "kling_t2v": "Wide shot, 3 seconds, handheld. Subject: dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls. Action: Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance. Motion: flickering light casting shifting shadows, dust motes drifting through corridor. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Lighting: cool hard light from above (flickering overhead corridor light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Wide shot, 3 seconds, handheld. Subject: dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls. Action: Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance. Motion: flickering light casting shifting shadows, dust motes drifting through corridor. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Lighting: cool hard light from above (flickering overhead corridor light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Wide shot, 50mm, handheld, camera handheld. dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls. Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance.. Audio context: low frequency ship hum, distant dripping. metal scraping metal, sharp crack of breaking conduit, rust pattering on leather. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Wide shot, 50mm, handheld, camera handheld. dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls. Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance.. Audio context: low frequency ship hum, distant dripping. metal scraping metal, sharp crack of breaking conduit, rust pattering on leather. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "handheld",
              "focal_length": "50mm",
              "kinetic_action": "flickering light casting shifting shadows, dust motes drifting through corridor",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "flickering overhead corridor light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Flickering overhead lights illuminate an empty lower-deck corridor with a collapsed bulkhead in the distance.",
                "emotion_line": "",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "dim futuristic spaceship corridor, lower decks, collapsed bulkhead and twisted metal debris in the distance, corroded walls"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 1,
            "shot_id": "EP001_SH01",
            "source_text": "Empty lower-deck corridor. Collapsed bulkhead visible in the distance. Flickering overhead lights.",
            "source_text_hash": "45b1264bbbef596028b2807e5de0032e",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "none",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": "static",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency ship hum",
              "dialogue": [],
              "foley_action": "electronic ticking, rhythmic synthetic pulse"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:51:33.106290+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "debt_counter",
                  "head_facing": "down",
                  "secondary_hand": {
                    "action": "held steady displaying wrist",
                    "hand": "left",
                    "prop_id": "debt_counter",
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": null
                }
              ],
              "prop_states": {
                "debt_counter": "pulsing amber digital display reading 50,247"
              },
              "scene_blocking_hash": "bb60e85a6a2cddb1"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Jade's debt counter PULSES on her left wrist \u2014 amber digits tick upward past 50,247. shallow depth of field, rhythmic light pulse bleeding into lens, static framing.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 85mm. Jade standing at unspecified location, right hand resting out of frame, left hand holding wrist steady to display debt counter, head turned toward left wrist. Jade's debt counter PULSES on her left wrist \u2014 amber digits tick upward past 50,247.. oppressive debt, relentless ticking, trapped. Audio context: low frequency ship hum. electronic ticking, rhythmic synthetic pulse. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 85mm. Jade standing at unspecified location, right hand resting out of frame, left hand holding wrist steady to display debt counter, head turned toward left wrist. Jade's debt counter PULSES on her left wrist \u2014 amber digits tick upward past 50,247.. oppressive debt, relentless ticking, trapped. Audio context: low frequency ship hum. electronic ticking, rhythmic synthetic pulse. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "shallow depth of field, rhythmic light pulse bleeding into lens, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "debt counter display",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's debt counter PULSES on her left wrist \u2014 amber digits tick upward past 50,247.",
                "emotion_line": "oppressive debt, relentless ticking, trapped",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "Jade standing at unspecified location, right hand resting out of frame, left hand holding wrist steady to display debt counter, head turned toward left wrist"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP001_SH02",
            "source_text": "Her debt counter PULSES on her left wrist. 50,247. Ticking up with every breath she takes.",
            "source_text_hash": "a359d14e6da63eacfe26eceda60c9652",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "alert",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant metallic groaning, hissing steam",
              "dialogue": [],
              "foley_action": "leather creaking, heavy boots shifting on grating"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:51:56.294566+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting",
                    "hand": "right",
                    "prop_id": null,
                    "target": "hip"
                  },
                  "gaze_target": "corridor behind her",
                  "head_facing": "right",
                  "secondary_hand": {
                    "action": "touching",
                    "hand": "left",
                    "prop_id": null,
                    "target": "corridor wall"
                  },
                  "stance": "standing",
                  "torso_facing": "left",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "59098924d19c8e88"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, panning. Jade turns and checks the corridor behind her. Two exits \u2014 one dropped to the ground under twisted metal.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 35mm, panning, camera pan. Jade standing at corridor wall, right hand resting on hip, left hand touching wall, head turned back over right shoulder toward corridor behind her. Jade turns and checks the corridor behind her. Two exits \u2014 one collapsed under twisted metal.. paranoia, hyper-vigilance, calculated survival. Audio context: distant metallic groaning, hissing steam. leather creaking, heavy boots shifting on grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 35mm, panning, camera pan. Jade standing at corridor wall, right hand resting on hip, left hand touching wall, head turned back over right shoulder toward corridor behind her. Jade turns and checks the corridor behind her. Two exits \u2014 one collapsed under twisted metal.. paranoia, hyper-vigilance, calculated survival. Audio context: distant metallic groaning, hissing steam. leather creaking, heavy boots shifting on grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "35mm",
              "kinetic_action": "motion blur on quick head turn, sweeping background elements, dynamic lateral shift",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "BEHIND",
                    "intensity": "dim",
                    "motivator": "distant emergency light",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade turns and checks the corridor behind her. Two exits \u2014 one collapsed under twisted metal.",
                "emotion_line": "paranoia, hyper-vigilance, calculated survival",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "Jade standing at corridor wall, right hand resting on hip, left hand touching wall, head turned back over right shoulder toward corridor behind her"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 3,
            "shot_id": "EP001_SH03",
            "source_text": "She checks the corridor behind her. Two exits. One collapsed.",
            "source_text_hash": "8dfce88d01735a6aac8a8b0290e8b175",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "calculating",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency ship hum",
              "dialogue": [],
              "foley_action": "leather glove creaking softly"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:52:07.745270+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "distance",
                  "head_facing": "center",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "437930cf39594fb9"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating. eyes scanning exits, jaw setting, slight camera drift, focused center composition.",
              "kling_t2v": "Close-up, 3 seconds. Subject: Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance. Action: Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating. Motion: eyes scanning exits, jaw setting, slight camera drift, focused center composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: mental math, pragmatism, routine calculation. Lighting: cool soft light from front (ambient corridor light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 3 seconds. Subject: Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance. Action: Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating. Motion: eyes scanning exits, jaw setting, slight camera drift, focused center composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: mental math, pragmatism, routine calculation. Lighting: cool soft light from front (ambient corridor light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance. Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating.. mental math, pragmatism, routine calculation. Audio context: low frequency ship hum. leather glove creaking softly. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance. Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating.. mental math, pragmatism, routine calculation. Audio context: low frequency ship hum. leather glove creaking softly. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "eyes scanning exits, jaw setting, slight camera drift, focused center composition",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "dim",
                    "motivator": "ambient corridor light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade scans both exits, jaw tight, weight shifting between her feet. She holds still, calculating.",
                "emotion_line": "mental math, pragmatism, routine calculation",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "Jade standing, torso facing screen-left, head turned back over right shoulder, gaze scanning the distance"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 4,
            "shot_id": "EP001_SH04",
            "source_text": "She scans the corridor behind her. Two exits. One collapsed. She runs the odds in her head \u2014 the gambler's pause before committing.",
            "source_text_hash": "d3d9463f0d68eafc735391cb0484c23e",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "cynical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant hissing steam",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "flat, matter-of-fact \u2014 unbothered by the risk, each probability a weather report",
                  "is_voiceover": false,
                  "text": "Panel's corroded. Sixty-forty the wire's live. Seventy-thirty I don't care."
                }
              ],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:52:34.431464+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "lowered out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "corroded panel",
                  "head_facing": "slightly down",
                  "secondary_hand": {
                    "action": "lowered out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "center",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "1bcd706e217503eb"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, pushing in. Jade grips the corroded panel edge, fingers testing the wire. Her mouth moves \u2014 flat, unbothered, reading the odds aloud.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 5 seconds. Medium close-up, 50mm, push-in, camera push_in. Jade standing at bulkhead, right hand lowered out of frame, left hand lowered out of frame, head tilted slightly down gazing at corroded panel. Jade grips the corroded panel edge, fingers testing the wire. Her mouth moves \u2014 flat, unbothered, reading the odds aloud.. cynical acceptance, flat pragmatism, unbothered. Audio context: distant hissing steam. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium close-up, 50mm, push-in, camera push_in. Jade standing at bulkhead, right hand lowered out of frame, left hand lowered out of frame, head tilted slightly down gazing at corroded panel. Jade grips the corroded panel edge, fingers testing the wire. Her mouth moves \u2014 flat, unbothered, reading the odds aloud.. cynical acceptance, flat pragmatism, unbothered. Audio context: distant hissing steam. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "slow creeping push in, steady posture, subtle jaw movement during speech",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor strip light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade grips the corroded panel edge, fingers testing the wire. Her mouth moves \u2014 flat, unbothered, reading the odds aloud.",
                "emotion_line": "cynical acceptance, flat pragmatism, unbothered",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "Jade standing at bulkhead, right hand lowered out of frame, left hand lowered out of frame, head tilted slightly down gazing at corroded panel"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 5,
            "shot_id": "EP001_SH05",
            "source_text": "JADE (flat, matter-of-fact \u2014 unbothered by the risk, each probability a weather report) Panel's corroded. Sixty-forty the wire's live. Seventy-thirty I don't care.",
            "source_text_hash": "956015ce879dfdff05025b64b340e402",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "grinding metal of panel, sudden rush of wind from shaft, distant structural groans",
              "dialogue": [],
              "foley_action": "panel sliding, dust settling"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:52:34.431464+00:00",
              "characters": [],
              "prop_states": {},
              "scene_blocking_hash": "1bcd706e217503eb"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft.",
              "kling_t2v": "Extreme close-up, 4 seconds. Subject: Corroded panel sliding down to reveal dark maintenance shaft and catwalk. Action: A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft. Motion: panel sliding down, revealing tunnel, dust motes catching light, subtle air movement from shaft. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: discovery, foreboding, unknown depths. Lighting: cool hard light from above_left (corridor strip light), blue soft light from from_within_hole_below (abyss depths) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 4 seconds. Subject: Corroded panel sliding down to reveal dark maintenance shaft and catwalk. Action: A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft. Motion: panel sliding down, revealing tunnel, dust motes catching light, subtle air movement from shaft. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: discovery, foreboding, unknown depths. Lighting: cool hard light from above_left (corridor strip light), blue soft light from from_within_hole_below (abyss depths) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Extreme close-up, 85mm. Corroded panel sliding down to reveal dark maintenance shaft and catwalk. A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft.. discovery, foreboding, unknown depths. Audio context: grinding metal of panel, sudden rush of wind from shaft, distant structural groans. panel sliding, dust settling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Extreme close-up, 85mm. Corroded panel sliding down to reveal dark maintenance shaft and catwalk. A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft.. discovery, foreboding, unknown depths. Audio context: grinding metal of panel, sudden rush of wind from shaft, distant structural groans. panel sliding, dust settling. Photorealistic, cinematic lighting, high budget film."
            },
            "origin": "composed",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "panel sliding down, revealing tunnel, dust motes catching light, subtle air movement from shaft",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor strip light",
                    "quality": "hard"
                  },
                  {
                    "color_temp": "blue",
                    "direction": "FROM_WITHIN_HOLE_BELOW",
                    "intensity": "dim",
                    "motivator": "abyss depths",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "A panel slides down revealing a tunnel entrance that opens onto a catwalk over the maintenance shaft.",
                "emotion_line": "discovery, foreboding, unknown depths",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "Corroded panel sliding down to reveal dark maintenance shaft and catwalk"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 5,
            "shot_id": "EP001_SH05A",
            "source_text": "Jade's POV of the newly revealed tunnel entrance leading to a catwalk in the maintenance shaft, as a panel slides down.",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind rushing upward, deep structural groans",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:18:32.827447+00:00",
              "characters": [],
              "prop_states": {},
              "scene_blocking_hash": "8e95ac210dec3014"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Wide shot, tilting. The corridor opens into a bottomless shaft. Wind howls up from the darkness below. dust particles rushing upward, vertigo-inducing perspective shift, deep focus.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 5 seconds. Wide shot, 24mm, tilting, camera tilt. dark metallic corridor terminating abruptly at the jagged edge of a massive vertical shaft, bottomless drop plunging into absolute darkness below, sheer vertical walls stretching out of sight. The corridor opens into a bottomless shaft. Wind howls up from the darkness below.. vertigo, isolation, overwhelming scale. Audio context: howling wind rushing upward, deep structural groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Wide shot, 24mm, tilting, camera tilt. dark metallic corridor terminating abruptly at the jagged edge of a massive vertical shaft, bottomless drop plunging into absolute darkness below, sheer vertical walls stretching out of sight. The corridor opens into a bottomless shaft. Wind howls up from the darkness below.. vertigo, isolation, overwhelming scale. Audio context: howling wind rushing upward, deep structural groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "24mm",
              "kinetic_action": "dust particles rushing upward, vertigo-inducing perspective shift, deep focus",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "abyss depths",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The corridor opens into a bottomless shaft. Wind howls up from the darkness below.",
                "emotion_line": "vertigo, isolation, overwhelming scale",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "dark metallic corridor terminating abruptly at the jagged edge of a massive vertical shaft, bottomless drop plunging into absolute darkness below, sheer vertical walls stretching out of sight"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 5
            },
            "scene_index": 6,
            "shot_id": "EP001_SH06",
            "source_text": "The corridor opens into a shaft. Bottomless. Wind howling up from below.",
            "source_text_hash": "8264f16cd11767f2664aef8f80a70e07",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind, heavy cables creaking under strain",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:18:47.603524+00:00",
              "characters": [],
              "prop_states": {
                "cryo_pod": "suspended by thick anchor cables over abyss"
              },
              "scene_blocking_hash": "795c64def37297ea"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Long shot. A frost-covered cryo-pod hangs from anchor cables suspended over the abyss. slow pendulum sway of heavy object, taut cables vibrating, static wide framing.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Long shot, 35mm. heavy brushed steel cryo-pod suspended by thick anchor cables, hanging over vast dark abyss, bottomless drop below. A frost-covered cryo-pod hangs from anchor cables suspended over the abyss.. suspense, precarious danger, mystery. Audio context: howling wind, heavy cables creaking under strain. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Long shot, 35mm. heavy brushed steel cryo-pod suspended by thick anchor cables, hanging over vast dark abyss, bottomless drop below. A frost-covered cryo-pod hangs from anchor cables suspended over the abyss.. suspense, precarious danger, mystery. Audio context: howling wind, heavy cables creaking under strain. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "slow pendulum sway of heavy object, taut cables vibrating, static wide framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "shaft ambient light",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "A frost-covered cryo-pod hangs from anchor cables suspended over the abyss.",
                "emotion_line": "suspense, precarious danger, mystery",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "heavy brushed steel cryo-pod suspended by thick anchor cables, hanging over vast dark abyss, bottomless drop below"
              },
              "shot_type": "LS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 7,
            "shot_id": "EP001_SH07",
            "source_text": "A cryo-pod hangs from anchor cables over the abyss.",
            "source_text_hash": "2f02511ee9634b2dfd46590e589240b3",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low hum of dormant machinery, wind whistling",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:19:01.053008+00:00",
              "characters": [],
              "prop_states": {
                "cryo_pod": "stationary, displaying military serial numbers and frost on viewport"
              },
              "scene_blocking_hash": "2d94b76c2dabfff5"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, pushing in. Pre-Push off markings and military serial numbers stamped into brushed steel. Frost clings to the viewport.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm, push-in, camera push_in. brushed steel cryo-pod exterior, military serial numbers stamped into metal surface, thick frost clinging to the edge of the glass viewport. Pre-Launch markings and military serial numbers stamped into brushed steel. Frost clings to the viewport.. cold history, ominous origin, dormant threat. Audio context: low hum of dormant machinery, wind whistling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm, push-in, camera push_in. brushed steel cryo-pod exterior, military serial numbers stamped into metal surface, thick frost clinging to the edge of the glass viewport. Pre-Launch markings and military serial numbers stamped into brushed steel. Frost clings to the viewport.. cold history, ominous origin, dormant threat. Audio context: low hum of dormant machinery, wind whistling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "85mm",
              "kinetic_action": "macro focus pulling across stamped metal, frost crystals catching light, slow creeping push",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "shaft ambient light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Pre-Launch markings and military serial numbers stamped into brushed steel. Frost clings to the viewport.",
                "emotion_line": "cold history, ominous origin, dormant threat",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "brushed steel cryo-pod exterior, military serial numbers stamped into metal surface, thick frost clinging to the edge of the glass viewport"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 8,
            "shot_id": "EP001_SH08",
            "source_text": "Pre-Launch markings. Military serial numbers stamped into brushed steel. Frost still clinging to the viewport.",
            "source_text_hash": "15dcc632466ac1ac9be0c23b64668dd9",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "intrigued",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "leather glove movement stopping abruptly"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:52:50.502770+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "the pod",
                  "head_facing": "toward camera",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "toward camera",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "98947b98d5d92f7b"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade goes still. Her eyes lock on the cryo-pod. abrupt halt of motion, rigid posture, eyes widening slightly.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing still, right hand resting out of frame, left hand resting out of frame, head facing forward with gaze locked on the pod off-screen. Jade goes still. Her eyes lock on the cryo-pod.. realization, high stakes, greedy temptation. Audio context: wind howling. leather glove movement stopping abruptly. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing still, right hand resting out of frame, left hand resting out of frame, head facing forward with gaze locked on the pod off-screen. Jade goes still. Her eyes lock on the cryo-pod.. realization, high stakes, greedy temptation. Audio context: wind howling. leather glove movement stopping abruptly. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "abrupt halt of motion, rigid posture, eyes widening slightly",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "dim",
                    "motivator": "shaft ambient light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade goes still. Her eyes lock on the cryo-pod.",
                "emotion_line": "realization, high stakes, greedy temptation",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing still, right hand resting out of frame, left hand resting out of frame, head facing forward with gaze locked on the pod off-screen"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 9,
            "shot_id": "EP001_SH09",
            "source_text": "Jade goes still. The gambler's pause \u2014 then she stares at the pod.",
            "source_text_hash": "447253c92b668599a24f017c710906e4",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "amused",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "dark humor, wry and almost warm \u2014 a private joke she tells herself in dangerous moments",
                  "is_voiceover": false,
                  "text": "Daddy needs a new pair of lungs."
                }
              ],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:53:11.657356+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "hooking strap",
                    "hand": "right",
                    "prop_id": "rebreather",
                    "target": "collarbone"
                  },
                  "gaze_target": "middle distance",
                  "head_facing": "center",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": "side"
                  },
                  "stance": "standing",
                  "torso_facing": "center",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {
                "rebreather": "hanging around neck"
              },
              "scene_blocking_hash": "cdb57fb2104d4038"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, pushing in. Jade's lips curl into a wry grin. She speaks to herself, already stepping toward the cable. slow push in, wry smirk forming, subtle head tilt.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium close-up, 50mm, push-in, camera push_in. Jade standing at center, right hand hooking rebreather strap at collarbone, left hand resting out of frame, head facing forward with gaze fixed on middle distance. Jade's lips curl into a wry grin. She speaks to herself, already stepping toward the cable.. wry amusement, reckless determination, gallows humor. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium close-up, 50mm, push-in, camera push_in. Jade standing at center, right hand hooking rebreather strap at collarbone, left hand resting out of frame, head facing forward with gaze fixed on middle distance. Jade's lips curl into a wry grin. She speaks to herself, already stepping toward the cable.. wry amusement, reckless determination, gallows humor. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "slow push in, wry smirk forming, subtle head tilt",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "dim",
                    "motivator": "shaft ambient light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's lips curl into a wry grin. She speaks to herself, already stepping toward the cable.",
                "emotion_line": "wry amusement, reckless determination, gallows humor",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing at center, right hand hooking rebreather strap at collarbone, left hand resting out of frame, head facing forward with gaze fixed on middle distance"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 10,
            "shot_id": "EP001_SH10",
            "source_text": "JADE (dark humor, wry and almost warm \u2014 a private joke she tells herself in dangerous moments) Daddy needs a new pair of lungs.",
            "source_text_hash": "8e2eca637d41554650f786090dc17294",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "focused",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "metallic clink of carabiner, heavy boot stepping on taut steel cable, cable groaning"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:53:30.344095+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "reaching high, clipping tether hook to strut",
                    "hand": "right",
                    "prop_id": null,
                    "target": "ceiling strut"
                  },
                  "gaze_target": "ceiling strut",
                  "head_facing": "up and away from camera",
                  "secondary_hand": {
                    "action": "gripping tether line at chest level",
                    "hand": "left",
                    "prop_id": null,
                    "target": "tether line"
                  },
                  "stance": "standing, reaching upward",
                  "torso_facing": "away from camera",
                  "weight_bearing": "shifting upward"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "c0be4328013b18e5"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Full shot, tilting. Jade hooks her tether to a ceiling strut and steps onto the anchor cable. downward tilt following body weight transfer, cable vibrating under boot, dynamic balance.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Full shot, 35mm, tilting, camera tilt. Jade standing at ceiling strut, right hand reaching up to clip tether to strut, left hand gripping tether line, head tilted up toward strut. Jade hooks her tether to a ceiling strut and steps onto the anchor cable.. calculated risk, physical bravery, extreme heights. Audio context: wind howling. metallic clink of carabiner, heavy boot stepping on taut steel cable, cable groaning. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Full shot, 35mm, tilting, camera tilt. Jade standing at ceiling strut, right hand reaching up to clip tether to strut, left hand gripping tether line, head tilted up toward strut. Jade hooks her tether to a ceiling strut and steps onto the anchor cable.. calculated risk, physical bravery, extreme heights. Audio context: wind howling. metallic clink of carabiner, heavy boot stepping on taut steel cable, cable groaning. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "35mm",
              "kinetic_action": "downward tilt following body weight transfer, cable vibrating under boot, dynamic balance",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "shaft ambient light",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade hooks her tether to a ceiling strut and steps onto the anchor cable.",
                "emotion_line": "calculated risk, physical bravery, extreme heights",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing at ceiling strut, right hand reaching up to clip tether to strut, left hand gripping tether line, head tilted up toward strut"
              },
              "shot_type": "FS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 11,
            "shot_id": "EP001_SH11",
            "source_text": "She hooks her tether to a ceiling strut. Steps onto the cable.",
            "source_text_hash": "9a66826a460728563a8f300dd85614ac",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "tense",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "rushing wind updraft",
              "dialogue": [],
              "foley_action": "leather and rubber squeaking on steel cable"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:53:42.820218+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "down into the abyss",
                  "head_facing": "down",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "afac8163e1a97bcf"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade's boots slide on the cable. The void drops away beneath her. dust rushing past boots, slight sway of cable, deep focus into darkness below.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing at abyss edge, right hand resting out of frame, left hand resting out of frame, head tilted down with gaze directed downward into the abyss. Jade's boots slide on the cable. The void drops away beneath her.. vertigo, lethal drop, tension. Audio context: rushing wind updraft. leather and rubber squeaking on steel cable. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 50mm. Jade standing at abyss edge, right hand resting out of frame, left hand resting out of frame, head tilted down with gaze directed downward into the abyss. Jade's boots slide on the cable. The void drops away beneath her.. vertigo, lethal drop, tension. Audio context: rushing wind updraft. leather and rubber squeaking on steel cable. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "dust rushing past boots, slight sway of cable, deep focus into darkness below",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "abyss depths",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's boots slide on the cable. The void drops away beneath her.",
                "emotion_line": "vertigo, lethal drop, tension",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing at abyss edge, right hand resting out of frame, left hand resting out of frame, head tilted down with gaze directed downward into the abyss"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 12,
            "shot_id": "EP001_SH12",
            "source_text": "The abyss pulls at her boots.",
            "source_text_hash": "686bbffbd1938b2660f40483b4948f88",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "focused",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "manipulated",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "heavy breathing through respirator, hands brushing frosty metal"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:54:03.979261+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "touching",
                    "hand": "right",
                    "prop_id": "cryo_pod",
                    "target": "release panel"
                  },
                  "gaze_target": "cryo_pod release panel",
                  "head_facing": "slightly down",
                  "secondary_hand": {
                    "action": "touching",
                    "hand": "left",
                    "prop_id": "cryo_pod",
                    "target": "release panel"
                  },
                  "stance": "leaning slightly forward",
                  "torso_facing": "forward",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {
                "cryo_pod": "frost-covered, release panel being touched by Jade"
              },
              "scene_blocking_hash": "0993bb906e188273"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, pushing in. Jade's rebreather fogs with each exhale. Her hands find the pod's release panel. rhythmic fogging of mask glass, hands reaching into frame, slow push toward panel.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Close-up, 50mm, push-in, camera push_in. Jade leaning slightly forward at cryo_pod, right hand touching release panel, left hand touching release panel, head angled down toward panel. Jade's rebreather fogs with each exhale. Her hands find the pod's release panel.. chilling cold, delicate work, anticipation. Audio context: wind howling. heavy breathing through respirator, hands brushing frosty metal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Close-up, 50mm, push-in, camera push_in. Jade leaning slightly forward at cryo_pod, right hand touching release panel, left hand touching release panel, head angled down toward panel. Jade's rebreather fogs with each exhale. Her hands find the pod's release panel.. chilling cold, delicate work, anticipation. Audio context: wind howling. heavy breathing through respirator, hands brushing frosty metal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "rhythmic fogging of mask glass, hands reaching into frame, slow push toward panel",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "FRONT",
                    "intensity": "dim",
                    "motivator": "cryo-pod panel lights",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's rebreather fogs with each exhale. Her hands find the pod's release panel.",
                "emotion_line": "chilling cold, delicate work, anticipation",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade leaning slightly forward at cryo_pod, right hand touching release panel, left hand touching release panel, head angled down toward panel"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 13,
            "shot_id": "EP001_SH13",
            "source_text": "Her rebreather fogs with each exhale. Hands find the pod's release panel.",
            "source_text_hash": "427b5b6c2eb21bba2d07cdf8c5278f05",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "straining",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "manipulated",
              "props": [
                {
                  "prop_id": "salvage_hook",
                  "visibility": "in_frame"
                },
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "loud metallic screech, ice shattering, heavy grunt of exertion"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:54:22.974198+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "twisting handle",
                    "hand": "right",
                    "prop_id": "salvage_hook",
                    "target": "cryo_pod seam"
                  },
                  "gaze_target": "cryo_pod seam",
                  "head_facing": "down toward pod seam",
                  "secondary_hand": {
                    "action": "bracing against surface",
                    "hand": "left",
                    "prop_id": null,
                    "target": "cryo_pod"
                  },
                  "stance": "leaning",
                  "torso_facing": "forward toward cryo pod",
                  "weight_bearing": "leaning forward onto left hand"
                }
              ],
              "prop_states": {
                "cryo_pod": "brushed steel seam under stress from the salvage hook",
                "salvage_hook": "gripped by Jade's right hand, heavy metal hook wedged into pod seam"
              },
              "scene_blocking_hash": "c0bc9b3025f55ee0"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, handheld. Jade wedges her salvage hook into the pod seam and twists. camera shake on physical exertion, metal bending, frost shattering off seam.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm, handheld, camera handheld. Jade leaning at cryo pod, right hand twisting salvage hook into seam, left hand bracing against brushed steel surface, gaze locked on hook insertion point. Jade wedges her salvage hook into the pod seam and twists.. brute force, breaking and entering, tension snapping. Audio context: wind howling. loud metallic screech, ice shattering, heavy grunt of exertion. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm, handheld, camera handheld. Jade leaning at cryo pod, right hand twisting salvage hook into seam, left hand bracing against brushed steel surface, gaze locked on hook insertion point. Jade wedges her salvage hook into the pod seam and twists.. brute force, breaking and entering, tension snapping. Audio context: wind howling. loud metallic screech, ice shattering, heavy grunt of exertion. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "handheld",
              "focal_length": "85mm",
              "kinetic_action": "camera shake on physical exertion, metal bending, frost shattering off seam",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "cryo-pod panel lights",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade wedges her salvage hook into the pod seam and twists.",
                "emotion_line": "brute force, breaking and entering, tension snapping",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade leaning at cryo pod, right hand twisting salvage hook into seam, left hand bracing against brushed steel surface, gaze locked on hook insertion point"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 14,
            "shot_id": "EP001_SH14",
            "source_text": "She wedges her hook into the seam and twists.",
            "source_text_hash": "3d26059efed22c2d1a0ebaae9e0ab43a",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "static",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "loud pneumatic hiss, heavy metal latch disengaging"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:19:20.375386+00:00",
              "characters": [],
              "prop_states": {
                "cryo_pod": "venting thick fog, suspended over void"
              },
              "scene_blocking_hash": "106e02eb9a857011"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. The pod HISSES open. Fog spills out and curls downward into the void. dense volumetric fog pouring downward, turbulent fluid dynamics, static framing.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 35mm. heavy brushed steel cryo-pod suspended in center frame, thick white fog spilling out from its seams and curling downward into the dark bottomless void below. The pod HISSES open. Fog spills out and curls downward into the void.. eerie reveal, cold release, unknown contents. Audio context: wind howling. loud pneumatic hiss, heavy metal latch disengaging. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 35mm. heavy brushed steel cryo-pod suspended in center frame, thick white fog spilling out from its seams and curling downward into the dark bottomless void below. The pod HISSES open. Fog spills out and curls downward into the void.. eerie reveal, cold release, unknown contents. Audio context: wind howling. loud pneumatic hiss, heavy metal latch disengaging. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "dense volumetric fog pouring downward, turbulent fluid dynamics, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "FROM_SUBJECT",
                    "intensity": "bright",
                    "motivator": "cryo-pod interior light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The pod HISSES open. Fog spills out and curls downward into the void.",
                "emotion_line": "eerie reveal, cold release, unknown contents",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "heavy brushed steel cryo-pod suspended in center frame, thick white fog spilling out from its seams and curling downward into the dark bottomless void below"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 15,
            "shot_id": "EP001_SH15",
            "source_text": "The pod HISSES. Fog spills out, curling into the void below.",
            "source_text_hash": "bf8a58f18cfa3cc502c4089b5606d44c",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "dormant",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "static",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "fading pneumatic hiss, wind howling",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:54:41.067925+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting neutrally at side",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "straight ahead (eyes closed)",
                  "head_facing": "straight forward",
                  "secondary_hand": {
                    "action": "resting neutrally at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "suspended upright",
                  "torso_facing": "straight forward",
                  "weight_bearing": null
                }
              ],
              "prop_states": {
                "cryo_pod": "frost clearing from viewport, framing Wren inside"
              },
              "scene_blocking_hash": "47e97188fc26b1ca"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, pushing in. The fog clears. A massive armored figure fills the pod interior. fog dissipating to reveal sharp details, slow ominous push in, static subject.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm, push-in, camera push_in. Wren suspended upright inside cryo_pod, right arm resting at side, left arm resting at side, head facing straight forward with eyes closed. The fog clears. A massive armored figure fills the pod interior.. imposing threat, terrifying discovery, dormant power. Audio context: fading pneumatic hiss, wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm, push-in, camera push_in. Wren suspended upright inside cryo_pod, right arm resting at side, left arm resting at side, head facing straight forward with eyes closed. The fog clears. A massive armored figure fills the pod interior.. imposing threat, terrifying discovery, dormant power. Audio context: fading pneumatic hiss, wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "fog dissipating to reveal sharp details, slow ominous push in, static subject",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BEHIND",
                    "intensity": "moderate",
                    "motivator": "cryo-pod interior light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The fog clears. A massive armored figure fills the pod interior.",
                "emotion_line": "imposing threat, terrifying discovery, dormant power",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren suspended upright inside cryo_pod, right arm resting at side, left arm resting at side, head facing straight forward with eyes closed"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 16,
            "shot_id": "EP001_SH16",
            "source_text": "The fog clears. The thing inside is not cargo.",
            "source_text_hash": "28b7a7d25d7eabf7baa6d034cbb2a87b",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "looming",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "imposing",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:55:00.888520+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting at side",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "forward",
                  "head_facing": "forward",
                  "secondary_hand": {
                    "action": "resting at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "d3badcb7f6f8896e"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, tilting. A dark gunmetal industrial chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls. slow upward tilt emphasizing scale, rigid geometry, static subject.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 50mm, tilting, camera tilt. Wren standing in pod, arms resting at sides, head facing forward, gaze straight ahead. A dark gunmetal industrial chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls.. overwhelming scale, brutalist design, imposing presence. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 50mm, tilting, camera tilt. Wren standing in pod, arms resting at sides, head facing forward, gaze straight ahead. A dark gunmetal industrial chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls.. overwhelming scale, brutalist design, imposing presence. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "50mm",
              "kinetic_action": "slow upward tilt emphasizing scale, rigid geometry, static subject",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "ABOVE",
                    "intensity": "moderate",
                    "motivator": "cryo-pod interior light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "A dark gunmetal industrial chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls.",
                "emotion_line": "overwhelming scale, brutalist design, imposing presence",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing in pod, arms resting at sides, head facing forward, gaze straight ahead"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 17,
            "shot_id": "EP001_SH17",
            "source_text": "Industrial chassis. Massive. Shoulders wider than the pod should allow.",
            "source_text_hash": "566d57993e8051fcf7bacb6fa2e0e307",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "looming",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "lethal",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:55:16.259405+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "clenched into fist at side",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "distance",
                  "head_facing": "forward",
                  "secondary_hand": {
                    "action": "clenched into fist at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "1d11fedea523a32f"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, panning. Scarred alloy plating, reinforced joints, oversized industrial hands. Rust weathering across every surface. macro pan across mechanical details, sharp focus on joints, static subject.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm, panning, camera pan. Wren standing at center, right hand resting at side, left hand resting at side, head facing forward toward distance. Scarred alloy plating, reinforced joints, oversized industrial hands. Rust weathering across every surface.. industrial purpose, utilitarian form, cold efficiency. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm, panning, camera pan. Wren standing at center, right hand resting at side, left hand resting at side, head facing forward toward distance. Scarred alloy plating, reinforced joints, oversized industrial hands. Rust weathering across every surface.. industrial purpose, utilitarian form, cold efficiency. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "85mm",
              "kinetic_action": "macro pan across mechanical details, sharp focus on joints, static subject",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "cryo-pod interior light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Scarred alloy plating, reinforced joints, oversized industrial hands. Rust weathering across every surface.",
                "emotion_line": "industrial purpose, utilitarian form, cold efficiency",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing at center, right hand resting at side, left hand resting at side, head facing forward toward distance"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 18,
            "shot_id": "EP001_SH18",
            "source_text": "Heavy industrial architecture \u2014 scarred alloy, reinforced joints, hands built for hard labor.",
            "source_text_hash": "7f7e2ed07c736f80c22a33218f2f5394",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "awakened",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "sharp electronic whine, mechanical click of optics engaging"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:55:27.448372+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "straight ahead",
                  "head_facing": "camera",
                  "secondary_hand": {
                    "action": "out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "resting",
                  "torso_facing": "camera",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "b788b309c1e8d888"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Wren's eyes snap open. instantaneous mechanical movement, sudden burst of light, sharp focus.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: Wren face filling frame, eyes snapping open, gaze directed straight ahead. Action: Wren's eyes snap open. Motion: instantaneous mechanical movement, sudden burst of light, sharp focus. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: shock, sudden activation, terrifying life. Lighting: blue hard light from self_illuminated (android eyes) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: Wren face filling frame, eyes snapping open, gaze directed straight ahead. Action: Wren's eyes snap open. Motion: instantaneous mechanical movement, sudden burst of light, sharp focus. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: shock, sudden activation, terrifying life. Lighting: blue hard light from self_illuminated (android eyes) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm. Wren face filling frame, eyes snapping open, gaze directed straight ahead. Wren's eyes snap open.. shock, sudden activation, terrifying life. Audio context: sharp electronic whine, mechanical click of optics engaging. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm. Wren face filling frame, eyes snapping open, gaze directed straight ahead. Wren's eyes snap open.. shock, sudden activation, terrifying life. Audio context: sharp electronic whine, mechanical click of optics engaging. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "i2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "instantaneous mechanical movement, sudden burst of light, sharp focus",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "android eyes",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's eyes snap open.",
                "emotion_line": "shock, sudden activation, terrifying life",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren face filling frame, eyes snapping open, gaze directed straight ahead"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": true,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 19,
            "shot_id": "EP001_SH19",
            "source_text": "His eyes snap open.",
            "source_text_hash": "05a342412e0a74c75cd04bdb050adc94",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "intense",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency electronic hum building",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:55:37.541437+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "forward",
                  "head_facing": "forward",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "35c66d902294df25"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, pushing in. Electric blue eyes burn solid \u2014 iris and pupil fused into one bright field. lens flare from glowing eyes, micro-adjustments of synthetic iris, slow push.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Wren face at center, right hand out of frame, left hand out of frame, head facing forward toward camera. Electric blue eyes burn solid \u2014 iris and pupil fused into one bright field.. inhuman focus, piercing stare, artificial intelligence. Audio context: low frequency electronic hum building. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Wren face at center, right hand out of frame, left hand out of frame, head facing forward toward camera. Electric blue eyes burn solid \u2014 iris and pupil fused into one bright field.. inhuman focus, piercing stare, artificial intelligence. Audio context: low frequency electronic hum building. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "lens flare from glowing eyes, micro-adjustments of synthetic iris, slow push",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "blinding",
                    "motivator": "android eyes",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Electric blue eyes burn solid \u2014 iris and pupil fused into one bright field.",
                "emotion_line": "inhuman focus, piercing stare, artificial intelligence",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren face at center, right hand out of frame, left hand out of frame, head facing forward toward camera"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 20,
            "shot_id": "EP001_SH20",
            "source_text": "Electric blue. Solid \u2014 iris and pupil burning together.",
            "source_text_hash": "8cbf009eae45a6724ce52551136c3b07",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "panicked",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "loud scrape of rubber on steel, cable groaning loudly, sharp gasp"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:56:02.590024+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "gripping cable near chin",
                    "hand": "right",
                    "prop_id": null,
                    "target": "cable"
                  },
                  "gaze_target": "downward",
                  "head_facing": "down",
                  "secondary_hand": {
                    "action": "gripping cable above right hand",
                    "hand": "left",
                    "prop_id": null,
                    "target": "cable"
                  },
                  "stance": "hanging",
                  "torso_facing": "front",
                  "weight_bearing": "arms"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "1988d7f5a86bc5f6"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, handheld. Jade's boots slip on the cable. The line sways under her weight. sudden camera pull sharply, motion blur on slipping boot, violent sway of cable.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 50mm, handheld, camera handheld. Jade hanging onto vertical cable, right hand gripping cable near chin, left hand gripping above, head jolting downward. Jade's boots slip on the cable. The line sways under her weight.. panic, sudden loss of control, imminent fall. Audio context: wind howling. loud scrape of rubber on steel, cable groaning loudly, sharp gasp. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 50mm, handheld, camera handheld. Jade hanging onto vertical cable, right hand gripping cable near chin, left hand gripping above, head jolting downward. Jade's boots slip on the cable. The line sways under her weight.. panic, sudden loss of control, imminent fall. Audio context: wind howling. loud scrape of rubber on steel, cable groaning loudly, sharp gasp. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "handheld",
              "focal_length": "50mm",
              "kinetic_action": "sudden camera jerk, motion blur on slipping boot, violent sway of cable",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "shaft ambient light",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's boots slip on the cable. The line sways under her weight.",
                "emotion_line": "panic, sudden loss of control, imminent fall",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade hanging onto vertical cable, right hand gripping cable near chin, left hand gripping above, head jolting downward"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 21,
            "shot_id": "EP001_SH21",
            "source_text": "Jade's boots slip. The cable sways.",
            "source_text_hash": "80d380c54a12851d2d52cba04780fbb5",
            "spatial_data": {
              "camera_side": "B",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "exhausted",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "dry exhaustion \u2014 staring death in the face, making a joke because that's all she has",
                  "is_voiceover": false,
                  "text": "Oh great. It's alive."
                }
              ],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:56:17.499454+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "off-screen threat",
                  "head_facing": "center",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "center",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "0bf195bdc6bdb30f"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade stares at the open pod, exhales hard, and mouths words \u2014 dry, exhausted. strained neck muscles, slight sway from balancing, static framing.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium close-up, 50mm. Jade standing at undefined location, right hand resting out of frame, left hand resting out of frame, head facing center toward off-screen threat. Jade stares at the open pod, exhales hard, and mouths words \u2014 dry, exhausted.. dry exhaustion, gallows humor, facing death. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium close-up, 50mm. Jade standing at undefined location, right hand resting out of frame, left hand resting out of frame, head facing center toward off-screen threat. Jade stares at the open pod, exhales hard, and mouths words \u2014 dry, exhausted.. dry exhaustion, gallows humor, facing death. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "strained neck muscles, slight sway from balancing, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "android eye glow",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade stares at the open pod, exhales hard, and mouths words \u2014 dry, exhausted.",
                "emotion_line": "dry exhaustion, gallows humor, facing death",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing at undefined location, right hand resting out of frame, left hand resting out of frame, head facing center toward off-screen threat"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 22,
            "shot_id": "EP001_SH22",
            "source_text": "JADE (dry exhaustion \u2014 staring death in the face, making a joke because that's all she has) Oh great. It's alive.",
            "source_text_hash": "9d98a2cc7f5c25b89aeb51da380684d0",
            "spatial_data": {
              "camera_side": "B",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "precise",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "heavy metallic thud, servo whine, cable screaming under sudden tension"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:56:41.041571+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "catching",
                    "hand": "right",
                    "prop_id": null,
                    "target": "cable"
                  },
                  "gaze_target": "cable",
                  "head_facing": "screen-right",
                  "secondary_hand": {
                    "action": "resting at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-right",
                  "weight_bearing": "evenly distributed"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "e3a5347f6b11071d"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, panning. Wren's arm shoots out with mechanical precision and catches the anchor cable. motion blur on fast mechanical strike, sudden stop with zero pull back, kinetic energy transfer.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Medium shot, 50mm, panning, camera pan. WREN standing, right hand catching cable in mid-air, left arm resting at side, head turned toward right hand. Wren's arm shoots out with mechanical precision and catches the anchor cable.. terrifying speed, unstoppable force, machine efficiency. Audio context: wind howling. heavy metallic thud, servo whine, cable screaming under sudden tension. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium shot, 50mm, panning, camera pan. WREN standing, right hand catching cable in mid-air, left arm resting at side, head turned toward right hand. Wren's arm shoots out with mechanical precision and catches the anchor cable.. terrifying speed, unstoppable force, machine efficiency. Audio context: wind howling. heavy metallic thud, servo whine, cable screaming under sudden tension. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "50mm",
              "kinetic_action": "motion blur on fast mechanical strike, sudden stop with zero recoil, kinetic energy transfer",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BEHIND",
                    "intensity": "moderate",
                    "motivator": "cryo-pod interior light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's arm shoots out with mechanical precision and catches the anchor cable.",
                "emotion_line": "terrifying speed, unstoppable force, machine efficiency",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "WREN standing, right hand catching cable in mid-air, left arm resting at side, head turned toward right hand"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 23,
            "shot_id": "EP001_SH23",
            "source_text": "The chassis moves. One arm \u2014 fast, mechanical precision \u2014 catches the cable.",
            "source_text_hash": "b7ac6bc07cc5ca546a73b0915fd389a0",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "lethal",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "emotion_keyword": "choking",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "heavy impact, sharp gasp, fabric tearing"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:57:05.647212+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Jade's throat"
                  },
                  "gaze_target": "Jade's face",
                  "head_facing": "screen-right",
                  "secondary_hand": {
                    "action": "resting at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": "out of frame"
                  },
                  "stance": "standing",
                  "torso_facing": "screen-right",
                  "weight_bearing": null
                },
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Wren's right wrist"
                  },
                  "gaze_target": "Wren's face",
                  "head_facing": "screen-left, tilted up",
                  "secondary_hand": {
                    "action": "gripping",
                    "hand": "left",
                    "prop_id": null,
                    "target": "Wren's right forearm"
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "f2eb1a025cf5c1fd"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, handheld. Wren's other hand grips Jade's throat. violent impact shake, motion blur on hand entering frame, sudden rigid stop.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Medium close-up, 50mm, handheld, camera handheld. Jade standing center, head tilted back, both hands gripping Wren's wrist; Wren standing screen-left, right hand gripping Jade's throat, head facing Jade.. Wren's other hand grips Jade's throat.. lethal violence, helplessness, overwhelming power. Audio context: wind howling. heavy impact, sharp gasp, fabric tearing. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium close-up, 50mm, handheld, camera handheld. Jade standing center, head tilted back, both hands gripping Wren's wrist; Wren standing screen-left, right hand gripping Jade's throat, head facing Jade.. Wren's other hand grips Jade's throat.. lethal violence, helplessness, overwhelming power. Audio context: wind howling. heavy impact, sharp gasp, fabric tearing. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "handheld",
              "focal_length": "50mm",
              "kinetic_action": "violent impact shake, motion blur on hand entering frame, sudden rigid stop",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "LEFT",
                    "intensity": "bright",
                    "motivator": "android eye glow",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's other hand grips Jade's throat.",
                "emotion_line": "lethal violence, helplessness, overwhelming power",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade standing center, head tilted back, both hands gripping Wren's wrist; Wren standing screen-left, right hand gripping Jade's throat, head facing Jade."
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 2
            },
            "scene_index": 24,
            "shot_id": "EP001_SH24",
            "source_text": "The other finds Jade's throat.",
            "source_text_hash": "1e3952bff40a788eb73bc6f09ee00a48",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "confrontation",
                "relative_scale": "looming",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "struggling",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "boots scraping metal, then kicking empty air"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:57:34.401366+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "floating slightly outward",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "grating",
                  "head_facing": "down",
                  "secondary_hand": {
                    "action": "floating slightly outward",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "lifting off",
                  "torso_facing": "camera",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "5ef6628fea33746a"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, tilting. Jade's feet lift off the grating. She dangles from Wren's grip. upward tilt following boots lifting off, dangling motion, deep focus into abyss.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm, tilting, camera tilt. Jade lifting off at grating, right arm floating slightly outward, left arm floating slightly outward, head tilted down toward grating. Jade's feet lift off the grating. She dangles from Wren's grip.. loss of gravity, fatal drop, helpless struggle. Audio context: wind howling. boots scraping metal, then kicking empty air. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm, tilting, camera tilt. Jade lifting off at grating, right arm floating slightly outward, left arm floating slightly outward, head tilted down toward grating. Jade's feet lift off the grating. She dangles from Wren's grip.. loss of gravity, fatal drop, helpless struggle. Audio context: wind howling. boots scraping metal, then kicking empty air. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "85mm",
              "kinetic_action": "upward tilt following boots lifting off, dangling motion, deep focus into abyss",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "abyss depths",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's feet lift off the grating. She dangles from Wren's grip.",
                "emotion_line": "loss of gravity, fatal drop, helpless struggle",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade lifting off at grating, right arm floating slightly outward, left arm floating slightly outward, head tilted down toward grating"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 25,
            "shot_id": "EP001_SH25",
            "source_text": "Her feet leave the grating.",
            "source_text_hash": "33fde079ddb40052d9b62ef53d09bc48",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind rushing upward",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:19:32.205419+00:00",
              "characters": [],
              "prop_states": {},
              "scene_blocking_hash": "5c6328fc6411554b"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Wide shot, tilting. The bottomless shaft drops away beneath Jade's hanging boots. slow downward tilt into darkness, dust particles rushing up, vertigo effect.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Wide shot, 24mm, tilting, camera tilt. vast dark bottomless chasm dropping into absolute blackness, sheer jagged walls descending out of sight, empty void below. The bottomless shaft drops away beneath Jade's hanging boots.. vertigo, certain death, terrifying scale. Audio context: howling wind rushing upward. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Wide shot, 24mm, tilting, camera tilt. vast dark bottomless chasm dropping into absolute blackness, sheer jagged walls descending out of sight, empty void below. The bottomless shaft drops away beneath Jade's hanging boots.. vertigo, certain death, terrifying scale. Audio context: howling wind rushing upward. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "24mm",
              "kinetic_action": "slow downward tilt into darkness, dust particles rushing up, vertigo effect",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "abyss depths",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The bottomless shaft drops away beneath Jade's hanging boots.",
                "emotion_line": "vertigo, certain death, terrifying scale",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "vast dark bottomless chasm dropping into absolute blackness, sheer jagged walls descending out of sight, empty void below"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 26,
            "shot_id": "EP001_SH26",
            "source_text": "The abyss yawns below.",
            "source_text_hash": "bd992b6779cf984b71e1c7aa984b876e",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analyzing",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "emotion_keyword": "choking",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "high pitched electronic scanning whine, rapid clicking"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:57:56.101457+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "Jade's face",
                  "head_facing": "down toward Jade",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "Jade",
                  "weight_bearing": "both feet"
                },
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "Wren's eyes",
                  "head_facing": "up toward Wren",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "Wren",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "a339b80a6ff06015"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Wren's blue eyes scan Jade's face. Targeting reticles spiral behind the glow. micro-adjustments of android eyes, glowing light reflecting on human skin, static framing.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm. Wren standing, head tilted down, gaze tracking across Jade's face; Jade standing, head tilted up, gaze fixed on Wren's eyes. Wren's blue eyes scan Jade's face. Targeting reticles spiral behind the glow.. cold calculation, machine logic, predatory focus. Audio context: wind howling. high pitched electronic scanning whine, rapid clicking. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm. Wren standing, head tilted down, gaze tracking across Jade's face; Jade standing, head tilted up, gaze fixed on Wren's eyes. Wren's blue eyes scan Jade's face. Targeting reticles spiral behind the glow.. cold calculation, machine logic, predatory focus. Audio context: wind howling. high pitched electronic scanning whine, rapid clicking. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "micro-adjustments of android eyes, glowing light reflecting on human skin, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "android eyes",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's blue eyes scan Jade's face. Targeting reticles spiral behind the glow.",
                "emotion_line": "cold calculation, machine logic, predatory focus",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing, head tilted down, gaze tracking across Jade's face; Jade standing, head tilted up, gaze fixed on Wren's eyes"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 3
            },
            "scene_index": 27,
            "shot_id": "EP001_SH27",
            "source_text": "His eyes scan her face. Targeting reticles spiral behind the blue.",
            "source_text_hash": "e2664a576a19b6183b72eedf42b561ce",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "confrontation",
                "relative_scale": "looming",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "processing",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "cold, robotic \u2014 genuinely rebooting, the pause before \"era\" is real computation, not a threat",
                  "is_voiceover": false,
                  "text": "Identify sector. Identify... era."
                }
              ],
              "foley_action": "subtle servo whine during speech"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:58:11.351904+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "vacant off-screen left",
                  "head_facing": "screen-left",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": "evenly distributed"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "de52d7bc62f43484"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, pushing in. Wren's jaw moves \u2014 stiff, mechanical. His pale blue eyes flicker with each halting syllable. slow push in, rigid posture, jaw moving with mechanical precision.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 5 seconds. Medium close-up, 85mm, push-in, camera push_in. Wren standing rigidly, right hand resting out of frame, left hand resting out of frame, head facing screen-left with vacant gaze. Wren's jaw moves \u2014 stiff, mechanical. His pale blue eyes flicker with each halting syllable.. robotic coldness, disorientation, computational logic. Audio context: wind howling. subtle servo whine during speech. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium close-up, 85mm, push-in, camera push_in. Wren standing rigidly, right hand resting out of frame, left hand resting out of frame, head facing screen-left with vacant gaze. Wren's jaw moves \u2014 stiff, mechanical. His pale blue eyes flicker with each halting syllable.. robotic coldness, disorientation, computational logic. Audio context: wind howling. subtle servo whine during speech. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "85mm",
              "kinetic_action": "slow push in, rigid posture, jaw moving with mechanical precision",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "BEHIND",
                    "intensity": "moderate",
                    "motivator": "cryo-pod interior light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's jaw moves \u2014 stiff, mechanical. His pale blue eyes flicker with each halting syllable.",
                "emotion_line": "robotic coldness, disorientation, computational logic",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing rigidly, right hand resting out of frame, left hand resting out of frame, head facing screen-left with vacant gaze"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 28,
            "shot_id": "EP001_SH28",
            "source_text": "WREN (cold, robotic \u2014 genuinely rebooting, the pause before \"era\" is real computation, not a threat) Identify sector. Identify... era.",
            "source_text_hash": "1b5e44fa5b848e50823028de229cfb21",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "processing",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "emotion_keyword": "struggling",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "strained breathing, leather creaking against metal"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:58:26.358968+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Jade's throat"
                  },
                  "gaze_target": "Jade's face",
                  "head_facing": "screen-right, tilted slightly",
                  "secondary_hand": {
                    "action": "hanging relaxed",
                    "hand": "left",
                    "prop_id": null,
                    "target": "side"
                  },
                  "stance": "standing",
                  "torso_facing": "screen-right",
                  "weight_bearing": null
                },
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Wren's right forearm"
                  },
                  "gaze_target": "Wren's face",
                  "head_facing": "screen-left",
                  "secondary_hand": {
                    "action": "gripping",
                    "hand": "left",
                    "prop_id": null,
                    "target": "Wren's right forearm"
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "6647fdbb30bc2395"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Wren's head tilts. His grip on Jade's throat holds steady \u2014 neither tightening nor releasing. sharp mechanical head tilt, static grip, struggling human movement contrasting with rigid machine.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm. Wren standing, right hand gripping Jade's throat, left arm at side, head tilted toward Jade; Jade standing, both hands gripping Wren's right forearm, head facing Wren. Wren's head tilts. His grip on Jade's throat holds steady \u2014 neither tightening nor releasing.. uncanny valley, helpless suspension, terrifying stillness. Audio context: wind howling. strained breathing, leather creaking against metal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm. Wren standing, right hand gripping Jade's throat, left arm at side, head tilted toward Jade; Jade standing, both hands gripping Wren's right forearm, head facing Wren. Wren's head tilts. His grip on Jade's throat holds steady \u2014 neither tightening nor releasing.. uncanny valley, helpless suspension, terrifying stillness. Audio context: wind howling. strained breathing, leather creaking against metal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "sharp mechanical head tilt, static grip, struggling human movement contrasting with rigid machine",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "LEFT",
                    "intensity": "bright",
                    "motivator": "android eyes",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's head tilts. His grip on Jade's throat holds steady \u2014 neither tightening nor releasing.",
                "emotion_line": "uncanny valley, helpless suspension, terrifying stillness",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing, right hand gripping Jade's throat, left arm at side, head tilted toward Jade; Jade standing, both hands gripping Wren's right forearm, head facing Wren"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 4
            },
            "scene_index": 29,
            "shot_id": "EP001_SH29",
            "source_text": "His head tilts. Processing. The grip on her throat does not tighten. Does not release.",
            "source_text_hash": "1d069a6e94491dc8fa0728e6d7ec9c10",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "confrontation",
                "relative_scale": "looming",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "defiant",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "strained dark humor \u2014 slightly breathless, still refusing to show fear, the hand on her throat is real",
                  "is_voiceover": false,
                  "text": "Can't really talk with the hand situation, chrome-boy."
                }
              ],
              "foley_action": "strained choking sounds"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:58:48.355074+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Wren's wrist"
                  },
                  "gaze_target": "WREN",
                  "head_facing": "screen-right, tilted up",
                  "secondary_hand": {
                    "action": "gripping",
                    "hand": "left",
                    "prop_id": null,
                    "target": "Wren's forearm"
                  },
                  "stance": "pinned and leaning back slightly",
                  "torso_facing": "screen-right",
                  "weight_bearing": "on toes"
                },
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Jade's throat"
                  },
                  "gaze_target": "JADE",
                  "head_facing": "screen-left, tilted down",
                  "secondary_hand": {
                    "action": "resting at side",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing tall, leaning in",
                  "torso_facing": "screen-left",
                  "weight_bearing": "planted evenly on both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "7e74b0ea91f0f2f4"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade grips Wren's wrist with both hands, face reddening. Her lips move \u2014 strained, wry. strained neck muscles, breathless speaking, slight sway of suspended body.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 5 seconds. Medium close-up, 85mm. Jade pinned with head tilted up, right hand gripping Wren's wrist, left hand gripping Wren's forearm, gaze locked on Wren; Wren leaning in with shoulders squared, right hand gripping Jade's throat, gaze locked down on Jade. Jade grips Wren's wrist with both hands, face reddening. Her lips move \u2014 strained, wry.. defiance, strained humor, survival instinct. Audio context: wind howling. strained choking sounds. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium close-up, 85mm. Jade pinned with head tilted up, right hand gripping Wren's wrist, left hand gripping Wren's forearm, gaze locked on Wren; Wren leaning in with shoulders squared, right hand gripping Jade's throat, gaze locked down on Jade. Jade grips Wren's wrist with both hands, face reddening. Her lips move \u2014 strained, wry.. defiance, strained humor, survival instinct. Audio context: wind howling. strained choking sounds. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "strained neck muscles, breathless speaking, slight sway of suspended body",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "RIGHT",
                    "intensity": "bright",
                    "motivator": "android eyes",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade grips Wren's wrist with both hands, face reddening. Her lips move \u2014 strained, wry.",
                "emotion_line": "defiance, strained humor, survival instinct",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Jade pinned with head tilted up, right hand gripping Wren's wrist, left hand gripping Wren's forearm, gaze locked on Wren; Wren leaning in with shoulders squared, right hand gripping Jade's throat, gaze locked down on Jade"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 5
            },
            "scene_index": 30,
            "shot_id": "EP001_SH30",
            "source_text": "JADE (strained dark humor \u2014 slightly breathless, still refusing to show fear, the hand on her throat is real) Can't really talk with the hand situation, chrome-boy.",
            "source_text_hash": "6346267f32644960445cff214ad56f04",
            "spatial_data": {
              "camera_side": "B",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "dialogue",
                "relative_scale": "diminished",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analyzing",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "emotion_keyword": "tense",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "subtle synthetic whirring, heartbeat thumping"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:59:10.611491+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "fingers resting lightly",
                    "hand": "right",
                    "prop_id": null,
                    "target": "Jade's throat"
                  },
                  "gaze_target": "Jade",
                  "head_facing": "screen-right",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-right",
                  "weight_bearing": "both feet"
                },
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "Wren",
                  "head_facing": "screen-left, tilted slightly up",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "8d65813eea62ce8f"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, pushing in. Wren's fingers shift on Jade's throat \u2014 not squeezing. Pressing her pulse points like reading data.",
              "kling_t2v": "<truncated:blob>",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "<truncated:blob>",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 100mm, push-in, camera push_in. Wren standing close, right hand fingers resting lightly on Jade's throat, gaze locked on Jade; Jade standing, head tilted slightly up, gaze fixed on Wren. Wren's fingers shift on Jade's throat \u2014 not squeezing. Pressing her pulse points like reading data.. invasive analysis, cold intimacy, machine logic. Audio context: wind howling. subtle synthetic whirring, heartbeat thumping. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 100mm, push-in, camera push_in. Wren standing close, right hand fingers resting lightly on Jade's throat, gaze locked on Jade; Jade standing, head tilted slightly up, gaze fixed on Wren. Wren's fingers shift on Jade's throat \u2014 not squeezing. Pressing her pulse points like reading data.. invasive analysis, cold intimacy, machine logic. Audio context: wind howling. subtle synthetic whirring, heartbeat thumping. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "macro focus on synthetic fingers shifting against skin, slow creeping push, pulsing vein",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "ABOVE",
                    "intensity": "moderate",
                    "motivator": "android eyes",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's fingers shift on Jade's throat \u2014 not squeezing. Pressing her pulse points like reading data.",
                "emotion_line": "invasive analysis, cold intimacy, machine logic",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "subject_line": "Wren standing close, right hand fingers resting lightly on Jade's throat, gaze locked on Jade; Jade standing, head tilted slightly up, gaze fixed on Wren"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 3
            },
            "scene_index": 31,
            "shot_id": "EP001_SH31",
            "source_text": "His fingers shift on her throat. Not squeezing \u2014 scanning. Reading her pulse like data.",
            "source_text_hash": "d06a55a80eb35915ee31d1af18dc3da6",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "flat robotic certainty \u2014 stated like an access code, not a question in delivery",
                  "is_voiceover": false,
                  "text": "Query: What year is this."
                }
              ],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:59:21.900400+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "resting at side out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "off-screen listener",
                  "head_facing": "screen-left",
                  "secondary_hand": {
                    "action": "resting at side out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "screen-left",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "5a348fdaa108addb"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways.",
              "kling_t2v": "Extreme close-up, 3 seconds. Subject: Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts. Action: The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: mechanical stress, imminent failure. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 3 seconds. Subject: Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts. Action: The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: mechanical stress, imminent failure. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm. Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts. The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways.. mechanical stress, imminent failure. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm. Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts. The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways.. mechanical stress, imminent failure. Audio context: wind howling. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "duration_s": 3,
              "focal_length": "85mm",
              "prompt_skeleton": {
                "action_line": "The anchor cable strains under their combined weight. Steel strands fray. The pod lurches sideways.",
                "emotion_line": "mechanical stress, imminent failure",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "lighting_motivator": "emergency corridor light above, dim amber",
                "subject_line": "Anchor cable bolted to cryo-pod frame, steel strands fraying under tension, pod lurching sideways as weight shifts"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 32,
            "shot_id": "EP001_SH32",
            "source_text": "The anchor cable strains under the combined weight of Wren and Jade. Steel strands fray. The pod lurches sideways.",
            "source_text_hash": "bac0afa0612144a10e620a9aaee799da",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": false
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "wardrobe_phase_id": "jade_phase_1_salvage_run"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "electronic hum rising in pitch",
              "dialogue": [],
              "foley_action": ""
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:59:32.409117+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "straight ahead",
                  "head_facing": "forward",
                  "secondary_hand": {
                    "action": "out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "forward",
                  "weight_bearing": null
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "5fdbd65b9c552dbd"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls.",
              "kling_t2v": "Medium close-up, 4 seconds. Subject: Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold. Action: Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: forced truce, survival instinct overriding hostility. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 4 seconds. Subject: Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold. Action: Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: forced truce, survival instinct overriding hostility. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium close-up, 50mm. Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold. Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls.. forced truce, survival instinct overriding hostility. Audio context: electronic hum rising in pitch. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium close-up, 50mm. Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold. Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls.. forced truce, survival instinct overriding hostility. Audio context: electronic hum rising in pitch. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "duration_s": 4,
              "focal_length": "50mm",
              "prompt_skeleton": {
                "action_line": "Wren releases Jade's throat. The pod lurches. Both brace against the shaft walls.",
                "emotion_line": "forced truce, survival instinct overriding hostility",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "lighting_motivator": "cryo-pod interior light, cold blue",
                "subject_line": "Wren releasing grip on Jade's throat, both bracing against cryo-pod interior walls as pod tilts, Jade grabbing handhold"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 4
            },
            "scene_index": 33,
            "shot_id": "EP001_SH33",
            "source_text": "Wren releases Jade. The pod lurches. Both brace against the walls. The standoff is over \u2014 survival takes priority.",
            "source_text_hash": "376cb1d411d4896932eda1279eaba6a3",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "physical",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "wardrobe_phase_id": "jade_phase_1_salvage_run"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "massive metallic groan, steel cables screaming under tension, heavy thud"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:59:47.096618+00:00",
              "characters": [
                {
                  "character_id": "WREN",
                  "dominant_hand": {
                    "action": "gripping",
                    "hand": "right",
                    "prop_id": null,
                    "target": "cable"
                  },
                  "gaze_target": "cryo_pod",
                  "head_facing": "down",
                  "secondary_hand": {
                    "action": "bracing",
                    "hand": "left",
                    "prop_id": null,
                    "target": "bulkhead"
                  },
                  "stance": "leaning forward",
                  "torso_facing": "forward",
                  "weight_bearing": null
                }
              ],
              "prop_states": {
                "cryo_pod": "positioned below Wren"
              },
              "scene_blocking_hash": "31602de715be47be"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength.",
              "kling_t2v": "Medium shot, 5 seconds. Subject: Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above. Action: Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: raw exertion, mechanical power, reluctant dependence. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 5 seconds. Subject: Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above. Action: Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: raw exertion, mechanical power, reluctant dependence. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium shot, 35mm. Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above. Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength.. raw exertion, mechanical power, reluctant dependence. Audio context: wind howling. massive metallic groan, steel cables screaming under tension, heavy thud. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium shot, 35mm. Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above. Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength.. raw exertion, mechanical power, reluctant dependence. Audio context: wind howling. massive metallic groan, steel cables screaming under tension, heavy thud. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "duration_s": 5,
              "focal_length": "35mm",
              "prompt_skeleton": {
                "action_line": "Wren grabs a cable with one hand, Jade with the other, and climbs toward the catwalk by brute mechanical strength.",
                "emotion_line": "raw exertion, mechanical power, reluctant dependence",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "lighting_motivator": "shaft ambient, dim industrial",
                "subject_line": "Wren gripping anchor cable with right hand, left arm clamped around Jade's waist, hauling both of them upward toward catwalk above"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 5
            },
            "scene_index": 34,
            "shot_id": "EP001_SH34",
            "source_text": "Wren grabs a cable with one hand, Jade with the other. He climbs toward the catwalk above, hauling them both up by brute mechanical strength.",
            "source_text_hash": "5c2e7c915bc8d3b0171b9ecbae4548e5",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "physical",
                "relative_scale": "wren_larger",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "wardrobe_phase_id": "jade_phase_1_salvage_run"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling",
              "dialogue": [],
              "foley_action": "loud metallic snapping, bolts ricocheting, explosive structural failure"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T14:19:49.598821+00:00",
              "characters": [],
              "prop_states": {
                "cryo_pod": "anchor cables snapping under tension, mounts failing"
              },
              "scene_blocking_hash": "880e372239bde6d3"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren.",
              "kling_t2v": "Close-up, 4 seconds. Subject: Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating. Action: Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: desperate grip, relief breaking through, split-second decision to help. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 4 seconds. Subject: Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating. Action: Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: desperate grip, relief breaking through, split-second decision to help. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Close-up, 85mm. Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating. Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren.. desperate grip, relief breaking through, split-second decision to help. Audio context: wind howling. loud metallic snapping, bolts ricocheting, explosive structural failure. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Close-up, 85mm. Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating. Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren.. desperate grip, relief breaking through, split-second decision to help. Audio context: wind howling. loud metallic snapping, bolts ricocheting, explosive structural failure. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": false,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "duration_s": 4,
              "focal_length": "85mm",
              "prompt_skeleton": {
                "action_line": "Jade grabs the catwalk railing and pulls herself over. She hesitates \u2014 then reaches back down for Wren.",
                "emotion_line": "desperate grip, relief breaking through, split-second decision to help",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "lighting_motivator": "corridor light from above, warm amber spilling onto catwalk",
                "subject_line": "Jade reaching up with right hand to grab catwalk railing, left hand gripping Wren's shoulder plate, pulling herself over the edge onto grating"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 35,
            "shot_id": "EP001_SH35",
            "source_text": "Jade grabs the catwalk railing, pulls herself over. A beat of hesitation. She reaches back down for Wren. First act of reciprocity.",
            "source_text_hash": "91d7e72e4f5582a385482d432b334cc3",
            "spatial_data": {
              "camera_side": "B",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "physical",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "JADE",
                  "wardrobe_phase_id": "jade_phase_1_salvage_run"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "prop_interaction": "none",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "wind howling, metal groaning",
              "dialogue": [],
              "foley_action": "sharp involuntary bark of laughter echoing in the shaft"
            },
            "blocking_metadata": {
              "axis_violation": false,
              "blocking_pass_model": "gemini-3.1-pro-preview",
              "blocking_pass_timestamp": "2026-03-18T13:59:59.333217+00:00",
              "characters": [
                {
                  "character_id": "JADE",
                  "dominant_hand": {
                    "action": "resting out of frame",
                    "hand": "right",
                    "prop_id": null,
                    "target": null
                  },
                  "gaze_target": "distance",
                  "head_facing": "center",
                  "secondary_hand": {
                    "action": "resting out of frame",
                    "hand": "left",
                    "prop_id": null,
                    "target": null
                  },
                  "stance": "standing",
                  "torso_facing": "center",
                  "weight_bearing": "both feet"
                }
              ],
              "prop_states": {},
              "scene_blocking_hash": "ce9ca57b6e4729a1"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Wide shot. They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear.",
              "kling_t2v": "Wide shot, 5 seconds. Subject: Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one. Action: They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: finality, no going back, reluctant alliance sealed. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Wide shot, 5 seconds. Subject: Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one. Action: They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear. Setting: Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Mood: finality, no going back, reluctant alliance sealed. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Wide shot, 24mm. Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one. They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear.. finality, no going back, reluctant alliance sealed. Audio context: wind howling, metal groaning. sharp involuntary bark of laughter echoing in the shaft. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Wide shot, 24mm. Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one. They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear.. finality, no going back, reluctant alliance sealed. Audio context: wind howling, metal groaning. sharp involuntary bark of laughter echoing in the shaft. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "needs_review": true,
            "origin": "script_derived",
            "pipeline": "still",
            "prompt_data": {
              "duration_s": 5,
              "focal_length": "24mm",
              "prompt_skeleton": {
                "action_line": "They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear.",
                "emotion_line": "finality, no going back, reluctant alliance sealed",
                "environment_line": "Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below.",
                "lighting_motivator": "shaft depth darkness below, corridor amber light above",
                "subject_line": "Wren and Jade standing on narrow catwalk at edge of vast vertical shaft, cryo-pod hanging below them, anchor cables snapping one by one"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "crane",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 5
            },
            "scene_index": 36,
            "shot_id": "EP001_SH36",
            "source_text": "They stand on the catwalk. The last cables snap. The pod falls into the void. They watch it disappear. No going back. They are stuck with each other.",
            "source_text_hash": "395af0a3ae48f3feb21594b97c028b69",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "proximity",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          }
        ],
        "source_hash": "7d7ba3ef2b3eaa7d41aa460589505b89",
        "total_shots": 37
      },
      "path": "tartarus/state/visual/plans/ep_001_plan.json"
    },
    {
      "data": {
        "episode_id": "EP002",
        "generated_at": "2023-10-24T12:00:00Z",
        "project": "Starsend",
        "shots": [
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind, distant metallic groans",
              "dialogue": [],
              "foley_action": "servo whine, metallic click"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Wren's hand opens and releases its grip. micro-tremor in servos, tension releasing from digits, smooth mechanical articulation.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: mechanical hand, brushed steel plating, reinforced joints. Action: Wren's hand opens and releases its grip. Motion: micro-tremor in servos, tension releasing from digits, smooth mechanical articulation. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: cold precision, mechanical detachment. Lighting: cool soft light from below (abyss ambient glow) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: mechanical hand, brushed steel plating, reinforced joints. Action: Wren's hand opens and releases its grip. Motion: micro-tremor in servos, tension releasing from digits, smooth mechanical articulation. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: cold precision, mechanical detachment. Lighting: cool soft light from below (abyss ambient glow) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm. mechanical hand, brushed steel plating, reinforced joints. Wren's hand opens and releases its grip.. cold precision, mechanical detachment. Audio context: howling wind, distant metallic groans. servo whine, metallic click. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm. mechanical hand, brushed steel plating, reinforced joints. Wren's hand opens and releases its grip.. cold precision, mechanical detachment. Audio context: howling wind, distant metallic groans. servo whine, metallic click. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "micro-tremor in servos, tension releasing from digits, smooth mechanical articulation",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "abyss ambient glow",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren's hand opens and releases its grip.",
                "emotion_line": "cold precision, mechanical detachment",
                "environment_line": "Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths.",
                "subject_line": "mechanical hand, brushed steel plating, reinforced joints"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 1,
            "shot_id": "EP002_SH01",
            "source_text": "Wren's hand releases.",
            "source_text_hash": "2c37d9f2a81560641d8db4799612ecb6",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "exhausted",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_maintenance_shaft",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind",
              "dialogue": [],
              "foley_action": "heavy boots hitting metal grating, desperate gasping"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, tilting. Jade drops onto the metal grating, inhaling sharply for air. motion blur on descent, heavy impact on grating, kinetic energy transfer to floor, shoulders heaving.",
              "kling_t2v": "Medium shot, 3 seconds, tilting. Subject: woman in heavy canvas jacket, cargo pants. Action: Jade drops onto the metal grating, gasping for air. Motion: motion blur on descent, heavy impact on grating, kinetic energy transfer to floor, shoulders heaving. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: exhaustion, desperate relief. Lighting: amber hard light from above (overhead emergency light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 3 seconds, tilting. Subject: woman in heavy canvas jacket, cargo pants. Action: Jade drops onto the metal grating, gasping for air. Motion: motion blur on descent, heavy impact on grating, kinetic energy transfer to floor, shoulders heaving. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: exhaustion, desperate relief. Lighting: amber hard light from above (overhead emergency light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 35mm, tilting, camera tilt. woman in heavy canvas jacket, cargo pants. Jade drops onto the metal grating, gasping for air.. exhaustion, desperate relief. Audio context: howling wind. heavy boots hitting metal grating, desperate gasping. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 35mm, tilting, camera tilt. woman in heavy canvas jacket, cargo pants. Jade drops onto the metal grating, gasping for air.. exhaustion, desperate relief. Audio context: howling wind. heavy boots hitting metal grating, desperate gasping. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "35mm",
              "kinetic_action": "motion blur on descent, heavy impact on grating, kinetic energy transfer to floor, shoulders heaving",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "overhead emergency light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade drops onto the metal grating, gasping for air.",
                "emotion_line": "exhaustion, desperate relief",
                "environment_line": "Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths.",
                "subject_line": "woman in heavy canvas jacket, cargo pants"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 1,
            "shot_id": "EP002_SH02",
            "source_text": "Jade drops to the grating, gasping.",
            "source_text_hash": "362c48f5125701e9ba799765ca242633",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_maintenance_shaft",
              "props": [
                {
                  "prop_id": "cryo_pod",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "howling wind",
              "dialogue": [],
              "foley_action": "metal shrieking, heavy cables snapping, fading echo"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Long shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel cryo-pod, heavy anchor cables. Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. fast downward trajectory, sparks scattering from snapped cables. The cryo-pod shrieks below as anchors snap and the pod falls into darkness. Lighting: warm light casting hard shadows (source: snapping cable sparks) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Long shot, tilting. The cryo-pod shrieks below as anchors snap and the pod falls into darkness. fast downward trajectory, motion blur on falling object, sparks scattering from snapped cables.",
              "kling_t2v": "Long shot, 4 seconds, tilting. Subject: brushed steel cryo-pod, heavy anchor cables. Action: The cryo-pod shrieks below as anchors snap and the pod falls into darkness. Motion: fast downward trajectory, motion blur on falling object, sparks scattering from snapped cables. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: violent loss, sinking dread. Lighting: warm hard light from above (snapping cable sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Long shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel cryo-pod, heavy anchor cables. Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. fast downward trajectory, sparks scattering from snapped cables. The cryo-pod shrieks below as anchors snap and the pod falls into darkness. Lighting: warm light casting hard shadows (source: snapping cable sparks) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Long shot, 4 seconds, tilting. Subject: brushed steel cryo-pod, heavy anchor cables. Action: The cryo-pod shrieks below as anchors snap and the pod falls into darkness. Motion: fast downward trajectory, motion blur on falling object, sparks scattering from snapped cables. Setting: Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths. Mood: violent loss, sinking dread. Lighting: warm hard light from above (snapping cable sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Long shot, 24mm, tilting, camera tilt. brushed steel cryo-pod, heavy anchor cables. The cryo-pod shrieks below as anchors snap and the pod falls into darkness.. violent loss, sinking dread. Audio context: howling wind. metal shrieking, heavy cables snapping, fading echo. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Long shot, 24mm, tilting, camera tilt. brushed steel cryo-pod, heavy anchor cables. The cryo-pod shrieks below as anchors snap and the pod falls into darkness.. violent loss, sinking dread. Audio context: howling wind. metal shrieking, heavy cables snapping, fading echo. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "24mm",
              "kinetic_action": "fast downward trajectory, motion blur on falling object, sparks scattering from snapped cables",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "ABOVE",
                    "intensity": "bright",
                    "motivator": "snapping cable sparks",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The cryo-pod shrieks below as anchors snap and the pod falls into darkness.",
                "emotion_line": "violent loss, sinking dread",
                "environment_line": "Edge of a vast spaceship maintenance shaft. Metal grating platform over a bottomless abyss. Thick anchor cables hang into darkness below. Wind howls up from the void. Rusted ceiling struts overhead. Amber emergency lighting casts harsh directional shadows. Condensation on every metal surface. Faint blue ambient glow from the depths.",
                "subject_line": "brushed steel cryo-pod, heavy anchor cables"
              },
              "shot_type": "LS"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 1,
            "shot_id": "EP002_SH03",
            "source_text": "The cryo-pod SHRIEKS below \u2014 anchors snapping, metal swallowed by the dark.",
            "source_text_hash": "55ec94cbece155aaf24ff2f9e3f6f7b0",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans, dripping condensation",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Wren stands motionless. absolute stillness, rigid posture, center-weighted composition.",
              "kling_t2v": "Medium shot, 3 seconds. Subject: massive combat chassis, scarred alloy. Action: Wren stands motionless. Motion: absolute stillness, rigid posture, center-weighted composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: imposing presence, unnatural calm. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 3 seconds. Subject: massive combat chassis, scarred alloy. Action: Wren stands motionless. Motion: absolute stillness, rigid posture, center-weighted composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: imposing presence, unnatural calm. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm. massive combat chassis, scarred alloy. Wren stands motionless.. imposing presence, unnatural calm. Audio context: distant ship groans, dripping condensation. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm. massive combat chassis, scarred alloy. Wren stands motionless.. imposing presence, unnatural calm. Audio context: distant ship groans, dripping condensation. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "absolute stillness, rigid posture, center-weighted composition",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren stands motionless.",
                "emotion_line": "imposing presence, unnatural calm",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis, scarred alloy"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH04",
            "source_text": "Wren stands motionless.",
            "source_text_hash": "d216dd33001602e94e55957609ce3239",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analytical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "faint high-pitched sensor whine"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor. rapid micro-saccades, mechanical precision, static framing.",
              "kling_t2v": "Extreme close-up, 3 seconds. Subject: mechanical optics, brushed steel facial plating. Action: His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor. Motion: rapid micro-saccades, mechanical precision, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: calculating, analytical. Lighting: blue hard light from self_illuminated (optic sensors) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 3 seconds. Subject: mechanical optics, brushed steel facial plating. Action: His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor. Motion: rapid micro-saccades, mechanical precision, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: calculating, analytical. Lighting: blue hard light from self_illuminated (optic sensors) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm. mechanical optics, brushed steel facial plating. His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor.. calculating, analytical. Audio context: faint high-pitched sensor whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm. mechanical optics, brushed steel facial plating. His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor.. calculating, analytical. Audio context: faint high-pitched sensor whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "rapid micro-saccades, mechanical precision, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "dim",
                    "motivator": "optic sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "His eyes track left-to-right, top-to-bottom in a grid pattern, scanning the corridor.",
                "emotion_line": "calculating, analytical",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "mechanical optics, brushed steel facial plating"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH05",
            "source_text": "Eyes tracking left-to-right, top-to-bottom. Grid pattern. Mapping the corridor like a targeting system.",
            "source_text_hash": "3af3a2abb35252b30dfd183b07e0c236",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "disciplined",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [],
              "foley_action": "heavy metallic clink of hands clasping"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. His hands settle behind his back in parade rest. smooth mechanical articulation, hands clasping behind back, rigid spine.",
              "kling_t2v": "Medium close-up, 3 seconds. Subject: massive combat chassis, reinforced joints. Action: His hands settle behind his back in parade rest. Motion: smooth mechanical articulation, hands clasping behind back, rigid spine. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: disciplined, alert. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds. Subject: massive combat chassis, reinforced joints. Action: His hands settle behind his back in parade rest. Motion: smooth mechanical articulation, hands clasping behind back, rigid spine. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: disciplined, alert. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 50mm. massive combat chassis, reinforced joints. His hands settle behind his back in parade rest.. disciplined, alert. Audio context: distant ship groans. heavy metallic clink of hands clasping. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 50mm. massive combat chassis, reinforced joints. His hands settle behind his back in parade rest.. disciplined, alert. Audio context: distant ship groans. heavy metallic clink of hands clasping. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "smooth mechanical articulation, hands clasping behind back, rigid spine",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "His hands settle behind his back in parade rest.",
                "emotion_line": "disciplined, alert",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis, reinforced joints"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH06",
            "source_text": "His hands settle behind his back. Parade rest. The military bearing of a soldier on active watch.",
            "source_text_hash": "38f3d9c9448e3463edd5b5423cd4eb3e",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "pained",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "dripping condensation",
              "dialogue": [],
              "foley_action": "fabric rustling, sharp intake of breath"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade rubs her throat. fingers pressing into neck, shallow chest movement, wincing.",
              "kling_t2v": "Close-up, 2 seconds. Subject: woman's face, dirt-smudged skin. Action: Jade rubs her throat. Motion: fingers pressing into neck, shallow chest movement, wincing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: pain, lingering fear. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: woman's face, dirt-smudged skin. Action: Jade rubs her throat. Motion: fingers pressing into neck, shallow chest movement, wincing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: pain, lingering fear. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm. woman's face, dirt-smudged skin. Jade rubs her throat.. pain, lingering fear. Audio context: dripping condensation. fabric rustling, sharp intake of breath. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm. woman's face, dirt-smudged skin. Jade rubs her throat.. pain, lingering fear. Audio context: dripping condensation. fabric rustling, sharp intake of breath. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "fingers pressing into neck, shallow chest movement, wincing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade rubs her throat.",
                "emotion_line": "pain, lingering fear",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman's face, dirt-smudged skin"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH07",
            "source_text": "Jade rubs her throat.",
            "source_text_hash": "9b0e8dd5acac48aa555eb28cff6677df",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "paranoid",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, panning. She checks the corridor behind her \u2014 one exit dropped to the ground, one dark. rapid head turn, motion blur on panning motion, tense neck tendons.",
              "kling_t2v": "Medium close-up, 3 seconds, panning. Subject: woman looking over shoulder. Action: She checks the corridor behind her \u2014 one exit collapsed, one dark. Motion: rapid head turn, motion blur on panning motion, tense neck tendons. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: paranoid, calculating. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds, panning. Subject: woman looking over shoulder. Action: She checks the corridor behind her \u2014 one exit collapsed, one dark. Motion: rapid head turn, motion blur on panning motion, tense neck tendons. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: paranoid, calculating. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 35mm, panning, camera pan. woman looking over shoulder. She checks the corridor behind her \u2014 one exit collapsed, one dark.. paranoid, calculating. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 35mm, panning, camera pan. woman looking over shoulder. She checks the corridor behind her \u2014 one exit collapsed, one dark.. paranoid, calculating. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "35mm",
              "kinetic_action": "rapid head turn, motion blur on panning motion, tense neck tendons",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "She checks the corridor behind her \u2014 one exit collapsed, one dark.",
                "emotion_line": "paranoid, calculating",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman looking over shoulder"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH08",
            "source_text": "Checks the corridor behind her \u2014 two exits, one collapsed, one dark.",
            "source_text_hash": "e70d7b2b6c7acd729e0c89ab466abae0",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "frustrated",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "soft skin friction"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Her eyes narrow. She pauses, calculating. eyes narrowing, jaw setting, slight exhale.",
              "kling_t2v": "Close-up, 2 seconds. Subject: grime-streaked young woman, eyes narrowing in calculation. Action: Her eyes narrow. She pauses, calculating. Motion: eyes narrowing, jaw setting, slight exhale. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: frustrated calculation. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: grime-streaked young woman, eyes narrowing in calculation. Action: Her eyes narrow. She pauses, calculating. Motion: eyes narrowing, jaw setting, slight exhale. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: frustrated calculation. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm. grime-streaked young woman, eyes narrowing in calculation. Her eyes narrow. She pauses, calculating.. frustrated calculation. Audio context: soft skin friction. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm. grime-streaked young woman, eyes narrowing in calculation. Her eyes narrow. She pauses, calculating.. frustrated calculation. Audio context: soft skin friction. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "eyes narrowing, jaw setting, slight exhale",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Her eyes narrow. She pauses, calculating.",
                "emotion_line": "frustrated calculation",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "grime-streaked young woman, eyes narrowing in calculation"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH09",
            "source_text": "Eyes narrow. The gambler's pause \u2014 running the odds.",
            "source_text_hash": "fda4e1e7f79c41e83354e66bfe1150c7",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "angry",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "sarcastic, breathless",
                  "is_voiceover": false,
                  "text": "You just grabbed me by the throat over a hole that goes to nowhere. We're off to a great start."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Jade faces Wren, gestures at the shaft behind her, and speaks. jaw movement synced to speech, subtle head tilts, tense posture.",
              "kling_t2v": "Medium shot, 5 seconds. Subject: woman in heavy canvas jacket. Action: Jade faces Wren, gestures at the shaft behind her, and speaks. Motion: jaw movement synced to speech, subtle head tilts, tense posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: sarcastic, angry. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 5 seconds. Subject: woman in heavy canvas jacket. Action: Jade faces Wren, gestures at the shaft behind her, and speaks. Motion: jaw movement synced to speech, subtle head tilts, tense posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: sarcastic, angry. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade faces Wren, gestures at the shaft behind her, and speaks.. sarcastic, angry. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade faces Wren, gestures at the shaft behind her, and speaks.. sarcastic, angry. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, subtle head tilts, tense posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade faces Wren, gestures at the shaft behind her, and speaks.",
                "emotion_line": "sarcastic, angry",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 2,
            "shot_id": "EP002_SH10",
            "source_text": "JADE You just grabbed me by the throat over a hole that goes to nowhere. We're off to a great start.",
            "source_text_hash": "6c041cd00a6507c14b5e61810874d2c9",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "building mechanical whine",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. sweeping light beams cutting through steam, static framing. A mechanical whine builds in the walls. Amber light sweeps the corridor. Lighting: amber light casting hard shadows (source: drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Wide shot. A mechanical whine builds in the walls. Amber light sweeps the corridor. sweeping light beams cutting through steam, static framing.",
              "kling_t2v": "Wide shot, 4 seconds. Subject: empty corridor. Action: A mechanical whine builds in the walls. Amber light sweeps the corridor. Motion: sweeping light beams cutting through steam, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: impending threat, tension. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. sweeping light beams cutting through steam, static framing. A mechanical whine builds in the walls. Amber light sweeps the corridor. Lighting: amber light casting hard shadows (source: drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Wide shot, 4 seconds. Subject: empty corridor. Action: A mechanical whine builds in the walls. Amber light sweeps the corridor. Motion: sweeping light beams cutting through steam, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: impending threat, tension. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Wide shot, 24mm. empty corridor. A mechanical whine builds in the walls. Amber light sweeps the corridor.. impending threat, tension. Audio context: building mechanical whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Wide shot, 24mm. empty corridor. A mechanical whine builds in the walls. Amber light sweeps the corridor.. impending threat, tension. Audio context: building mechanical whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "24mm",
              "kinetic_action": "sweeping light beams cutting through steam, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "A mechanical whine builds in the walls. Amber light sweeps the corridor.",
                "emotion_line": "impending threat, tension",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "empty corridor"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH11",
            "source_text": "A WHINE builds in the walls. Amber light sweeps the corridor.",
            "source_text_hash": "2855f36fb91500d3680507c3656e3210",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "warden_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "loud mechanical whine, rotor hum",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, pushing in. A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors. rapid rotation of sensor array, hovering micro-adjustments, motion blur on rotors.",
              "kling_t2v": "Medium shot, 3 seconds, push-in. Subject: four-rotor drone, spinning sensor array, municipal markings. Action: A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors. Motion: rapid rotation of sensor array, hovering micro-adjustments, motion blur on rotors. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: mechanical surveillance, hostile. Lighting: amber hard light from self_illuminated (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 3 seconds, push-in. Subject: four-rotor drone, spinning sensor array, municipal markings. Action: A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors. Motion: rapid rotation of sensor array, hovering micro-adjustments, motion blur on rotors. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: mechanical surveillance, hostile. Lighting: amber hard light from self_illuminated (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm, push-in, camera push_in. four-rotor drone, spinning sensor array, municipal markings. A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors.. mechanical surveillance, hostile. Audio context: loud mechanical whine, rotor hum. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm, push-in, camera push_in. four-rotor drone, spinning sensor array, municipal markings. A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors.. mechanical surveillance, hostile. Audio context: loud mechanical whine, rotor hum. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "rapid rotation of sensor array, hovering micro-adjustments, motion blur on rotors",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "A warden drone rounds the corner \u2014 sensor array spinning, mounted on four rotors.",
                "emotion_line": "mechanical surveillance, hostile",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "four-rotor drone, spinning sensor array, municipal markings"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH12",
            "source_text": "Warden drone. Sensor array spinning, mounted on four rotors.",
            "source_text_hash": "4f2c0eaf642f4d698dd4d80302b393f1",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "rotor hum",
              "dialogue": [],
              "foley_action": "electronic targeting chirp"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. The drone locks its sensor array on Wren. amber light illuminating face, static posture.",
              "kling_t2v": "Medium close-up, 2 seconds. Subject: massive combat chassis, scarred alloy. Action: The drone locks its sensor array on Wren. Motion: amber light illuminating face, static posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: unfazed, targeted. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 2 seconds. Subject: massive combat chassis, scarred alloy. Action: The drone locks its sensor array on Wren. Motion: amber light illuminating face, static posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: unfazed, targeted. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Medium close-up, 85mm. massive combat chassis, scarred alloy. The drone locks its sensor array on Wren.. unfazed, targeted. Audio context: rotor hum. electronic targeting chirp. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium close-up, 85mm. massive combat chassis, scarred alloy. The drone locks its sensor array on Wren.. unfazed, targeted. Audio context: rotor hum. electronic targeting chirp. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "amber light illuminating face, static posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The drone locks its sensor array on Wren.",
                "emotion_line": "unfazed, targeted",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis, scarred alloy"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH13",
            "source_text": "It locks on Wren.",
            "source_text_hash": "3056d8d6f6d21f9e37be2968e0112389",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analytical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "rotor hum",
              "dialogue": [],
              "foley_action": "subtle servo whine"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Wren tilts his head at a slight angle. precise 15-degree head tilt, smooth servo movement.",
              "kling_t2v": "Close-up, 2 seconds. Subject: mechanical face, brushed steel plating. Action: Wren tilts his head at a slight angle. Motion: precise 15-degree head tilt, smooth servo movement. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: calculating, analytical. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: mechanical face, brushed steel plating. Action: Wren tilts his head at a slight angle. Motion: precise 15-degree head tilt, smooth servo movement. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: calculating, analytical. Lighting: amber hard light from front (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 100mm. mechanical face, brushed steel plating. Wren tilts his head at a slight angle.. calculating, analytical. Audio context: rotor hum. subtle servo whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 100mm. mechanical face, brushed steel plating. Wren tilts his head at a slight angle.. calculating, analytical. Audio context: rotor hum. subtle servo whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "precise 15-degree head tilt, smooth servo movement",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren tilts his head at a slight angle.",
                "emotion_line": "calculating, analytical",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "mechanical face, brushed steel plating"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH14",
            "source_text": "Wren's head tilts \u2014 slight angle, processing.",
            "source_text_hash": "1b4a69b188d856576c71d800991da640",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "warden_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "heavy metallic crunch, tearing metal, electrical shorting"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Wren strikes the sensor hub with one palm and pulls away the chassis open with the other hand.",
              "kling_t2v": "Medium shot, 2 seconds. Subject: massive combat chassis destroying drone. Action: Wren strikes the sensor hub with one palm and rips the chassis open with the other hand. Motion: extreme motion blur on striking arm, kinetic energy transfer, debris exploding outward. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: brutal efficiency, overwhelming force. Lighting: warm hard light from front (drone sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 2 seconds. Subject: massive combat chassis destroying drone. Action: Wren strikes the sensor hub with one palm and rips the chassis open with the other hand. Motion: extreme motion blur on striking arm, kinetic energy transfer, debris exploding outward. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: brutal efficiency, overwhelming force. Lighting: warm hard light from front (drone sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Medium shot, 35mm. massive combat chassis destroying drone. Wren strikes the sensor hub with one palm and rips the chassis open with the other hand.. brutal efficiency, overwhelming force. Audio context: heavy metallic crunch, tearing metal, electrical shorting. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium shot, 35mm. massive combat chassis destroying drone. Wren strikes the sensor hub with one palm and rips the chassis open with the other hand.. brutal efficiency, overwhelming force. Audio context: heavy metallic crunch, tearing metal, electrical shorting. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "i2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "extreme motion blur on striking arm, kinetic energy transfer, debris exploding outward",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "drone sparks",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren strikes the sensor hub with one palm and rips the chassis open with the other hand.",
                "emotion_line": "brutal efficiency, overwhelming force",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis destroying drone"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": true,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH15",
            "source_text": "Two movements. His palm strikes the sensor hub. His other hand rips the chassis open like wet cardboard.",
            "source_text_hash": "9cee2df17f388e1a551c1594f7254345",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "warden_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "dripping condensation",
              "dialogue": [],
              "foley_action": "heavy metal clatter, electrical fizzle"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Extreme close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. destroyed drone chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. heavy impact on metal, sparks scattering, smoke rising. The drone drops to the grating, sparking. Lighting: warm light casting hard shadows (source: electrical sparks) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Extreme close-up. The drone drops to the grating, sparking. heavy impact on metal, sparks scattering, smoke rising.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: destroyed drone chassis. Action: The drone drops to the grating, sparking. Motion: heavy impact on metal, sparks scattering, smoke rising. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: destruction, sudden silence. Lighting: warm hard light from self_illuminated (electrical sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. destroyed drone chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. heavy impact on metal, sparks scattering, smoke rising. The drone drops to the grating, sparking. Lighting: warm light casting hard shadows (source: electrical sparks) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: destroyed drone chassis. Action: The drone drops to the grating, sparking. Motion: heavy impact on metal, sparks scattering, smoke rising. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: destruction, sudden silence. Lighting: warm hard light from self_illuminated (electrical sparks) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 50mm. destroyed drone chassis. The drone drops to the grating, sparking.. destruction, sudden silence. Audio context: dripping condensation. heavy metal clatter, electrical fizzle. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 50mm. destroyed drone chassis. The drone drops to the grating, sparking.. destruction, sudden silence. Audio context: dripping condensation. heavy metal clatter, electrical fizzle. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "heavy impact on metal, sparks scattering, smoke rising",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "electrical sparks",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The drone drops to the grating, sparking.",
                "emotion_line": "destruction, sudden silence",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "destroyed drone chassis"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH16",
            "source_text": "The drone drops, sparking against the grating.",
            "source_text_hash": "62b780114b0ffa1490c330ae023c7689",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "shocked",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade stares at the drone wreckage on the grating. wide eyes, frozen posture, jaw slightly slack.",
              "kling_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade stares at the drone wreckage on the grating. Motion: wide eyes, frozen posture, jaw slightly slack. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: shock, disbelief. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade stares at the drone wreckage on the grating. Motion: wide eyes, frozen posture, jaw slightly slack. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: shock, disbelief. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 85mm. woman in heavy canvas jacket. Jade stares at the drone wreckage on the grating.. shock, disbelief. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 85mm. woman in heavy canvas jacket. Jade stares at the drone wreckage on the grating.. shock, disbelief. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "wide eyes, frozen posture, jaw slightly slack",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade stares at the drone wreckage on the grating.",
                "emotion_line": "shock, disbelief",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH17",
            "source_text": "Jade stares at the wreckage. Two seconds start to finish.",
            "source_text_hash": "360727631ae3a05d132d3e52f794d10f",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "impressed",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "disbelieving, calculating",
                  "is_voiceover": false,
                  "text": "Two moves. Two. I am definitely raising your price."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Jade holds up two fingers, shakes her head, and speaks to Wren. jaw movement synced to speech, sharp head gestures, recovering posture.",
              "kling_t2v": "Medium shot, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade holds up two fingers, shakes her head, and speaks to Wren. Motion: jaw movement synced to speech, sharp head gestures, recovering posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: impressed, opportunistic. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade holds up two fingers, shakes her head, and speaks to Wren. Motion: jaw movement synced to speech, sharp head gestures, recovering posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: impressed, opportunistic. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade holds up two fingers, shakes her head, and speaks to Wren.. impressed, opportunistic. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade holds up two fingers, shakes her head, and speaks to Wren.. impressed, opportunistic. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, sharp head gestures, recovering posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade holds up two fingers, shakes her head, and speaks to Wren.",
                "emotion_line": "impressed, opportunistic",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH18",
            "source_text": "JADE Two moves. Two. I am definitely raising your price.",
            "source_text_hash": "8e8eb6e5f352e9f966e8ad1ace5eb523",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "warden_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "metallic scrape, electrical sizzle"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Wren pulls a data chip from the drone's smoldering core. precise pinch grip, extracting small component, smoke curling around fingers.",
              "kling_t2v": "Extreme close-up, 3 seconds. Subject: mechanical fingers, small data chip. Action: Wren pulls a data chip from the drone's smoldering core. Motion: precise pinch grip, extracting small component, smoke curling around fingers. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: methodical, precise. Lighting: warm hard light from below (smoldering core) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 3 seconds. Subject: mechanical fingers, small data chip. Action: Wren pulls a data chip from the drone's smoldering core. Motion: precise pinch grip, extracting small component, smoke curling around fingers. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: methodical, precise. Lighting: warm hard light from below (smoldering core) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm. mechanical fingers, small data chip. Wren pulls a data chip from the drone's smoldering core.. methodical, precise. Audio context: metallic scrape, electrical sizzle. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm. mechanical fingers, small data chip. Wren pulls a data chip from the drone's smoldering core.. methodical, precise. Audio context: metallic scrape, electrical sizzle. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "precise pinch grip, extracting small component, smoke curling around fingers",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "smoldering core",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren pulls a data chip from the drone's smoldering core.",
                "emotion_line": "methodical, precise",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "mechanical fingers, small data chip"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH19",
            "source_text": "Wren pulls a data chip from the drone's smoldering core.",
            "source_text_hash": "c613cfefc3bd8b08debd24eb879e4bd9",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analytical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "high-speed data processing trill"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Wren holds the chip. His eyes flicker rapidly. rapid micro-flicker in optics, static facial plating.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: mechanical optics, brushed steel facial plating. Action: Wren holds the chip. His eyes flicker rapidly. Motion: rapid micro-flicker in optics, static facial plating. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: processing, inhuman speed. Lighting: blue hard light from self_illuminated (optic sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: mechanical optics, brushed steel facial plating. Action: Wren holds the chip. His eyes flicker rapidly. Motion: rapid micro-flicker in optics, static facial plating. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: processing, inhuman speed. Lighting: blue hard light from self_illuminated (optic sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm. mechanical optics, brushed steel facial plating. Wren holds the chip. His eyes flicker rapidly.. processing, inhuman speed. Audio context: high-speed data processing trill. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm. mechanical optics, brushed steel facial plating. Wren holds the chip. His eyes flicker rapidly.. processing, inhuman speed. Audio context: high-speed data processing trill. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "rapid micro-flicker in optics, static facial plating",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "optic sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren holds the chip. His eyes flicker rapidly.",
                "emotion_line": "processing, inhuman speed",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "mechanical optics, brushed steel facial plating"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH20",
            "source_text": "His eyes flicker \u2014 reading the data stream directly.",
            "source_text_hash": "cb206dd38944e0b245d4f3c8f0a27bb3",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "flat, mechanical",
                  "is_voiceover": false,
                  "text": "Query: What is your designation."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Wren faces Jade and speaks, his expression neutral. jaw movement synced to speech, rigid posture.",
              "kling_t2v": "Medium close-up, 3 seconds. Subject: massive combat chassis. Action: Wren faces Jade and speaks, his expression neutral. Motion: jaw movement synced to speech, rigid posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: flat, interrogative. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds. Subject: massive combat chassis. Action: Wren faces Jade and speaks, his expression neutral. Motion: jaw movement synced to speech, rigid posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: flat, interrogative. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 50mm. massive combat chassis. Wren faces Jade and speaks, his expression neutral.. flat, interrogative. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 50mm. massive combat chassis. Wren faces Jade and speaks, his expression neutral.. flat, interrogative. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, rigid posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren faces Jade and speaks, his expression neutral.",
                "emotion_line": "flat, interrogative",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH21",
            "source_text": "WREN Query: What is your designation.",
            "source_text_hash": "5f1739a2f29c5418981e85ab1685483f",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "annoyed",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "irritated",
                  "is_voiceover": false,
                  "text": "Jade. And you just cost me a fortune."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade answers, gesturing at the destroyed drone. jaw movement synced to speech, tense facial muscles.",
              "kling_t2v": "Medium close-up, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade answers, gesturing at the destroyed drone. Motion: jaw movement synced to speech, tense facial muscles. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: annoyed, defensive. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade answers, gesturing at the destroyed drone. Motion: jaw movement synced to speech, tense facial muscles. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: annoyed, defensive. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade answers, gesturing at the destroyed drone.. annoyed, defensive. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade answers, gesturing at the destroyed drone.. annoyed, defensive. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, tense facial muscles",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade answers, gesturing at the destroyed drone.",
                "emotion_line": "annoyed, defensive",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH22",
            "source_text": "JADE Jade. And you just cost me a fortune.",
            "source_text_hash": "7a78acd215916e1a042bffccac938c7f",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant ship groans",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "flat, weather report",
                  "is_voiceover": false,
                  "text": "You are currently listed as 'Expendable.'"
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Wren speaks flatly, no inflection, eyes fixed on Jade. jaw movement synced to speech, absolute stillness.",
              "kling_t2v": "Medium close-up, 5 seconds. Subject: massive combat chassis. Action: Wren speaks flatly, no inflection, eyes fixed on Jade. Motion: jaw movement synced to speech, absolute stillness. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: emotionless, factual. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 5 seconds. Subject: massive combat chassis. Action: Wren speaks flatly, no inflection, eyes fixed on Jade. Motion: jaw movement synced to speech, absolute stillness. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: emotionless, factual. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium close-up, 50mm. massive combat chassis. Wren speaks flatly, no inflection, eyes fixed on Jade.. emotionless, factual. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium close-up, 50mm. massive combat chassis. Wren speaks flatly, no inflection, eyes fixed on Jade.. emotionless, factual. Audio context: distant ship groans. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, absolute stillness",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren speaks flatly, no inflection, eyes fixed on Jade.",
                "emotion_line": "emotionless, factual",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 2,
            "shot_id": "EP002_SH23",
            "source_text": "WREN You are currently listed as \"Expendable.\" He says it flat. Weather report. The word means nothing to him.",
            "source_text_hash": "a3f13d632c0fcf171ae9ca46639fc271",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "dread",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "fabric rustling, soft tap on metal"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, tilting. Jade's hand drifts to the debt counter on her wrist. slow hand movement, fingers brushing metal casing.",
              "kling_t2v": "Close-up, 3 seconds, tilting. Subject: dirt-smudged hand, welded metal casing. Action: Jade's hand drifts to the debt counter on her wrist. Motion: slow hand movement, fingers brushing metal casing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: dread, sinking realization. Lighting: amber soft light from below (debt counter display) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 3 seconds, tilting. Subject: dirt-smudged hand, welded metal casing. Action: Jade's hand drifts to the debt counter on her wrist. Motion: slow hand movement, fingers brushing metal casing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: dread, sinking realization. Lighting: amber soft light from below (debt counter display) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm, tilting, camera tilt. dirt-smudged hand, welded metal casing. Jade's hand drifts to the debt counter on her wrist.. dread, sinking realization. Audio context: fabric rustling, soft tap on metal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm, tilting, camera tilt. dirt-smudged hand, welded metal casing. Jade's hand drifts to the debt counter on her wrist.. dread, sinking realization. Audio context: fabric rustling, soft tap on metal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "85mm",
              "kinetic_action": "slow hand movement, fingers brushing metal casing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "BELOW",
                    "intensity": "dim",
                    "motivator": "debt counter display",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade's hand drifts to the debt counter on her wrist.",
                "emotion_line": "dread, sinking realization",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "dirt-smudged hand, welded metal casing"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH24",
            "source_text": "Jade's hand drifts to her debt counter.",
            "source_text_hash": "47fe8ca1c6a5a543f7b14777793e9661",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "angry",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Her jaw tightens. masseter muscle flexing, skin pulling taut over jawbone.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: woman's jawline, dirt-smudged skin. Action: Her jaw tightens. Motion: masseter muscle flexing, skin pulling taut over jawbone. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: suppressed anger, stress. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: woman's jawline, dirt-smudged skin. Action: Her jaw tightens. Motion: masseter muscle flexing, skin pulling taut over jawbone. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: suppressed anger, stress. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm. woman's jawline, dirt-smudged skin. Her jaw tightens.. suppressed anger, stress. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm. woman's jawline, dirt-smudged skin. Her jaw tightens.. suppressed anger, stress. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "masseter muscle flexing, skin pulling taut over jawbone",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Her jaw tightens.",
                "emotion_line": "suppressed anger, stress",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman's jawline, dirt-smudged skin"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH25",
            "source_text": "Her jaw tightens.",
            "source_text_hash": "6eb30c01a0fa449ddaf74a47b1699820",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "dread",
                  "screen_position": "background",
                  "visibility": "off_screen",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "sharp mechanical click"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Her wrist-mounted debt counter clicks and displays 56,247. mechanical digit rolling over, sharp focus on numbers.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: amber digital display, ticking numbers. Action: Her wrist-mounted debt counter clicks and displays 56,247. Motion: mechanical digit rolling over, sharp focus on numbers. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: relentless pressure. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: amber digital display, ticking numbers. Action: Her wrist-mounted debt counter clicks and displays 56,247. Motion: mechanical digit rolling over, sharp focus on numbers. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: relentless pressure. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 85mm. amber digital display, ticking numbers. Her wrist-mounted debt counter clicks and displays 56,247.. relentless pressure. Audio context: sharp mechanical click. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 85mm. amber digital display, ticking numbers. Her wrist-mounted debt counter clicks and displays 56,247.. relentless pressure. Audio context: sharp mechanical click. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "mechanical digit rolling over, sharp focus on numbers",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "debt counter display",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Her wrist-mounted debt counter clicks and displays 56,247.",
                "emotion_line": "relentless pressure",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "amber digital display, ticking numbers"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH26",
            "source_text": "Her counter CLICKS. 56,247.",
            "source_text_hash": "a2d943b23d40e10fe38582337b7138a5",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "rapid electronic ticking, high-pitched confirmation chime"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. amber digital display rapidly increasing. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. rapid scrolling of digital numbers, amber glow intensifying. The counter adds 6,000 credits. The number ticks upward on the display. Lighting: amber light casting hard shadows (source: debt counter display) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Extreme close-up. The counter adds 6,000 credits. The number ticks upward on the display. rapid scrolling of digital numbers, amber glow intensifying.",
              "kling_t2v": "Extreme close-up, 3 seconds. Subject: amber digital display rapidly increasing. Action: The counter adds 6,000 credits. The number ticks upward on the display. Motion: rapid scrolling of digital numbers, amber glow intensifying. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: crushing debt, inescapable system. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. amber digital display rapidly increasing. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. rapid scrolling of digital numbers, amber glow intensifying. The counter adds 6,000 credits. The number ticks upward on the display. Lighting: amber light casting hard shadows (source: debt counter display) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Extreme close-up, 3 seconds. Subject: amber digital display rapidly increasing. Action: The counter adds 6,000 credits. The number ticks upward on the display. Motion: rapid scrolling of digital numbers, amber glow intensifying. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: crushing debt, inescapable system. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 85mm. amber digital display rapidly increasing. The counter adds 6,000 credits. The number ticks upward on the display.. crushing debt, inescapable system. Audio context: rapid electronic ticking, high-pitched confirmation chime. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 85mm. amber digital display rapidly increasing. The counter adds 6,000 credits. The number ticks upward on the display.. crushing debt, inescapable system. Audio context: rapid electronic ticking, high-pitched confirmation chime. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "rapid scrolling of digital numbers, amber glow intensifying",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "debt counter display",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The counter adds 6,000 credits. The number ticks upward on the display.",
                "emotion_line": "crushing debt, inescapable system",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "amber digital display rapidly increasing"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH27",
            "source_text": "The drone kill \u2014 a 6,000-credit surcharge. Added automatically. No hearing. No appeal. Municipal property destruction.",
            "source_text_hash": "580139f8df813dcbb638dcbc6b56f25f",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "loud metallic groan, hissing steam",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. cracked pipes, steam. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. slow drifting steam, dust motes falling, static framing. Steam curls from a cracked pipe overhead. The corridor groans and shifts. Lighting: cool light casting soft shadows (source: corridor strip light) [dim] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Wide shot. Steam curls from a cracked pipe overhead. The corridor groans and shifts. slow drifting steam, dust motes falling, static framing.",
              "kling_t2v": "Wide shot, 4 seconds. Subject: cracked pipes, steam. Action: Steam curls from a cracked pipe overhead. The corridor groans and shifts. Motion: slow drifting steam, dust motes falling, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: decay, claustrophobia. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. cracked pipes, steam. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. slow drifting steam, dust motes falling, static framing. Steam curls from a cracked pipe overhead. The corridor groans and shifts. Lighting: cool light casting soft shadows (source: corridor strip light) [dim] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Wide shot, 4 seconds. Subject: cracked pipes, steam. Action: Steam curls from a cracked pipe overhead. The corridor groans and shifts. Motion: slow drifting steam, dust motes falling, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: decay, claustrophobia. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Wide shot, 35mm. cracked pipes, steam. Steam curls from a cracked pipe overhead. The corridor groans and shifts.. decay, claustrophobia. Audio context: loud metallic groan, hissing steam. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Wide shot, 35mm. cracked pipes, steam. Steam curls from a cracked pipe overhead. The corridor groans and shifts.. decay, claustrophobia. Audio context: loud metallic groan, hissing steam. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "slow drifting steam, dust motes falling, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Steam curls from a cracked pipe overhead. The corridor groans and shifts.",
                "emotion_line": "decay, claustrophobia",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "cracked pipes, steam"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH28",
            "source_text": "Steam curls from a cracked pipe overhead. The corridor groans \u2014 the ship settling, always settling.",
            "source_text_hash": "56b6680beda3a472d40dd865381076c3",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "hissing steam",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "helpful, oblivious",
                  "is_voiceover": false,
                  "text": "Your debt has increased by six thousand credits. Recommendation: file a dispute with the collection authority."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Wren faces Jade and speaks, gesturing once toward her debt counter. jaw movement synced to speech, rigid posture.",
              "kling_t2v": "Medium close-up, 5 seconds. Subject: massive combat chassis. Action: Wren faces Jade and speaks, gesturing once toward her debt counter. Motion: jaw movement synced to speech, rigid posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: helpful but oblivious, mechanical. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 5 seconds. Subject: massive combat chassis. Action: Wren faces Jade and speaks, gesturing once toward her debt counter. Motion: jaw movement synced to speech, rigid posture. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: helpful but oblivious, mechanical. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium close-up, 50mm. massive combat chassis. Wren faces Jade and speaks, gesturing once toward her debt counter.. helpful but oblivious, mechanical. Audio context: hissing steam. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium close-up, 50mm. massive combat chassis. Wren faces Jade and speaks, gesturing once toward her debt counter.. helpful but oblivious, mechanical. Audio context: hissing steam. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, rigid posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Wren faces Jade and speaks, gesturing once toward her debt counter.",
                "emotion_line": "helpful but oblivious, mechanical",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "massive combat chassis"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 2,
            "shot_id": "EP002_SH29",
            "source_text": "WREN Your debt has increased by six thousand credits. Recommendation: file a dispute with the collection authority.",
            "source_text_hash": "ab8a078fd18dc86b90d7b4af06bcdb8d",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "hysterical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "hissing steam",
              "dialogue": [],
              "foley_action": "sharp, humorless laugh"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade barks a sharp, short laugh. sudden chest heave, sharp head pull sharply, forced exhalation.",
              "kling_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade barks a sharp, short laugh. Motion: sudden chest heave, sharp head jerk, forced exhalation. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: hysterical, overwhelmed. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade barks a sharp, short laugh. Motion: sudden chest heave, sharp head jerk, forced exhalation. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: hysterical, overwhelmed. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade barks a sharp, short laugh.. hysterical, overwhelmed. Audio context: hissing steam. sharp, humorless laugh. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade barks a sharp, short laugh.. hysterical, overwhelmed. Audio context: hissing steam. sharp, humorless laugh. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "sudden chest heave, sharp head jerk, forced exhalation",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade barks a sharp, short laugh.",
                "emotion_line": "hysterical, overwhelmed",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH30",
            "source_text": "Jade barks a laugh. Sharp and wrong for the moment. Nervous system misfire.",
            "source_text_hash": "d98432fd0c69b46827948b529d3f1807",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "cynical",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "hissing steam",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "bitter, cynical",
                  "is_voiceover": false,
                  "text": "File a dispute? I'd have better luck filing a prayer."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot. Jade shakes her head and speaks, spreading her hands. jaw movement synced to speech, tense facial muscles, shaking head.",
              "kling_t2v": "Medium shot, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade shakes her head and speaks, spreading her hands. Motion: jaw movement synced to speech, tense facial muscles, shaking head. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: cynical, desperate. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium shot, 4 seconds. Subject: woman in heavy canvas jacket. Action: Jade shakes her head and speaks, spreading her hands. Motion: jaw movement synced to speech, tense facial muscles, shaking head. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: cynical, desperate. Lighting: cool soft light from above_left (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade shakes her head and speaks, spreading her hands.. cynical, desperate. Audio context: hissing steam. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm. woman in heavy canvas jacket. Jade shakes her head and speaks, spreading her hands.. cynical, desperate. Audio context: hissing steam. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, tense facial muscles, shaking head",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade shakes her head and speaks, spreading her hands.",
                "emotion_line": "cynical, desperate",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH31",
            "source_text": "JADE File a dispute? I'd have better luck filing a prayer.",
            "source_text_hash": "d4c7cd8481bba98095746be1720765e0",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "anxious",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "hissing steam",
              "dialogue": [],
              "foley_action": "heavy boots pacing on wet metal grating"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Full shot, tracking. She paces the corridor. Her boots leave prints in condensation on the grating. rhythmic pacing, boots splashing micro-droplets, lateral movement.",
              "kling_t2v": "Full shot, 4 seconds, tracking. Subject: woman in heavy canvas jacket, steel-toed boots. Action: She paces the corridor. Her boots leave prints in condensation on the grating. Motion: rhythmic pacing, boots splashing micro-droplets, lateral movement. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: anxious, trapped. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Full shot, 4 seconds, tracking. Subject: woman in heavy canvas jacket, steel-toed boots. Action: She paces the corridor. Her boots leave prints in condensation on the grating. Motion: rhythmic pacing, boots splashing micro-droplets, lateral movement. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: anxious, trapped. Lighting: cool soft light from above (corridor strip light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Full shot, 35mm, tracking, camera tracking. woman in heavy canvas jacket, steel-toed boots. She paces the corridor. Her boots leave prints in condensation on the grating.. anxious, trapped. Audio context: hissing steam. heavy boots pacing on wet metal grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Full shot, 35mm, tracking, camera tracking. woman in heavy canvas jacket, steel-toed boots. She paces the corridor. Her boots leave prints in condensation on the grating.. anxious, trapped. Audio context: hissing steam. heavy boots pacing on wet metal grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "35mm",
              "kinetic_action": "rhythmic pacing, boots splashing micro-droplets, lateral movement",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor strip light",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "She paces the corridor. Her boots leave prints in condensation on the grating.",
                "emotion_line": "anxious, trapped",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket, steel-toed boots"
              },
              "shot_type": "FS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH32",
            "source_text": "She paces. Her boots leave prints in the condensation on the grating.",
            "source_text_hash": "a9342b1d2a9690e80b2206badc1c50c9",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "anxious",
                  "screen_position": "background",
                  "visibility": "off_screen",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "soft mechanical click"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up. Her debt counter ticks up one credit. single digit rollover, static framing.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: amber digital display. Action: Her debt counter ticks up one credit. Motion: single digit rollover, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: relentless pressure. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: amber digital display. Action: Her debt counter ticks up one credit. Motion: single digit rollover, static framing. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: relentless pressure. Lighting: amber hard light from self_illuminated (debt counter display) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 85mm. amber digital display. Her debt counter ticks up one credit.. relentless pressure. Audio context: soft mechanical click. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 85mm. amber digital display. Her debt counter ticks up one credit.. relentless pressure. Audio context: soft mechanical click. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "single digit rollover, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "debt counter display",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Her debt counter ticks up one credit.",
                "emotion_line": "relentless pressure",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "amber digital display"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH33",
            "source_text": "Her debt counter ticks up another credit. Breathing tax.",
            "source_text_hash": "b61de56ace27bcdf84cbca91360b38d0",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "aggressive mechanical hum building",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. harsh red light washing over walls, fast sweeping motion. Red sweep-light floods the corridor. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [blinding] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Wide shot. Red sweep-light floods the corridor. harsh red light washing over walls, fast sweeping motion.",
              "kling_t2v": "Wide shot, 3 seconds. Subject: empty corridor. Action: Red sweep-light floods the corridor. Motion: harsh red light washing over walls, fast sweeping motion. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: immediate danger, alarm. Lighting: warm hard light from front (collector drone sweep-light) at blinding intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. harsh red light washing over walls, fast sweeping motion. Red sweep-light floods the corridor. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [blinding] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Wide shot, 3 seconds. Subject: empty corridor. Action: Red sweep-light floods the corridor. Motion: harsh red light washing over walls, fast sweeping motion. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: immediate danger, alarm. Lighting: warm hard light from front (collector drone sweep-light) at blinding intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Wide shot, 24mm. empty corridor. Red sweep-light floods the corridor.. immediate danger, alarm. Audio context: aggressive mechanical hum building. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Wide shot, 24mm. empty corridor. Red sweep-light floods the corridor.. immediate danger, alarm. Audio context: aggressive mechanical hum building. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "24mm",
              "kinetic_action": "harsh red light washing over walls, fast sweeping motion",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "FRONT",
                    "intensity": "blinding",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Red sweep-light floods the corridor.",
                "emotion_line": "immediate danger, alarm",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "empty corridor"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH34",
            "source_text": "Red sweep-light floods the corridor.",
            "source_text_hash": "186287c28425a91eee7b25f7bf5b445e",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "loud aggressive humming, high-pitched blade whine",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Long shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. three drones, blade arrays extended, chrome accents. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. rapid forward trajectory, tight formation. Three collector drones round the bend, blade arrays extended and humming. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Long shot, panning. Three collector drones round the bend, blade arrays extended and humming. rapid forward trajectory, motion blur on extended blades, tight formation.",
              "kling_t2v": "Long shot, 4 seconds, panning. Subject: three drones, blade arrays extended, chrome accents. Action: Three collector drones round the bend, blade arrays extended and humming. Motion: rapid forward trajectory, motion blur on extended blades, tight formation. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: lethal threat, relentless pursuit. Lighting: warm hard light from self_illuminated (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Long shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. three drones, blade arrays extended, chrome accents. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. rapid forward trajectory, tight formation. Three collector drones round the bend, blade arrays extended and humming. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Long shot, 4 seconds, panning. Subject: three drones, blade arrays extended, chrome accents. Action: Three collector drones round the bend, blade arrays extended and humming. Motion: rapid forward trajectory, motion blur on extended blades, tight formation. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: lethal threat, relentless pursuit. Lighting: warm hard light from self_illuminated (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Long shot, 35mm, panning, camera pan. three drones, blade arrays extended, chrome accents. Three collector drones round the bend, blade arrays extended and humming.. lethal threat, relentless pursuit. Audio context: loud aggressive humming, high-pitched blade whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Long shot, 35mm, panning, camera pan. three drones, blade arrays extended, chrome accents. Three collector drones round the bend, blade arrays extended and humming.. lethal threat, relentless pursuit. Audio context: loud aggressive humming, high-pitched blade whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "35mm",
              "kinetic_action": "rapid forward trajectory, motion blur on extended blades, tight formation",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Three collector drones round the bend, blade arrays extended and humming.",
                "emotion_line": "lethal threat, relentless pursuit",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "three drones, blade arrays extended, chrome accents"
              },
              "shot_type": "LS"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH35",
            "source_text": "Three Collector drones round the bend. Faster than the Warden unit. Blade arrays extended, humming.",
            "source_text_hash": "3ed86514b505f7eccbe8f725ad386f1b",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "deafening blade whine",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Medium shot, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. drones, spinning blade arrays. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. aggressive forward push, filling the frame. The drones close fast on their position. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "kling_i2v": "Medium shot, pushing in. The drones close fast on their position. aggressive forward push, filling the frame, motion blur on edges.",
              "kling_t2v": "Medium shot, 2 seconds, push-in. Subject: drones, spinning blade arrays. Action: The drones close fast on their position. Motion: aggressive forward push, filling the frame, motion blur on edges. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: imminent violence. Lighting: warm hard light from self_illuminated (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. drones, spinning blade arrays. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. aggressive forward push, filling the frame. The drones close fast on their position. Lighting: warm light casting hard shadows (source: collector drone sweep-light) [bright] SPATIAL CONTINUITY (Environment):\nPrimary light source originating from SCREEN-LEFT, casting shadows toward SCREEN-RIGHT.",
              "seeddance_t2v": "Medium shot, 2 seconds, push-in. Subject: drones, spinning blade arrays. Action: The drones close fast on their position. Motion: aggressive forward push, filling the frame, motion blur on edges. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: imminent violence. Lighting: warm hard light from self_illuminated (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Medium shot, 50mm, push-in, camera push_in. drones, spinning blade arrays. The drones close fast on their position.. imminent violence. Audio context: deafening blade whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium shot, 50mm, push-in, camera push_in. drones, spinning blade arrays. The drones close fast on their position.. imminent violence. Audio context: deafening blade whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "50mm",
              "kinetic_action": "aggressive forward push, filling the frame, motion blur on edges",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "The drones close fast on their position.",
                "emotion_line": "imminent violence",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "drones, spinning blade arrays"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 2
            },
            "scene_index": 2,
            "shot_id": "EP002_SH36",
            "source_text": "Closing fast.",
            "source_text_hash": "0dec064b640d67f46cea491e8763217f",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "urgent",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "uncertain",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "blade whine approaching",
              "dialogue": [],
              "foley_action": "fabric slapping metal, sharp servo click"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up. Jade grabs Wren's arm. His chassis tenses at the contact. hand gripping metal, sudden rigid lock of servos, kinetic transfer of tension.",
              "kling_t2v": "Close-up, 3 seconds. Subject: dirt-smudged hand gripping scarred alloy arm. Action: Jade grabs Wren's arm. His chassis tenses at the contact. Motion: hand gripping metal, sudden rigid lock of servos, kinetic transfer of tension. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: urgency, unexpected contact. Lighting: warm hard light from front (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Close-up, 3 seconds. Subject: dirt-smudged hand gripping scarred alloy arm. Action: Jade grabs Wren's arm. His chassis tenses at the contact. Motion: hand gripping metal, sudden rigid lock of servos, kinetic transfer of tension. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: urgency, unexpected contact. Lighting: warm hard light from front (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm. dirt-smudged hand gripping scarred alloy arm. Jade grabs Wren's arm. His chassis tenses at the contact.. urgency, unexpected contact. Audio context: blade whine approaching. fabric slapping metal, sharp servo click. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm. dirt-smudged hand gripping scarred alloy arm. Jade grabs Wren's arm. His chassis tenses at the contact.. urgency, unexpected contact. Audio context: blade whine approaching. fabric slapping metal, sharp servo click. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "hand gripping metal, sudden rigid lock of servos, kinetic transfer of tension",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade grabs Wren's arm. His chassis tenses at the contact.",
                "emotion_line": "urgency, unexpected contact",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "dirt-smudged hand gripping scarred alloy arm"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH37",
            "source_text": "Jade grabs Wren's arm. His chassis tenses at the contact \u2014 touch hesitation, uncertain of the input.",
            "source_text_hash": "a67afc25bcae4b8b44e7170f615e0de1",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "regretful",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "blade whine approaching",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "urgent, muttered",
                  "is_voiceover": false,
                  "text": "Worst bet I ever made."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up. Jade speaks through gritted teeth, gripping his arm. jaw movement synced to speech, tense facial muscles.",
              "kling_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade speaks through gritted teeth, gripping his arm. Motion: jaw movement synced to speech, tense facial muscles. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: regret, adrenaline. Lighting: warm hard light from front (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Medium close-up, 3 seconds. Subject: woman in heavy canvas jacket. Action: Jade speaks through gritted teeth, gripping his arm. Motion: jaw movement synced to speech, tense facial muscles. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: regret, adrenaline. Lighting: warm hard light from front (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade speaks through gritted teeth, gripping his arm.. regret, adrenaline. Audio context: blade whine approaching. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 50mm. woman in heavy canvas jacket. Jade speaks through gritted teeth, gripping his arm.. regret, adrenaline. Audio context: blade whine approaching. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "jaw movement synced to speech, tense facial muscles",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "Jade speaks through gritted teeth, gripping his arm.",
                "emotion_line": "regret, adrenaline",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman in heavy canvas jacket"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP002_SH38",
            "source_text": "JADE Worst bet I ever made.",
            "source_text_hash": "ec3905764985b2e55159708952a2693a",
            "spatial_data": {
              "camera_side": "A",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "urgent",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "deafening blade whine",
              "dialogue": [],
              "foley_action": "heavy boots and metal feet pounding on grating"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Full shot, tracking. They run down the corridor. explosive start, motion blur on trailing limbs, forward lean, kinetic diagonal composition.",
              "kling_t2v": "Full shot, 4 seconds, tracking. Subject: woman and massive combat chassis running. Action: They run down the corridor. Motion: explosive start, motion blur on trailing limbs, forward lean, kinetic diagonal composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: desperate flight, adrenaline. Lighting: warm hard light from behind (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "<truncated:blob>",
              "seeddance_t2v": "Full shot, 4 seconds, tracking. Subject: woman and massive combat chassis running. Action: They run down the corridor. Motion: explosive start, motion blur on trailing limbs, forward lean, kinetic diagonal composition. Setting: Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height. Mood: desperate flight, adrenaline. Lighting: warm hard light from behind (collector drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Full shot, 35mm, tracking, camera tracking. woman and massive combat chassis running. They run down the corridor.. desperate flight, adrenaline. Audio context: deafening blade whine. heavy boots and metal feet pounding on grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Full shot, 35mm, tracking, camera tracking. woman and massive combat chassis running. They run down the corridor.. desperate flight, adrenaline. Audio context: deafening blade whine. heavy boots and metal feet pounding on grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "35mm",
              "kinetic_action": "explosive start, motion blur on trailing limbs, forward lean, kinetic diagonal composition",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "warm",
                    "direction": "BEHIND",
                    "intensity": "bright",
                    "motivator": "collector drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "They run down the corridor.",
                "emotion_line": "desperate flight, adrenaline",
                "environment_line": "Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with visible rust flakes. Sweating overhead pipes drip condensation. Cracked conduits leak steam into amber-tinted emergency light. Collapsed bulkhead blocks one end \u2014 twisted wreckage, hanging wires. Walls are riveted steel plate, oil-stained, with exposed junction boxes. Dim overhead strip lighting flickers. Deep industrial shadows. Claustrophobic ceiling height.",
                "subject_line": "woman and massive combat chassis running"
              },
              "shot_type": "FS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 4
            },
            "scene_index": 2,
            "shot_id": "EP002_SH39",
            "source_text": "They run.",
            "source_text_hash": "94955722cb55f497559b23b27b4b8bf6",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "group",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          }
        ],
        "source_hash": "08adde6ffcfb1ef54a1bfff1ad876cc8",
        "total_shots": 39
      },
      "path": "tartarus/state/visual/plans/ep_002_plan.json"
    },
    {
      "data": {
        "episode_id": "EP003",
        "generated_at": "2023-10-25T12:00:00Z",
        "project": "Starsend",
        "shots": [
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency hum, distant steam hiss",
              "dialogue": [],
              "foley_action": "high-pitched rotor whine, air displacement"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm, tracking. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. three collector drones, hovering in formation, dead-end junction. metal grating floor, rust flakes, sweating pipes, dark shadows. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. motion blur on spinning blades, hovering stabilization, dust kicked up by downdraft into lens. motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization. Lighting: amber light casting hard shadows from FROM_SUBJECT (source: drone sweep-light) [bright]",
              "kling_i2v": "Wide shot, tracking, motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization, motion blur on spinning blades, hovering stabilization, dust kicked up by downdraft into lens.",
              "kling_t2v": "Wide shot, 4 seconds, tracking. Subject: three collector drones, hovering in formation, dead-end junction. Action: motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization. Motion: motion blur on spinning blades, hovering stabilization, dust kicked up by downdraft into lens. Setting: metal grating floor, rust flakes, sweating pipes, dark shadows. Mood: oppressive, trapping, mechanical threat. Lighting: amber hard light from from_subject (drone sweep-light) at bright intensity, cool mixed light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, tracking. ENVIRONMENT ONLY, no people. three collector drones, hovering in formation, dead-end junction. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Wide shot, 4 seconds, tracking. Subject: three collector drones, hovering in formation, dead-end junction. Action: motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization. Motion: motion blur on spinning blades, hovering stabilization, dust kicked up by downdraft into lens. Setting: metal grating floor, rust flakes, sweating pipes, dark shadows. Mood: oppressive, trapping, mechanical threat. Lighting: amber hard light from from_subject (drone sweep-light) at bright intensity, cool mixed light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Wide shot, 35mm, tracking, camera tracking. three collector drones, hovering in formation, dead-end junction. motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization. oppressive, trapping, mechanical threat. Audio context: low frequency hum, distant steam hiss. high-pitched rotor whine, air displacement. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Wide shot, 35mm, tracking, camera tracking. three collector drones, hovering in formation, dead-end junction. motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization. oppressive, trapping, mechanical threat. Audio context: low frequency hum, distant steam hiss. high-pitched rotor whine, air displacement. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "35mm",
              "kinetic_action": "motion blur on spinning blades, hovering stabilization, dust kicked up by downdraft into lens",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "FROM_SUBJECT",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  },
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "motion blur on rotors, dust particles illuminated by sweep-lights, hovering stabilization",
                "emotion_line": "oppressive, trapping, mechanical threat",
                "environment_line": "metal grating floor, rust flakes, sweating pipes, dark shadows",
                "subject_line": "three collector drones, hovering in formation, dead-end junction"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 1,
            "shot_id": "EP003_SH01",
            "source_text": "The three drones box them into a dead-end junction \u2014 blades humming, herding, not striking.",
            "source_text_hash": "84ed090fe8df43e5e6ee055bb4c22beb",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "cornered",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [],
              "foley_action": "heavy boots scraping on metal grating, fabric rustle against wall"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, handheld, backward momentum, fabric shifting, tense posture, slight camera shake, backward momentum, fabric shifting, tense posture, slight camera shake.",
              "kling_t2v": "Medium shot, 3 seconds, handheld. Subject: Jade, heavy canvas jacket, full mask, backing against wall. Action: backward momentum, fabric shifting, tense posture, slight camera shake. Motion: backward momentum, fabric shifting, tense posture, slight camera shake. Setting: sweating pipes, condensation, dark shadows, rust flakes. Mood: cornered, defensive, high alert. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot, handheld. JADE on center side. Jade, heavy canvas jacket, full mask, backing against wall. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 3 seconds, handheld. Subject: Jade, heavy canvas jacket, full mask, backing against wall. Action: backward momentum, fabric shifting, tense posture, slight camera shake. Motion: backward momentum, fabric shifting, tense posture, slight camera shake. Setting: sweating pipes, condensation, dark shadows, rust flakes. Mood: cornered, defensive, high alert. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm, handheld, camera handheld. Jade, heavy canvas jacket, full mask, backing against wall. backward momentum, fabric shifting, tense posture, slight camera shake. cornered, defensive, high alert. Audio context: distant steam hiss. heavy boots scraping on metal grating, fabric rustle against wall. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm, handheld, camera handheld. Jade, heavy canvas jacket, full mask, backing against wall. backward momentum, fabric shifting, tense posture, slight camera shake. cornered, defensive, high alert. Audio context: distant steam hiss. heavy boots scraping on metal grating, fabric rustle against wall. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "handheld",
              "focal_length": "50mm",
              "kinetic_action": "backward momentum, fabric shifting, tense posture, slight camera shake",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "backward momentum, fabric shifting, tense posture, slight camera shake",
                "emotion_line": "cornered, defensive, high alert",
                "environment_line": "sweating pipes, condensation, dark shadows, rust flakes",
                "subject_line": "Jade, heavy canvas jacket, full mask, backing against wall"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "handheld",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 2,
            "shot_id": "EP003_SH02",
            "source_text": "Jade backs against the wall.",
            "source_text_hash": "25d09c990000aa827756b941d9d5db03",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency hum",
              "dialogue": [],
              "foley_action": "rotor pitch shifting down, mechanical clicking"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. collector drones, pulling back, hovering in place. metal grating floor, dark shadows, cracked pipes. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. synchronized backward drift, mechanical stabilization, static framing. Lighting: amber light casting hard shadows from SELF_ILLUMINATED (source: drone sweep-light)",
              "kling_i2v": "Medium shot, synchronized backward drift, mechanical stabilization, static framing, synchronized backward drift, mechanical stabilization, static framing.",
              "kling_t2v": "Medium shot, 3 seconds. Subject: collector drones, pulling back, hovering in place. Action: synchronized backward drift, mechanical stabilization, static framing. Motion: synchronized backward drift, mechanical stabilization, static framing. Setting: metal grating floor, dark shadows, cracked pipes. Mood: eerie obedience, sudden calm. Lighting: amber hard light from self_illuminated (drone sweep-light). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. ENVIRONMENT ONLY, no people. collector drones, pulling back, hovering in place. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 3 seconds. Subject: collector drones, pulling back, hovering in place. Action: synchronized backward drift, mechanical stabilization, static framing. Motion: synchronized backward drift, mechanical stabilization, static framing. Setting: metal grating floor, dark shadows, cracked pipes. Mood: eerie obedience, sudden calm. Lighting: amber hard light from self_illuminated (drone sweep-light). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm. collector drones, pulling back, hovering in place. synchronized backward drift, mechanical stabilization, static framing. eerie obedience, sudden calm. Audio context: low frequency hum. rotor pitch shifting down, mechanical clicking. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm. collector drones, pulling back, hovering in place. synchronized backward drift, mechanical stabilization, static framing. eerie obedience, sudden calm. Audio context: low frequency hum. rotor pitch shifting down, mechanical clicking. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "synchronized backward drift, mechanical stabilization, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "moderate",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "synchronized backward drift, mechanical stabilization, static framing",
                "emotion_line": "eerie obedience, sudden calm",
                "environment_line": "metal grating floor, dark shadows, cracked pipes",
                "subject_line": "collector drones, pulling back, hovering in place"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 3,
            "shot_id": "EP003_SH03",
            "source_text": "Then the drones pull back. Heeled. Waiting.",
            "source_text_hash": "f4d706f444730cdf953291e1e39088bb",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "confident",
                  "screen_position": "background",
                  "visibility": "off_screen",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "VAREK",
                  "delivery_note": "smooth, echoing",
                  "is_voiceover": true,
                  "text": "You must be the salvager."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor section, shadows deep. metal grating floor, rust flakes, sweating pipes, dark shadows. Varek: chrome and gold accents, immaculate tailoring, clean cuffs, polished shoes. static framing, atmospheric drift, dust motes in light shaft. Lighting: cool light casting soft shadows from ABOVE (source: corridor emergency strip) [dim] anticipation, unseen threat. Focus on full body silhouette, posture, and environmental scale. Facial features are indistinct at this distance. Do not attempt high-detail eyes or mouth. Camera direction: Subject does not look directly into the lens.",
              "kling_i2v": "Wide shot, static framing, atmospheric drift, dust motes in light shaft, static framing, atmospheric drift, dust motes in light shaft.",
              "kling_t2v": "Wide shot, 3 seconds. Subject: empty corridor section, shadows deep. Action: static framing, atmospheric drift, dust motes in light shaft. Motion: static framing, atmospheric drift, dust motes in light shaft. Setting: metal grating floor, rust flakes, sweating pipes, dark shadows. Mood: anticipation, unseen threat. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot. VAREK on background side. empty corridor section, shadows deep. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Wide shot, 3 seconds. Subject: empty corridor section, shadows deep. Action: static framing, atmospheric drift, dust motes in light shaft. Motion: static framing, atmospheric drift, dust motes in light shaft. Setting: metal grating floor, rust flakes, sweating pipes, dark shadows. Mood: anticipation, unseen threat. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Wide shot, 35mm. empty corridor section, shadows deep. static framing, atmospheric drift, dust motes in light shaft. anticipation, unseen threat. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Wide shot, 35mm. empty corridor section, shadows deep. static framing, atmospheric drift, dust motes in light shaft. anticipation, unseen threat. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "static framing, atmospheric drift, dust motes in light shaft",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static framing, atmospheric drift, dust motes in light shaft",
                "emotion_line": "anticipation, unseen threat",
                "environment_line": "metal grating floor, rust flakes, sweating pipes, dark shadows",
                "subject_line": "empty corridor section, shadows deep"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 4,
            "shot_id": "EP003_SH04",
            "source_text": "VAREK (O.S.) You must be the salvager.",
            "source_text_hash": "fff20e21eee0ff43e8160d95a06a4fe1",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "frozen",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "silence dropping",
              "dialogue": [],
              "foley_action": "sharp intake of breath through rebreather"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, sudden kinetic stop, rigid posture, shallow breath, static framing, sudden kinetic stop, rigid posture, shallow breath, static framing.",
              "kling_t2v": "Close-up, 2 seconds. Subject: Jade, full mask, frozen in place. Action: sudden kinetic stop, rigid posture, shallow breath, static framing. Motion: sudden kinetic stop, rigid posture, shallow breath, static framing. Setting: sweating pipes, dark shadows out of focus. Mood: shock, hyper-awareness. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. JADE on center side. Jade, full mask, frozen in place. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: Jade, full mask, frozen in place. Action: sudden kinetic stop, rigid posture, shallow breath, static framing. Motion: sudden kinetic stop, rigid posture, shallow breath, static framing. Setting: sweating pipes, dark shadows out of focus. Mood: shock, hyper-awareness. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm. Jade, full mask, frozen in place. sudden kinetic stop, rigid posture, shallow breath, static framing. shock, hyper-awareness. Audio context: silence dropping. sharp intake of breath through rebreather. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm. Jade, full mask, frozen in place. sudden kinetic stop, rigid posture, shallow breath, static framing. shock, hyper-awareness. Audio context: silence dropping. sharp intake of breath through rebreather. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "sudden kinetic stop, rigid posture, shallow breath, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "sudden kinetic stop, rigid posture, shallow breath, static framing",
                "emotion_line": "shock, hyper-awareness",
                "environment_line": "sweating pipes, dark shadows out of focus",
                "subject_line": "Jade, full mask, frozen in place"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 5,
            "shot_id": "EP003_SH05",
            "source_text": "Jade freezes.",
            "source_text_hash": "f9b20e141934096f6c0806db21c7a9f6",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "alert",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "high-pitched electronic whine, servo click"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, push-in, micro-servo twitch, sudden optical flare, sharp focus pull, lens flare, micro-servo twitch, sudden optical flare, sharp focus pull, lens flare.",
              "kling_t2v": "Extreme close-up, 2 seconds, push-in. Subject: Wren's optical sensors, scarred alloy faceplate. Action: micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. Motion: micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. Setting: dark shadows out of focus. Mood: lethal precision, sudden activation. Lighting: blue hard light from self_illuminated (optical sensors) at blinding intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up, push_in. WREN on center side. Wren's optical sensors, scarred alloy faceplate. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Extreme close-up, 2 seconds, push-in. Subject: Wren's optical sensors, scarred alloy faceplate. Action: micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. Motion: micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. Setting: dark shadows out of focus. Mood: lethal precision, sudden activation. Lighting: blue hard light from self_illuminated (optical sensors) at blinding intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Wren's optical sensors, scarred alloy faceplate. micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. lethal precision, sudden activation. Audio context: high-pitched electronic whine, servo click. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Wren's optical sensors, scarred alloy faceplate. micro-servo twitch, sudden optical flare, sharp focus pull, lens flare. lethal precision, sudden activation. Audio context: high-pitched electronic whine, servo click. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "micro-servo twitch, sudden optical flare, sharp focus pull, lens flare",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "blinding",
                    "motivator": "optical sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "micro-servo twitch, sudden optical flare, sharp focus pull, lens flare",
                "emotion_line": "lethal precision, sudden activation",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Wren's optical sensors, scarred alloy faceplate"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 6,
            "shot_id": "EP003_SH06",
            "source_text": "Wren's eyes snap to targeting mode \u2014 blue flaring bright.",
            "source_text_hash": "9923c39c08e0c5218bae8da2cb87ae5c",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "confident",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "crisp footstep on metal grating"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, panning, forward step emerging from darkness, smooth gait, fabric settling, light catching chrome, forward step emerging from darkness, smooth gait, fabric settling, light catching chrome.",
              "kling_t2v": "Medium shot, 4 seconds, panning. Subject: Varek, immaculate tailoring, stepping forward. Action: forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. Motion: forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. Setting: metal grating floor, rust flakes, dark shadows parting. Mood: predatory elegance, stark contrast to environment. Lighting: cool mixed light from above_right (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot, pan. VAREK on center side. Varek, immaculate tailoring, stepping forward. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 4 seconds, panning. Subject: Varek, immaculate tailoring, stepping forward. Action: forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. Motion: forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. Setting: metal grating floor, rust flakes, dark shadows parting. Mood: predatory elegance, stark contrast to environment. Lighting: cool mixed light from above_right (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm, panning, camera pan. Varek, immaculate tailoring, stepping forward. forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. predatory elegance, stark contrast to environment. Audio context: crisp footstep on metal grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm, panning, camera pan. Varek, immaculate tailoring, stepping forward. forward step emerging from darkness, smooth gait, fabric settling, light catching chrome. predatory elegance, stark contrast to environment. Audio context: crisp footstep on metal grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "50mm",
              "kinetic_action": "forward step emerging from darkness, smooth gait, fabric settling, light catching chrome",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_RIGHT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "forward step emerging from darkness, smooth gait, fabric settling, light catching chrome",
                "emotion_line": "predatory elegance, stark contrast to environment",
                "environment_line": "metal grating floor, rust flakes, dark shadows parting",
                "subject_line": "Varek, immaculate tailoring, stepping forward"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 7,
            "shot_id": "EP003_SH07",
            "source_text": "Varek Sorn steps from the shadows.",
            "source_text_hash": "cf05e3cfa608c94f2db628108172825b",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "toward-camera"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "arrogant",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [],
              "foley_action": "faint fabric rustle"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, tilting, specular highlights shifting on chrome, slow tilt up, static posture, specular highlights shifting on chrome, slow tilt up, static posture.",
              "kling_t2v": "Medium close-up, 4 seconds, tilting. Subject: Varek's chrome and gold accents, immaculate tailoring. Action: specular highlights shifting on chrome, slow tilt up, static posture. Motion: specular highlights shifting on chrome, slow tilt up, static posture. Setting: rust flakes, sweating pipes out of focus. Mood: arrogant perfection, unnatural cleanliness. Lighting: cool hard light from front (corridor emergency strip) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium close-up, tilt. VAREK on center side. Varek's chrome and gold accents, immaculate tailoring. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium close-up, 4 seconds, tilting. Subject: Varek's chrome and gold accents, immaculate tailoring. Action: specular highlights shifting on chrome, slow tilt up, static posture. Motion: specular highlights shifting on chrome, slow tilt up, static posture. Setting: rust flakes, sweating pipes out of focus. Mood: arrogant perfection, unnatural cleanliness. Lighting: cool hard light from front (corridor emergency strip) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium close-up, 85mm, tilting, camera tilt. Varek's chrome and gold accents, immaculate tailoring. specular highlights shifting on chrome, slow tilt up, static posture. arrogant perfection, unnatural cleanliness. Audio context: distant steam hiss. faint fabric rustle. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium close-up, 85mm, tilting, camera tilt. Varek's chrome and gold accents, immaculate tailoring. specular highlights shifting on chrome, slow tilt up, static posture. arrogant perfection, unnatural cleanliness. Audio context: distant steam hiss. faint fabric rustle. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "85mm",
              "kinetic_action": "specular highlights shifting on chrome, slow tilt up, static posture",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "bright",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "specular highlights shifting on chrome, slow tilt up, static posture",
                "emotion_line": "arrogant perfection, unnatural cleanliness",
                "environment_line": "rust flakes, sweating pipes out of focus",
                "subject_line": "Varek's chrome and gold accents, immaculate tailoring"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 8,
            "shot_id": "EP003_SH08",
            "source_text": "Chrome and gold accents gleaming against the corridor's rot. Immaculate. Every surface polished while the ship decays around him.",
            "source_text_hash": "bc8a20460aaf882cdb63c3198534d909",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "menacing",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, push-in, micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in, micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in.",
              "kling_t2v": "Extreme close-up, 3 seconds, push-in. Subject: Varek's throat, pink deliberate scar tissue. Action: micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. Motion: micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. Setting: dark shadows out of focus. Mood: violent history, surviving threat. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up, push_in. VAREK on center side. Varek's throat, pink deliberate scar tissue. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Extreme close-up, 3 seconds, push-in. Subject: Varek's throat, pink deliberate scar tissue. Action: micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. Motion: micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. Setting: dark shadows out of focus. Mood: violent history, surviving threat. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Extreme close-up, 100mm, push-in, camera push_in. Varek's throat, pink deliberate scar tissue. micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. violent history, surviving threat. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Extreme close-up, 100mm, push-in, camera push_in. Varek's throat, pink deliberate scar tissue. micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in. violent history, surviving threat. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "micro-tremor in pulse, static framing, sharp focus on scar tissue, slow push-in",
                "emotion_line": "violent history, surviving threat",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Varek's throat, pink deliberate scar tissue"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 9,
            "shot_id": "EP003_SH09",
            "source_text": "Scar across his throat. Pink and deliberate. Someone tried once. It didn't take.",
            "source_text_hash": "1eb9862b2e7c4970e8052c0526733836",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "commanding",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. Varek flanked by two powered-down collector drones. metal grating floor, rust flakes, dark shadows. Varek: chrome and gold accents, immaculate tailoring, clean cuffs, polished shoes. static composition, rigid mechanical posture, center-weighted framing. Lighting: cool light casting mixed shadows from ABOVE (source: corridor emergency strip) commanding presence, absolute control. Focus on full body silhouette, posture, and environmental scale. Facial features are indistinct at this distance. Do not attempt high-detail eyes or mouth. Camera direction: Subject does not look directly into the lens.",
              "kling_i2v": "Wide shot, static composition, rigid mechanical posture, center-weighted framing, static composition, rigid mechanical posture, center-weighted framing.",
              "kling_t2v": "Wide shot, 4 seconds. Subject: Varek flanked by two powered-down collector drones. Action: static composition, rigid mechanical posture, center-weighted framing. Motion: static composition, rigid mechanical posture, center-weighted framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: commanding presence, absolute control. Lighting: cool mixed light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot. VAREK on center side. Varek flanked by two powered-down collector drones. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Wide shot, 4 seconds. Subject: Varek flanked by two powered-down collector drones. Action: static composition, rigid mechanical posture, center-weighted framing. Motion: static composition, rigid mechanical posture, center-weighted framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: commanding presence, absolute control. Lighting: cool mixed light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Wide shot, 35mm. Varek flanked by two powered-down collector drones. static composition, rigid mechanical posture, center-weighted framing. commanding presence, absolute control. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Wide shot, 35mm. Varek flanked by two powered-down collector drones. static composition, rigid mechanical posture, center-weighted framing. commanding presence, absolute control. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "35mm",
              "kinetic_action": "static composition, rigid mechanical posture, center-weighted framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static composition, rigid mechanical posture, center-weighted framing",
                "emotion_line": "commanding presence, absolute control",
                "environment_line": "metal grating floor, rust flakes, dark shadows",
                "subject_line": "Varek flanked by two powered-down collector drones"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 4
            },
            "scene_index": 10,
            "shot_id": "EP003_SH10",
            "source_text": "Two Collector drones flank him. Powered down. Heeled like dogs.",
            "source_text_hash": "3ccb54b3379e0944badfe33e71286f4f",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "casual",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "VAREK",
                  "delivery_note": "smooth, unbothered",
                  "is_voiceover": false,
                  "text": "Destroyed a municipal unit. Surcharge already posted. And you brought me something new."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, subtle head tilt, relaxed posture, static framing, subtle head tilt, relaxed posture, static framing.",
              "kling_t2v": "Medium shot, 5 seconds. Subject: Varek, immaculate tailoring, speaking calmly. Action: subtle head tilt, relaxed posture, static framing. Motion: subtle head tilt, relaxed posture, static framing. Setting: rust flakes, dark shadows. Mood: casual authority, transactional. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. VAREK on center side. Varek, immaculate tailoring, speaking calmly. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 5 seconds. Subject: Varek, immaculate tailoring, speaking calmly. Action: subtle head tilt, relaxed posture, static framing. Motion: subtle head tilt, relaxed posture, static framing. Setting: rust flakes, dark shadows. Mood: casual authority, transactional. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium shot, 50mm. Varek, immaculate tailoring, speaking calmly. subtle head tilt, relaxed posture, static framing. casual authority, transactional. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium shot, 50mm. Varek, immaculate tailoring, speaking calmly. subtle head tilt, relaxed posture, static framing. casual authority, transactional. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "subtle head tilt, relaxed posture, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "subtle head tilt, relaxed posture, static framing",
                "emotion_line": "casual authority, transactional",
                "environment_line": "rust flakes, dark shadows",
                "subject_line": "Varek, immaculate tailoring, speaking calmly"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 11,
            "shot_id": "EP003_SH11",
            "source_text": "VAREK Destroyed a municipal unit. Surcharge already posted. And you brought me something new.",
            "source_text_hash": "3acae7d3240789a5d2c8df75cd22359c",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "appraising",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "alert",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, panning, slow eye dart, smooth head turn, calculated tracking, shallow depth of field, slow eye dart, smooth head turn, calculated tracking, shallow depth of field.",
              "kling_t2v": "Medium close-up, 3 seconds, panning. Subject: Varek looking toward Wren. Action: slow eye dart, smooth head turn, calculated tracking, shallow depth of field. Motion: slow eye dart, smooth head turn, calculated tracking, shallow depth of field. Setting: dark shadows, sweating pipes. Mood: calculating, greedy appraisal. Lighting: cool hard light from above_right (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium close-up, pan. VAREK on left side. WREN on right side. Varek looking toward Wren. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium close-up, 3 seconds, panning. Subject: Varek looking toward Wren. Action: slow eye dart, smooth head turn, calculated tracking, shallow depth of field. Motion: slow eye dart, smooth head turn, calculated tracking, shallow depth of field. Setting: dark shadows, sweating pipes. Mood: calculating, greedy appraisal. Lighting: cool hard light from above_right (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 85mm, panning, camera pan. Varek looking toward Wren. slow eye dart, smooth head turn, calculated tracking, shallow depth of field. calculating, greedy appraisal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 85mm, panning, camera pan. Varek looking toward Wren. slow eye dart, smooth head turn, calculated tracking, shallow depth of field. calculating, greedy appraisal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "85mm",
              "kinetic_action": "slow eye dart, smooth head turn, calculated tracking, shallow depth of field",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_RIGHT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow eye dart, smooth head turn, calculated tracking, shallow depth of field",
                "emotion_line": "calculating, greedy appraisal",
                "environment_line": "dark shadows, sweating pipes",
                "subject_line": "Varek looking toward Wren"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 3
            },
            "scene_index": 12,
            "shot_id": "EP003_SH12",
            "source_text": "His eyes move to Wren. Cataloging. Appraising.",
            "source_text_hash": "45af46a7b14775d2ccc634c7ac1b36d3",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "defiant",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "heavy boot step, canvas jacket rustle"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, tracking, lateral step into frame, blocking line of sight, fabric swish, sudden motion, lateral step into frame, blocking line of sight, fabric swish, sudden motion.",
              "kling_t2v": "Medium shot, 2 seconds, tracking. Subject: Jade, full mask, stepping into frame. Action: lateral step into frame, blocking line of sight, fabric swish, sudden motion. Motion: lateral step into frame, blocking line of sight, fabric swish, sudden motion. Setting: metal grating floor, dark shadows. Mood: protective, defiant. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot, tracking. JADE on center side. Jade, full mask, stepping into frame. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 2 seconds, tracking. Subject: Jade, full mask, stepping into frame. Action: lateral step into frame, blocking line of sight, fabric swish, sudden motion. Motion: lateral step into frame, blocking line of sight, fabric swish, sudden motion. Setting: metal grating floor, dark shadows. Mood: protective, defiant. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Medium shot, 50mm, tracking, camera tracking. Jade, full mask, stepping into frame. lateral step into frame, blocking line of sight, fabric swish, sudden motion. protective, defiant. Audio context: heavy boot step, canvas jacket rustle. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium shot, 50mm, tracking, camera tracking. Jade, full mask, stepping into frame. lateral step into frame, blocking line of sight, fabric swish, sudden motion. protective, defiant. Audio context: heavy boot step, canvas jacket rustle. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "50mm",
              "kinetic_action": "lateral step into frame, blocking line of sight, fabric swish, sudden motion",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "lateral step into frame, blocking line of sight, fabric swish, sudden motion",
                "emotion_line": "protective, defiant",
                "environment_line": "metal grating floor, dark shadows",
                "subject_line": "Jade, full mask, stepping into frame"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 13,
            "shot_id": "EP003_SH13",
            "source_text": "Jade steps between them.",
            "source_text_hash": "fbdbde129632b1d4422da22c8eee19d3",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "anxious",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "debt_counter",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "leather creak, faint electronic ticking"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Insert, push-in, slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus, slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus.",
              "kling_t2v": "Insert shot, 3 seconds, push-in. Subject: Jade's hand touching debt counter on belt. Action: slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. Motion: slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. Setting: heavy canvas jacket texture, dark background. Mood: anxious habit, financial desperation. Lighting: amber soft light from self_illuminated (debt counter display) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Insert shot, push_in. JADE on center side. Jade's hand touching debt counter on belt. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Insert shot, 3 seconds, push-in. Subject: Jade's hand touching debt counter on belt. Action: slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. Motion: slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. Setting: heavy canvas jacket texture, dark background. Mood: anxious habit, financial desperation. Lighting: amber soft light from self_illuminated (debt counter display) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Insert shot, 100mm, push-in, camera push_in. Jade's hand touching debt counter on belt. slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. anxious habit, financial desperation. Audio context: leather creak, faint electronic ticking. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Insert shot, 100mm, push-in, camera push_in. Jade's hand touching debt counter on belt. slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus. anxious habit, financial desperation. Audio context: leather creak, faint electronic ticking. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "dim",
                    "motivator": "debt counter display",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow hand drift, fingers brushing metal casing, shallow depth of field, macro focus",
                "emotion_line": "anxious habit, financial desperation",
                "environment_line": "heavy canvas jacket texture, dark background",
                "subject_line": "Jade's hand touching debt counter on belt"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 14,
            "shot_id": "EP003_SH14",
            "source_text": "Her hand drifts to her debt counter \u2014 touching it without thinking.",
            "source_text_hash": "86a02fb320a40b806ba56910ed25bafe",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "defensive",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "neutral",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "firm, slightly rushed",
                  "is_voiceover": false,
                  "text": "He's salvage. My salvage. Found him in a pod, fair claim under section nine."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, rigid posture, slight head tilt, static framing, rigid posture, slight head tilt, static framing.",
              "kling_t2v": "Medium shot, 5 seconds. Subject: Jade standing in front of Wren. Action: rigid posture, slight head tilt, static framing. Motion: rigid posture, slight head tilt, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: defensive, claiming ownership. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. JADE on left side. WREN on right side. Jade standing in front of Wren. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 5 seconds. Subject: Jade standing in front of Wren. Action: rigid posture, slight head tilt, static framing. Motion: rigid posture, slight head tilt, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: defensive, claiming ownership. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Medium shot, 50mm. Jade standing in front of Wren. rigid posture, slight head tilt, static framing. defensive, claiming ownership. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Medium shot, 50mm. Jade standing in front of Wren. rigid posture, slight head tilt, static framing. defensive, claiming ownership. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "rigid posture, slight head tilt, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "rigid posture, slight head tilt, static framing",
                "emotion_line": "defensive, claiming ownership",
                "environment_line": "metal grating floor, rust flakes, dark shadows",
                "subject_line": "Jade standing in front of Wren"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 5
            },
            "scene_index": 15,
            "shot_id": "EP003_SH15",
            "source_text": "JADE He's salvage. My salvage. Found him in a pod, fair claim under section nine.",
            "source_text_hash": "6d599064abe010533ec52799046291da",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "predatory",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "alert",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "slow, rhythmic footsteps on metal"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Full shot, tracking, slow lateral tracking, smooth footsteps, parallax shift, continuous motion, slow lateral tracking, smooth footsteps, parallax shift, continuous motion.",
              "kling_t2v": "Full shot, 5 seconds, tracking. Subject: Varek slowly circling Wren. Action: slow lateral tracking, smooth footsteps, parallax shift, continuous motion. Motion: slow lateral tracking, smooth footsteps, parallax shift, continuous motion. Setting: metal grating floor, sweating pipes, dark shadows. Mood: predatory patience, sizing up prey. Lighting: cool mixed light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Full shot, tracking. VAREK on left side. WREN on center side. Varek slowly circling Wren. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Full shot, 5 seconds, tracking. Subject: Varek slowly circling Wren. Action: slow lateral tracking, smooth footsteps, parallax shift, continuous motion. Motion: slow lateral tracking, smooth footsteps, parallax shift, continuous motion. Setting: metal grating floor, sweating pipes, dark shadows. Mood: predatory patience, sizing up prey. Lighting: cool mixed light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Full shot, 35mm, tracking, camera tracking. Varek slowly circling Wren. slow lateral tracking, smooth footsteps, parallax shift, continuous motion. predatory patience, sizing up prey. Audio context: slow, rhythmic footsteps on metal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Full shot, 35mm, tracking, camera tracking. Varek slowly circling Wren. slow lateral tracking, smooth footsteps, parallax shift, continuous motion. predatory patience, sizing up prey. Audio context: slow, rhythmic footsteps on metal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "35mm",
              "kinetic_action": "slow lateral tracking, smooth footsteps, parallax shift, continuous motion",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "mixed"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow lateral tracking, smooth footsteps, parallax shift, continuous motion",
                "emotion_line": "predatory patience, sizing up prey",
                "environment_line": "metal grating floor, sweating pipes, dark shadows",
                "subject_line": "Varek slowly circling Wren"
              },
              "shot_type": "FS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 5
            },
            "scene_index": 16,
            "shot_id": "EP003_SH16",
            "source_text": "Varek circles Wren. Slow. Predator patience.",
            "source_text_hash": "bb8249fa0778ed09568474f822f2b63b",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "precise",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "dead silence",
              "dialogue": [],
              "foley_action": "sharp, clean clicks of hard heels on metal grating"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Insert, rhythmic footfalls, sharp heel strike, dust settling, macro focus, rhythmic footfalls, sharp heel strike, dust settling, macro focus.",
              "kling_t2v": "Insert shot, 3 seconds. Subject: polished shoes stepping on metal grating. Action: rhythmic footfalls, sharp heel strike, dust settling, macro focus. Motion: rhythmic footfalls, sharp heel strike, dust settling, macro focus. Setting: rust flakes, dark shadows out of focus. Mood: unnatural cleanliness, precise control. Lighting: cool hard light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Insert shot. VAREK on center side. polished shoes stepping on metal grating. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Insert shot, 3 seconds. Subject: polished shoes stepping on metal grating. Action: rhythmic footfalls, sharp heel strike, dust settling, macro focus. Motion: rhythmic footfalls, sharp heel strike, dust settling, macro focus. Setting: rust flakes, dark shadows out of focus. Mood: unnatural cleanliness, precise control. Lighting: cool hard light from above (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Insert shot, 85mm. polished shoes stepping on metal grating. rhythmic footfalls, sharp heel strike, dust settling, macro focus. unnatural cleanliness, precise control. Audio context: dead silence. sharp, clean clicks of hard heels on metal grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Insert shot, 85mm. polished shoes stepping on metal grating. rhythmic footfalls, sharp heel strike, dust settling, macro focus. unnatural cleanliness, precise control. Audio context: dead silence. sharp, clean clicks of hard heels on metal grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "rhythmic footfalls, sharp heel strike, dust settling, macro focus",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "rhythmic footfalls, sharp heel strike, dust settling, macro focus",
                "emotion_line": "unnatural cleanliness, precise control",
                "environment_line": "rust flakes, dark shadows out of focus",
                "subject_line": "polished shoes stepping on metal grating"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 17,
            "shot_id": "EP003_SH17",
            "source_text": "His shoes click against the grating \u2014 the only clean sound in the corridor.",
            "source_text_hash": "8e2e9b59ffc760ca44f1333fa263ea6a",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "menacing",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                },
                {
                  "char_id": "WREN",
                  "emotion_keyword": "alert",
                  "screen_position": "background",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "VAREK",
                  "delivery_note": "soft, quiet, threatening",
                  "is_voiceover": false,
                  "text": "Section nine covers inert cargo. That is not inert. Pre-Launch military chassis. Memory-wiped. Combat protocols intact."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, push-in, slow push-in, static posture, subtle facial micro-expressions, slow push-in, static posture, subtle facial micro-expressions.",
              "kling_t2v": "Medium close-up, 6 seconds, push-in. Subject: Varek speaking softly, Wren in background. Action: slow push-in, static posture, subtle facial micro-expressions. Motion: slow push-in, static posture, subtle facial micro-expressions. Setting: dark shadows, sweating pipes. Mood: quiet menace, dangerous knowledge. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium close-up, push_in. VAREK on left side. WREN on background side. Varek speaking softly, Wren in background. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium close-up, 6 seconds, push-in. Subject: Varek speaking softly, Wren in background. Action: slow push-in, static posture, subtle facial micro-expressions. Motion: slow push-in, static posture, subtle facial micro-expressions. Setting: dark shadows, sweating pipes. Mood: quiet menace, dangerous knowledge. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 6 seconds. Medium close-up, 85mm, push-in, camera push_in. Varek speaking softly, Wren in background. slow push-in, static posture, subtle facial micro-expressions. quiet menace, dangerous knowledge. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 6 seconds. Medium close-up, 85mm, push-in, camera push_in. Varek speaking softly, Wren in background. slow push-in, static posture, subtle facial micro-expressions. quiet menace, dangerous knowledge. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "85mm",
              "kinetic_action": "slow push-in, static posture, subtle facial micro-expressions",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow push-in, static posture, subtle facial micro-expressions",
                "emotion_line": "quiet menace, dangerous knowledge",
                "environment_line": "dark shadows, sweating pipes",
                "subject_line": "Varek speaking softly, Wren in background"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 6
            },
            "scene_index": 18,
            "shot_id": "EP003_SH18",
            "source_text": "He speaks softer. Quieter. VAREK Section nine covers inert cargo. That is not inert. Pre-Launch military chassis. Memory-wiped. Combat protocols intact.",
            "source_text_hash": "fa9bb185cb1cd3c8ff30515371d9cae1",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "left-to-right"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "calculating",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "low servo hum, mechanical neck rotation"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, panning, rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan, rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan.",
              "kling_t2v": "Close-up, 3 seconds, panning. Subject: Wren's scarred alloy faceplate, blue optical sensors. Action: rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. Motion: rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. Setting: dark shadows out of focus. Mood: cold calculation, machine focus. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up, pan. WREN on center side. Wren's scarred alloy faceplate, blue optical sensors. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 3 seconds, panning. Subject: Wren's scarred alloy faceplate, blue optical sensors. Action: rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. Motion: rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. Setting: dark shadows out of focus. Mood: cold calculation, machine focus. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm, panning, camera pan. Wren's scarred alloy faceplate, blue optical sensors. rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. cold calculation, machine focus. Audio context: low servo hum, mechanical neck rotation. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm, panning, camera pan. Wren's scarred alloy faceplate, blue optical sensors. rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan. cold calculation, machine focus. Audio context: low servo hum, mechanical neck rotation. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "85mm",
              "kinetic_action": "rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "optical sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "rigid head rotation, mechanical tracking, optical lens adjustment, smooth pan",
                "emotion_line": "cold calculation, machine focus",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Wren's scarred alloy faceplate, blue optical sensors"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 19,
            "shot_id": "EP003_SH19",
            "source_text": "Wren tracks the circling. Grid scan.",
            "source_text_hash": "cd793aee35c0c3c1220e382d9af30282",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "calculating",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "rapid electronic clicking, lens focusing sounds"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting, rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting.",
              "kling_t2v": "Extreme close-up, 2 seconds. Subject: Wren's blue optical sensors. Action: rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. Motion: rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. Setting: dark background. Mood: hyper-processing, tactical assessment. Lighting: blue hard light from self_illuminated (optical sensors) at blinding intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up. WREN on center side. Wren's blue optical sensors. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Extreme close-up, 2 seconds. Subject: Wren's blue optical sensors. Action: rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. Motion: rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. Setting: dark background. Mood: hyper-processing, tactical assessment. Lighting: blue hard light from self_illuminated (optical sensors) at blinding intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm. Wren's blue optical sensors. rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. hyper-processing, tactical assessment. Audio context: rapid electronic clicking, lens focusing sounds. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm. Wren's blue optical sensors. rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting. hyper-processing, tactical assessment. Audio context: rapid electronic clicking, lens focusing sounds. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "blinding",
                    "motivator": "optical sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "rapid eye darts, micro-servo twitches, sharp focus, lens flare shifting",
                "emotion_line": "hyper-processing, tactical assessment",
                "environment_line": "dark background",
                "subject_line": "Wren's blue optical sensors"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 20,
            "shot_id": "EP003_SH20",
            "source_text": "Eyes left-to-right, cataloging threat vectors and exit distances.",
            "source_text_hash": "f351b42b530c19698562dad18f3fc98d",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "defiant",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "amused",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "hard, uncompromising",
                  "is_voiceover": false,
                  "text": "Worth enough to zero my counter twice. That's the math I care about, Collector Sorn."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, chin raised, rigid posture, static framing, chin raised, rigid posture, static framing.",
              "kling_t2v": "Medium shot, 4 seconds. Subject: Jade facing Varek. Action: chin raised, rigid posture, static framing. Motion: chin raised, rigid posture, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: stubborn, financially driven defiance. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. JADE on left side. VAREK on right side. Jade facing Varek. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 4 seconds. Subject: Jade facing Varek. Action: chin raised, rigid posture, static framing. Motion: chin raised, rigid posture, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: stubborn, financially driven defiance. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm. Jade facing Varek. chin raised, rigid posture, static framing. stubborn, financially driven defiance. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm. Jade facing Varek. chin raised, rigid posture, static framing. stubborn, financially driven defiance. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "chin raised, rigid posture, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "chin raised, rigid posture, static framing",
                "emotion_line": "stubborn, financially driven defiance",
                "environment_line": "metal grating floor, rust flakes, dark shadows",
                "subject_line": "Jade facing Varek"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 4
            },
            "scene_index": 21,
            "shot_id": "EP003_SH21",
            "source_text": "JADE Worth enough to zero my counter twice. That's the math I care about, Collector Sorn.",
            "source_text_hash": "e572320e26182a0a9d4d8b30d94386f7",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "curious",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "low servo whine"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, slow mechanical head tilt, smooth servo motion, static framing, slow mechanical head tilt, smooth servo motion, static framing.",
              "kling_t2v": "Close-up, 3 seconds. Subject: Wren's scarred alloy faceplate. Action: slow mechanical head tilt, smooth servo motion, static framing. Motion: slow mechanical head tilt, smooth servo motion, static framing. Setting: dark shadows out of focus. Mood: curiosity, deep processing. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. WREN on center side. Wren's scarred alloy faceplate. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 3 seconds. Subject: Wren's scarred alloy faceplate. Action: slow mechanical head tilt, smooth servo motion, static framing. Motion: slow mechanical head tilt, smooth servo motion, static framing. Setting: dark shadows out of focus. Mood: curiosity, deep processing. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm. Wren's scarred alloy faceplate. slow mechanical head tilt, smooth servo motion, static framing. curiosity, deep processing. Audio context: low servo whine. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm. Wren's scarred alloy faceplate. slow mechanical head tilt, smooth servo motion, static framing. curiosity, deep processing. Audio context: low servo whine. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "slow mechanical head tilt, smooth servo motion, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "optical sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow mechanical head tilt, smooth servo motion, static framing",
                "emotion_line": "curiosity, deep processing",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Wren's scarred alloy faceplate"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 22,
            "shot_id": "EP003_SH22",
            "source_text": "Wren's head tilts. Processing something deeper than threat assessment.",
            "source_text_hash": "1db3831da8378fc83ab82ffee0458f1f",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "focused",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "neutral",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, push-in, sharp focal shift, locked gaze, rigid posture, slow push-in, sharp focal shift, locked gaze, rigid posture, slow push-in.",
              "kling_t2v": "Medium close-up, 2 seconds, push-in. Subject: Wren looking intensely at Varek's chest. Action: sharp focal shift, locked gaze, rigid posture, slow push-in. Motion: sharp focal shift, locked gaze, rigid posture, slow push-in. Setting: dark shadows, sweating pipes. Mood: intense focus, analytical intrusion. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium close-up, push_in. WREN on left side. VAREK on right side. Wren looking intensely at Varek's chest. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium close-up, 2 seconds, push-in. Subject: Wren looking intensely at Varek's chest. Action: sharp focal shift, locked gaze, rigid posture, slow push-in. Motion: sharp focal shift, locked gaze, rigid posture, slow push-in. Setting: dark shadows, sweating pipes. Mood: intense focus, analytical intrusion. Lighting: blue hard light from self_illuminated (optical sensors) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Medium close-up, 85mm, push-in, camera push_in. Wren looking intensely at Varek's chest. sharp focal shift, locked gaze, rigid posture, slow push-in. intense focus, analytical intrusion. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Medium close-up, 85mm, push-in, camera push_in. Wren looking intensely at Varek's chest. sharp focal shift, locked gaze, rigid posture, slow push-in. intense focus, analytical intrusion. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "85mm",
              "kinetic_action": "sharp focal shift, locked gaze, rigid posture, slow push-in",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "blue",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "optical sensors",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "sharp focal shift, locked gaze, rigid posture, slow push-in",
                "emotion_line": "intense focus, analytical intrusion",
                "environment_line": "dark shadows, sweating pipes",
                "subject_line": "Wren looking intensely at Varek's chest"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 2
            },
            "scene_index": 23,
            "shot_id": "EP003_SH23",
            "source_text": "His blue eyes lock on Varek's chest.",
            "source_text_hash": "bc5ae6963c7c720e6d0beb8dd3e50b0d",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "WREN",
                  "emotion_keyword": "analytical",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "wren_phase_1_pure_function"
                },
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "shocked",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "WREN",
                  "delivery_note": "flat, synthetic, analytical",
                  "is_voiceover": false,
                  "text": "Query: What is the function of your cardiac implant. It responds to my signal architecture. Pulse. Rhythm. Elevated eleven percent. Recommendation: controlled breathing."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, static framing, rigid posture, unblinking optical sensors, static framing, rigid posture, unblinking optical sensors.",
              "kling_t2v": "Medium shot, 6 seconds. Subject: Wren speaking to Varek. Action: static framing, rigid posture, unblinking optical sensors. Motion: static framing, rigid posture, unblinking optical sensors. Setting: metal grating floor, rust flakes, dark shadows. Mood: clinical, unnerving accuracy. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. WREN on left side. VAREK on right side. Wren speaking to Varek. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 6 seconds. Subject: Wren speaking to Varek. Action: static framing, rigid posture, unblinking optical sensors. Motion: static framing, rigid posture, unblinking optical sensors. Setting: metal grating floor, rust flakes, dark shadows. Mood: clinical, unnerving accuracy. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 6 seconds. Medium shot, 50mm. Wren speaking to Varek. static framing, rigid posture, unblinking optical sensors. clinical, unnerving accuracy. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 6 seconds. Medium shot, 50mm. Wren speaking to Varek. static framing, rigid posture, unblinking optical sensors. clinical, unnerving accuracy. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "static framing, rigid posture, unblinking optical sensors",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static framing, rigid posture, unblinking optical sensors",
                "emotion_line": "clinical, unnerving accuracy",
                "environment_line": "metal grating floor, rust flakes, dark shadows",
                "subject_line": "Wren speaking to Varek"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 6
            },
            "scene_index": 24,
            "shot_id": "EP003_SH24",
            "source_text": "WREN Query: What is the function of your cardiac implant. It responds to my signal architecture. Pulse. Rhythm. Elevated eleven percent. Recommendation: controlled breathing.",
            "source_text_hash": "99c4bb43ba819a520babac372d763408",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "WREN",
                "interaction_type": "dialogue",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "vulnerable",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "fabric rustle against chest"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, sudden hand raise, fabric bunching, defensive posture, static framing, sudden hand raise, fabric bunching, defensive posture, static framing.",
              "kling_t2v": "Close-up, 2 seconds. Subject: Varek's hand touching his chest. Action: sudden hand raise, fabric bunching, defensive posture, static framing. Motion: sudden hand raise, fabric bunching, defensive posture, static framing. Setting: immaculate tailoring, dark background. Mood: vulnerable, exposed, involuntary fear. Lighting: cool hard light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. VAREK on center side. Varek's hand touching his chest. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: Varek's hand touching his chest. Action: sudden hand raise, fabric bunching, defensive posture, static framing. Motion: sudden hand raise, fabric bunching, defensive posture, static framing. Setting: immaculate tailoring, dark background. Mood: vulnerable, exposed, involuntary fear. Lighting: cool hard light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm. Varek's hand touching his chest. sudden hand raise, fabric bunching, defensive posture, static framing. vulnerable, exposed, involuntary fear. Audio context: fabric rustle against chest. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm. Varek's hand touching his chest. sudden hand raise, fabric bunching, defensive posture, static framing. vulnerable, exposed, involuntary fear. Audio context: fabric rustle against chest. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "sudden hand raise, fabric bunching, defensive posture, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "sudden hand raise, fabric bunching, defensive posture, static framing",
                "emotion_line": "vulnerable, exposed, involuntary fear",
                "environment_line": "immaculate tailoring, dark background",
                "subject_line": "Varek's hand touching his chest"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 25,
            "shot_id": "EP003_SH25",
            "source_text": "Varek's hand goes to his chest. Involuntary.",
            "source_text_hash": "b73465db272b78e3b0ec4281b3dcf6fd",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "fearful",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "silence dropping",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Extreme close-up, push-in, facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in, facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in.",
              "kling_t2v": "Extreme close-up, 2 seconds, push-in. Subject: Varek's face, smile dropping. Action: facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. Motion: facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. Setting: dark shadows out of focus. Mood: genuine fear, mask slipping. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Extreme close-up, push_in. VAREK on center side. Varek's face, smile dropping. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Extreme close-up, 2 seconds, push-in. Subject: Varek's face, smile dropping. Action: facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. Motion: facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. Setting: dark shadows out of focus. Mood: genuine fear, mask slipping. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Varek's face, smile dropping. facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. genuine fear, mask slipping. Audio context: silence dropping. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Extreme close-up, 100mm, push-in, camera push_in. Varek's face, smile dropping. facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in. genuine fear, mask slipping. Audio context: silence dropping. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "100mm",
              "kinetic_action": "facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "facial muscles dropping, micro-tremor in jaw, rigid stillness, slow push-in",
                "emotion_line": "genuine fear, mask slipping",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Varek's face, smile dropping"
              },
              "shot_type": "ECU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 26,
            "shot_id": "EP003_SH26",
            "source_text": "His smile dies.",
            "source_text_hash": "cace47bae3b3cce0ae5aa5000a34b05a",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "heavy silence, faint hum",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor section, deep shadows. metal grating floor, rust flakes, sweating pipes, cracked pipes. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. static framing, atmospheric drift, slow push-in, dust motes settling. Lighting: cool light casting soft shadows from ABOVE (source: corridor emergency strip) [dim]",
              "kling_i2v": "Wide shot, push-in, static framing, atmospheric drift, slow push-in, dust motes settling, static framing, atmospheric drift, slow push-in, dust motes settling.",
              "kling_t2v": "Wide shot, 4 seconds, push-in. Subject: empty corridor section, deep shadows. Action: static framing, atmospheric drift, slow push-in, dust motes settling. Motion: static framing, atmospheric drift, slow push-in, dust motes settling. Setting: metal grating floor, rust flakes, sweating pipes, cracked pipes. Mood: tense silence, heavy atmosphere. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, push_in. ENVIRONMENT ONLY, no people. empty corridor section, deep shadows. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Wide shot, 4 seconds, push-in. Subject: empty corridor section, deep shadows. Action: static framing, atmospheric drift, slow push-in, dust motes settling. Motion: static framing, atmospheric drift, slow push-in, dust motes settling. Setting: metal grating floor, rust flakes, sweating pipes, cracked pipes. Mood: tense silence, heavy atmosphere. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Wide shot, 35mm, push-in, camera push_in. empty corridor section, deep shadows. static framing, atmospheric drift, slow push-in, dust motes settling. tense silence, heavy atmosphere. Audio context: heavy silence, faint hum. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Wide shot, 35mm, push-in, camera push_in. empty corridor section, deep shadows. static framing, atmospheric drift, slow push-in, dust motes settling. tense silence, heavy atmosphere. Audio context: heavy silence, faint hum. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "35mm",
              "kinetic_action": "static framing, atmospheric drift, slow push-in, dust motes settling",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static framing, atmospheric drift, slow push-in, dust motes settling",
                "emotion_line": "tense silence, heavy atmosphere",
                "environment_line": "metal grating floor, rust flakes, sweating pipes, cracked pipes",
                "subject_line": "empty corridor section, deep shadows"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 4
            },
            "scene_index": 27,
            "shot_id": "EP003_SH27",
            "source_text": "The corridor is very quiet.",
            "source_text_hash": "706d4e114feb2e8389145036accfd2bc",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "single loud water drop hitting metal"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Insert shot, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. condensation dripping from ceiling vent. rust flakes, sweating pipes, dark shadows. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. water droplet falling, motion blur on drip, surface impact, macro focus. Lighting: cool light casting hard shadows from ABOVE (source: flickering overhead pipe light) [dim]",
              "kling_i2v": "Insert, water droplet falling, motion blur on drip, surface impact, macro focus, water droplet falling, motion blur on drip, surface impact, macro focus.",
              "kling_t2v": "Insert shot, 2 seconds. Subject: condensation dripping from ceiling vent. Action: water droplet falling, motion blur on drip, surface impact, macro focus. Motion: water droplet falling, motion blur on drip, surface impact, macro focus. Setting: rust flakes, sweating pipes, dark shadows. Mood: hyper-focused tension, agonizingly slow time. Lighting: cool hard light from above (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Insert shot. ENVIRONMENT ONLY, no people. condensation dripping from ceiling vent. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Insert shot, 2 seconds. Subject: condensation dripping from ceiling vent. Action: water droplet falling, motion blur on drip, surface impact, macro focus. Motion: water droplet falling, motion blur on drip, surface impact, macro focus. Setting: rust flakes, sweating pipes, dark shadows. Mood: hyper-focused tension, agonizingly slow time. Lighting: cool hard light from above (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Insert shot, 100mm. condensation dripping from ceiling vent. water droplet falling, motion blur on drip, surface impact, macro focus. hyper-focused tension, agonizingly slow time. Audio context: single loud water drop hitting metal. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Insert shot, 100mm. condensation dripping from ceiling vent. water droplet falling, motion blur on drip, surface impact, macro focus. hyper-focused tension, agonizingly slow time. Audio context: single loud water drop hitting metal. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "100mm",
              "kinetic_action": "water droplet falling, motion blur on drip, surface impact, macro focus",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "water droplet falling, motion blur on drip, surface impact, macro focus",
                "emotion_line": "hyper-focused tension, agonizingly slow time",
                "environment_line": "rust flakes, sweating pipes, dark shadows",
                "subject_line": "condensation dripping from ceiling vent"
              },
              "shot_type": "INSERT"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 2
            },
            "scene_index": 28,
            "shot_id": "EP003_SH28",
            "source_text": "Condensation drips from a ceiling vent.",
            "source_text_hash": "c5849688efb1c9bb5d60581d56b34a54",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. collector drones, powered down, hovering silently. metal grating floor, dark shadows. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. static mechanical posture, dead optics, rigid framing. Lighting: cool light casting soft shadows from ABOVE (source: corridor emergency strip) [dim]",
              "kling_i2v": "Medium shot, static mechanical posture, dead optics, rigid framing, static mechanical posture, dead optics, rigid framing.",
              "kling_t2v": "Medium shot, 3 seconds. Subject: collector drones, powered down, hovering silently. Action: static mechanical posture, dead optics, rigid framing. Motion: static mechanical posture, dead optics, rigid framing. Setting: metal grating floor, dark shadows. Mood: dormant threat, unnerving stillness. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. ENVIRONMENT ONLY, no people. collector drones, powered down, hovering silently. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 3 seconds. Subject: collector drones, powered down, hovering silently. Action: static mechanical posture, dead optics, rigid framing. Motion: static mechanical posture, dead optics, rigid framing. Setting: metal grating floor, dark shadows. Mood: dormant threat, unnerving stillness. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm. collector drones, powered down, hovering silently. static mechanical posture, dead optics, rigid framing. dormant threat, unnerving stillness. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm. collector drones, powered down, hovering silently. static mechanical posture, dead optics, rigid framing. dormant threat, unnerving stillness. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "static mechanical posture, dead optics, rigid framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static mechanical posture, dead optics, rigid framing",
                "emotion_line": "dormant threat, unnerving stillness",
                "environment_line": "metal grating floor, dark shadows",
                "subject_line": "collector drones, powered down, hovering silently"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 29,
            "shot_id": "EP003_SH29",
            "source_text": "The drones stay powered down.",
            "source_text_hash": "887cae0add056eda38bfc25e4f88bc9a",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "tense",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "slow, raspy exhale through rebreather"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, condensation blooming on glass, slow exhale, static framing, condensation blooming on glass, slow exhale, static framing.",
              "kling_t2v": "Close-up, 3 seconds. Subject: Jade's full mask, rebreather glass fogging. Action: condensation blooming on glass, slow exhale, static framing. Motion: condensation blooming on glass, slow exhale, static framing. Setting: dark shadows out of focus. Mood: bated breath, intense anticipation. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. JADE on center side. Jade's full mask, rebreather glass fogging. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 3 seconds. Subject: Jade's full mask, rebreather glass fogging. Action: condensation blooming on glass, slow exhale, static framing. Motion: condensation blooming on glass, slow exhale, static framing. Setting: dark shadows out of focus. Mood: bated breath, intense anticipation. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm. Jade's full mask, rebreather glass fogging. condensation blooming on glass, slow exhale, static framing. bated breath, intense anticipation. Audio context: slow, raspy exhale through rebreather. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm. Jade's full mask, rebreather glass fogging. condensation blooming on glass, slow exhale, static framing. bated breath, intense anticipation. Audio context: slow, raspy exhale through rebreather. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "condensation blooming on glass, slow exhale, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "condensation blooming on glass, slow exhale, static framing",
                "emotion_line": "bated breath, intense anticipation",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Jade's full mask, rebreather glass fogging"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 30,
            "shot_id": "EP003_SH30",
            "source_text": "Jade's rebreather fogs in the silence between heartbeats.",
            "source_text_hash": "cf2e3cc463eabc69dbcbfec5073bf922",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "JADE",
                  "emotion_keyword": "cocky",
                  "screen_position": "left",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "jade_phase_1_full_mask"
                },
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "tense",
                  "screen_position": "right",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "JADE",
                  "delivery_note": "smirking, confident",
                  "is_voiceover": false,
                  "text": "You got any gold teeth I can pry out while we're down here? Or are we done?"
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, head tilt, relaxed shoulders, static framing, head tilt, relaxed shoulders, static framing.",
              "kling_t2v": "Medium shot, 4 seconds. Subject: Jade facing Varek, breaking the silence. Action: head tilt, relaxed shoulders, static framing. Motion: head tilt, relaxed shoulders, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: cocky, breaking the tension. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot. JADE on left side. VAREK on right side. Jade facing Varek, breaking the silence. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 4 seconds. Subject: Jade facing Varek, breaking the silence. Action: head tilt, relaxed shoulders, static framing. Motion: head tilt, relaxed shoulders, static framing. Setting: metal grating floor, rust flakes, dark shadows. Mood: cocky, breaking the tension. Lighting: cool hard light from above_left (flickering overhead pipe light) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 4 seconds. Medium shot, 50mm. Jade facing Varek, breaking the silence. head tilt, relaxed shoulders, static framing. cocky, breaking the tension. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 4 seconds. Medium shot, 50mm. Jade facing Varek, breaking the silence. head tilt, relaxed shoulders, static framing. cocky, breaking the tension. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "kling-3.0",
            "pipeline": "t2v",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "head tilt, relaxed shoulders, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE_LEFT",
                    "intensity": "dim",
                    "motivator": "flickering overhead pipe light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "head tilt, relaxed shoulders, static framing",
                "emotion_line": "cocky, breaking the tension",
                "environment_line": "metal grating floor, rust flakes, dark shadows",
                "subject_line": "Jade facing Varek, breaking the silence"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 2,
              "target_editorial_duration_s": 4
            },
            "scene_index": 31,
            "shot_id": "EP003_SH31",
            "source_text": "JADE You got any gold teeth I can pry out while we're down here? Or are we done?",
            "source_text_hash": "a71a20ac34f8efae35c46712a2b3f1f5",
            "spatial_data": {
              "camera_side": "left",
              "character_relationships": {
                "dominant_character": "JADE",
                "interaction_type": "confrontation",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "right-to-left"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "angry",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "faint teeth grinding sound"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, push-in, jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in, jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in.",
              "kling_t2v": "Close-up, 3 seconds, push-in. Subject: Varek's face, jaw clenching. Action: jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. Motion: jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. Setting: dark shadows out of focus. Mood: suppressed rage, unfamiliar fear. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up, push_in. VAREK on center side. Varek's face, jaw clenching. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 3 seconds, push-in. Subject: Varek's face, jaw clenching. Action: jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. Motion: jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. Setting: dark shadows out of focus. Mood: suppressed rage, unfamiliar fear. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm, push-in, camera push_in. Varek's face, jaw clenching. jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. suppressed rage, unfamiliar fear. Audio context: faint teeth grinding sound. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm, push-in, camera push_in. Varek's face, jaw clenching. jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in. suppressed rage, unfamiliar fear. Audio context: faint teeth grinding sound. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "push_in",
              "focal_length": "85mm",
              "kinetic_action": "jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "jaw muscle clenching, subtle neck tendon strain, rigid posture, slow push-in",
                "emotion_line": "suppressed rage, unfamiliar fear",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Varek's face, jaw clenching"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "push_in",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 32,
            "shot_id": "EP003_SH32",
            "source_text": "Varek's jaw works. Processing a threat he hasn't felt in years.",
            "source_text_hash": "61ed2ec9b041b12c0677380a424583df",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "cautious",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "two slow, deliberate footsteps on metal grating"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium shot, pull-back, slow backward steps, smooth retreat, maintaining eye contact, camera pulling back, slow backward steps, smooth retreat, maintaining eye contact, camera pulling back.",
              "kling_t2v": "Medium shot, 3 seconds, pull-back. Subject: Varek stepping backward. Action: slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. Motion: slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. Setting: metal grating floor, dark shadows. Mood: tactical retreat, regaining composure. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium shot, pull_back. VAREK on center side. Varek stepping backward. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium shot, 3 seconds, pull-back. Subject: Varek stepping backward. Action: slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. Motion: slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. Setting: metal grating floor, dark shadows. Mood: tactical retreat, regaining composure. Lighting: cool soft light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium shot, 50mm, pull-back, camera pull_back. Varek stepping backward. slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. tactical retreat, regaining composure. Audio context: two slow, deliberate footsteps on metal grating. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium shot, 50mm, pull-back, camera pull_back. Varek stepping backward. slow backward steps, smooth retreat, maintaining eye contact, camera pulling back. tactical retreat, regaining composure. Audio context: two slow, deliberate footsteps on metal grating. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pull_back",
              "focal_length": "50mm",
              "kinetic_action": "slow backward steps, smooth retreat, maintaining eye contact, camera pulling back",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "slow backward steps, smooth retreat, maintaining eye contact, camera pulling back",
                "emotion_line": "tactical retreat, regaining composure",
                "environment_line": "metal grating floor, dark shadows",
                "subject_line": "Varek stepping backward"
              },
              "shot_type": "MS"
            },
            "routing_data": {
              "camera_complexity": "pull_back",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 33,
            "shot_id": "EP003_SH33",
            "source_text": "Varek backs away. One step. Two.",
            "source_text_hash": "b88a89c050c337c8caa25e5bec79411b",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "psychopathic",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, forced facial muscle contraction, dead eyes, static framing, forced facial muscle contraction, dead eyes, static framing.",
              "kling_t2v": "Close-up, 3 seconds. Subject: Varek smiling, empty eyes, visible teeth. Action: forced facial muscle contraction, dead eyes, static framing. Motion: forced facial muscle contraction, dead eyes, static framing. Setting: dark shadows out of focus. Mood: psychopathic, unnatural, masking fear. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. VAREK on center side. Varek smiling, empty eyes, visible teeth. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 3 seconds. Subject: Varek smiling, empty eyes, visible teeth. Action: forced facial muscle contraction, dead eyes, static framing. Motion: forced facial muscle contraction, dead eyes, static framing. Setting: dark shadows out of focus. Mood: psychopathic, unnatural, masking fear. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Close-up, 85mm. Varek smiling, empty eyes, visible teeth. forced facial muscle contraction, dead eyes, static framing. psychopathic, unnatural, masking fear. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Close-up, 85mm. Varek smiling, empty eyes, visible teeth. forced facial muscle contraction, dead eyes, static framing. psychopathic, unnatural, masking fear. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "forced facial muscle contraction, dead eyes, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "forced facial muscle contraction, dead eyes, static framing",
                "emotion_line": "psychopathic, unnatural, masking fear",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Varek smiling, empty eyes, visible teeth"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 34,
            "shot_id": "EP003_SH34",
            "source_text": "Then he smiles. Wrong. Teeth visible, eyes empty. Learned behavior, not felt.",
            "source_text_hash": "0b7903f84f815d2522b4b2c63c7fae68",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "controlled",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "crisp fabric rustle, faint metallic clink of cuffs"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Medium close-up, tilting, precise hand movements, fabric straightening, smooth motion, light catching chrome, precise hand movements, fabric straightening, smooth motion, light catching chrome.",
              "kling_t2v": "Medium close-up, 3 seconds, tilting. Subject: Varek adjusting his cuffs, pulling chrome accents straight. Action: precise hand movements, fabric straightening, smooth motion, light catching chrome. Motion: precise hand movements, fabric straightening, smooth motion, light catching chrome. Setting: immaculate tailoring, dark background. Mood: restoring order, obsessive control. Lighting: cool hard light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Medium close-up, tilt. VAREK on center side. Varek adjusting his cuffs, pulling chrome accents straight. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Medium close-up, 3 seconds, tilting. Subject: Varek adjusting his cuffs, pulling chrome accents straight. Action: precise hand movements, fabric straightening, smooth motion, light catching chrome. Motion: precise hand movements, fabric straightening, smooth motion, light catching chrome. Setting: immaculate tailoring, dark background. Mood: restoring order, obsessive control. Lighting: cool hard light from front (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Medium close-up, 85mm, tilting, camera tilt. Varek adjusting his cuffs, pulling chrome accents straight. precise hand movements, fabric straightening, smooth motion, light catching chrome. restoring order, obsessive control. Audio context: crisp fabric rustle, faint metallic clink of cuffs. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Medium close-up, 85mm, tilting, camera tilt. Varek adjusting his cuffs, pulling chrome accents straight. precise hand movements, fabric straightening, smooth motion, light catching chrome. restoring order, obsessive control. Audio context: crisp fabric rustle, faint metallic clink of cuffs. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tilt",
              "focal_length": "85mm",
              "kinetic_action": "precise hand movements, fabric straightening, smooth motion, light catching chrome",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "FRONT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "precise hand movements, fabric straightening, smooth motion, light catching chrome",
                "emotion_line": "restoring order, obsessive control",
                "environment_line": "immaculate tailoring, dark background",
                "subject_line": "Varek adjusting his cuffs, pulling chrome accents straight"
              },
              "shot_type": "MCU"
            },
            "routing_data": {
              "camera_complexity": "tilt",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 35,
            "shot_id": "EP003_SH35",
            "source_text": "He adjusts his cuffs again. Slow and deliberate. Pulling chrome straight.",
            "source_text_hash": "8d369d8df504d4448e9568d80360833f",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "intrigued",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss",
              "dialogue": [
                {
                  "character": "VAREK",
                  "delivery_note": "soft, almost a whisper",
                  "is_voiceover": false,
                  "text": "Interesting."
                }
              ],
              "foley_action": ""
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Close-up, static framing, slight head tilt, unblinking stare, static framing, slight head tilt, unblinking stare.",
              "kling_t2v": "Close-up, 2 seconds. Subject: Varek, empty smile, staring forward. Action: static framing, slight head tilt, unblinking stare. Motion: static framing, slight head tilt, unblinking stare. Setting: dark shadows out of focus. Mood: intrigued, dangerous fascination. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "previs_flash": "Close-up. VAREK on center side. Varek, empty smile, staring forward. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Close-up, 2 seconds. Subject: Varek, empty smile, staring forward. Action: static framing, slight head tilt, unblinking stare. Motion: static framing, slight head tilt, unblinking stare. Setting: dark shadows out of focus. Mood: intrigued, dangerous fascination. Lighting: cool hard light from left (corridor emergency strip). Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 2 seconds. Close-up, 85mm. Varek, empty smile, staring forward. static framing, slight head tilt, unblinking stare. intrigued, dangerous fascination. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 2 seconds. Close-up, 85mm. Varek, empty smile, staring forward. static framing, slight head tilt, unblinking stare. intrigued, dangerous fascination. Audio context: distant steam hiss. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "85mm",
              "kinetic_action": "static framing, slight head tilt, unblinking stare",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "LEFT",
                    "intensity": "moderate",
                    "motivator": "corridor emergency strip",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "static framing, slight head tilt, unblinking stare",
                "emotion_line": "intrigued, dangerous fascination",
                "environment_line": "dark shadows out of focus",
                "subject_line": "Varek, empty smile, staring forward"
              },
              "shot_type": "CU"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": true,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 2
            },
            "scene_index": 36,
            "shot_id": "EP003_SH36",
            "source_text": "VAREK Interesting.",
            "source_text_hash": "bf8189c8ef50e0b91b1a171205d0306b",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "center"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "confident",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "",
              "dialogue": [],
              "foley_action": "crisp footsteps walking away"
            },
            "compiled_prompts": {
              "keyframe_nbp": "<truncated:blob>",
              "kling_i2v": "Full shot, panning, sharp pivot, forward momentum into shadow, fabric swish, smooth pan, sharp pivot, forward momentum into shadow, fabric swish, smooth pan.",
              "kling_t2v": "Full shot, 3 seconds, panning. Subject: Varek turning away, walking into darkness. Action: sharp pivot, forward momentum into shadow, fabric swish, smooth pan. Motion: sharp pivot, forward momentum into shadow, fabric swish, smooth pan. Setting: metal grating floor, deep shadows swallowing him. Mood: dismissive, retreating into the hunt. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Full shot, pan. VAREK on center side. Varek turning away, walking into darkness. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Full shot, 3 seconds, panning. Subject: Varek turning away, walking into darkness. Action: sharp pivot, forward momentum into shadow, fabric swish, smooth pan. Motion: sharp pivot, forward momentum into shadow, fabric swish, smooth pan. Setting: metal grating floor, deep shadows swallowing him. Mood: dismissive, retreating into the hunt. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Full shot, 50mm, panning, camera pan. Varek turning away, walking into darkness. sharp pivot, forward momentum into shadow, fabric swish, smooth pan. dismissive, retreating into the hunt. Audio context: crisp footsteps walking away. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Full shot, 50mm, panning, camera pan. Varek turning away, walking into darkness. sharp pivot, forward momentum into shadow, fabric swish, smooth pan. dismissive, retreating into the hunt. Audio context: crisp footsteps walking away. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "pan",
              "focal_length": "50mm",
              "kinetic_action": "sharp pivot, forward momentum into shadow, fabric swish, smooth pan",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "sharp pivot, forward momentum into shadow, fabric swish, smooth pan",
                "emotion_line": "dismissive, retreating into the hunt",
                "environment_line": "metal grating floor, deep shadows swallowing him",
                "subject_line": "Varek turning away, walking into darkness"
              },
              "shot_type": "FS"
            },
            "routing_data": {
              "camera_complexity": "pan",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 3
            },
            "scene_index": 37,
            "shot_id": "EP003_SH37",
            "source_text": "He turns and walks into the dark.",
            "source_text_hash": "70019f8a6cffe382d8a5c2ea533b5569",
            "spatial_data": {
              "camera_side": "right",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [],
              "location_id": "int_lower_decks_corridor",
              "props": [
                {
                  "prop_id": "collector_drone",
                  "visibility": "in_frame"
                }
              ],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "low frequency hum rising",
              "dialogue": [],
              "foley_action": "mechanical clanking, rotor whine pitching up"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Wide shot, 35mm, tracking. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. collector drones powering up, blade arrays retracting, moving forward. metal grating floor, dark shadows. CRITICAL: This is an ENVIRONMENT-ONLY shot. ABSOLUTELY NO PEOPLE in this image. sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. Lighting: amber light casting hard shadows from SELF_ILLUMINATED (source: drone sweep-light) [bright]",
              "kling_i2v": "Wide shot, tracking, sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades, sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades.",
              "kling_t2v": "Wide shot, 3 seconds, tracking. Subject: collector drones powering up, blade arrays retracting, moving forward. Action: sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. Motion: sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. Setting: metal grating floor, dark shadows. Mood: obedient machines, lethal efficiency. Lighting: amber hard light from self_illuminated (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Wide shot, tracking. ENVIRONMENT ONLY, no people. collector drones powering up, blade arrays retracting, moving forward. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Wide shot, 3 seconds, tracking. Subject: collector drones powering up, blade arrays retracting, moving forward. Action: sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. Motion: sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. Setting: metal grating floor, dark shadows. Mood: obedient machines, lethal efficiency. Lighting: amber hard light from self_illuminated (drone sweep-light) at bright intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 3 seconds. Wide shot, 35mm, tracking, camera tracking. collector drones powering up, blade arrays retracting, moving forward. sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. obedient machines, lethal efficiency. Audio context: low frequency hum rising. mechanical clanking, rotor whine pitching up. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 3 seconds. Wide shot, 35mm, tracking, camera tracking. collector drones powering up, blade arrays retracting, moving forward. sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades. obedient machines, lethal efficiency. Audio context: low frequency hum rising. mechanical clanking, rotor whine pitching up. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "tracking",
              "focal_length": "35mm",
              "kinetic_action": "sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "amber",
                    "direction": "SELF_ILLUMINATED",
                    "intensity": "bright",
                    "motivator": "drone sweep-light",
                    "quality": "hard"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "sudden optical flare, mechanical unfolding, synchronized forward movement, motion blur on blades",
                "emotion_line": "obedient machines, lethal efficiency",
                "environment_line": "metal grating floor, dark shadows",
                "subject_line": "collector drones powering up, blade arrays retracting, moving forward"
              },
              "shot_type": "WS"
            },
            "routing_data": {
              "camera_complexity": "tracking",
              "has_dialogue": false,
              "is_env_only": true,
              "narrative_requires_match_cut": false,
              "num_characters": 0,
              "target_editorial_duration_s": 3
            },
            "scene_index": 38,
            "shot_id": "EP003_SH38",
            "source_text": "The drones power up and follow, blade arrays retracting.",
            "source_text_hash": "c22b1e6941fb26cc946316b95607dd2f",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": null,
                "interaction_type": "solo",
                "relative_scale": "standard",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          },
          {
            "asset_data": {
              "characters": [
                {
                  "char_id": "VAREK",
                  "emotion_keyword": "confident",
                  "screen_position": "center",
                  "visibility": "in_frame",
                  "wardrobe_phase_id": "varek_phase_1_hunter"
                }
              ],
              "location_id": "int_lower_decks_corridor",
              "props": [],
              "time_of_day": "interior",
              "visual_mode": "reality"
            },
            "audio_data": {
              "ambient_sfx": "distant steam hiss, heavy atmosphere",
              "dialogue": [],
              "foley_action": "footsteps fading into silence"
            },
            "compiled_prompts": {
              "keyframe_nbp": "Long shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. Varek's silhouette walking down long corridor. metal grating floor, rust flakes, sweating pipes, deep shadows. Varek: chrome and gold accents, immaculate tailoring, clean cuffs, polished shoes. receding figure, rhythmic gait, fading into atmospheric depth, static framing. Lighting: cool light casting soft shadows from ABOVE (source: corridor emergency strip) [dim] lingering threat, the hunt begins. Focus on full body silhouette, posture, and environmental scale. Facial features are indistinct at this distance. Do not attempt high-detail eyes or mouth. Camera direction: Subject does not look directly into the lens.",
              "kling_i2v": "Long shot, receding figure, rhythmic gait, fading into atmospheric depth, static framing, receding figure, rhythmic gait, fading into atmospheric depth, static framing.",
              "kling_t2v": "Long shot, 5 seconds. Subject: Varek's silhouette walking down long corridor. Action: receding figure, rhythmic gait, fading into atmospheric depth, static framing. Motion: receding figure, rhythmic gait, fading into atmospheric depth, static framing. Setting: metal grating floor, rust flakes, sweating pipes, deep shadows. Mood: lingering threat, the hunt begins. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "previs_flash": "Long shot. VAREK on center side. Varek's silhouette walking down long corridor. Background: lower decks corridor. 9:16 vertical frame.",
              "seeddance_t2v": "Long shot, 5 seconds. Subject: Varek's silhouette walking down long corridor. Action: receding figure, rhythmic gait, fading into atmospheric depth, static framing. Motion: receding figure, rhythmic gait, fading into atmospheric depth, static framing. Setting: metal grating floor, rust flakes, sweating pipes, deep shadows. Mood: lingering threat, the hunt begins. Lighting: cool soft light from above (corridor emergency strip) at dim intensity. Cinematic, photorealistic, high production value.",
              "veo_t2v": "Cinematic video, 5 seconds. Long shot, 50mm. Varek's silhouette walking down long corridor. receding figure, rhythmic gait, fading into atmospheric depth, static framing. lingering threat, the hunt begins. Audio context: distant steam hiss, heavy atmosphere. footsteps fading into silence. Photorealistic, cinematic lighting, high budget film.",
              "video_plan": "Cinematic video, 5 seconds. Long shot, 50mm. Varek's silhouette walking down long corridor. receding figure, rhythmic gait, fading into atmospheric depth, static framing. lingering threat, the hunt begins. Audio context: distant steam hiss, heavy atmosphere. footsteps fading into silence. Photorealistic, cinematic lighting, high budget film."
            },
            "model": "gemini-3-pro-image-preview",
            "pipeline": "still",
            "prompt_data": {
              "camera_movement": "static",
              "focal_length": "50mm",
              "kinetic_action": "receding figure, rhythmic gait, fading into atmospheric depth, static framing",
              "lighting": {
                "dominant_source_index": 0,
                "sources": [
                  {
                    "color_temp": "cool",
                    "direction": "ABOVE",
                    "intensity": "dim",
                    "motivator": "corridor emergency strip",
                    "quality": "soft"
                  }
                ]
              },
              "prompt_skeleton": {
                "action_line": "receding figure, rhythmic gait, fading into atmospheric depth, static framing",
                "emotion_line": "lingering threat, the hunt begins",
                "environment_line": "metal grating floor, rust flakes, sweating pipes, deep shadows",
                "subject_line": "Varek's silhouette walking down long corridor"
              },
              "shot_type": "LS"
            },
            "routing_data": {
              "camera_complexity": "static",
              "has_dialogue": false,
              "is_env_only": false,
              "narrative_requires_match_cut": false,
              "num_characters": 1,
              "target_editorial_duration_s": 5
            },
            "scene_index": 39,
            "shot_id": "EP003_SH39",
            "source_text": "His footsteps fade down the corridor \u2014 steady, unhurried, precise. A hunter who just marked his prey. He's found something worth hunting.",
            "source_text_hash": "94b6f2f09ff1bde39271fb87f0a211f0",
            "spatial_data": {
              "camera_side": "neutral",
              "character_relationships": {
                "dominant_character": "VAREK",
                "interaction_type": "solo",
                "relative_scale": "diminished",
                "shared_lighting": true
              },
              "screen_direction": "away-from-camera"
            }
          }
        ],
        "source_hash": "8bc7035c5917c1da4ba1437c857a5cd9",
        "total_shots": 39
      },
      "path": "tartarus/state/visual/plans/ep_003_plan.json"
    },
    {
      "data": {
        "1_1": {
          "atmosphere": "Gritty corroded metal pipes and grates, shallow depth of field with soft background bokeh, dynamic light streaks from sparks, oily wet reflective surfaces, intense laborious industrial mood",
          "lighting": "Intense, fiery welding sparks from center-left, hard warm orange-yellow light, deep soft-edged shadows, minimal cool ambient fill, reflections on wet surfaces",
          "palette": "fiery welding orange, gritty industrial charcoal, worn leather brown, damp metallic gray, deep shadow black"
        },
        "1_10": {
          "atmosphere": "Rough aged industrial structures, shallow depth of field with soft background blur, dense atmospheric haze, gritty and dirty character surfaces, desolate and tense mood",
          "lighting": "Key light from upper-left, soft and diffused on character, cool ambient fill from background, soft-edged shadows, overall cool temperature with neutral character lighting",
          "palette": "Deep industrial blue, gritty concrete gray, worn utility khaki, muddy off-white, fiery rust red, deep shadow black"
        },
        "1_11": {
          "atmosphere": "Heavily corroded and grimy metal textures, deep depth of field with gradual background softening, faint atmospheric haze in the distance, dusty and worn surfaces, character's skin and hair appear damp and dirty",
          "lighting": "Cool white key light from upper-left practicals, soft but defined shadows falling to the right, cool blue ambient fill in the background, visible fluorescent tube practical light source",
          "palette": "rusty iron brown, industrial steel gray, gritty off-white, deep shaft black, cool fluorescent cyan"
        },
        "1_12": {
          "atmosphere": "Grimy industrial textures, shallow depth of field with soft background blur, dense atmospheric haze with visible particulate matter, dry and dusty surfaces, somber and desolate mood",
          "lighting": "Key light from above-front, soft quality, soft diffused shadows, cool blue ambient fill from background, no visible practical light sources",
          "palette": "Deep oceanic blue, gritty industrial gray, muted earthy beige, rusty copper, smoky white"
        },
        "1_13": {
          "atmosphere": "Gritty industrial textures, frosted and worn metallic surfaces, shallow depth of field, visible atmospheric steam/vapor, overall cold and tense mood",
          "lighting": "Key light from upper-left, soft-edged shadows, cool overall color temperature, strong electric blue practical light from console, subtle ambient fill, steam illuminated by practical light",
          "palette": "Cool steel gray, rusty copper, gritty off-white, deep void black, electric interface blue"
        },
        "1_14": {
          "atmosphere": "Heavily textured and scratched metallic surfaces, frosted panel details, grimy and damp skin, wet hair, shallow depth of field with soft background, industrial and tense mood",
          "lighting": "Hard key light from upper-left, cool blue practical light from panel acting as fill, warm orange practical light from wrist device, hard-edged shadows, overall cool color temperature",
          "palette": "cool industrial steel, electric blue glow, rusty copper red, gritty olive drab, deep shadow black"
        },
        "1_15": {
          "atmosphere": "Grimy industrial metal textures, moderate depth of field with soft background, dense atmospheric haze and steam, cold frosted metallic surfaces, overall mysterious and foreboding mood",
          "lighting": "Hard key light from upper-front, cool white-blue temperature, icy blue practical light from central eye and bottom strips of object, dim cool ambient fill, hard-edged shadows on object details, diffused shadows in background haze",
          "palette": "Icy steel gray, deep industrial charcoal, electric arctic blue, muted bronze, smoky cool white"
        },
        "1_16": {
          "atmosphere": "Rough industrial metal textures, shallow depth of field with blurred background, dense cool mist and vapor around character and within cryo-pod, worn rusted slightly reflective metallic surfaces, frosted cryo-pod interior, cold mysterious industrial mood",
          "lighting": "Key light from above-front, slightly cool white, soft diffused cool blue light from within the cryo-pod, sharp highlights on metallic surfaces, diffused shadows due to atmospheric haze, deep dark background with minimal fill",
          "palette": "industrial steel blue, verdigris patina, deep shadow black, icy cyan, aged brass"
        },
        "1_17": {
          "atmosphere": "Worn textured metallic surfaces, frosted chamber interior, industrial grimy background structures, moderate depth of field with soft background blur, subtle cool atmospheric haze, cold stark mood",
          "lighting": "Key light from front-left, cool blue-white, strong practical light from glowing chamber interior, icy blue, soft-edged shadows on character's right side, diffused cool light in background, metallic highlights",
          "palette": "Icy cyan glow, worn industrial steel, aged bronze accents, deep shadow black, desaturated human flesh"
        },
        "1_18": {
          "atmosphere": "Heavily textured worn metallic surfaces, shallow depth of field with soft background bokeh, subtle cool atmospheric haze, semi-gloss to matte surface qualities, gritty industrial mood",
          "lighting": "Key light from upper-left, hard quality with defined shadows, cool blue-white color temperature, cool-toned fill light, no practical light sources visible, shadows are deep and cool blue",
          "palette": "deep industrial blue, oxidized bronze, cool steel gray, shadowy teal, electric blue"
        },
        "1_19": {
          "atmosphere": "Finely textured matte skin-like surface, matte industrial metal textures, very shallow depth of field with sharp focus on face and pure black background, no visible atmospheric effects, stark and intense artificial mood",
          "lighting": "Soft directional key light from upper-left, neutral to cool white color temperature, strong practical electric blue light emanating from eyes casting blue fill onto face, soft-edged pronounced shadows on right side of face and under features, pure black background with no visible lighting",
          "palette": "Pale concrete gray, dark industrial gray, intense electric blue, deep void black, subtle cool white highlights"
        },
        "1_2": {
          "atmosphere": "Gritty, wet, and corroded industrial environment, shallow depth of field with sharp focus on foreground and soft background blur, surfaces are wet and reflective with visible grime and water droplets, overall mood is tense, urgent, and confined",
          "lighting": "Key light from upper-left, somewhat hard with specular highlights on wet surfaces and metal, dominant practical light from glowing amber watch display, overall scene dimly lit, deep shadows in background, shadows on hands and watch are defined but not razor-sharp, cool desaturated ambient light provides minimal fill",
          "palette": "industrial steel gray, gritty olive drab, emergency amber, worn leather brown, deep shadow black"
        },
        "1_20": {
          "atmosphere": "Finely textured weathered skin, worn industrial metallic surfaces, very shallow depth of field with sharp foreground and heavily blurred background, no visible atmospheric haze, intense and cold mood",
          "lighting": "Key light from upper-left, moderately soft quality, cool desaturated temperature on face, subtle ambient fill, intense glowing blue eyes as practicals, distant warm amber spark in background, defined but not harsh shadows",
          "palette": "cool cybernetic blue, desaturated cool gray, industrial dark steel, deep shadow black, flickering warm amber"
        },
        "1_21": {
          "atmosphere": "Gritty industrial metal textures, shallow depth of field with sharp foreground focus, character's hair and skin are wet and glistening, dirty and stained clothing, tense and urgent mood, confined vertical space",
          "lighting": "Key light from upper-left, directional and slightly diffused, cool color temperature, defined but not razor-sharp shadows, deep shadows in background, no visible practical light sources",
          "palette": "Wet coppery red, grimy off-white, worn terracotta brown, industrial dark gray, cool metallic silver-gray, deep steel blue-gray"
        },
        "1_22": {
          "atmosphere": "Gritty industrial metal textures, moderate depth of field with blurred background, noticeable atmospheric haze, dirty and worn surface qualities, tense and isolated mood",
          "lighting": "Key light from upper-right, slightly soft with cool temperature, strong cool blue ambient fill, bright practical cool blue light source in background, diffused shadows, subtle rim lighting on subject's right",
          "palette": "Deep industrial blue, gritty off-white, worn utility brown, rusty copper, emergency amber, dark metallic gray"
        },
        "1_23": {
          "atmosphere": "Worn industrial metallic textures, visible cables and pipes, moderate depth of field with soft background, faint cool blue atmospheric haze, brushed and matte metallic surface qualities, gritty and tense mood",
          "lighting": "Hard key light from upper-left, strong overhead light source, cool blue ambient fill, distinct metallic highlights, hard-edged shadows present on right side of character",
          "palette": "Deep industrial blue-gray, gritty metallic silver, warm rusted bronze, cool ambient blue, deep shadow black"
        },
        "1_24": {
          "atmosphere": "Worn textured metal and concrete surfaces, shallow depth of field with soft background bokeh, no visible atmospheric effects, dull metallic surfaces, dirty skin and fabric, gritty industrial mood",
          "lighting": "Key light from upper-right, soft with defined highlights, cool blue practical light from robot's eye acting as fill and rim, overall dim ambient light, diffused shadows",
          "palette": "deep industrial steel, gritty rust brown, emergency electric blue, fiery copper red, muted olive green"
        },
        "1_25": {
          "atmosphere": "Grimy industrial metal textures, shallow depth of field with soft background blur, no atmospheric effects, dry soiled surfaces, somber and isolated mood",
          "lighting": "Soft key light from upper-left, cool blue ambient fill from background, no visible practical light sources, soft-edged shadows on character's right side",
          "palette": "deep shadow black, cool steel blue, worn terracotta, gritty off-white, industrial gray"
        },
        "1_26": {
          "atmosphere": "Corroded metal structures and jagged rock formations, deep depth of field, dense luminous atmospheric haze, dry and rough surface qualities, vast and foreboding mood",
          "lighting": "Upward key light from distant lower-left, soft and diffused by atmosphere, icy blue color temperature, deep shadows blending into void, no visible practicals",
          "palette": "deep void black, icy blue luminescence, gritty industrial steel, rust-kissed bronze, damp cavern stone"
        },
        "1_27": {
          "atmosphere": "Worn and grimy metallic textures, shallow depth of field with main subject in sharp focus, no visible atmospheric effects, skin appears damp and dirty, confined and tense mood",
          "lighting": "Key light from upper-right, slightly hard quality, cool electric blue practical light from behind foreground character acting as rim and fill, small warm amber practical light on wrist device, defined shadows, overall low-key",
          "palette": "cool industrial gray, gritty beige, warm auburn, electric blue, deep void black"
        },
        "1_28": {
          "atmosphere": "Industrial metallic environment, shallow depth of field with heavy background bokeh, subtle dark atmospheric haze, smooth matte and brushed metal surface qualities, mysterious and powerful mood",
          "lighting": "Soft key light from slightly above and front, cool temperature, subtle diffused shadows, glowing electric blue practical light from eyes, faint cool white practical lights in blurred background",
          "palette": "cool ceramic gray, dark brushed steel, deep shadow black, electric blue, faint industrial white"
        },
        "1_29": {
          "atmosphere": "Gritty industrial textures, shallow depth of field with soft background bokeh, faint atmospheric haze, wet human skin and hair, semi-reflective metallic surfaces, tense and confined mood",
          "lighting": "Key light from front-left, mix of soft light on organic surfaces and hard reflections on metallic surfaces, dominant cool blue color temperature, electric blue practical light from robot's eye, small warm amber practical light on human's wrist, diffused shadows with cool blue fill",
          "palette": "deep steel blue, dull metallic gray, worn khaki, rusty copper, electric cyan"
        },
        "1_3": {
          "atmosphere": "Gritty corroded metal and concrete textures, shallow depth of field with sharp subject and blurred background, faint atmospheric haze, damp and slightly reflective surfaces, confined desolate industrial mood",
          "lighting": "Key light from overhead-front, cool white color temperature from practical fluorescent lights, hard light quality with defined shadows, subtle ambient fill preventing crushed blacks, highlights on damp surfaces",
          "palette": "Industrial steel gray, worn canvas khaki, corroded rust brown, cool fluorescent white, deep void black"
        },
        "1_30": {
          "atmosphere": "Grimy industrial metallic textures, shallow depth of field with sharp focus on human character, subtle atmospheric haze, damp skin texture, dull metallic reflections, tense and cold mood",
          "lighting": "Moderately soft key light from upper-left, intense electric blue practical light from robot's eye acting as fill, cool ambient light in background, shadows are present but not harsh",
          "palette": "cool industrial steel, vibrant electric blue, warm rust orange, pale cool skin, deep shadow black"
        },
        "1_31": {
          "atmosphere": "Gritty industrial environment, shallow depth of field with soft background bokeh, wet and dirty skin textures, worn and scratched metallic surfaces, oppressive and tense mood",
          "lighting": "Intense glowing electric blue practical light from cyborg's eyes, soft cool-toned key light from upper-left, blue light casts reflections on metallic surfaces and illuminates woman's face, soft shadows on skin, defined but not harsh shadows on metallic parts, dark background with minimal ambient light",
          "palette": "distressed steel gray, electric neon blue, sweaty human flesh, grimy deep teal, worn utility brown"
        },
        "1_33": {
          "atmosphere": "Gritty corroded metal textures, shallow depth of field with soft background blur, subtle cool atmospheric haze, dry weathered surfaces, tense industrial mood",
          "lighting": "Soft key light from front-right, cool blue ambient fill, soft diffused shadows, practical glowing amber light from wrist display, overall cool color temperature",
          "palette": "cool steel blue, industrial gray, worn rust orange, gritty canvas beige, emergency amber"
        },
        "1_34": {
          "atmosphere": "Grimy corroded metal textures, moderate depth of field with soft background, significant atmospheric haze, worn and damp surface qualities, tense industrial mood",
          "lighting": "Cool key light from upper-left, soft but defined shadows, strong cool blue ambient fill, warm amber practical lights in background, diffused shadow edges",
          "palette": "deep industrial blue, worn olive drab, emergency amber, gritty metallic steel, pale flesh"
        },
        "1_35": {
          "atmosphere": "Gritty and corroded metal textures, wet and grimy skin and hair, shallow depth of field with main subject in sharp focus and soft background blur, faint particulate matter in the air, tense and urgent mood",
          "lighting": "Cool white key light from upper-left, hard quality with defined shadows on the right side of the face, ambient cool blue fill light, small bright sparks visible in mid-background, wet surfaces reflect highlights sharply",
          "palette": "industrial steel gray, gritty earth brown, fiery copper orange, deep shadow black, cool ambient blue"
        },
        "1_36": {
          "atmosphere": "Grimy metallic structures, faint atmospheric haze with illuminated dust particles, deep depth of field with visible background elements, worn and textured surfaces, tense and dangerous mood.",
          "lighting": "Cool blue key light from above-left, hard shadows on right sides of characters and objects, minimal fill light creating deep contrast, practical orange glow from wrist device, bright yellow-orange sparks from broken cable.",
          "palette": "Deep steel blue, industrial rust, gritty off-white, emergency amber, abyssal black."
        },
        "1_4": {
          "atmosphere": "Corroded and wet metal textures, shallow depth of field with soft background bokeh, faint atmospheric haze, grimy and damp surface qualities, oppressive and desolate mood",
          "lighting": "Cool neutral key light from upper-left, soft shadows on subject's right side, cool teal ambient fill in background, glowing emergency amber practical light on wrist, wet surfaces create specular highlights",
          "palette": "Gritty industrial gray, rust and dried blood red, damp concrete beige, deep shadow black, emergency amber"
        },
        "1_5": {
          "atmosphere": "Gritty corroded metal and concrete textures, shallow depth of field with character in sharp focus, visible steam and atmospheric haze, wet reflective and grimy surface qualities, oppressive industrial mood",
          "lighting": "Key light from upper-left, cool white temperature, hard highlights on wet surfaces and hair, soft diffused shadows on character's right side, cool white fluorescent practical light on left wall, small warm amber practical light on wrist device",
          "palette": "Corroded steel gray, damp concrete off-white, deep rust brown, fiery copper red, cool sterile white"
        },
        "1_6": {
          "atmosphere": "Heavily textured and weathered metal structures, deep depth of field with atmospheric perspective, dense cool atmospheric haze, dry and rough surface qualities, oppressive and cold industrial mood",
          "lighting": "Cool blue-white key light from deep within the shaft, diffused by heavy atmospheric haze, soft but defined shadows on structural elements, deep shadow pockets, practical rectangular light source visible on left mid-distance",
          "palette": "corroded rust orange, dark industrial steel gray, icy blue-white, deep shadow black, muted teal"
        },
        "1_9": {
          "atmosphere": "Gritty industrial environment, shallow depth of field with soft background blur, subject's skin and hair are wet with visible water droplets, surfaces are grimy worn metal and dirty fabric, overall mood is intense and damp",
          "lighting": "Key light from upper-left, slightly hard quality, neutral to slightly warm temperature on subject, cool blue ambient fill from background, subtle cool rim light on subject's right side, shadows present but not extremely deep or harsh, no visible practical light sources",
          "palette": "fiery copper red, gritty industrial steel, dirty canvas beige, worn leather brown, deep steel blue"
        }
      },
      "path": "tartarus/state/visual/scene_locks.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 12.333999999999998,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "HTTP 422 at https://queue.fal.run/bytedance/seedance-2.0/requests/019e391d-dcd1-77b3-982e-9ead92595734: {\"detail\":[{\"type\":\"literal_error\",\"loc\":[\"body\",\"duration\"],\"msg\":\"Input should be 'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\",\"input\":\"3\",\"ctx\":{\"expected\":\"'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\"}}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_001_take018.png",
          "video_path": "renders/ep_001/_orphans/shot_001_take8.mp4"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_001_A_ENV"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_001_take018.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH01",
        "status": "video_failed",
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_001.png",
            "take_id": "EP001_SH01_T11195",
            "timestamp": 1773711195.8793259
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_001_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grimy hands, scarred knuckles, heavy metal salvage hook, prying copper wire. corroded metal con",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773711691.613673
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_001_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grimy hands, scarred knuckles, heavy metal salvage hook, prying copper wire. corroded metal con",
            "take_number": 2,
            "timestamp": 1773712223.8865511
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_001_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grimy hands, scarred knuckles, heavy metal salvage hook, prying copper wire. corroded metal con",
            "take_number": 3,
            "timestamp": 1773716979.366893
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_001_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grimy hands, scarred knuckles, heavy metal salvage hook, prying copper wire. corroded metal con",
            "rejected": true,
            "take_number": 4,
            "timestamp": 1773718290.102295
          }
        ],
        "updated_at": 1779074724.672343
      },
      "path": "tartarus/state/visual/shots/EP001_SH01.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.5899999999999999,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "<urlopen error unknown url type: fal-sdk>",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_002_take5.png",
          "video_path": "renders/ep_001/_orphans/shot_002_take1.mp4"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_002_A_JADE"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_002_take1.mp4",
        "pipeline": "still",
        "prompt_override": "OPUS TEST: hero shot at golden hour, two figures on a salt flat, 35mm anamorphic, shallow depth of field, dusty atmosphere, intense low sun.",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH02",
        "status": "video_failed",
        "strategies_tried": [
          "change_seed"
        ],
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_002.png",
            "take_id": "EP001_SH02_T11228",
            "timestamp": 1773711228.166917
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_002_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. welded gunmetal wrist device, glowing amber digital numbers, 50247. dark background, out of focus indu",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773711680.880447
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_002_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. welded gunmetal wrist device, glowing amber digital numbers, 50247. dark background, out of focus indu",
            "take_number": 2,
            "timestamp": 1773712227.514587
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_002_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. welded gunmetal wrist device, glowing amber digital numbers, 50247. dark background, out of focus indu",
            "rejected": true,
            "take_number": 3,
            "timestamp": 1773716971.787509
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_002_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. welded gunmetal wrist device, glowing amber digital numbers, 50247. dark background, out of focus indu",
            "rejected": true,
            "take_number": 4,
            "timestamp": 1773718290.7517598
          }
        ],
        "updated_at": 1777228602.5582159
      },
      "path": "tartarus/state/visual/shots/EP001_SH02.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 6.96305,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "Multi-shot submission failed: Invalid multi-shot payload: Need >= 2 shots, got 1",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_003_take5.png",
          "video_path": "renders/ep_001/_orphans/shot_003_take5.mp4"
        },
        "generation_metadata": {
          "pass_id": "single_take_test"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_003_take13.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH03",
        "status": "previs_generated",
        "strategies_tried": [
          "change_seed"
        ],
        "takes": [
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_003.png",
            "take_id": "EP001_SH03_T11263",
            "timestamp": 1773711263.662782
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_003_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, industrial respirator around neck, looking over shoulder. claustr",
            "take_number": 1,
            "timestamp": 1773711683.301553
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_003_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, industrial respirator around neck, looking over shoulder. claustr",
            "take_number": 2,
            "timestamp": 1773712229.153671
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_003_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, industrial respirator around neck, looking over shoulder. claustr",
            "take_number": 3,
            "timestamp": 1773716974.894028
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_003_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, industrial respirator around neck, looking over shoulder. claustr",
            "take_number": 4,
            "timestamp": 1773718285.012233
          }
        ],
        "updated_at": 1776728806.772852
      },
      "path": "tartarus/state/visual/shots/EP001_SH03.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.7630000000000001,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "fal.ai result fetch failed: fal.ai API error 422: {\"detail\":[{\"loc\":[\"body\"],\"msg\":\"Invalid reference index 1 for element. Only 0 elements provided.\",\"type\":\"input_value_error\",\"url\":\"https://docs.fal.ai/errors#input_value_error\",\"input\":1}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_004_take008.png",
          "video_path": "renders/ep_001/_orphans/shot_004_take3.mp4"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_002_A_JADE"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_004_take008.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH04",
        "status": "previs_approved",
        "strategies_tried": [
          "change_seed"
        ],
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_004.png",
            "take_id": "EP001_SH04_T11340",
            "timestamp": 1773711340.874389
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_004_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. calloused hands, fingerless leather gloves, fingers tapping sequentially. blurred metal grating backgroun",
            "take_number": 1,
            "timestamp": 1773712245.376287
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_004_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, eyes narrowed, scanning corridor. cramped corroded corridor, collapsed",
            "take_number": 2,
            "timestamp": 1773717025.663028
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_004_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, eyes narrowed, scanning corridor. cramped corroded corridor, collapsed",
            "take_number": 3,
            "timestamp": 1773718317.355445
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_004_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, eyes narrowed, scanning corridor. cramped corroded corridor, collapsed exit w",
            "take_number": 4,
            "timestamp": 1773719046.466517
          }
        ],
        "updated_at": 1776728806.774536
      },
      "path": "tartarus/state/visual/shots/EP001_SH04.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 7.574049999999998,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "start_frame_critic ERROR: StartFrameCritic vision check failed: [Errno 8] nodename nor servname provided, or not known",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_005_take007.png",
          "video_path": "renders/ep_001/TARTARUS_EP001_PASS_000_SH5_SOLO_ENV_unknown_take12.mp4"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_002_A_JADE"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/TARTARUS_EP001_PASS_000_SH5_SOLO_ENV_unknown_take12.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH05",
        "status": "video_complete",
        "takes": [
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_005.png",
            "take_id": "EP001_SH05_T11366",
            "timestamp": 1773711366.9966981
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_005_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, reddish-brown hair, respirator around neck, speaking. dark in",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773711703.1795928
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_005_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, reddish-brown hair, respirator around neck, speaking. dark in",
            "rejected": true,
            "take_number": 2,
            "timestamp": 1773712276.99896
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_005_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, reddish-brown hair, respirator around neck, speaking. dark in",
            "take_number": 3,
            "timestamp": 1773717001.412884
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_005_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, reddish-brown hair, respirator around neck, speaking. dark in",
            "take_number": 4,
            "timestamp": 1773718319.6632771
          }
        ],
        "updated_at": 1779245426.055596
      },
      "path": "tartarus/state/visual/shots/EP001_SH05.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 3.8748,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "start_frame_critic ERROR: StartFrameCritic vision check failed: [Errno 8] nodename nor servname provided, or not known",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_005a_take3_31434.png",
          "video_path": "renders/ep_001/TARTARUS_EP001_PASS_000_SH5a_SOLO_ENV_unknown_take9.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/TARTARUS_EP001_PASS_000_SH5a_SOLO_ENV_unknown_take9.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH05A",
        "status": "video_complete",
        "takes": [
          {
            "authored_prompt": "",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_005a_take1_13526.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The image depicts an environment; there are no human or animal subjects to evaluate for anatomical errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene, not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent with the scene; there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773723721.628324,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773723721.627639,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_1_13526",
            "take_num": 1
          },
          {
            "authored_prompt": "I have generated the previz frame for EP001_SH05A. This 9:16 vertical insert shot captures the newly revealed dark tunnel entrance, with the metal catwalk leading into the cavernous shaft. The lighting setup adheres to your spatial continuity constraints, featuring a cool hard light from the corridor on the left and a soft blue glow from the depths of the abyss. The industrial grime and corroded textures match the location moodboard. I will now proceed with the next shot in the sequence.",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_005a_take2_32302.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "There are no living subjects in the image, so anatomical errors are not applicable."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene, not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773782937.506773,
            "prompt": "I have generated the previz frame for EP001_SH05A. This 9:16 vertical insert shot captures the newly revealed dark tunnel entrance, with the metal catwalk leading into the cavernous shaft. The lighting setup adheres to your spatial continuity constraints, featuring a cool hard light from the corridor on the left and a soft blue glow from the depths of the abyss. The industrial grime and corroded textures match the location moodboard. I will now proceed with the next shot in the sequence.",
            "spatial_compliance": {
              "checked_at": 1773782937.506767,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_2_32302",
            "take_num": 2
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_005a_take3_31434.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "n/a"
                },
                "black_frame": {
                  "pass": true,
                  "reason": "n/a"
                },
                "color": {
                  "pass": true,
                  "reason": "n/a"
                },
                "resolution": {
                  "pass": true,
                  "reason": "n/a"
                },
                "watermark": {
                  "pass": true,
                  "reason": "n/a"
                }
              },
              "passed": true
            },
            "generated_at": 1773783043.078551,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773783043.0785348,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "AWAY",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_3_31434",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_005a_take4_98195.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs or severe distortions."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773783507.70074,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773783507.700711,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_4_98195",
            "take_num": 4
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_005a_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. Newly revealed dark tunnel entrance, metal catwalk, cavernous shaft beyond. corroded wall, sliding pan",
            "take_number": 4,
            "timestamp": 1773867330.891603
          }
        ],
        "updated_at": 1779245665.88841
      },
      "path": "tartarus/state/visual/shots/EP001_SH05A.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.38999999999999996,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'ProjectPaths' object has no attribute 'previs_dir'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_006_take1.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_006_take7.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH06",
        "status": "previs_generated",
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_006.png",
            "take_id": "EP001_SH06_T11387",
            "timestamp": 1773711387.8378391
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_006_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive vertical maintenance shaft, bottomless abyss, anchor cables. cavernous industrial archi",
            "take_number": 1,
            "timestamp": 1773711708.154177
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_006_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive vertical maintenance shaft, bottomless abyss, anchor cables. cavernous industrial archi",
            "take_number": 2,
            "timestamp": 1773712247.6099699
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_006_take4_67656.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "There are no human or animal figures in the image, so anatomical errors are not applicable."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image contains a detailed scene and is not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent with the scene, and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has sufficient detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773715476.218915,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773715476.2189062,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_4_67656",
            "take_num": 4
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_006_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive vertical maintenance shaft, bottomless abyss, anchor cables. cavernous industrial archi",
            "take_number": 4,
            "timestamp": 1773716997.498344
          }
        ],
        "updated_at": 1773881357.861237
      },
      "path": "tartarus/state/visual/shots/EP001_SH06.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.351,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'ProjectPaths' object has no attribute 'previs_dir'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_007_take007.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_007_take007.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH07",
        "status": "previs_generated",
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_007.png",
            "take_id": "EP001_SH07_T11420",
            "timestamp": 1773711420.346943
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_007_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. heavy brushed steel cryo-pod, suspended by thick anchor cables. vast dark maintenance shaft, bottomless ",
            "take_number": 1,
            "timestamp": 1773711705.023357
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_007_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. heavy brushed steel cryo-pod, suspended by thick anchor cables. vast dark maintenance shaft, bottomless ",
            "take_number": 2,
            "timestamp": 1773712263.55411
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_007_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. heavy brushed steel cryo-pod, suspended by thick anchor cables. vast dark maintenance shaft, bottomless ",
            "take_number": 3,
            "timestamp": 1773717020.3884952
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_007_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. heavy brushed steel cryo-pod, suspended by thick anchor cables. vast dark maintenance shaft, bottomless ",
            "take_number": 4,
            "timestamp": 1773718328.476031
          }
        ],
        "updated_at": 1773882707.22898
      },
      "path": "tartarus/state/visual/shots/EP001_SH07.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.351,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'ProjectPaths' object has no attribute 'previs_dir'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_008_take4.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_008_take6.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH08",
        "status": "previs_generated",
        "takes": [
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_008.png",
            "take_id": "EP001_SH08_T11446",
            "timestamp": 1773711446.74562
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_008_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel surface, stamped military serial numbers, frost-covered glass viewport. close u",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773711714.583744
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_008_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel surface, stamped military serial numbers, frost-covered glass viewport. close u",
            "rejected": true,
            "take_number": 2,
            "timestamp": 1773712271.199887
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_008_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel surface, stamped military serial numbers, frost-covered glass viewport. close u",
            "take_number": 3,
            "timestamp": 1773717016.745588
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_008_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel surface, stamped military serial numbers, frost-covered glass viewport. close u",
            "take_number": 4,
            "timestamp": 1773718335.2296479
          }
        ],
        "updated_at": 1773881404.870295
      },
      "path": "tartarus/state/visual/shots/EP001_SH08.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.5070499999999999,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'ProjectPaths' object has no attribute 'previs_dir'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_009_take11_22152.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_009_take11.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH09",
        "status": "previs_generated",
        "takes": [
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_009.png",
            "take_id": "EP001_SH09_T11472",
            "timestamp": 1773711472.117673
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_009_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, staring intently, fingers frozen mid-count. edge of a dark abyss, blurred bac",
            "take_number": 1,
            "timestamp": 1773711736.667511
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_009_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, staring intently, fingers frozen mid-count. edge of a dark abyss, blurred bac",
            "take_number": 2,
            "timestamp": 1773712323.483486
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_009_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, staring intently, completely still. edge of a dark abyss, blurred background.",
            "take_number": 3,
            "timestamp": 1773717036.7830322
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_009_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, staring intently, completely still. edge of a dark abyss, blurred background.",
            "take_number": 4,
            "timestamp": 1773718335.923051
          }
        ],
        "updated_at": 1774480322.402894
      },
      "path": "tartarus/state/visual/shots/EP001_SH09.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 5.17505,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "start_frame_critic ERROR: StartFrameCritic vision check failed: GEMINI_API_KEY or GOOGLE_API_KEY not set",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_010_take15_12717.png",
          "video_path": "renders/ep_001/EP001_SH10_take18.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/EP001_SH10_take18.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH10",
        "status": "video_complete",
        "takes": [
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_010.png",
            "take_id": "EP001_SH10_T11498",
            "timestamp": 1773711498.880487
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_010_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, respirator around neck, smirking. edge of the maintenance sha",
            "take_number": 1,
            "timestamp": 1773711719.4385788
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_010_take2.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, respirator around neck, smirking. edge of the maintenance sha",
            "take_number": 2,
            "timestamp": 1773712292.698667
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_010_take3.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, respirator around neck, smirking. edge of the maintenance sha",
            "take_number": 3,
            "timestamp": 1773717035.884404
          },
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_010_take4.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, respirator around neck, smirking. edge of the maintenance sha",
            "take_number": 4,
            "timestamp": 1773718410.013772
          }
        ],
        "updated_at": 1779485539.441979
      },
      "path": "tartarus/state/visual/shots/EP001_SH10.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.35105,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_011_take9_8463.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_011_take9_8463.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH11",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_011_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Full shot, 35mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. young woman in cargo pants and steel-toed boots, stepping onto a thick anchor cable. vast dark ",
            "take_number": 1,
            "timestamp": 1773867428.697403
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_011_take002.png",
            "take_id": "EP001_SH11_T81471",
            "timestamp": 1773881471.088724
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_011_take3_72405.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": ""
                },
                "black_frame": {
                  "pass": true,
                  "reason": ""
                },
                "color": {
                  "pass": true,
                  "reason": ""
                },
                "resolution": {
                  "pass": true,
                  "reason": ""
                },
                "watermark": {
                  "pass": true,
                  "reason": ""
                }
              },
              "passed": true
            },
            "generated_at": 1773895481.301808,
            "prompt": "(flash-authored)",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773895481.3018,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_72405",
            "take_num": 3
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_011_take4_37488.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The color rendering is smooth and consistent, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773895946.7895942,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895946.78958,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_37488",
            "take_num": 4
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_011_take5_30282.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and consistent, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773896239.3318222,
            "prompt": "(flash-authored)",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773896239.3318121,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "AWAY",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_5_30282",
            "take_num": 5
          }
        ],
        "updated_at": 1773897918.524865
      },
      "path": "tartarus/state/visual/shots/EP001_SH11.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.712,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "HTTP 422 at https://queue.fal.run/bytedance/seedance-2.0/requests/019e3ba7-7167-7443-a2a2-8ccf8ee46fa4: {\"detail\":[{\"type\":\"literal_error\",\"loc\":[\"body\",\"aspect_ratio\"],\"msg\":\"Input should be 'auto', '21:9', '16:9', '4:3', '1:1', '3:4' or '9:16'\",\"input\":\"9_16\",\"ctx\":{\"expected\":\"'auto', '21:9', '16:9', '4:3', '1:1', '3:4' or '9:16'\"}}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_012_take5_7580.png",
          "video_path": "renders/ep_001/shot_012_take6.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_012_take6.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH12",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_012_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. scuffed steel-toed work boots, balancing on a thick steel cable. bottomless dark abyss, swirling dust. To",
            "take_number": 1,
            "timestamp": 1773867443.357217
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_012_take002.png",
            "take_id": "EP001_SH12_T81495",
            "timestamp": 1773881495.383631
          },
          {
            "authored_prompt": "<truncated:blob>",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_012_take3_92330.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy is correct for a bust portrait; there are no severe errors like extra limbs or merged parts."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773895501.446523,
            "prompt": "<truncated:blob>",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773895501.446503,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "AWAY",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_92330",
            "take_num": 3
          },
          {
            "authored_prompt": "<truncated:blob>",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_012_take4_41822.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs or severe distortions."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait, not a black or empty frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and realistic for the scene, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773896950.5971599,
            "prompt": "<truncated:blob>",
            "spatial_compliance": {
              "checked_at": 1773896950.597141,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_41822",
            "take_num": 4
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_012_take5_7580.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy is correct, with no extra limbs or merged parts."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks or logos."
                }
              },
              "passed": true
            },
            "generated_at": 1773897916.308515,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773897916.308504,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "AWAY",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_5_7580",
            "take_num": 5
          }
        ],
        "updated_at": 1779117726.234476
      },
      "path": "tartarus/state/visual/shots/EP001_SH12.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.11699999999999999,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_013_take3_87301.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_013_take3_87301.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH13",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_013_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grimy hands in fingerless gloves, reaching for a brushed steel release panel. frost-covered cryo",
            "take_number": 1,
            "timestamp": 1773867463.536999
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_013_take002.png",
            "take_id": "EP001_SH13_T81519",
            "timestamp": 1773881519.998867
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_013_take3_87301.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no severe errors like extra limbs or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and do not show extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773895496.4411662,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895496.441143,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got LEFT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_3_87301",
            "take_num": 3
          }
        ],
        "updated_at": 1773895539.91101
      },
      "path": "tartarus/state/visual/shots/EP001_SH13.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.195,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_014_take3_34799.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_014_take3_34799.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH14",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_014_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Insert shot, 85mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. heavy metal salvage hook, wedged into a steel seam, gloved hands twisting. brushed steel cry",
            "take_number": 1,
            "timestamp": 1773867484.451339
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_014_take002.png",
            "rejected": true,
            "take_id": "EP001_SH14_T81546",
            "timestamp": 1773881546.7545578
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_014_take3_34799.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs or merged parts."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773884344.015477,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773884344.0154638,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got LEFT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_3_34799",
            "take_num": 3
          },
          {
            "authored_prompt": "<truncated:blob>",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_014_take4_97234.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy is correct with no extra limbs or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and there is no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks or logos."
                }
              },
              "passed": true
            },
            "generated_at": 1773895509.546597,
            "prompt": "<truncated:blob>",
            "spatial_compliance": {
              "checked_at": 1773895509.546572,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_4_97234",
            "take_num": 4
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_014_take5_26793.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The hands and arms are anatomically correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and do not show extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773897036.006099,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773897036.006078,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "NOT_APPLICABLE",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_5_26793",
            "take_num": 5
          }
        ],
        "updated_at": 1773897056.6211112
      },
      "path": "tartarus/state/visual/shots/EP001_SH14.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.786,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_015_take4_45197.png",
          "video_path": "renders/ep_001/_orphans/shot_015_take1.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_015_take1.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH15",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_015_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel cryo-pod, opening seam, thick white cryogenic fog. dark maintenance shaft, bottomless vo",
            "take_number": 1,
            "timestamp": 1773867499.1991382
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_015_take002.png",
            "take_id": "EP001_SH15_T81566",
            "timestamp": 1773881566.035608
          },
          {
            "authored_prompt": "",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_015_take3_15917.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The image depicts a mechanical object, so anatomical errors are not applicable. The structure is coherent."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed rendering of a sci-fi object and is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773895521.5723882,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895521.572383,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_3_15917",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "I have generated the previz frame for EP001_SH15, capturing the eerie reveal of the cryo-pod.\n\n**Shot Evaluation:**\n*   **Framing & Composition:** The image adheres to the 9:16 vertical aspect ratio. The heavy brushed steel cryo-pod is centered as requested, suspended by chains and cables.\n*   **Action & Atmosphere:** Thick white fog is spilling from the pod\u2019s seams and curling downward into the darkness, effectively conveying the 'cold release' and 'eerie reveal' requested in the action description.\n*   **Environment Consistency:** The background accurately reflects the *int_lower_decks_maintenance_shaft* with its complex network of metal grating, struts, and abyssal depth, synthesizing elements from the moodboard.\n*   **Lighting:** The blue practical light from the cryo-pod\u2019s interior is prominent, and the primary key light is correctly positioned on screen-left, casting shadows to the right.\n\nI will now proceed with the next shot in the sequence.",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_015_take4_45197.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "There are no human or animal figures in the image, so anatomical errors are not applicable."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773897951.956578,
            "prompt": "I have generated the previz frame for EP001_SH15, capturing the eerie reveal of the cryo-pod.\n\n**Shot Evaluation:**\n*   **Framing & Composition:** The image adheres to the 9:16 vertical aspect ratio. The heavy brushed steel cryo-pod is centered as requested, suspended by chains and cables.\n*   **Action & Atmosphere:** Thick white fog is spilling from the pod\u2019s seams and curling downward into the darkness, effectively conveying the 'cold release' and 'eerie reveal' requested in the action description.\n*   **Environment Consistency:** The background accurately reflects the *int_lower_decks_maintenance_shaft* with its complex network of metal grating, struts, and abyssal depth, synthesizing elements from the moodboard.\n*   **Lighting:** The blue practical light from the cryo-pod\u2019s interior is prominent, and the primary key light is correctly positioned on screen-left, casting shadows to the right.\n\nI will now proceed with the next shot in the sequence.",
            "spatial_compliance": {
              "checked_at": 1773897951.9565399,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_4_45197",
            "take_num": 4
          },
          {
            "cost_usd": 0.63,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_015_take1.mp4",
            "gate_verdict": null,
            "inputs_snapshot": null,
            "model": "kling-v3",
            "parent_take_id": "take_4_45197",
            "pipeline": "video",
            "prompt_used": "Medium shot. The pod HISSES open. Fog spills out and curls downward into the void. dense volumetric fog pouring downward, turbulent fluid dynamics, static framing. || Sound: loud pneumatic hiss, heavy metal latch disengaging, wind howling.",
            "take_number": 4,
            "timestamp": 1774474322.4534059
          }
        ],
        "updated_at": 1774474322.454067
      },
      "path": "tartarus/state/visual/shots/EP001_SH15.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 2.6222000000000003,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "Sequential shot failed: HTTP 422 at https://queue.fal.run/bytedance/seedance-2.0/requests/019e4919-499d-70a1-976c-e69e0629113f: {\"detail\":[{\"loc\":[\"body\",\"generated_video\"],\"msg\":\"Output video has sensitive content.\",\"type\":\"content_policy_violation\",\"url\":\"https://docs.fal.ai/errors#content_policy_violation\",\"ctx\":{\"extra_info\":{\"reason\":\"partner_validation_failed\"}},\"input\":{\"prompt\":\"Medium shot, pushing in. The fog clears. A massive armored figure fills the pod interior. fog dissipating to reveal sharp details, slow ominous push in, static subject.\",\"resolution\":\"720p\",\"duration\":\"4\",\"aspect_ratio\":\"9:16\",\"generate_audio\":true,\"seed\":null,\"end_user_id\":null}}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_016_take5_45740.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_016_take5_45740.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH16",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_016_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive military-grade android chassis, dark gunmetal grey brushed steel, dormant. inside an ",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867525.3251998
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_016_take002.png",
            "rejected": true,
            "take_id": "EP001_SH16_T81592",
            "timestamp": 1773881592.267924
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_016_take003.png",
            "take_id": "EP001_SH16_T84013",
            "timestamp": 1773884013.995608
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_016_take4_54774.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure in the armor has correct proportions and no severe anatomical errors like extra limbs or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773885663.09094,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773885663.090919,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_4_54774",
            "take_num": 4
          },
          {
            "approved": true,
            "authored_prompt": "I have generated the previz frame for EP001_SH16. While the character design and the specific lighting from the cryo-pod are accurate to the reference materials, I must point out a deviation regarding the spatial continuity instructions. The prompt requested that the character be angled toward screen-right with lead room on that side; however, the generated image features a centered, frontal composition. I will proceed with the next shot while ensuring stricter adherence to framing and orientation constraints.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_016_take5_45740.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The figure's anatomy, including the visible face and hands, is correct and well-proportioned within the armor."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and appropriate for the scene, with no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773897953.5816069,
            "prompt": "I have generated the previz frame for EP001_SH16. While the character design and the specific lighting from the cryo-pod are accurate to the reference materials, I must point out a deviation regarding the spatial continuity instructions. The prompt requested that the character be angled toward screen-right with lead room on that side; however, the generated image features a centered, frontal composition. I will proceed with the next shot while ensuring stricter adherence to framing and orientation constraints.",
            "spatial_compliance": {
              "checked_at": 1773897953.581602,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_5_45740",
            "take_num": 5
          }
        ],
        "updated_at": 1779382926.6563041
      },
      "path": "tartarus/state/visual/shots/EP001_SH16.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 2.5831999999999997,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "Sequential shot failed: HTTP 422 at https://queue.fal.run/bytedance/seedance-2.0/requests/019e4b7c-be96-7dc1-a04d-2147898e8f71: {\"detail\":[{\"type\":\"literal_error\",\"loc\":[\"body\",\"duration\"],\"msg\":\"Input should be 'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\",\"input\":\"3\",\"ctx\":{\"expected\":\"'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\"}}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_017_take4_17506.png",
          "video_path": "renders/ep_001/EP001_SH17_take5.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/EP001_SH17_take5.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH17",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_017_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. broad shoulders of a military android, seamless alloy plating, dark gunmetal grey. crampe",
            "take_number": 1,
            "timestamp": 1773867539.551497
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_017_take002.png",
            "take_id": "EP001_SH17_T81612",
            "timestamp": 1773881612.8188689
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_017_take3_53722.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure in the armor has correct anatomy and a natural pose."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed illustration and not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and appropriate for the scene, with no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773884362.291809,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773884362.291792,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_53722",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_017_take4_17506.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure in the armor has correct and consistent anatomy with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed illustration and is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and well-rendered, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays. The text present is part of the in-universe design."
                }
              },
              "passed": true
            },
            "generated_at": 1773895526.4795651,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895526.4795399,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "CAMERA",
                  "horizontal_position": "LEFT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren: expected CENTER, got LEFT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_4_17506",
            "take_num": 4
          },
          {
            "cost_usd": 1.517,
            "disposition": null,
            "file_path": "renders/ep_001/EP001_SH17_take5.mp4",
            "gate_verdict": null,
            "inputs_snapshot": null,
            "model": "seeddance-2.0",
            "parent_take_id": null,
            "pipeline": "video",
            "prompt_used": "@Image1 as the first frame. The subject in @Image1 A dark gunmetal combat chassis \u2014 shoulders wider than the pod should allow \u2014 presses against the walls. Tilting. Interior of a vast spaceship maintenance shaft \u2014 a vertical cathedral of corroded industrial architecture. Metal grating platforms jut from the walls at irregular intervals. Thick anchor cables stretch across the void. The shaft drops into bottomless darkness below \u2014 wind howls up from the abyss. Overhead, rusted ceiling struts disappear into shadow. Condensation drips from exposed pipe runs. Amber emergency lights cast harsh directional shadows across corroded surfaces. A frost-covered cryo-pod hangs from anchor cables at mid-height. Faint blue ambient glow from the depths below. Same person as @Image1. Do not alter facial proportions, eye shape, or hairstyle. No music, no score.",
            "take_number": 5,
            "timestamp": 1779416744.753205
          }
        ],
        "updated_at": 1779416744.755074
      },
      "path": "tartarus/state/visual/shots/EP001_SH17.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.0272000000000001,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "Sequential shot failed: HTTP 422 at https://queue.fal.run/bytedance/seedance-2.0/requests/019e4b7c-c176-74a0-a9b1-317020efa962: {\"detail\":[{\"type\":\"literal_error\",\"loc\":[\"body\",\"duration\"],\"msg\":\"Input should be 'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\",\"input\":\"3\",\"ctx\":{\"expected\":\"'auto', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14' or '15'\"}}]}",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_018_take3_18065.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_018_take3_18065.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH18",
        "status": "video_failed",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_018_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. reinforced android joints, heavy mechanical hands, matte light grey synthetic skin elements. dar",
            "take_number": 1,
            "timestamp": 1773867558.739786
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_018_take002.png",
            "take_id": "EP001_SH18_T81642",
            "timestamp": 1773881642.168894
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_018_take3_18065.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure in armor has correct anatomy and a natural pose."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed render and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and free of banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution with fine details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895527.3993118,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895527.399303,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_18065",
            "take_num": 3
          }
        ],
        "updated_at": 1779382928.289341
      },
      "path": "tartarus/state/visual/shots/EP001_SH18.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.234,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_019_take6_25446.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_019_take6_25446.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH19",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_019_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. synthetic face, rigid features, eyes snapping open. pitch black background. Wren: Massive milita",
            "take_number": 1,
            "timestamp": 1773867584.2909708
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_019_take2_11938.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The cyborg anatomy is coherent and well-rendered without severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait and not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The color palette is intentional and free of corruption or banding."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773873521.7239811,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773873521.7239769,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_2_11938",
            "take_num": 2
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_019_take003.png",
            "take_id": "EP001_SH19_T81667",
            "timestamp": 1773881667.511245
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_019_take004.png",
            "take_id": "EP001_SH19_T84044",
            "timestamp": 1773884044.127452
          },
          {
            "authored_prompt": "This ECU successfully captures the intensity of the scene. The character's face is a precise match to the hero reference, and the helmet details are consistent. The requested blue hard light from the eyes is executed perfectly, creating the desired 'terrifying life' effect against the pitch-black background. The spatial continuity is maintained with the gaze directed slightly left and the key light coming from the camera-left. I will now proceed to generate the next shot in the sequence.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_019_take5_50556.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The facial features and armor structure are anatomically coherent for a close-up portrait."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait and is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rich and detailed, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, showing fine details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays are present."
                }
              },
              "passed": true
            },
            "generated_at": 1773885659.071821,
            "prompt": "This ECU successfully captures the intensity of the scene. The character's face is a precise match to the hero reference, and the helmet details are consistent. The requested blue hard light from the eyes is executed perfectly, creating the desired 'terrifying life' effect against the pitch-black background. The spatial continuity is maintained with the gaze directed slightly left and the key light coming from the camera-left. I will now proceed to generate the next shot in the sequence.",
            "spatial_compliance": {
              "checked_at": 1773885659.071816,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_5_50556",
            "take_num": 5
          }
        ],
        "updated_at": 1773895533.0118651
      },
      "path": "tartarus/state/visual/shots/EP001_SH19.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.2731,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_020_take6_21660.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_020_take6_21660.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH20",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_020_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. glowing electric blue eyes, solid light, no distinction between iris and pupil. macro d",
            "take_number": 1,
            "timestamp": 1773867603.951348
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_020_take2_8274.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The cyborg's anatomy is consistent and well-rendered, with no severe errors or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed close-up of a cyborg face and is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and appropriate for the scene, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, showing skin texture and mechanical details clearly."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773873517.5592651,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773873517.559245,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_2_8274",
            "take_num": 2
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_020_take003.png",
            "take_id": "EP001_SH20_T81689",
            "timestamp": 1773881689.6951559
          },
          {
            "cost": 0.07805,
            "file_path": "sequences/ep_001/shot_020_take004.png",
            "take_id": "EP001_SH20_T84090",
            "timestamp": 1773884090.349757
          },
          {
            "authored_prompt": "I have generated the previz frame for EP001_SH20. The image captures Wren in an Extreme Close-Up (ECU) with a 100mm lens, centered in the frame. His face is positioned forward, staring directly into the camera with the requested piercing, inhuman focus. The lighting is dominated by the intense blue hard light emanating from his eyes, casting cool highlights on his weathered skin and the detailed, rusted textures of his blue helmet and armor. The background is a blurred industrial maintenance shaft, providing context without distraction. The aspect ratio is 9:16 vertical as specified.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_020_take5_56116.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The visible anatomy of the face and the structure of the armor are coherent and free of severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait and is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rich and detailed, with no signs of extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with fine details visible."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773885665.188257,
            "prompt": "I have generated the previz frame for EP001_SH20. The image captures Wren in an Extreme Close-Up (ECU) with a 100mm lens, centered in the frame. His face is positioned forward, staring directly into the camera with the requested piercing, inhuman focus. The lighting is dominated by the intense blue hard light emanating from his eyes, casting cool highlights on his weathered skin and the detailed, rusted textures of his blue helmet and armor. The background is a blurred industrial maintenance shaft, providing context without distraction. The aspect ratio is 9:16 vertical as specified.",
            "spatial_compliance": {
              "checked_at": 1773885665.188246,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_5_56116",
            "take_num": 5
          }
        ],
        "updated_at": 1773895585.245492
      },
      "path": "tartarus/state/visual/shots/EP001_SH20.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.15605000000000002,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_021_take4_28627.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_021_take4_28627.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH21",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_021_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. scuffed steel-toed boots, slipping off a thick steel cable. dark abyss below. Jade: Late 20s, ",
            "take_number": 1,
            "timestamp": 1773867620.235928
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_021_take002.png",
            "take_id": "EP001_SH21_T81718",
            "timestamp": 1773881718.368171
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_021_take3_8659.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct with no severe errors like extra limbs or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895617.137616,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895617.1376069,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got LEFT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_3_8659",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_021_take4_28627.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy, including the hands and pose, is realistic and correct."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and consistent, with no corruption or banding."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773897937.80782,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773897937.8078022,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got LEFT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_4_28627",
            "take_num": 4
          }
        ],
        "updated_at": 1773897937.811799
      },
      "path": "tartarus/state/visual/shots/EP001_SH21.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.195,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_022_take5_58133.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_022_take5_58133.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH22",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_022_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, illuminated by blue light, clinging to balance. dark maintenance shaft",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867636.224895
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_022_take002.png",
            "rejected": true,
            "take_id": "EP001_SH22_T81739",
            "timestamp": 1773881739.3186932
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_022_take3_48758.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The subject's anatomy is correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773885659.071279,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773885659.071268,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_48758",
            "take_num": 3
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_022_take4_88452.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895697.8943949,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895697.894382,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_88452",
            "take_num": 4
          },
          {
            "approved": true,
            "authored_prompt": "I have generated the previz frame for EP001_SH22. The image accurately captures the medium close-up of Jade in the maintenance shaft, adhering to the 9:16 vertical aspect ratio. The character's appearance, including the specific hairstyle and wardrobe, is consistent with the hero reference. The lighting setup correctly utilizes a cool blue hard light from camera-right, creating the specified atmosphere. Jade's expression of dry exhaustion and gallows humor is well-rendered, with her gaze directed slightly to the right as requested. The industrial background elements align with the location moodboard. I will now present this image to the user.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_022_take5_58133.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the subject is correct and natural."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image has good resolution and clarity."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773897965.414294,
            "prompt": "I have generated the previz frame for EP001_SH22. The image accurately captures the medium close-up of Jade in the maintenance shaft, adhering to the 9:16 vertical aspect ratio. The character's appearance, including the specific hairstyle and wardrobe, is consistent with the hero reference. The lighting setup correctly utilizes a cool blue hard light from camera-right, creating the specified atmosphere. Jade's expression of dry exhaustion and gallows humor is well-rendered, with her gaze directed slightly to the right as requested. The industrial background elements align with the location moodboard. I will now present this image to the user.",
            "spatial_compliance": {
              "checked_at": 1773897965.4142861,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_5_58133",
            "take_num": 5
          }
        ],
        "updated_at": 1773897965.416356
      },
      "path": "tartarus/state/visual/shots/EP001_SH22.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.251,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_023_take3_7739.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_023_take3_7739.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH23",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_023_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive android arm, dark gunmetal grey, grabbing a thick steel cable. edge of the cryo-pod, ",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867655.3610072
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_023_take002.png",
            "take_id": "EP001_SH23_T81763",
            "timestamp": 1773881763.016605
          },
          {
            "approved": true,
            "authored_prompt": "I have generated the previz frame for EP001_SH23. The shot captures Wren in a medium shot, positioned screen-center and angled toward the right as requested. His right hand is poised to catch the swinging cable, with his gaze locked onto it, while his left arm rests at his side. The blue hard light from the cryo-pod interior provides the primary illumination, casting shadows to the right and highlighting the weathered textures of his armor and the industrial environment. The 9:16 vertical composition maintains the necessary lead room on the right side of the frame.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_023_take3_7739.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene, not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and well-rendered, with no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays. The text on the console is part of the scene's texture."
                }
              },
              "passed": true
            },
            "generated_at": 1773885916.560578,
            "prompt": "I have generated the previz frame for EP001_SH23. The shot captures Wren in a medium shot, positioned screen-center and angled toward the right as requested. His right hand is poised to catch the swinging cable, with his gaze locked onto it, while his left arm rests at his side. The blue hard light from the cryo-pod interior provides the primary illumination, casting shadows to the right and highlighting the weathered textures of his armor and the industrial environment. The 9:16 vertical composition maintains the necessary lead room on the right side of the frame.",
            "spatial_compliance": {
              "checked_at": 1773885916.560561,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_7739",
            "take_num": 3
          },
          {
            "cost_usd": 1.134,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_023_take1.mp4",
            "model": "kling-v3",
            "multi_prompt_shots": 3,
            "parent_take_id": "take_3_7739",
            "pipeline": "multi_shot",
            "prompt_used": "[Medium shot, panning. lightning fast grab, crushin] | [Medium close-up, handheld. Wren's other hand grips] | [Close-up, tilting. dangling helplessly, legs kicki]",
            "take_number": 3,
            "timestamp": 1774476586.8514402,
            "total_duration": 9
          }
        ],
        "updated_at": 1774476586.8518589
      },
      "path": "tartarus/state/visual/shots/EP001_SH23.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.8250000000000001,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_024_take4_30698.png",
          "video_path": "renders/ep_001/_orphans/shot_024_take1.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_024_take5.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH24",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_024_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive synthetic hand gripping a young woman's throat, lifting her. dark maintenance sh",
            "take_number": 1,
            "timestamp": 1773867672.196032
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_024_take002.png",
            "rejected": true,
            "take_id": "EP001_SH24_T81785",
            "timestamp": 1773881785.556372
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_024_take3_14209.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The human anatomy is correct, and the mechanical structure of the robot is consistent and well-rendered. The interaction between the two is physically plausible."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene, not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rich and detailed, with no signs of banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details on textures."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895623.7086809,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895623.70867,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_3_14209",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_024_take4_30698.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both the human and the robot is consistent and free of severe errors like extra limbs or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773898042.668153,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773898042.668132,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_4_30698",
            "take_num": 4
          },
          {
            "cost_usd": 0.63,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_024_take1.mp4",
            "gate_verdict": null,
            "inputs_snapshot": null,
            "model": "kling-v3",
            "parent_take_id": "take_4_30698",
            "pipeline": "video",
            "prompt_used": "Medium close-up, handheld. Wren's other hand grips Jade's throat. violent impact shake, motion blur on hand entering frame, sudden rigid stop. || Sound: heavy impact, sharp gasp, fabric tearing, wind howling.",
            "take_number": 4,
            "timestamp": 1774474323.681487
          }
        ],
        "updated_at": 1774480339.804254
      },
      "path": "tartarus/state/visual/shots/EP001_SH24.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.195,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_025_take5_34291.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_025_take5_34291.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH25",
        "status": "previs_approved",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_025_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. scuffed steel-toed boots, kicking in the air, lifting off metal grating. bottomless dark abyss. ",
            "take_number": 1,
            "timestamp": 1773867689.038548
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_025_take002.png",
            "rejected": true,
            "take_id": "EP001_SH25_T81804",
            "timestamp": 1773881804.66227
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_025_take3_14813.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs or severe distortions."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait and not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The color gradients are smooth, and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895621.466897,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895621.466878,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_3_14813",
            "take_num": 3
          },
          {
            "authored_prompt": "This previz frame accurately captures the character Jade, maintaining strong facial and costume consistency with the hero reference. The pose effectively conveys the requested action of lifting off the grating with arms floating, and the head is correctly tilted down. The lighting matches the specified blue soft light from the abyss. While the framing leans slightly wider than a strict close-up, it is necessary to establish the spatial relationship with the grating and the abyss, making it a successful previz shot. I will show the image to the user.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_025_take4_2937.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has a high level of detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773895711.529192,
            "prompt": "This previz frame accurately captures the character Jade, maintaining strong facial and costume consistency with the hero reference. The pose effectively conveys the requested action of lifting off the grating with arms floating, and the head is correctly tilted down. The lighting matches the specified blue soft light from the abyss. While the framing leans slightly wider than a strict close-up, it is necessary to establish the spatial relationship with the grating and the abyss, making it a successful previz shot. I will show the image to the user.",
            "spatial_compliance": {
              "checked_at": 1773895711.529174,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_2937",
            "take_num": 4
          },
          {
            "approved": true,
            "authored_prompt": "I have generated a 9:16 vertical previz frame for EP001_SH25. The image captures Jade in a close-up, positioned screen-center and profiling right, with her head tilted down toward the metal grating below. Her arms are floating slightly outward, conveying a loss of gravity. The environment is the int_lower_decks_maintenance_shaft, featuring a bottomless dark abyss with visible anchor cables and ceiling struts. The lighting is a soft blue light from the abyss depths, acting as the key light from camera-left and casting soft shadows to the right. The depth of field is shallow, rendering the background elements in a soft blur. The overall mood is somber and isolated, capturing a moment of helpless struggle. The frame has negative space on the screen-right side.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_025_take5_34291.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The character's anatomy is correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773898042.040411,
            "prompt": "I have generated a 9:16 vertical previz frame for EP001_SH25. The image captures Jade in a close-up, positioned screen-center and profiling right, with her head tilted down toward the metal grating below. Her arms are floating slightly outward, conveying a loss of gravity. The environment is the int_lower_decks_maintenance_shaft, featuring a bottomless dark abyss with visible anchor cables and ceiling struts. The lighting is a soft blue light from the abyss depths, acting as the key light from camera-left and casting soft shadows to the right. The depth of field is shallow, rendering the background elements in a soft blur. The overall mood is somber and isolated, capturing a moment of helpless struggle. The frame has negative space on the screen-right side.",
            "spatial_compliance": {
              "checked_at": 1773898042.0403898,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "AWAY",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_5_34291",
            "take_num": 5
          }
        ],
        "updated_at": 1776261660.9275038
      },
      "path": "tartarus/state/visual/shots/EP001_SH25.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.156,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_026_take4_43088.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_026_take4_43088.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH26",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_026_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. vast empty maintenance shaft, bottomless drop, structural ribs fading into black. cavernous ind",
            "take_number": 1,
            "timestamp": 1773867702.039076
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_026_take002.png",
            "take_id": "EP001_SH26_T81825",
            "timestamp": 1773881825.181319
          },
          {
            "authored_prompt": "This previz frame accurately captures the terrifying scale of the bottomless chasm as described. The vertical 9:16 aspect ratio emphasizes the depth, and the blue lighting from the depths effectively conveys the required mood. The industrial architecture and jagged walls align well with the visual bible and reference material. I will proceed with the next shot in the sequence.",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_026_take3_9696.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The image depicts a mechanical/industrial structure; there are no anatomical elements to evaluate."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a dark, atmospheric scene but contains significant detail and lighting, not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The color palette is consistent and appropriate for the scene, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773885815.4593558,
            "prompt": "This previz frame accurately captures the terrifying scale of the bottomless chasm as described. The vertical 9:16 aspect ratio emphasizes the depth, and the blue lighting from the depths effectively conveys the required mood. The industrial architecture and jagged walls align well with the visual bible and reference material. I will proceed with the next shot in the sequence.",
            "spatial_compliance": {
              "checked_at": 1773885815.459348,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_3_9696",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_026_take4_43088.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "There are no people or animals in the image, so anatomical errors are not applicable."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and do not show extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773898047.7956438,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773898047.795634,
              "cost": 0.0,
              "extracted": [],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skip_reason": "env_or_no_chars",
              "skipped": true
            },
            "take_id": "take_4_43088",
            "take_num": 4
          }
        ],
        "updated_at": 1773898047.798392
      },
      "path": "tartarus/state/visual/shots/EP001_SH26.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 2.7600000000000002,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'Unknown model: kling-v3. Available: gemini-3-pro-image-preview, gemini-3.1-flash-image-preview, gemini-2.5-flash-image, kling-2.5, seeddance-2.0, kling-3.0, kling-3.0-fal, kling-v3-fal, kling-o3-fal, veo-3.1-generate-preview, veo-3.1, kling-o3, hunyuan-video-1.5'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_027_take3_39828.png"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_013_A_WREN"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_027_take3_39828.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH27",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_027_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. synthetic face staring intently, glowing blue eyes, reflecting on a struggling woman's face. dark backgro",
            "take_number": 1,
            "timestamp": 1773867718.260907
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_027_take002.png",
            "rejected": true,
            "take_id": "EP001_SH27_T81850",
            "timestamp": 1773881850.467594
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_027_take3_39828.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the human figure is correct, and the mechanical structure of the robot is consistent."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773890148.7711391,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773890148.771125,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_3_39828",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_027_take4_48290.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the characters appears correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and do not show corruption or extreme banding."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has good resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773898056.401073,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773898056.40105,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "BACKGROUND",
                  "facing": "CAMERA",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_4_48290",
            "take_num": 4
          },
          {
            "cost_usd": 0.672,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_027_take1.mp4",
            "model": "kling-3.0-fal",
            "multi_prompt_shots": 2,
            "parent_take_id": "take_4_48290",
            "pipeline": "multi_shot",
            "prompt_used": "[Close-up. eyes darting in micro-movements, scannin] | [Medium close-up, pushing in. stiff vocalization, p]",
            "take_number": 4,
            "timestamp": 1774155484.7530959,
            "total_duration": 8
          }
        ],
        "updated_at": 1774282377.041089
      },
      "path": "tartarus/state/visual/shots/EP001_SH27.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.918,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'Unknown model: kling-v3. Available: gemini-3-pro-image-preview, gemini-3.1-flash-image-preview, gemini-2.5-flash-image, kling-2.5, seeddance-2.0, kling-3.0, kling-3.0-fal, kling-v3-fal, kling-o3-fal, veo-3.1-generate-preview, veo-3.1, kling-o3, hunyuan-video-1.5'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_028_take4_53693.png"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_013_A_WREN"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_028_take4_53693.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH28",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_028_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive military android, glowing blue eyes, synthetic skin, speaking. dark maintenance s",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867738.306802
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_028_take002.png",
            "rejected": true,
            "take_id": "EP001_SH28_T81870",
            "timestamp": 1773881870.3785799
          },
          {
            "authored_prompt": "This previz frame accurately captures the character Wren with high fidelity to the hero reference and the specific scene requirements. The spatial continuity is correct, positioning Wren screen-center and facing left with appropriate negative space. The lighting from the camera-left aligns with the prompt and creates the requested mood. The environment effectively utilizes the moodboard's palette and atmosphere without literal reproduction. I will now present this image to the user.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_028_take3_57474.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure and armor are anatomically correct with no severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed portrait and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and realistic, with no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, showing fine details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773884265.828212,
            "prompt": "This previz frame accurately captures the character Wren with high fidelity to the hero reference and the specific scene requirements. The spatial continuity is correct, positioning Wren screen-center and facing left with appropriate negative space. The lighting from the camera-left aligns with the prompt and creates the requested mood. The environment effectively utilizes the moodboard's palette and atmosphere without literal reproduction. I will now present this image to the user.",
            "spatial_compliance": {
              "checked_at": 1773884265.828172,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "CAMERA",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren is looking directly at camera",
                  "flag": "LENS_CONTACT",
                  "severity": "WARNING"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_3_57474",
            "take_num": 3
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_028_take4_53693.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The humanoid figure and mechanical armor are anatomically correct and well-proportioned."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773898063.710575,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773898063.710565,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_53693",
            "take_num": 4
          },
          {
            "cost_usd": 0.25,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_028_take1.mp4",
            "model": "veo-3.1",
            "parent_take_id": "take_4_53693",
            "pipeline": "sequence_sequential",
            "prompt_used": "Medium close-up, pushing in. stiff vocalization, processing pause, unblinking stare. slow push in, rigid posture, jaw moving with mechanical precision.",
            "take_number": 4,
            "timestamp": 1774155346.592614,
            "total_duration": 5
          }
        ],
        "updated_at": 1774190825.526484
      },
      "path": "tartarus/state/visual/shots/EP001_SH28.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 8.393,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "'Unknown model: kling-v3. Available: gemini-3-pro-image-preview, gemini-3.1-flash-image-preview, gemini-2.5-flash-image, kling-2.5, seeddance-2.0, kling-3.0, kling-3.0-fal, kling-v3-fal, kling-o3-fal, veo-3.1-generate-preview, veo-3.1, kling-o3, hunyuan-video-1.5'",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_029_take7_32749.png",
          "video_path": "renders/ep_001/_orphans/shot_029_take6.mp4"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_013_A_WREN"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_029_take6.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH29",
        "status": "previs_approved",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_029_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive android holding a young woman by the throat over a void. dark maintenance shaft. Wren: Massive",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867776.001538
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_029_take002.png",
            "take_id": "EP001_SH29_T81891",
            "timestamp": 1773881891.437344
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_029_take3_24445.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both characters is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895634.289828,
            "prompt": "(flash-authored)",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773895634.28981,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_3_24445",
            "take_num": 3
          },
          {
            "authored_prompt": "I have generated the previz frame for EP001_SH29. The image accurately depicts the medium shot with the 50mm lens, capturing the tense interaction between Wren and Jade in the maintenance shaft. I have followed the spatial continuity instructions by placing Wren's blurred shoulder and back of head in the foreground, screen-left, and Jade in the background, center, in sharp focus, facing camera-left. The lighting setup, with the blue hard light from Wren's android eyes as the key light from camera-left, is also rendered correctly. The character poses and expressions, with Wren gripping Jade's throat and Jade gripping Wren's forearm, convey the intended uncanny valley and helpless suspension. The environment details match the location moodboard. I will now proceed to generate the next shot in the sequence.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_029_take4_15201.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the human and the robots is correct, with no extra limbs or merged parts."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and there is no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and has high detail."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773895723.738475,
            "prompt": "I have generated the previz frame for EP001_SH29. The image accurately depicts the medium shot with the 50mm lens, capturing the tense interaction between Wren and Jade in the maintenance shaft. I have followed the spatial continuity instructions by placing Wren's blurred shoulder and back of head in the foreground, screen-left, and Jade in the background, center, in sharp focus, facing camera-left. The lighting setup, with the blue hard light from Wren's android eyes as the key light from camera-left, is also rendered correctly. The character poses and expressions, with Wren gripping Jade's throat and Jade gripping Wren's forearm, convey the intended uncanny valley and helpless suspension. The environment details match the location moodboard. I will now proceed to generate the next shot in the sequence.",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773895723.7384572,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                },
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "GENERATION_FAILURE",
              "flags": [
                {
                  "detail": "Wren: expected LEFT, got RIGHT",
                  "flag": "PROMPT_MISMATCH",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Wren: expected FOREGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_4_15201",
            "take_num": 4
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_029_take5_52679.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both characters, including the complex hand interactions, is rendered correctly without severe errors."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene, not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and appropriate for the scene, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773898061.013237,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773898061.013222,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_5_52679",
            "take_num": 5
          }
        ],
        "updated_at": 1774305140.214849
      },
      "path": "tartarus/state/visual/shots/EP001_SH29.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.7500500000000001,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_030_take002.png"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_013_A_WREN"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_030_take002.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH30",
        "status": "video_complete",
        "strategies_tried": [
          "change_seed"
        ],
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_030_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, massive synthetic hand around her throat, speaking. dark background. T",
            "take_number": 1,
            "timestamp": 1773867803.7004192
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_030_take002.png",
            "take_id": "EP001_SH30_T81924",
            "timestamp": 1773881924.903612
          },
          {
            "cost_usd": 0.672,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_030_take1.mp4",
            "model": "kling-v3",
            "multi_prompt_shots": 2,
            "parent_take_id": "EP001_SH30_T81924",
            "pipeline": "multi_shot",
            "prompt_used": "[Medium close-up. gasping for air, defiant glare, h] | [Close-up, pushing in. fingers adjusting grip, prec]",
            "take_number": 2,
            "timestamp": 1774190690.537817,
            "total_duration": 8
          }
        ],
        "updated_at": 1776706288.593299
      },
      "path": "tartarus/state/visual/shots/EP001_SH30.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.156,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_031_take4_97453.png"
        },
        "generation_metadata": {
          "pass_id": "EP001_PASS_013_A_WREN"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_031_take4_97453.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH31",
        "status": "previs_approved",
        "strategies_tried": [
          "change_seed"
        ],
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_031_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 100mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive synthetic fingers pressing against a grimy human neck, feeling the pulse. macro detail ",
            "rejected": true,
            "take_number": 1,
            "timestamp": 1773867826.103302
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_031_take2_99175.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The human and robotic anatomy is coherent and correctly rendered."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are natural and without corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are visible."
                }
              },
              "passed": true
            },
            "generated_at": 1773873509.357244,
            "prompt": "(flash-authored)",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773873509.357213,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_2_99175",
            "take_num": 2
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_031_take003.png",
            "take_id": "EP001_SH31_T81956",
            "timestamp": 1773881956.2443361
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_031_take4_97453.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The human figure has correct anatomy and proportions. The robot's structure is coherent. No severe errors like extra limbs or merged parts are present."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene, not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without extreme banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773895806.70291,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773895806.7029,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "UNKNOWN",
              "flags": [
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got FOREGROUND",
                  "flag": "DEPTH_INVERSION",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_4_97453",
            "take_num": 4
          }
        ],
        "updated_at": 1776706288.5959911
      },
      "path": "tartarus/state/visual/shots/EP001_SH31.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 4.2330499999999995,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": "fal.ai Kling job fefea45b2312 timed out after 1200s",
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_032_take003.png",
          "video_path": "renders/ep_001/_orphans/shot_032_take9.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_032_take9.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH32",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_032_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive military android, glowing blue eyes, synthetic skin, speaking. dark maintenance shaft. Wre",
            "take_number": 1,
            "timestamp": 1773867851.400338
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_032_take002.png",
            "rejected": true,
            "take_id": "EP001_SH32_T81983",
            "timestamp": 1773881983.149641
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_032_take003.png",
            "take_id": "EP001_SH32_T83354",
            "timestamp": 1773883354.387586
          },
          {
            "cost_usd": 0.252,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_032_take1.mp4",
            "gate_verdict": null,
            "model": "kling-v3",
            "parent_take_id": "EP001_SH32_T83354",
            "pipeline": "video",
            "prompt_used": "Insert. Cable fibers snap one by one, pod groans and tilts, frost particles shake loose into the void below.",
            "take_number": 3,
            "timestamp": 1774246488.315808
          },
          {
            "cost_usd": 0.252,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_032_take2.mp4",
            "gate_verdict": null,
            "model": "kling-v3",
            "parent_take_id": "EP001_SH32_T83354",
            "pipeline": "video",
            "prompt_used": "Static close-up. Cable strands fray and separate one by one, steel fibers curling outward from taut to broken, while the cryo-pod frame slowly tilts sideways beneath.",
            "take_number": 4,
            "timestamp": 1774246541.5300748
          }
        ],
        "updated_at": 1774474321.189706
      },
      "path": "tartarus/state/visual/shots/EP001_SH32.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 3.2680499999999997,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_033_take6_1947.png",
          "video_path": "renders/ep_001/EP001_SH33_take8.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/EP001_SH33_take8.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH33",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_033_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. glowing electric blue eyes, synthetic face. pitch black background. Wren: Massive milit",
            "take_number": 1,
            "timestamp": 1773867868.524678
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_033_take002.png",
            "rejected": true,
            "take_id": "EP001_SH33_T82024",
            "timestamp": 1773882024.7620218
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_033_take003.png",
            "rejected": true,
            "take_id": "EP001_SH33_T83384",
            "timestamp": 1773883384.511426
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_033_take4_73584.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both characters is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent and realistic for the scene, with no banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks, logos, or text overlays are visible. The text on the door is part of the scene."
                }
              },
              "passed": true
            },
            "generated_at": 1773884283.665731,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773884283.665717,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Jade: expected BACKGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_4_73584",
            "take_num": 4
          },
          {
            "authored_prompt": "<truncated:blob>",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_033_take5_22080.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "There are no biological subjects in the image, so anatomy checks are not applicable."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The color palette is consistent and appropriate for the scene, with no extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, with no signs of blurriness or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays. The text on the metal beam is part of the scene's texture."
                }
              },
              "passed": true
            },
            "generated_at": 1773890331.3372438,
            "prompt": "<truncated:blob>",
            "spatial_compliance": {
              "checked_at": 1773890331.3372228,
              "cost": 0.01,
              "extracted": [],
              "failure_attribution": "GENERATION_FAILURE",
              "flags": [
                {
                  "detail": "Wren not found in frame",
                  "flag": "MISSING_CHARACTER",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Jade not found in frame",
                  "flag": "MISSING_CHARACTER",
                  "severity": "VIOLATION"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "VIOLATION",
              "skipped": false
            },
            "take_id": "take_5_22080",
            "take_num": 5
          }
        ],
        "updated_at": 1779414536.622953
      },
      "path": "tartarus/state/visual/shots/EP001_SH33.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 4.005999999999999,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_034_take4_20354.png",
          "video_path": "renders/ep_001/_orphans/shot_034_take10.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "renders/ep_001/shot_034_take10.mp4",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "EP001_SH34",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_034_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive android hand gripping a thick steel anchor cable. heavy brushed steel cryo-pod shifti",
            "take_number": 1,
            "timestamp": 1773867888.958316
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_034_take002.png",
            "take_id": "EP001_SH34_T82059",
            "timestamp": 1773882059.1254349
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_034_take003.png",
            "take_id": "EP001_SH34_T83418",
            "timestamp": 1773883418.5066938
          },
          {
            "approved": true,
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_034_take4_20354.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both figures is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a fully rendered scene, not black or empty."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are rendered correctly without banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and high-resolution, with clear details."
                },
                "watermark": {
                  "pass": true,
                  "reason": "There are no visible watermarks, logos, or text overlays."
                }
              },
              "passed": true
            },
            "generated_at": 1773891032.525522,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773891032.525496,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Wren: expected FOREGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Jade: expected CENTER, got RIGHT",
                  "flag": "POSITION_DRIFT",
                  "severity": "INFO"
                },
                {
                  "detail": "Jade: expected BACKGROUND, got SAME_PLANE",
                  "flag": "DEPTH_FLATTENED",
                  "severity": "WARNING"
                },
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "WARNING",
              "skipped": false
            },
            "take_id": "take_4_20354",
            "take_num": 4
          },
          {
            "cost_usd": 0.63,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_034_take1.mp4",
            "gate_verdict": null,
            "model": "kling-v3",
            "parent_take_id": "take_4_20354",
            "pipeline": "video",
            "prompt_used": "Medium shot, tilting. Wren pulls them up the cable hand over hand, hydraulic chassis straining, Jade gripping his shoulder plate, catwalk railing visible above. Sound: wind howling, massive metallic groan, steel cables screaming under tension, heavy thud. Ambient sound only.",
            "take_number": 4,
            "timestamp": 1774285334.7642
          }
        ],
        "updated_at": 1778187156.1817348
      },
      "path": "tartarus/state/visual/shots/EP001_SH34.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 4.25705,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_035_take8_18613.png",
          "manual_escalated": true,
          "manual_escalated_at": 1773932415.37136,
          "video_path": "renders/ep_001/_orphans/shot_035_take7.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_035_take15.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH35",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_035_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm, handheld. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. thick steel anchor bolts tearing out of metal ceiling struts. dark maintenance shaft ceiling. C",
            "take_number": 1,
            "timestamp": 1773867910.665808
          },
          {
            "cost": 0.03905,
            "file_path": "sequences/ep_001/shot_035_take002.png",
            "take_id": "EP001_SH35_T82101",
            "timestamp": 1773882101.097483
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_035_take003.png",
            "take_id": "EP001_SH35_T83447",
            "timestamp": 1773883447.787582
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_035_take4_45937.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of the figures is correct, with no extra limbs, merged parts, or impossible poses."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is not entirely or mostly black."
                },
                "color": {
                  "pass": true,
                  "reason": "The color palette is consistent and does not show extreme banding, posterization, or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No visible watermarks, logos, or text overlays were detected."
                }
              },
              "passed": true
            },
            "generated_at": 1773883755.712202,
            "prompt": "(flash-authored)",
            "rejected": true,
            "spatial_compliance": {
              "checked_at": 1773883755.712182,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_4_45937",
            "take_num": 4
          },
          {
            "authored_prompt": "I have generated the previz frame for EP001_SH35. The image captures Jade in a tight 9:16 vertical composition, maintaining strict adherence to the visual references for her appearance, including the short reddish-brown hair, freckles, and the specific rebreather and debt counter props. The pose aligns with the spatial continuity instructions, showing her gripping the metal grating and Wren's shoulder armor while looking off-frame to the left. The lighting provides the requested cool industrial tone with defined shadows. I will now proceed with the next shot in the sequence.",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_035_take5_29855.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "n/a"
                },
                "black_frame": {
                  "pass": true,
                  "reason": "n/a"
                },
                "color": {
                  "pass": true,
                  "reason": "n/a"
                },
                "resolution": {
                  "pass": true,
                  "reason": "n/a"
                },
                "watermark": {
                  "pass": true,
                  "reason": "n/a"
                }
              },
              "passed": true
            },
            "generated_at": 1773884337.395421,
            "prompt": "I have generated the previz frame for EP001_SH35. The image captures Jade in a tight 9:16 vertical composition, maintaining strict adherence to the visual references for her appearance, including the short reddish-brown hair, freckles, and the specific rebreather and debt counter props. The pose aligns with the spatial continuity instructions, showing her gripping the metal grating and Wren's shoulder armor while looking off-frame to the left. The lighting provides the requested cool industrial tone with defined shadows. I will now proceed with the next shot in the sequence.",
            "spatial_compliance": {
              "checked_at": 1773884337.395385,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "CENTER"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [],
              "human_override": false,
              "severity": "PASS",
              "skipped": false
            },
            "take_id": "take_5_29855",
            "take_num": 5
          }
        ],
        "updated_at": 1774480357.23567
      },
      "path": "tartarus/state/visual/shots/EP001_SH35.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.273,
        "coverage_of": null,
        "episode_id": "EP001",
        "error_message": null,
        "gate_results": {
          "hero_frame": "sequences/ep_001/shot_036_take6_81821.png"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "gemini-3.1-flash-image-preview",
        "output_path": "sequences/ep_001/shot_036_take6_81821.png",
        "pipeline": "still",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP001_SH36",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_001/shot_036_take1.png",
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, suspended by her throat, laughing sharply. dark abyss backgro",
            "take_number": 1,
            "timestamp": 1773867925.3278122
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_036_take002.png",
            "take_id": "EP001_SH36_T82126",
            "timestamp": 1773882126.823751
          },
          {
            "cost": 0.039,
            "file_path": "sequences/ep_001/shot_036_take003.png",
            "take_id": "EP001_SH36_T83473",
            "timestamp": 1773883473.5372212
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_036_take4_91319.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "The anatomy of both figures appears correct, with no extra limbs or severe distortions."
                },
                "black_frame": {
                  "pass": true,
                  "reason": "The image is a detailed scene and not a black frame."
                },
                "color": {
                  "pass": true,
                  "reason": "The colors are consistent with the scene's lighting and do not show extreme banding or corruption."
                },
                "resolution": {
                  "pass": true,
                  "reason": "The image is sharp and detailed, not blurry or low resolution."
                },
                "watermark": {
                  "pass": true,
                  "reason": "No watermarks or logos are detected. The text on the pod is part of the scene's design."
                }
              },
              "passed": true
            },
            "generated_at": 1773883903.6383739,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773883903.638349,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "SAME_PLANE",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_4_91319",
            "take_num": 4
          },
          {
            "authored_prompt": "",
            "cost": 0.049,
            "file_path": "sequences/ep_001/shot_036_take5_81225.png",
            "gate_1": {
              "cost": 0.039,
              "details": {
                "anatomy": {
                  "pass": true,
                  "reason": "n/a"
                },
                "black_frame": {
                  "pass": true,
                  "reason": "n/a"
                },
                "color": {
                  "pass": true,
                  "reason": "n/a"
                },
                "resolution": {
                  "pass": true,
                  "reason": "n/a"
                },
                "watermark": {
                  "pass": true,
                  "reason": "n/a"
                }
              },
              "passed": true
            },
            "generated_at": 1773884389.5571651,
            "prompt": "(flash-authored)",
            "spatial_compliance": {
              "checked_at": 1773884389.557151,
              "cost": 0.01,
              "extracted": [
                {
                  "character_name": "Wren",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-RIGHT",
                  "horizontal_position": "LEFT"
                },
                {
                  "character_name": "Jade",
                  "depth": "FOREGROUND",
                  "facing": "SCREEN-LEFT",
                  "horizontal_position": "RIGHT"
                }
              ],
              "failure_attribution": "NONE",
              "flags": [
                {
                  "detail": "Previous shot not available for continuity check",
                  "flag": "CONTINUITY_UNCHECKED_MISSING_PREV",
                  "severity": "INFO"
                }
              ],
              "human_override": false,
              "severity": "INFO",
              "skipped": false
            },
            "take_id": "take_5_81225",
            "take_num": 5
          }
        ],
        "updated_at": 1773891032.990388
      },
      "path": "tartarus/state/visual/shots/EP001_SH36.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_001_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH01",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_001_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:19:56.151084Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 01 | EP002_SH01 **>>> CURRENT <<<** | ECU | WREN | int_lower_decks_maintenance_shaft | mechanical hand, brushed steel plating, reinforced joints |\n| 02 | EP002_SH02 | MS | JADE | int_lower_decks_maintenance_shaft | woman in heavy canvas jacket, cargo pants |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_maintena",
                  "text": "## ENVIRONMENT: int_lower_decks_maintenance_shaft\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: bottomless abyss, anchor cables, ceiling struts, howling wind, metal grating"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. mechanical hand, brushed steel plating, reinforced joints. Edge of a vast spaceship maintenance ",
            "take_number": 1,
            "timestamp": 1774480810.217115
          }
        ],
        "updated_at": 1774480810.217819
      },
      "path": "tartarus/state/visual/shots/EP002_SH01.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_002_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH02",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_002_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:20:10.219859Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 01 | EP002_SH01 | ECU | WREN | int_lower_decks_maintenance_shaft | mechanical hand, brushed steel plating, reinforced joints |\n| 02 | EP002_SH02 **>>> CURRENT <<<** | MS | JADE | int_lower_decks_maintenance_shaft | woman in heavy canvas jacket, cargo pants |\n| 03 | EP002_SH03 | LS |  | int_lower_decks_maintenance_shaft | brushed steel cryo-pod, heavy anchor cables |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_maintena",
                  "text": "## ENVIRONMENT: int_lower_decks_maintenance_shaft\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: bottomless abyss, anchor cables, ceiling struts, howling wind, metal grating"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket, cargo pants. Edge of a vast spaceship maintenance shaft. Metal ",
            "take_number": 1,
            "timestamp": 1774480826.568219
          }
        ],
        "updated_at": 1774480826.5688589
      },
      "path": "tartarus/state/visual/shots/EP002_SH02.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_003_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH03",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_003_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:20:26.572139Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_maintenance_shaft\nbottomless abyss, anchor cables, ceiling struts, howling wind, metal grating\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 02 | EP002_SH02 | MS | JADE | int_lower_decks_maintenance_shaft | woman in heavy canvas jacket, cargo pants |\n| 03 | EP002_SH03 **>>> CURRENT <<<** | LS |  | int_lower_decks_maintenance_shaft | brushed steel cryo-pod, heavy anchor cables |\n| 04 | EP002_SH04 | MS | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_maintena",
                  "text": "## ENVIRONMENT: int_lower_decks_maintenance_shaft\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: bottomless abyss, anchor cables, ceiling struts, howling wind, metal grating"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Prop reference: CRYO_POD",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 24mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. brushed steel cryo-pod, heavy anchor cables. Edge of a vast spaceship maintenance shaft. Metal ",
            "take_number": 1,
            "timestamp": 1774480845.475894
          }
        ],
        "updated_at": 1774480845.4762418
      },
      "path": "tartarus/state/visual/shots/EP002_SH03.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_004_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH04",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_004_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:20:45.477610Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 03 | EP002_SH03 | LS |  | int_lower_decks_maintenance_shaft | brushed steel cryo-pod, heavy anchor cables |\n| 04 | EP002_SH04 **>>> CURRENT <<<** | MS | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |\n| 05 | EP002_SH05 | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis, scarred alloy. Interior of a grimy spaceship lower-deck corridor. Corroded met",
            "take_number": 1,
            "timestamp": 1774480870.290265
          }
        ],
        "updated_at": 1774480870.290941
      },
      "path": "tartarus/state/visual/shots/EP002_SH04.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_005_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH05",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_005_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:21:10.293214Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 04 | EP002_SH04 | MS | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |\n| 05 | EP002_SH05 **>>> CURRENT <<<** | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |\n| 06 | EP002_SH06 | MCU | WREN | int_lower_decks_corridor | massive combat chassis, reinforced joints |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. mechanical optics, brushed steel facial plating. Interior of a grimy spaceship lower-deck corrido",
            "take_number": 1,
            "timestamp": 1774480883.3479471
          }
        ],
        "updated_at": 1774480883.3487291
      },
      "path": "tartarus/state/visual/shots/EP002_SH05.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_006_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH06",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_006_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:21:23.352371Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 05 | EP002_SH05 | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |\n| 06 | EP002_SH06 **>>> CURRENT <<<** | MCU | WREN | int_lower_decks_corridor | massive combat chassis, reinforced joints |\n| 07 | EP002_SH07 | CU | JADE | int_lower_decks_corridor | woman's face, dirt-smudged skin |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- back view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- front view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis, reinforced joints. Interior of a grimy spaceship lower-deck corridor. Corr",
            "take_number": 1,
            "timestamp": 1774480903.7090838
          }
        ],
        "updated_at": 1774480903.709727
      },
      "path": "tartarus/state/visual/shots/EP002_SH06.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_007_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH07",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_007_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:21:43.711847Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 06 | EP002_SH06 | MCU | WREN | int_lower_decks_corridor | massive combat chassis, reinforced joints |\n| 07 | EP002_SH07 **>>> CURRENT <<<** | CU | JADE | int_lower_decks_corridor | woman's face, dirt-smudged skin |\n| 08 | EP002_SH08 | MCU | JADE | int_lower_decks_corridor | woman looking over shoulder |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman's face, dirt-smudged skin. Interior of a grimy spaceship lower-deck corridor. Corroded metal gratin",
            "take_number": 1,
            "timestamp": 1774480928.4506948
          }
        ],
        "updated_at": 1774480928.4515882
      },
      "path": "tartarus/state/visual/shots/EP002_SH07.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_008_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH08",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_008_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:22:08.454247Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 07 | EP002_SH07 | CU | JADE | int_lower_decks_corridor | woman's face, dirt-smudged skin |\n| 08 | EP002_SH08 **>>> CURRENT <<<** | MCU | JADE | int_lower_decks_corridor | woman looking over shoulder |\n| 09 | EP002_SH09 | CU | JADE | int_lower_decks_corridor | grime-streaked young woman, eyes narrowing in calculation |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- front view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman looking over shoulder. Interior of a grimy spaceship lower-deck corridor. Corroded ",
            "take_number": 1,
            "timestamp": 1774480943.036574
          }
        ],
        "updated_at": 1774480943.0373418
      },
      "path": "tartarus/state/visual/shots/EP002_SH08.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_009_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH09",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_009_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:22:23.039317Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 08 | EP002_SH08 | MCU | JADE | int_lower_decks_corridor | woman looking over shoulder |\n| 09 | EP002_SH09 **>>> CURRENT <<<** | CU | JADE | int_lower_decks_corridor | grime-streaked young woman, eyes narrowing in calculation |\n| 10 | EP002_SH10 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. grime-streaked young woman, eyes narrowing in calculation. Interior of a grimy spaceship lower-deck corri",
            "take_number": 1,
            "timestamp": 1774480953.837905
          }
        ],
        "updated_at": 1774480953.838662
      },
      "path": "tartarus/state/visual/shots/EP002_SH09.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_010_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH10",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_010_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:22:33.841277Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 09 | EP002_SH09 | CU | JADE | int_lower_decks_corridor | grime-streaked young woman, eyes narrowing in calculation |\n| 10 | EP002_SH10 **>>> CURRENT <<<** | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 11 | EP002_SH11 | WS |  | int_lower_decks_corridor | empty corridor |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- back view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- front view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gratin",
            "take_number": 1,
            "timestamp": 1774480980.186317
          }
        ],
        "updated_at": 1774480980.18682
      },
      "path": "tartarus/state/visual/shots/EP002_SH10.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_011_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH11",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_011_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:23:00.189620Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 10 | EP002_SH10 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 11 | EP002_SH11 **>>> CURRENT <<<** | WS |  | int_lower_decks_corridor | empty corridor |\n| 12 | EP002_SH12 | MS |  | int_lower_decks_corridor | four-rotor drone, spinning sensor array, municipal markings |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with vis",
            "take_number": 1,
            "timestamp": 1774480999.884674
          }
        ],
        "updated_at": 1774480999.886035
      },
      "path": "tartarus/state/visual/shots/EP002_SH11.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_012_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH12",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_012_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:23:19.889112Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 11 | EP002_SH11 | WS |  | int_lower_decks_corridor | empty corridor |\n| 12 | EP002_SH12 **>>> CURRENT <<<** | MS |  | int_lower_decks_corridor | four-rotor drone, spinning sensor array, municipal markings |\n| 13 | EP002_SH13 | MCU | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. four-rotor drone, spinning sensor array, municipal markings. Interior of a grimy spaceship lo",
            "take_number": 1,
            "timestamp": 1774481012.7781498
          }
        ],
        "updated_at": 1774481012.778781
      },
      "path": "tartarus/state/visual/shots/EP002_SH12.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_013_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH13",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_013_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:23:32.780845Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 12 | EP002_SH12 | MS |  | int_lower_decks_corridor | four-rotor drone, spinning sensor array, municipal markings |\n| 13 | EP002_SH13 **>>> CURRENT <<<** | MCU | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |\n| 14 | EP002_SH14 | CU | WREN | int_lower_decks_corridor | mechanical face, brushed steel plating |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis, scarred alloy. Interior of a grimy spaceship lower-deck corridor. Corroded",
            "take_number": 1,
            "timestamp": 1774481027.7928479
          }
        ],
        "updated_at": 1774481027.793664
      },
      "path": "tartarus/state/visual/shots/EP002_SH13.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_014_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH14",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_014_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:23:47.796161Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 13 | EP002_SH13 | MCU | WREN | int_lower_decks_corridor | massive combat chassis, scarred alloy |\n| 14 | EP002_SH14 **>>> CURRENT <<<** | CU | WREN | int_lower_decks_corridor | mechanical face, brushed steel plating |\n| 15 | EP002_SH15 | MS | WREN | int_lower_decks_corridor | massive combat chassis destroying drone |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. mechanical face, brushed steel plating. Interior of a grimy spaceship lower-deck corridor. Corroded meta",
            "take_number": 1,
            "timestamp": 1774481047.379018
          }
        ],
        "updated_at": 1774481047.379384
      },
      "path": "tartarus/state/visual/shots/EP002_SH14.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_015_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH15",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_015_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:24:07.381026Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 14 | EP002_SH14 | CU | WREN | int_lower_decks_corridor | mechanical face, brushed steel plating |\n| 15 | EP002_SH15 **>>> CURRENT <<<** | MS | WREN | int_lower_decks_corridor | massive combat chassis destroying drone |\n| 16 | EP002_SH16 | INSERT |  | int_lower_decks_corridor | destroyed drone chassis |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis destroying drone. Interior of a grimy spaceship lower-deck corridor. Corroded m",
            "take_number": 1,
            "timestamp": 1774481078.71542
          }
        ],
        "updated_at": 1774481078.715837
      },
      "path": "tartarus/state/visual/shots/EP002_SH15.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_016_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH16",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_016_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:24:38.717542Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 15 | EP002_SH15 | MS | WREN | int_lower_decks_corridor | massive combat chassis destroying drone |\n| 16 | EP002_SH16 **>>> CURRENT <<<** | INSERT |  | int_lower_decks_corridor | destroyed drone chassis |\n| 17 | EP002_SH17 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. destroyed drone chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal gratin",
            "take_number": 1,
            "timestamp": 1774481092.116035
          }
        ],
        "updated_at": 1774481092.116841
      },
      "path": "tartarus/state/visual/shots/EP002_SH16.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_017_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH17",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_017_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:24:52.119671Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 16 | EP002_SH16 | INSERT |  | int_lower_decks_corridor | destroyed drone chassis |\n| 17 | EP002_SH17 **>>> CURRENT <<<** | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 18 | EP002_SH18 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gr",
            "take_number": 1,
            "timestamp": 1774481108.579863
          }
        ],
        "updated_at": 1774481108.5807528
      },
      "path": "tartarus/state/visual/shots/EP002_SH17.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_018_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH18",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_018_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:25:08.583352Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 17 | EP002_SH17 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 18 | EP002_SH18 **>>> CURRENT <<<** | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 19 | EP002_SH19 | INSERT | WREN | int_lower_decks_corridor | mechanical fingers, small data chip |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gratin",
            "take_number": 1,
            "timestamp": 1774481125.067019
          }
        ],
        "updated_at": 1774481125.06811
      },
      "path": "tartarus/state/visual/shots/EP002_SH18.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_019_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH19",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_019_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:25:25.072612Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 18 | EP002_SH18 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 19 | EP002_SH19 **>>> CURRENT <<<** | INSERT | WREN | int_lower_decks_corridor | mechanical fingers, small data chip |\n| 20 | EP002_SH20 | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. mechanical fingers, small data chip. Interior of a grimy spaceship lower-deck corridor. Corroded ",
            "take_number": 1,
            "timestamp": 1774481173.4109051
          }
        ],
        "updated_at": 1774481173.4112792
      },
      "path": "tartarus/state/visual/shots/EP002_SH19.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_020_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH20",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_020_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:26:13.412732Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 19 | EP002_SH19 | INSERT | WREN | int_lower_decks_corridor | mechanical fingers, small data chip |\n| 20 | EP002_SH20 **>>> CURRENT <<<** | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |\n| 21 | EP002_SH21 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. mechanical optics, brushed steel facial plating. Interior of a grimy spaceship lower-deck corrid",
            "take_number": 1,
            "timestamp": 1774481190.271775
          }
        ],
        "updated_at": 1774481190.272664
      },
      "path": "tartarus/state/visual/shots/EP002_SH20.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_021_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH21",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_021_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:26:30.275632Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 20 | EP002_SH20 | ECU | WREN | int_lower_decks_corridor | mechanical optics, brushed steel facial plating |\n| 21 | EP002_SH21 **>>> CURRENT <<<** | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 22 | EP002_SH22 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating ",
            "take_number": 1,
            "timestamp": 1774481203.9404001
          }
        ],
        "updated_at": 1774481203.940765
      },
      "path": "tartarus/state/visual/shots/EP002_SH21.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_022_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH22",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_022_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:26:43.941933Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 21 | EP002_SH21 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 22 | EP002_SH22 **>>> CURRENT <<<** | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 23 | EP002_SH23 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gr",
            "take_number": 1,
            "timestamp": 1774481236.507769
          }
        ],
        "updated_at": 1774481236.5091898
      },
      "path": "tartarus/state/visual/shots/EP002_SH22.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_023_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH23",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_023_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:27:16.514691Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 22 | EP002_SH22 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 23 | EP002_SH23 **>>> CURRENT <<<** | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 24 | EP002_SH24 | CU | JADE | int_lower_decks_corridor | dirt-smudged hand, welded metal casing |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating ",
            "take_number": 1,
            "timestamp": 1774481252.979158
          }
        ],
        "updated_at": 1774481252.979861
      },
      "path": "tartarus/state/visual/shots/EP002_SH23.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_024_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH24",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_024_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:27:32.983599Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 23 | EP002_SH23 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 24 | EP002_SH24 **>>> CURRENT <<<** | CU | JADE | int_lower_decks_corridor | dirt-smudged hand, welded metal casing |\n| 25 | EP002_SH25 | ECU | JADE | int_lower_decks_corridor | woman's jawline, dirt-smudged skin |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Prop reference: DEBT_COUNTER",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm, tilting. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. dirt-smudged hand, welded metal casing. Interior of a grimy spaceship lower-deck corridor. Corro",
            "take_number": 1,
            "timestamp": 1774481271.561161
          }
        ],
        "updated_at": 1774481271.562164
      },
      "path": "tartarus/state/visual/shots/EP002_SH24.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_025_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH25",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_025_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:27:51.566045Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 24 | EP002_SH24 | CU | JADE | int_lower_decks_corridor | dirt-smudged hand, welded metal casing |\n| 25 | EP002_SH25 **>>> CURRENT <<<** | ECU | JADE | int_lower_decks_corridor | woman's jawline, dirt-smudged skin |\n| 26 | EP002_SH26 | INSERT | JADE | int_lower_decks_corridor | amber digital display, ticking numbers |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 100mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman's jawline, dirt-smudged skin. Interior of a grimy spaceship lower-deck corridor. Corroded ",
            "take_number": 1,
            "timestamp": 1774481288.170397
          }
        ],
        "updated_at": 1774481288.171361
      },
      "path": "tartarus/state/visual/shots/EP002_SH25.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_026_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH26",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_026_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:28:08.174959Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 25 | EP002_SH25 | ECU | JADE | int_lower_decks_corridor | woman's jawline, dirt-smudged skin |\n| 26 | EP002_SH26 **>>> CURRENT <<<** | INSERT | JADE | int_lower_decks_corridor | amber digital display, ticking numbers |\n| 27 | EP002_SH27 | INSERT |  | int_lower_decks_corridor | amber digital display rapidly increasing |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Prop reference: DEBT_COUNTER",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. amber digital display, ticking numbers. Interior of a grimy spaceship lower-deck corridor. Corrod",
            "take_number": 1,
            "timestamp": 1774481305.82337
          }
        ],
        "updated_at": 1774481305.823772
      },
      "path": "tartarus/state/visual/shots/EP002_SH26.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_027_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH27",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_027_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:28:25.824995Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 26 | EP002_SH26 | INSERT | JADE | int_lower_decks_corridor | amber digital display, ticking numbers |\n| 27 | EP002_SH27 **>>> CURRENT <<<** | INSERT |  | int_lower_decks_corridor | amber digital display rapidly increasing |\n| 28 | EP002_SH28 | WS |  | int_lower_decks_corridor | cracked pipes, steam |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Prop reference: DEBT_COUNTER",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. amber digital display rapidly increasing. Interior of a grimy spaceship lower-deck corridor. Corr",
            "take_number": 1,
            "timestamp": 1774481322.6529129
          }
        ],
        "updated_at": 1774481322.654356
      },
      "path": "tartarus/state/visual/shots/EP002_SH27.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_028_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH28",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_028_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:28:42.656889Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 27 | EP002_SH27 | INSERT |  | int_lower_decks_corridor | amber digital display rapidly increasing |\n| 28 | EP002_SH28 **>>> CURRENT <<<** | WS |  | int_lower_decks_corridor | cracked pipes, steam |\n| 29 | EP002_SH29 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 35mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. cracked pipes, steam. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor wi",
            "take_number": 1,
            "timestamp": 1774481337.243951
          }
        ],
        "updated_at": 1774481337.245161
      },
      "path": "tartarus/state/visual/shots/EP002_SH28.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_029_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH29",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_029_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:28:57.248932Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 28 | EP002_SH28 | WS |  | int_lower_decks_corridor | cracked pipes, steam |\n| 29 | EP002_SH29 **>>> CURRENT <<<** | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 30 | EP002_SH30 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. massive combat chassis. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating ",
            "take_number": 1,
            "timestamp": 1774481355.444565
          }
        ],
        "updated_at": 1774481355.4449458
      },
      "path": "tartarus/state/visual/shots/EP002_SH29.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_030_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH30",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_030_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:29:15.446129Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 29 | EP002_SH29 | MCU | WREN | int_lower_decks_corridor | massive combat chassis |\n| 30 | EP002_SH30 **>>> CURRENT <<<** | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 31 | EP002_SH31 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gr",
            "take_number": 1,
            "timestamp": 1774481389.6269162
          }
        ],
        "updated_at": 1774481389.627576
      },
      "path": "tartarus/state/visual/shots/EP002_SH30.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_031_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH31",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_031_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:29:49.629150Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 30 | EP002_SH30 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 31 | EP002_SH31 **>>> CURRENT <<<** | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 32 | EP002_SH32 | FS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket, steel-toed boots |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gratin",
            "take_number": 1,
            "timestamp": 1774481704.028668
          }
        ],
        "updated_at": 1774481704.029313
      },
      "path": "tartarus/state/visual/shots/EP002_SH31.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_032_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH32",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_032_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:35:04.031221Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 31 | EP002_SH31 | MS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 32 | EP002_SH32 **>>> CURRENT <<<** | FS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket, steel-toed boots |\n| 33 | EP002_SH33 | INSERT | JADE | int_lower_decks_corridor | amber digital display |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Full shot, 35mm, tracking. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket, steel-toed boots. Interior of a grimy spaceship lower-deck corri",
            "take_number": 1,
            "timestamp": 1774481715.182284
          }
        ],
        "updated_at": 1774481715.182793
      },
      "path": "tartarus/state/visual/shots/EP002_SH32.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_033_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH33",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_033_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:35:15.184622Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 32 | EP002_SH32 | FS | JADE | int_lower_decks_corridor | woman in heavy canvas jacket, steel-toed boots |\n| 33 | EP002_SH33 **>>> CURRENT <<<** | INSERT | JADE | int_lower_decks_corridor | amber digital display |\n| 34 | EP002_SH34 | WS |  | int_lower_decks_corridor | empty corridor |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Prop reference: DEBT_COUNTER",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Extreme close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. amber digital display. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating ",
            "take_number": 1,
            "timestamp": 1774481736.1796212
          }
        ],
        "updated_at": 1774481736.180083
      },
      "path": "tartarus/state/visual/shots/EP002_SH33.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_034_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH34",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_034_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:35:36.181636Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 33 | EP002_SH33 | INSERT | JADE | int_lower_decks_corridor | amber digital display |\n| 34 | EP002_SH34 **>>> CURRENT <<<** | WS |  | int_lower_decks_corridor | empty corridor |\n| 35 | EP002_SH35 | LS |  | int_lower_decks_corridor | three drones, blade arrays extended, chrome accents |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Wide shot, 24mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. empty corridor. Interior of a grimy spaceship lower-deck corridor. Corroded metal grating floor with vis",
            "take_number": 1,
            "timestamp": 1774481753.082817
          }
        ],
        "updated_at": 1774481753.083246
      },
      "path": "tartarus/state/visual/shots/EP002_SH34.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_035_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH35",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_035_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:35:53.084305Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 34 | EP002_SH34 | WS |  | int_lower_decks_corridor | empty corridor |\n| 35 | EP002_SH35 **>>> CURRENT <<<** | LS |  | int_lower_decks_corridor | three drones, blade arrays extended, chrome accents |\n| 36 | EP002_SH36 | MS |  | int_lower_decks_corridor | drones, spinning blade arrays |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Long shot, 35mm, panning. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. three drones, blade arrays extended, chrome accents. Interior of a grimy spaceship lower-deck c",
            "take_number": 1,
            "timestamp": 1774481765.8470569
          }
        ],
        "updated_at": 1774481765.8476748
      },
      "path": "tartarus/state/visual/shots/EP002_SH35.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_036_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH36",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_036_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:36:05.848897Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "# VISUAL BIBLE\n\n\n## LOCATIONS\n\n\n### int_lower_decks_corridor\nmetal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows\n\n\n## KEY PROPS\n\n\n- **salvage_hook**: heavy metal hook, worn smooth handle, salvage-standard issue\n\n- **debt_counter**: amber digital display, welded metal casing, ticking numbers\n\n- **cryo_pod**: brushed steel, military serial numbers, frost-covered viewport, heavy anchor cables, release panel\n\n- **warden_drone**: four rotors, spinning sensor array, amber sweep-light, municipal markings\n\n- **collector_drone**: blade arrays, humming chassis, red sweep-light, chrome accents"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 35 | EP002_SH35 | LS |  | int_lower_decks_corridor | three drones, blade arrays extended, chrome accents |\n| 36 | EP002_SH36 **>>> CURRENT <<<** | MS |  | int_lower_decks_corridor | drones, spinning blade arrays |\n| 37 | EP002_SH37 | CU | JADE, WREN | int_lower_decks_corridor | dirt-smudged hand gripping scarred alloy arm |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium shot, 50mm, push-in. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. drones, spinning blade arrays. Interior of a grimy spaceship lower-deck corridor. Corroded me",
            "take_number": 1,
            "timestamp": 1774481810.211124
          }
        ],
        "updated_at": 1774481810.2115562
      },
      "path": "tartarus/state/visual/shots/EP002_SH36.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_037_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH37",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_037_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:36:50.214070Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 36 | EP002_SH36 | MS |  | int_lower_decks_corridor | drones, spinning blade arrays |\n| 37 | EP002_SH37 **>>> CURRENT <<<** | CU | JADE, WREN | int_lower_decks_corridor | dirt-smudged hand gripping scarred alloy arm |\n| 38 | EP002_SH38 | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: WREN -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Close-up, 85mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. dirt-smudged hand gripping scarred alloy arm. Interior of a grimy spaceship lower-deck corridor. Corroded",
            "take_number": 1,
            "timestamp": 1774481832.5165849
          }
        ],
        "updated_at": 1774481832.5177019
      },
      "path": "tartarus/state/visual/shots/EP002_SH37.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": null,
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "sequences/ep_002/shot_038_take1.png",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH38",
        "status": "previs_generated",
        "takes": [
          {
            "cost_usd": 0.039,
            "disposition": null,
            "file_path": "sequences/ep_002/shot_038_take1.png",
            "inputs_snapshot": {
              "bible_version": "f64b5879e593",
              "bypassed_layers": [],
              "captured_at": "2026-03-25T23:37:12.521739Z",
              "config_hash": "",
              "continuity_shots": [],
              "generation_params": {
                "aspect_ratio": "9:16",
                "model": "gemini-3.1-flash-image-preview",
                "temperature": 0.4
              },
              "overrides": [],
              "prompt_flat": "<truncated:blob>",
              "prompt_layers": [
                {
                  "active": true,
                  "color": "#9CA3AF",
                  "id": "behavioral_preamble",
                  "label": "Behavioral Preamble",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#4A9E8E",
                  "id": "bible_excerpt",
                  "label": "Scoped Bible",
                  "text": "<truncated:blob>"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_1",
                  "label": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID ",
                  "text": "## EPISODE SHOT SEQUENCE\n\n| # | Shot ID | Type | Characters | Location | Action |\n|---|---------|------|------------|----------|--------|\n| 37 | EP002_SH37 | CU | JADE, WREN | int_lower_decks_corridor | dirt-smudged hand gripping scarred alloy arm |\n| 38 | EP002_SH38 **>>> CURRENT <<<** | MCU | JADE | int_lower_decks_corridor | woman in heavy canvas jacket |\n| 39 | EP002_SH39 | FS | JADE, WREN | int_lower_decks_corridor | woman and massive combat chassis running |"
                },
                {
                  "active": true,
                  "color": "#6B7280",
                  "id": "context_text_2",
                  "label": "## ENVIRONMENT: int_lower_decks_corridor",
                  "text": "## ENVIRONMENT: int_lower_decks_corridor\nGenerate a FRESH, ORIGINAL environment inspired by this description. Do NOT reproduce any single reference image \u2014 create a new interpretation.\nSetting: metal grating floor, rust flakes, sweating pipes, condensation, cracked pipes, steam, dark shadows"
                },
                {
                  "active": true,
                  "color": "#4A7EC8",
                  "id": "continuity_window",
                  "label": "3-Shot Window",
                  "text": "<truncated:blob>"
                }
              ],
              "refs_used": [
                {
                  "id": "",
                  "label": "Reference: JADE -- front view",
                  "sent_to_model": true,
                  "type": "other",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- three quarter view (identity anchor)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                },
                {
                  "id": "",
                  "label": "Reference: JADE -- HERO identity reference (prioritize this face)",
                  "sent_to_model": true,
                  "type": "character",
                  "url": ""
                }
              ],
              "routing": {
                "model": "gemini-3.1-flash-image-preview",
                "pipeline": "previz",
                "reason": "Flash full-context",
                "tier": "previz"
              },
              "source": "snapshot"
            },
            "model": "gemini-3.1-flash-image-preview",
            "pipeline": "previz",
            "prompt_used": "Medium close-up, 50mm. Shot on Arri Alexa Mini LF, Kodak Vision3 500T, visible grain, photorealistic. woman in heavy canvas jacket. Interior of a grimy spaceship lower-deck corridor. Corroded metal gr",
            "take_number": 1,
            "timestamp": 1774481849.8701289
          }
        ],
        "updated_at": 1774481849.8710122
      },
      "path": "tartarus/state/visual/shots/EP002_SH38.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.039,
        "coverage_of": null,
        "episode_id": "EP002",
        "error_message": "No image data in Flash response",
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": null,
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "EP002_SH39",
        "status": "previs_failed",
        "takes": [],
        "updated_at": 1774481867.7869272
      },
      "path": "tartarus/state/visual/shots/EP002_SH39.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.0,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {},
        "job_id": null,
        "max_attempts": 3,
        "model": "kling-3.0",
        "output_path": null,
        "pipeline": "t2v",
        "session_id": null,
        "shot_id": "EP999_SH05",
        "status": "previs_pending",
        "takes": [],
        "updated_at": 1772424467.73942
      },
      "path": "tartarus/state/visual/shots/EP999_SH05.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.0,
        "episode_id": "EP999",
        "error_message": null,
        "gate_results": {},
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": null,
        "pipeline": null,
        "session_id": null,
        "shot_id": "EP999_SH06",
        "status": "abandoned",
        "takes": [],
        "updated_at": 1772412063.062519
      },
      "path": "tartarus/state/visual/shots/EP999_SH06.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 1.517,
        "coverage_of": null,
        "deferred": false,
        "deferred_reason": null,
        "episode_id": "",
        "error_message": null,
        "gate_results": {
          "video_path": "renders/ep_001/_orphans/shot_JADE_FACE_FILTER_PROBE_2026_05_07_take1.mp4"
        },
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": null,
        "output_path": "renders/ep_001/shot_JADE_FACE_FILTER_PROBE_2026_05_07_take1.mp4",
        "pipeline": null,
        "retry_waste_cost": 0.0,
        "schema_version": 1,
        "session_id": null,
        "shot_id": "JADE_FACE_FILTER_PROBE_2026_05_07",
        "status": "video_complete",
        "takes": [
          {
            "cost_usd": 1.517,
            "disposition": null,
            "file_path": "renders/ep_001/_orphans/shot_JADE_FACE_FILTER_PROBE_2026_05_07_take1.mp4",
            "gate_verdict": null,
            "inputs_snapshot": null,
            "model": "seeddance-2.0",
            "pipeline": "video",
            "prompt_used": "The armored figure grabs the cable with one massive hand and seizes the woman's harness with the other. He climbs upward with brute mechanical strength, hauling them both \u2014 boots finding purchase on the shaft wall, cable swaying under their combined weight. Camera tracks upward following the ascent. Metal groans under stress. Emergency amber lights strobe past as they rise toward a catwalk grating above. Cinematic, photorealistic. Shot on Kodak Vision3 500T.",
            "take_number": 1,
            "timestamp": 1778161728.522388
          }
        ],
        "updated_at": 1778161728.522963
      },
      "path": "tartarus/state/visual/shots/_archive/JADE_FACE_FILTER_PROBE_2026_05_07.json"
    },
    {
      "data": {
        "attempts": 0,
        "cost_incurred": 0.0,
        "coverage_of": null,
        "deferred": false,
        "deferred_reason": null,
        "episode_id": "EP001",
        "error_message": "<truncated:blob>",
        "gate_results": {},
        "is_coverage": false,
        "job_id": null,
        "max_attempts": 3,
        "model": "seeddance-2.0",
        "output_path": null,
        "pipeline": "i2v",
        "retry_waste_cost": 0.0,
        "session_id": null,
        "shot_id": "TEST_I2V_CHAIN_SH34",
        "status": "video_failed",
        "takes": [],
        "updated_at": 1776145549.65504
      },
      "path": "tartarus/state/visual/shots/_test/TEST_I2V_CHAIN_SH34.json"
    },
    {
      "data": [
        "renders/ep_001/shot_003_take5.mp4",
        "renders/ep_001/shot_028_take1.mp4",
        "renders/ep_001/shot_035_take1.mp4"
      ],
      "path": "tartarus/state/visual/video_bin.json"
    }
  ]
}
