{
  "status": "completed",
  "completed_count": 34,
  "applicable_count": 34,
  "failed_count": 0,
  "data": {
    "dependencies": [
      {
        "scene_index": 1,
        "shot_index": 2,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 1,
        "shot_index": 7,
        "location_refs": [
          {
            "scene_index": 1,
            "shot_index": 2,
            "reason": "S01_Shot7 takes place at the exact same underwater trash mound, now being clamped by the industrial crane claw.",
            "ref_usage": "exact_background",
            "ignore_elements": "Ignore the close-up of the rusted robot finger.",
            "keep_elements": [
              {
                "label": "dense mound of submerged trash with torn plastics, scattered cables, and silt",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              },
              {
                "label": "clouded, severely polluted seabed water with filtered blue-green daylight",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              }
            ]
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 2,
        "shot_index": 1,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 2,
        "shot_index": 4,
        "location_refs": [
          {
            "scene_index": 2,
            "shot_index": 1,
            "reason": "Provides the gloomy, gray-green industrial color palette, flat overcast lighting, and heavy haze of the garbage ship environment.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 3,
        "shot_index": 3,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 4,
        "shot_index": 3,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 4,
        "shot_index": 6,
        "location_refs": [
          {
            "scene_index": 4,
            "shot_index": 3,
            "reason": "Referencing the same dusty car interior and muted daylight atmosphere, but with a different camera direction looking toward the driver's side.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "Do not copy background layout from this image.",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 5,
        "shot_index": 17,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 5,
        "shot_index": 28,
        "location_refs": [
          {
            "scene_index": 5,
            "shot_index": 17,
            "reason": "Shares the same active security alarm warning light and tense atmospheric color palette of the luxury house premises.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "Ignore the damaged head on the floor and the scuffed indoor living room floor.",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 6,
        "shot_index": 6,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 6,
        "shot_index": 8,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 7,
        "shot_index": 6,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 7,
        "shot_index": 10,
        "location_refs": [
          {
            "ignore_elements": "Do not copy background layout from this image. Ignore the girl holding the damaged metal arm and the damaged metal arm.",
            "keep_elements": [],
            "reason": "Same garbage-dump location and smoky cold daylight, but the shot changes to the jukebox area with a different angle and focal prop, so the previous shot is useful only for atmosphere and color continuity.",
            "ref_usage": "atmosphere_reference",
            "scene_index": 7,
            "shot_index": 6
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 8,
        "shot_index": 12,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 8,
        "shot_index": 17,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 8,
        "shot_index": 29,
        "location_refs": [
          {
            "ignore_elements": "Ignore the fallen young girl in the lower foreground, the scrambling young boy in the lower foreground, and the massive mechanical figure half-buried in the trash mound. Do not copy background layout from this image.",
            "keep_elements": [],
            "reason": "The earlier wide junkyard view best matches the desolate coastal haze, rusted scrap mounds, and smoky trash-lot mood; the new rear medium-long shot uses a different path angle and staging.",
            "ref_usage": "atmosphere_reference",
            "scene_index": 8,
            "shot_index": 12
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 9,
        "shot_index": 9,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 9,
        "shot_index": 18,
        "location_refs": [
          {
            "scene_index": 9,
            "shot_index": 9,
            "reason": "Maintains the visual style of the military truck and the dim, overcast lighting of the construction site.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 9,
        "shot_index": 20,
        "location_refs": [
          {
            "scene_index": 9,
            "shot_index": 18,
            "reason": "Maintains the muddy, wet ground texture and the grim, overcast atmosphere of the site.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 10,
        "shot_index": 1,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 10,
        "shot_index": 11,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 10,
        "shot_index": 13,
        "location_refs": [
          {
            "scene_index": 10,
            "shot_index": 11,
            "reason": "Shares the same floor-level perspective, floor texture, background table legs, and sickly overhead fluorescent lighting from the struggle sequence.",
            "ref_usage": "zoom_in_detail",
            "ignore_elements": "Ignore the middle-aged man in a judge robe on the floor and the young man straddling his torso.",
            "keep_elements": [
              {
                "label": "filthy, heavily scuffed floor surface",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              },
              {
                "label": "unpolished wooden tribunal table legs in the background",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              }
            ]
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 11,
        "shot_index": 4,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 11,
        "shot_index": 5,
        "location_refs": [
          {
            "scene_index": 11,
            "shot_index": 4,
            "reason": "Referencing the high-contrast black-and-white visual style and wet alley atmosphere under flickering light from the previous shot.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "Do not copy background layout from this image.",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 12,
        "shot_index": 2,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 12,
        "shot_index": 7,
        "location_refs": [
          {
            "scene_index": 12,
            "shot_index": 2,
            "reason": "Matches the same outdoor night setting to maintain the cold blue-gray lighting and gritty ground texture, though the camera framing changes to an extreme close-up.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "Do not copy background layout from this image.",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 13,
        "shot_index": 4,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 13,
        "shot_index": 6,
        "location_refs": [
          {
            "scene_index": 13,
            "shot_index": 4,
            "reason": "The shot captures the same table and grimy restaurant atmosphere with sickly yellow lighting, but angles up slightly to focus on the character's face.",
            "ref_usage": "zoom_in_detail",
            "ignore_elements": "Ignore the hands overlapping and clamping the paper envelope on the tabletop.",
            "keep_elements": [
              {
                "label": "dirty and greasy tabletop reflecting sickly yellow light",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              },
              {
                "label": "grimy brownish-green background blur and sickly yellow lighting",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              }
            ]
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 14,
        "shot_index": 4,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 14,
        "shot_index": 6,
        "location_refs": [
          {
            "scene_index": 14,
            "shot_index": 4,
            "reason": "Shares the same cold, blue-gray curfew night atmosphere of the refugee camp, though the physical spot is different (container door vs. main iron gate).",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "Do not copy background layout from this image.",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 15,
        "shot_index": 3,
        "location_refs": [],
        "character_refs": []
      },
      {
        "scene_index": 15,
        "shot_index": 13,
        "location_refs": [
          {
            "scene_index": 15,
            "shot_index": 3,
            "reason": "Same container room with the corrugated metal walls and the dining table, with the camera moving in for a close-up of the character.",
            "ref_usage": "zoom_in_detail",
            "ignore_elements": "Ignore the standing shirtless man from the wide shot.",
            "keep_elements": [
              {
                "label": "corrugated rusted metal container walls",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              },
              {
                "label": "cluttered dining table",
                "kind": "environment",
                "subject_kind": "non_human_visual_element"
              },
              {
                "label": "flickering candle on the table",
                "kind": "static_prop",
                "subject_kind": "non_human_visual_element"
              }
            ]
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 15,
        "shot_index": 16,
        "location_refs": [
          {
            "scene_index": 15,
            "shot_index": 3,
            "reason": "Same container environment but a different closed door area, referencing the rusted metal textures and low-key amber lighting.",
            "ref_usage": "atmosphere_reference",
            "ignore_elements": "",
            "keep_elements": []
          }
        ],
        "character_refs": []
      },
      {
        "scene_index": 16,
        "shot_index": 1,
        "location_refs": [],
        "character_refs": []
      }
    ]
  },
  "step_id": "shot_dependency_t2i",
  "run_id": "f0ed5ed2-c590-44c7-95d3-b5911e050114",
  "resolved_model": "gpt-mini",
  "updated_at": "2026-06-25T07:23:48.424337+00:00",
  "schema_version": 4,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}