{
  "status": "completed",
  "completed_count": 24,
  "applicable_count": 24,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "scene_index": 1,
        "shot_index": 8,
        "framing_scale": "medium",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At Tony's upper-chest height, the dolly-in settles into a tight upper-body view from his front-side three-quarter angle, placing 토니(앤서니 로저스) left of center and the black vein along the right edge of his reaching path. His extended hand remains fully visible between his faint smile and the vein, while his eyes follow the vein toward its off-screen continuation rather than the lens.",
        "lighting_mood": "The single helmet light cuts through the dark tunnel in restrained low-key contrast while the black vein appears to swallow the illumination reaching it.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_right",
            "body_pose": "leaning into extended reach",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "black glass-like vein",
            "state": "embedded between coal layers and absorbing light",
            "orientation": "",
            "camera_use": "Placed beside Tony's outstretched hand as the visual endpoint of his gesture",
            "directionality_class": "non_directional"
          },
          {
            "element": "coal layers",
            "state": "surrounding the black vein",
            "orientation": "",
            "camera_use": "Provide a dark spatial boundary behind the reaching hand",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 1,
        "shot_index": 9,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From near the tunnel floor on Tony's side of the doorway, the camera tilts steeply upward along the iron blast door's vertical path, holding it at the midpoint of its descent. The broad Tony-side face occupies the central vertical band while the descending lower edge remains above the floor, preserving the door's weight and the remaining gap beneath it.",
        "lighting_mood": "Low-key tunnel illumination preserves the mineral-black and muted industrial surfaces without softening the door's severe silhouette.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "iron blast door",
            "state": "partway through its downward descent",
            "orientation": "Its broad Tony-side face and descending lower edge are visible from below.",
            "camera_use": "Primary threat and vertical compositional axis",
            "directionality_class": "directional_3d"
          },
          {
            "element": "rear doorway",
            "state": "being progressively sealed by the descending door",
            "orientation": "The opening is viewed from Tony's side and steeply from below.",
            "camera_use": "Defines the narrowing gap and full descent path",
            "directionality_class": "directional_3d"
          },
          {
            "element": "tunnel floor",
            "state": "below the still-open portion of the doorway",
            "orientation": "",
            "camera_use": "Lower anchor toward which the door is moving",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "movement_direction",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "descending blast door",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "tunnel floor"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "tunnel floor beneath doorway",
              "screen_zone": "lower_center",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 2,
        "shot_index": 12,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "Below head height near Tony's former position, the camera holds a steep upward tilt as the ceiling breaks apart and the densest concentration of rocks and dust crosses the central frame. Fragments descend through layered depth toward the unseen floor, with the rupturing ceiling retained along the upper frame as their point of origin.",
        "lighting_mood": "Failing tunnel illumination renders the collapse in low-key, rugged contrast as the ceiling lights begin going out in sequence.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "tunnel ceiling",
            "state": "breaking apart during the collapse",
            "orientation": "",
            "camera_use": "Upper-frame origin of the falling debris",
            "directionality_class": "non_directional"
          },
          {
            "element": "falling rocks",
            "state": "pouring downward from the broken ceiling",
            "orientation": "",
            "camera_use": "Primary moving mass crossing the central frame",
            "directionality_class": "non_directional"
          },
          {
            "element": "falling dust",
            "state": "descending with the rocks",
            "orientation": "",
            "camera_use": "Separates the debris into foreground, midground, and background layers",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "movement_direction",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "falling rock mass",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "tunnel floor below frame"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "ruptured tunnel ceiling",
              "screen_zone": "upper_center",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 2,
        "shot_index": 21,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At knee height beside the black vein, the tilt settles into a near-static diagonal view across the tunnel, with motionless dust particles layered from the near foreground into the middle distance. The particles remain sharply suspended against a softer tunnel background, while Tony stays outside the crop in the direction of the camera's impending advance.",
        "lighting_mood": "The smartphone remains the only stated illumination, giving the suspended field localized low-key visibility without introducing another light source.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "suspended dust field",
            "state": "completely motionless in midair",
            "orientation": "",
            "camera_use": "Primary focus and layered foreground passage for the next camera move",
            "directionality_class": "non_directional"
          },
          {
            "element": "black vein",
            "state": "its surface showing a ripple",
            "orientation": "",
            "camera_use": "Side anchor locating the camera at knee height within the tunnel",
            "directionality_class": "non_directional"
          },
          {
            "element": "tunnel floor",
            "state": "beneath the suspended dust",
            "orientation": "",
            "camera_use": "Provides a stable reference that makes the particles' arrested motion legible",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 2,
        "shot_index": 22,
        "framing_scale": "insert",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "through_device",
        "camera_direction": "The push-in completes above and to one side of the smartphone at a steep oblique overhead angle, keeping the screen plane readable while its bezel and a narrow margin of surrounding debris preserve the device as a physical object. The clock digits 21:14:07 hold the central visual weight at the exact instant they cease changing, with the phone kept within a natural proportion to its surroundings.",
        "lighting_mood": "The smartphone display provides the only stated localized light, isolated within otherwise low-key darkness.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "smartphone",
            "state": "clock stopped at 21:14:07",
            "orientation": "The active screen face is visible obliquely to camera and displays the frozen clock digits 21:14:07.",
            "camera_use": "Primary time-stop insert with bezel retained to signal device mediation",
            "directionality_class": "content_surface"
          },
          {
            "element": "collapsed debris",
            "state": "lying around the smartphone",
            "orientation": "",
            "camera_use": "Narrow peripheral context that fixes the phone within the collapsed tunnel",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "required_background_position",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "smartphone screen showing 21:14:07",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 3,
        "shot_index": 26,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At cheek height and very close to 토니(앤서니 로저스), a static three-quarter profile composition places his rigid face along the left plane and the suspended water droplet just right of center in the adjacent focal plane. The droplet occupies the same match-cut region as the preceding suspended detail, while Tony's fixed eyes remain directed beyond the frame rather than toward the lens.",
        "lighting_mood": "Restrained low-key illumination appropriate to the enclosed tunnel separates the droplet and Tony's rigid profile without specifying an additional source.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_left",
            "body_pose": "face and neck rigid",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "suspended water droplet",
            "state": "motionless beside Tony's face",
            "orientation": "",
            "camera_use": "Primary suspended detail and match-cut anchor",
            "directionality_class": "non_directional"
          },
          {
            "element": "motionless dust",
            "state": "remaining suspended in the tunnel air",
            "orientation": "",
            "camera_use": "Sparse depth markers around the droplet and rigid profile",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "shared_space_relation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스) rigid profile",
              "screen_zone": "middle_left",
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": ""
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "suspended water droplet",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 3,
        "shot_index": 30,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From a close wall-side position at waist height, the camera remains static and off-axis as the thick root's pressure point sits low on one side and the opened fracture runs diagonally across the concrete wall. The frame holds until the split is fully spread, preserving the rupture as the single changed visual axis within the match-cut sequence.",
        "lighting_mood": "Restrained low-key illumination emphasizes the wall break and root contour without introducing a new visible light source.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "concrete wall",
            "state": "split open under root pressure",
            "orientation": "",
            "camera_use": "Primary ruptured surface carrying the diagonal fracture",
            "directionality_class": "non_directional"
          },
          {
            "element": "thick root",
            "state": "expanded to rope-like thickness and pressing through the wall",
            "orientation": "Its side contour crosses the pressure point diagonally before continuing beyond the close frame.",
            "camera_use": "Visible cause of the concrete rupture",
            "directionality_class": "directional_3d"
          },
          {
            "element": "broken concrete fragments",
            "state": "dislodged around the opened split",
            "orientation": "",
            "camera_use": "Secondary scale reference at the fracture edges",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 3,
        "shot_index": 31,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "through_device",
        "camera_direction": "From the same wall-side base position, the downward tilt settles into a steep high-angle view of the smartphone among the debris. The screen sits near the lower center and remains clearly legible at 21:14:07, while the surrounding weathered remnants occupy more of the frame than the device and register the elapsed environmental change.",
        "lighting_mood": "Neutral low-key illumination appropriate to the tunnel keeps the screen legible against the restrained, weathered surroundings without specifying a new source.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "smartphone",
            "state": "still displaying 21:14:07",
            "orientation": "The screen face is visible from a steep high angle and clearly shows the unchanged time 21:14:07.",
            "camera_use": "Primary time-reveal endpoint after the downward tilt",
            "directionality_class": "content_surface"
          },
          {
            "element": "weathered debris",
            "state": "surrounding the unchanged smartphone",
            "orientation": "",
            "camera_use": "Environmental contrast demonstrating change around the static display",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "required_background_position",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "smartphone screen showing 21:14:07",
              "screen_zone": "lower_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "weathered debris surrounding phone",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 4,
        "shot_index": 32,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At intimate range slightly above 토니(앤서니 로저스), the handheld camera angles down from his front three-quarter side so his dust-marked face occupies most of the frame while his open mouth and eyes remain together in focus. His chin lifts and neck tenses as he abruptly releases the breath, eyes searching into the nearby off-screen tunnel rather than addressing the lens.",
        "lighting_mood": "Restrained low-key illumination keeps the dust on Tony's face tactile while preserving the dark, uncertain tunnel mood without naming an unstated source.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_right",
            "body_pose": "chin lifted, mouth open",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [],
        "frame_spatial_contract": {
          "reason": "primary_subject_isolation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스) breathing face",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 4,
        "shot_index": 33,
        "framing_scale": "insert",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "through_device",
        "camera_direction": "Directly above the smartphone and aligned with its screen plane, the camera holds completely still as the display advances to 21:14:08. The screen sits centrally with its bezel and a small surrounding margin retained, presenting both the changed time and the 17 percent battery reading without distorting the phone's physical scale.",
        "lighting_mood": "The active display supplies localized screen illumination within an otherwise restrained low-key frame.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "smartphone",
            "state": "display changed to 21:14:08 with battery at 17 percent",
            "orientation": "The screen face is squarely visible to camera and shows 21:14:08 together with the 17 percent battery reading.",
            "camera_use": "Primary insert marking the resumption of time",
            "directionality_class": "content_surface"
          }
        ],
        "frame_spatial_contract": {
          "reason": "required_background_position",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "smartphone display showing 21:14:08 and 17 percent",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 4,
        "shot_index": 36,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From knee height just beyond Tony's former rear-side path, the camera continues a restrained lateral track, angled upward across the damaged section. The enormous root curves diagonally through the middle of frame between split concrete on one side and the torn iron door on the other, with the movement easing into a brief hold that makes its winding route legible.",
        "lighting_mood": "Low-to-mid-key ambient light appropriate to the tunnel preserves restrained mineral blacks and weathered neutral tones.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "enormous tree root",
            "state": "waist-thick and winding through the damaged section",
            "orientation": "Its long curved axis crosses the frame diagonally between the concrete and door.",
            "camera_use": "Primary focal line traced by the lateral camera movement.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "split concrete",
            "state": "cracked apart by the root",
            "orientation": "The broken opening faces the camera obliquely, revealing the root passing through it.",
            "camera_use": "Frames one side of the root and establishes the scale of the damage.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "torn iron door",
            "state": "ripped open by the root",
            "orientation": "Its damaged face is seen at an oblique upward angle beside the root.",
            "camera_use": "Forms the opposing edge of the environmental reveal.",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 5,
        "shot_index": 41,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At elevated long-shot distance and oblique to the valley axis, the pan eases across the treetops and ends with the leaning high-rise skeleton isolated in the upper portion of frame. The canopy remains broad beneath it as a scale reference, while the building's diagonal posture interrupts the otherwise horizontal landscape.",
        "lighting_mood": "Strong daylight renders the forest and distant concrete structure with grounded contrast and a restrained natural palette.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "concrete high-rise skeleton",
            "state": "skeletal and leaning above the trees",
            "orientation": "Its open structural face is visible obliquely, with the entire frame tilting diagonally against the canopy.",
            "camera_use": "Primary distant focal point held at the completion of the pan.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "dense forest canopy",
            "state": "extending across the valley",
            "orientation": "",
            "camera_use": "Provides the lower visual field and scale reference beneath the building.",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "required_background_position",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "leaning high-rise skeleton",
              "screen_zone": "upper_center",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "forest canopy",
              "screen_zone": "middle_center",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 5,
        "shot_index": 43,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "The descending crane settles a few meters behind Tony at slightly above shoulder height, offset so his back occupies one side rather than the center. His small, motionless figure remains in the near field while the forest, river valley, and distant leaning structure spread across the greater part of the composition; his attention is fixed on that transformed landscape.",
        "lighting_mood": "Strong daylight keeps Tony clearly separated against the expansive forest while retaining restrained greens and weathered neutrals.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "back_to_camera",
            "body_pose": "shoulders slack, head forward",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "expansive forest",
            "state": "stretching across the former developed landscape",
            "orientation": "",
            "camera_use": "Large background field that reduces Tony to an isolated human scale.",
            "directionality_class": "non_directional"
          },
          {
            "element": "river across the valley",
            "state": "visible crossing the valley",
            "orientation": "Its course runs laterally through the distant landscape.",
            "camera_use": "Adds depth and defines the valley beyond Tony.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "leaning high-rise skeleton",
            "state": "visible above the distant trees",
            "orientation": "Its tilted structural side is visible beyond the canopy.",
            "camera_use": "A distant anomaly held within Tony's sightline.",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": {
          "reason": "shared_space_relation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스)",
              "screen_zone": "middle_left",
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "expansive forest and valley"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "expansive forest and valley",
              "screen_zone": "middle_center",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 6,
        "shot_index": 49,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From waist height several meters behind and to one side of Tony, the crane completes its upward reveal and settles, looking past his three-quarter profile toward the immense cylindrical section removed from the building remains. Tony is held near one lateral third, caught just after halting with his chin lifted, while the carved void occupies the opposing background without overwhelming his scale.",
        "lighting_mood": "Daylight presents the discovery in restrained forest greens, concrete neutrals, and low-to-mid-key cinematic contrast.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_left",
            "body_pose": "halted mid-step, chin lifted",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "building remains with cylindrical void",
            "state": "an immense smooth cylindrical section has been carved away",
            "orientation": "The damaged face is seen obliquely so the circular depth and missing volume read behind Tony.",
            "camera_use": "Primary environmental revelation aligned with Tony's raised sightline.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "surrounding forest",
            "state": "present around the building remains",
            "orientation": "",
            "camera_use": "Provides environmental and scale context around the anomalous damage.",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "looks_to_anchor",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스)",
              "screen_zone": "middle_left",
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "cylindrical void"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "cylindrical void",
              "screen_zone": "middle_right",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 6,
        "shot_index": 53,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At ground height several meters to Tony's side and slightly behind his feet, the lateral track stops with his entire prone body cutting diagonally from the lower foreground toward the brush. His chest and hips are pressed low, his head raised only enough to aim his stare toward the sound source, leaving a clear corridor of ground between him and the brush.",
        "lighting_mood": "Daylight is held to restrained forest greens and weathered neutrals, with grounded contrast supporting the sudden tension.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_right",
            "body_pose": "pressed prone, elbows braced",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "brush at the sound source",
            "state": "the direction from which a branch-breaking sound originated",
            "orientation": "",
            "camera_use": "Threat anchor placed beyond Tony's raised head and sightline.",
            "directionality_class": "non_directional"
          },
          {
            "element": "forest ground",
            "state": "supporting Tony's prone body",
            "orientation": "",
            "camera_use": "Creates the low diagonal plane connecting Tony to the brush.",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "looks_to_anchor",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스)",
              "screen_zone": "lower_left",
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "brush where the sound originated"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "brush where the sound originated",
              "screen_zone": "upper_right",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 7,
        "shot_index": 1,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "High among the trees and slightly below Wilma's flight level, the camera tracks laterally at full-body distance as she crosses the open gap from frame left toward frame right. Her airborne body forms a horizontal line through the middle of frame, both legs extended toward the arrival direction while her clothing trails backward; the departure and arrival trees remain visible as spatial anchors.",
        "lighting_mood": "Daylight gives the airborne figure crisp separation within a restrained forest-green and weathered-neutral palette.",
        "character_angles": [
          {
            "character": "윌마 디어링",
            "angle": "profile_right",
            "body_pose": "airborne with legs extended",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "departure tree",
            "state": "the tree Wilma has just left",
            "orientation": "Its trunk is seen along the left side of the lateral flight path.",
            "camera_use": "Marks the beginning of the leap and provides scale.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "arrival tree",
            "state": "the next tree on Wilma's route",
            "orientation": "Its trunk faces the camera obliquely at the right end of her trajectory.",
            "camera_use": "Defines Wilma's destination and movement direction.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "jumper belt",
            "state": "faintly vibrating beneath Wilma's arms",
            "orientation": "Its fitted sides are visible beneath her airborne torso.",
            "camera_use": "Supplies the only visible mechanism associated with the otherwise unsupported leap.",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": {
          "reason": "movement_direction",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C02",
              "label": "윌마 디어링",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "arrival tree at frame right"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "departure tree",
              "screen_zone": "middle_left",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "arrival tree",
              "screen_zone": "middle_right",
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 7,
        "shot_index": 14,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "At the armed pursuer's head height and offset from the firing axis, the static camera catches Midge at the instant its body breaks apart in midair. The central cluster of the drone and suspended fragments occupies most of the human-subject allowance without erasing the oblique projectile path, while peripheral fragments spread toward the frame edges and the forest remains faintly legible behind them.",
        "lighting_mood": "The impact's intense flame briefly drives the contrast against the daylight forest, while the surrounding palette remains restrained and rugged.",
        "character_angles": [
          {
            "character": "미지(MIDGE)",
            "angle": "three_quarter_right",
            "body_pose": "fragmenting in midair",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "key_bg_elements": [
          {
            "element": "forest trees behind the impact",
            "state": "visible behind the airborne fragmentation",
            "orientation": "Their vertical trunks remain oblique to the firing line.",
            "camera_use": "Provides depth and scale behind Midge's suspended fragments.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "oblique firing axis",
            "state": "defined by the shot that strikes Midge",
            "orientation": "It runs diagonally through the fragmentation rather than directly into the lens.",
            "camera_use": "Preserves the physical cause and direction of the impact.",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": {
          "reason": "primary_subject_isolation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C04",
              "label": "미지(MIDGE)",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 7,
        "shot_index": 19,
        "framing_scale": "close",
        "perspective": "over_shoulder",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "Inside the hiding place at Tony's face height, the camera sits immediately beside his cheek and just off his shoulder, looking outward along the leveled gun barrel. Tony's cheek and tense eye hold the near left edge, the muzzle occupies a large but sub-two-fifths foreground area, and Wilma's cold eyes remain visible behind it at close distance as each fixes attention on the other.",
        "lighting_mood": "Daylight entering the hiding-place opening creates controlled low-to-mid-key separation between the near muzzle, Tony's face edge, and Wilma beyond.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "over_shoulder",
            "body_pose": "pressed behind concealment",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          },
          {
            "character": "윌마 디어링",
            "angle": "three_quarter_left",
            "body_pose": "arms extended, weapon leveled",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "gun muzzle and barrel",
            "state": "leveled directly at Tony's face",
            "orientation": "The muzzle faces toward Tony and passes obliquely beside the camera, with Wilma aligned behind the barrel.",
            "camera_use": "Near-foreground threat line connecting the two characters.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "hiding-place opening",
            "state": "open toward Wilma's position",
            "orientation": "Its near edge frames Tony while the outward opening reveals Wilma.",
            "camera_use": "Creates a through-object frame and separates foreground concealment from the confrontation outside.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "forest beyond the hiding place",
            "state": "visible behind Wilma",
            "orientation": "",
            "camera_use": "Supplies limited spatial context without competing with the opponent-to-opponent axis.",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "shared_space_relation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스)",
              "screen_zone": "middle_left",
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "윌마 디어링"
            },
            {
              "target_kind": "character",
              "target_id": "C02",
              "label": "윌마 디어링",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "토니(앤서니 로저스)"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "hiding-place opening",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 8,
        "shot_index": 1,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "The opening frame holds at ground level beside the discarded rescue knife, offset from Tony's frontal axis and looking upward along his raised arms. The knife remains prominent but below two-fifths of the foreground, while Tony's full body occupies the middle distance in a three-quarter view, both hands held at shoulder height and his attention fixed on Wilma outside the frame.",
        "lighting_mood": "Daylight supports a restrained forest-green and weathered-neutral palette with grounded contrast around the surrender gesture.",
        "character_angles": [
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_right",
            "body_pose": "hands raised at shoulders",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "rescue knife",
            "state": "placed on the ground beside the camera position",
            "orientation": "Its side and blade axis are visible on the ground, angled away from Tony.",
            "camera_use": "Large near-foreground surrender evidence and starting point for the rising move.",
            "directionality_class": "directional_3d"
          },
          {
            "element": "forest ground",
            "state": "supporting the discarded knife and Tony's position",
            "orientation": "",
            "camera_use": "Creates the low perspective line from the knife toward Tony.",
            "directionality_class": "non_directional"
          },
          {
            "element": "forest trees",
            "state": "surrounding the confrontation area",
            "orientation": "Their trunks rise behind Tony and reinforce the upward camera angle.",
            "camera_use": "Background scale and vertical structure around Tony's raised arms.",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 8,
        "shot_index": 6,
        "framing_scale": "insert",
        "perspective": "over_shoulder",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From immediately behind and slightly above Wilma's shoulder position, with her body kept outside the frame, the dolly-in settles at close hand height over the phone held between her and Tony. The cracked display sits squarely enough for “2026.10.18,” “3%,” and the unfinished message “마라, 갱도가 무너졌어. 나는—” to remain sharply legible, while the phone stays just under two-fifths of the composition and the surrounding context falls soft.",
        "lighting_mood": "Daylight provides neutral, controlled visibility for the active display without introducing an additional specified light source.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "smartphone display",
            "state": "active and cracked, showing 2026.10.18, battery 3 percent, and an unsent unfinished message",
            "orientation": "The content-bearing front face is angled slightly upward toward the camera; the date, battery status, and message text are fully visible.",
            "camera_use": "Primary insert focus at the end of the inward move.",
            "directionality_class": "content_surface"
          },
          {
            "element": "forest setting beyond the phone",
            "state": "present beyond the close phone view",
            "orientation": "",
            "camera_use": "Soft peripheral scale context that prevents the phone from occupying an unrealistic share of the frame.",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "required_background_position",
          "constraints": [
            {
              "target_kind": "background",
              "target_id": "",
              "label": "legible smartphone display",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 8,
        "shot_index": 7,
        "framing_scale": "close",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From Tony's side of the exchange, the static camera sits slightly below Wilma's eye line and off her frontal axis, tightly framing her brow, fixed eyes, and the bridge of her nose in a three-quarter view. Her eyes drive sharply downward toward the phone below frame, while a narrow, unreadable rear edge of the device remains soft at the lower foreground; the emphasized change is the crossed gaze axis, with position and lighting held steady.",
        "lighting_mood": "Restrained exterior daylight keeps the eye sockets firm but readable, with low-to-mid-key contrast and muted natural color.",
        "character_angles": [
          {
            "character": "윌마 디어링",
            "angle": "three_quarter_left",
            "body_pose": "chin dipped, brow locked",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "스마트폰",
            "state": "Held below Wilma's eye line with its active screen turned toward her",
            "orientation": "The camera catches only the rear edge and back-facing side while the unseen display faces Wilma.",
            "camera_use": "A soft lower-foreground anchor that makes the downward eyeline physically legible without competing with her eyes",
            "directionality_class": "directional_3d"
          }
        ],
        "frame_spatial_contract": {
          "reason": "primary_subject_isolation",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C02",
              "label": "윌마 디어링",
              "screen_zone": "middle_center",
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      },
      {
        "scene_index": 9,
        "shot_index": 3,
        "framing_scale": "insert",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "through_device",
        "camera_direction": "A steep downward camera a few inches above the smartphone completes its dolly-in as the changing numerals stop, keeping the front display square enough to read while the phone remains contained within the central third of the frame. The synchronized date “2419.03.18” is the sole sharp focal plane, with the ridge surface retained narrowly around the device for scale; only camera distance is accented as motion resolves into stillness.",
        "lighting_mood": "Exterior daylight is balanced against the active display so the synchronized date remains crisp without introducing an additional light source.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "스마트폰 화면",
            "state": "Active; synchronization has stopped and the date reads 2419.03.18",
            "orientation": "The illuminated front face is visible to camera, showing the fully settled synchronized date “2419.03.18.”",
            "camera_use": "Central isolated information plane and endpoint of the dolly-in",
            "directionality_class": "content_surface"
          },
          {
            "element": "숲속 능선 바닥",
            "state": "Visible only as a narrow area around the smartphone",
            "orientation": "",
            "camera_use": "Provides restrained physical scale around the device before the hard cut",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 9,
        "shot_index": 5,
        "framing_scale": "wide",
        "perspective": "omniscient",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "From high above and far beyond the ridge, a static, slightly oblique downward long view holds the cloud layer near the upper frame, the broad forest below, and the complete vertical reach of the pale cylindrical light column between them. The column remains narrow against the breadth of the forest while the emptied section at its contact point is readable in the same composition; the single emphasized shift from the preceding screen image is the vast increase in camera distance.",
        "lighting_mood": "Daylight over the forest is interrupted by the explicitly pale light column, preserving subdued greens and neutral contrast around its brighter vertical form.",
        "character_angles": [],
        "key_bg_elements": [
          {
            "element": "우거진 숲",
            "state": "Broadly intact except for the space erased where the first column reaches it",
            "orientation": "",
            "camera_use": "Large-scale environmental reference that establishes the column's magnitude",
            "directionality_class": "non_directional"
          },
          {
            "element": "첫 번째 원통형 빛기둥",
            "state": "Descending vertically into the forest",
            "orientation": "",
            "camera_use": "Primary vertical focal form spanning from the cloud layer to the forest",
            "directionality_class": "non_directional"
          },
          {
            "element": "구름",
            "state": "The pale column descends through them",
            "orientation": "",
            "camera_use": "Upper-frame endpoint that allows the full height of the column to read",
            "directionality_class": "non_directional"
          },
          {
            "element": "지워진 숲의 빈 공간",
            "state": "Trees are absent without cut or burned remnants",
            "orientation": "",
            "camera_use": "Ground-level evidence of the column's effect within the wide composition",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": null,
        "subject_reference_policy": []
      },
      {
        "scene_index": 9,
        "shot_index": 13,
        "framing_scale": "wide",
        "perspective": "observer",
        "pov_character": "",
        "perception_mode": "direct",
        "camera_direction": "Tracking below hip height just outside and parallel to the cliff edge, the camera looks diagonally across the launch path as Wilma and Tony move from the left side of the ledge into open space at frame right. Wilma grips Tony's chest harness as her trailing foot separates from the rock, while Tony's torso is pulled past the edge; both full bodies remain readable and the tightened lateral spacing emphasizes only their changed position beyond the cliff.",
        "lighting_mood": "Exterior daylight retains rugged, restrained contrast, with the approaching pale column adding only the illumination explicitly present in the scene.",
        "character_angles": [
          {
            "character": "윌마 디어링",
            "angle": "profile_right",
            "body_pose": "trailing foot leaving ledge",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "character": "토니(앤서니 로저스)",
            "angle": "three_quarter_left",
            "body_pose": "torso pulled beyond ledge",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "key_bg_elements": [
          {
            "element": "절벽 끝",
            "state": "The launch point is immediately behind Wilma's departing foot",
            "orientation": "Its terminating edge angles away from the low side camera toward the open launch path.",
            "camera_use": "Lower-left spatial anchor proving that both bodies have crossed beyond support",
            "directionality_class": "directional_3d"
          },
          {
            "element": "절벽 바깥 허공",
            "state": "Both characters' centers of gravity have moved into it",
            "orientation": "",
            "camera_use": "Open right-side destination of the tracking movement",
            "directionality_class": "non_directional"
          },
          {
            "element": "토니의 가슴 하네스와 연결 고리",
            "state": "Connected to Wilma's auxiliary hook as she pulls him outward",
            "orientation": "The chest-facing harness and attached link are visible at a three-quarter angle between the two bodies.",
            "camera_use": "Mid-frame physical evidence that the pair launch as one connected unit",
            "directionality_class": "directional_3d"
          },
          {
            "element": "쇄도하는 빛기둥",
            "state": "Approaching the position the two characters are leaving",
            "orientation": "",
            "camera_use": "Distant threat held behind the launch action without displacing the two bodies as primary subjects",
            "directionality_class": "non_directional"
          },
          {
            "element": "아래쪽 숲",
            "state": "Visible beyond and below the cliff",
            "orientation": "",
            "camera_use": "Background depth reference for the height and direction of the leap",
            "directionality_class": "non_directional"
          }
        ],
        "frame_spatial_contract": {
          "reason": "movement_direction",
          "constraints": [
            {
              "target_kind": "character",
              "target_id": "C02",
              "label": "윌마 디어링",
              "screen_zone": "middle_right",
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "open space beyond the cliff"
            },
            {
              "target_kind": "character",
              "target_id": "C01",
              "label": "토니(앤서니 로저스)",
              "screen_zone": "middle_center",
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "open space beyond the cliff"
            },
            {
              "target_kind": "background",
              "target_id": "",
              "label": "cliff edge",
              "screen_zone": "lower_left",
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": ""
            }
          ]
        },
        "subject_reference_policy": []
      }
    ],
    "total": 24,
    "failed_batches": 0
  },
  "config_hash": "0c9d0b8082b44321",
  "step_id": "shot_staging",
  "run_id": "2740d804-f290-4e1c-bbe7-e03df57f5248",
  "resolved_model": "gpt",
  "updated_at": "2026-09-04T17:24:51.836159+00:00",
  "schema_version": 6,
  "project_config_snapshot": {}
}