{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "scene_index": 1,
        "scene_heading": "S#1. 숲속 / 해 질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 수풀 사이, 한국인 남자의 발이 벗겨진 한쪽 신발 옆 땅을 딛고 멈춘 바닥 구도 (다리에 피가 흐르는 커다란 이빨 자국)",
            "based_on_beat": 1,
            "characters": [
              "한국인 남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "눈을 크게 뜨고 입을 벌린 한국인 남자의 일그러진 얼굴 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "한국인 남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "검은 실루엣의 형체가 한국인 남자를 향해 공중에 떠 있는 찰나",
            "based_on_beat": 1,
            "characters": [
              "검은 실루엣의 형체",
              "한국인 남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "검은 실루엣이 쓰러진 한국인 남자의 몸 위에 완전히 포개진 채 바닥에 멈춘 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "검은 실루엣",
              "한국인 남자"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 2,
        "scene_heading": "S#2. 도시 뒷골목 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "희미한 가로등 불빛 아래, 한국인 남자와 한국인 여자가 전봇대에 몸을 기댄 채 서로 바짝 밀착하여 멈춘 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "한국인 남자",
              "한국인 여자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "눈동자가 붉게 변한 한국인 남자가 이빨을 한국인 여자의 목덜미 살점에 깊이 박아넣은 채 멈춘 측면 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "한국인 남자",
              "한국인 여자"
            ],
            "original_description": "눈동자가 붉게 변한 한국인 남자가 입을 벌려 한국인 여자의 목덜미에 댄 채 멈춘 측면 클로즈업",
            "validator_reason": "원문에 묘사된 '살점을 뜯는' 능동적 접촉의 강도를 보존하기 위해 이빨이 박힌 mid-impact 순간으로 재작성함",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "한국인 여자의 몸이 바닥으로 쓰러진 채 늘어진 정물 구도",
            "based_on_beat": 1,
            "characters": [
              "한국인 여자"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 3,
        "scene_heading": "S#3. 현장 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "폴리스 라인이 쳐진 숲속 현장, 한국인 경찰들이 천으로 덮인 시신 곁에 서 있는 TV 화면 앵글",
            "based_on_beat": 1,
            "characters": [
              "한국인 경찰들"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "형사들 중앙에 선 혜수가 한 손을 뻗어 특정 방향을 가리킨 채 멈춘 상체 구도",
            "based_on_beat": 1,
            "characters": [
              "혜수",
              "형사들"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "혜수의 손끝이 향한 곳을 일제히 바라보는 한국인 형사들의 멈춘 뒷모습",
            "based_on_beat": 1,
            "characters": [
              "한국인 형사들"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 4,
        "scene_heading": "S#4. 옥탑방 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 빌라 옥상 위 옥탑방과 주변 인천 변두리의 조밀한 건물들이 넓게 내려다보이는 부감 구도",
            "based_on_beat": 0,
            "characters": [],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 5,
        "scene_heading": "S#5. 옥탑방 안 / 실내",
        "shots": [
          {
            "shot_index": 1,
            "description": "싱크대 위 씻다 만 마른 약초 곁에서, 가스레인지 위 냄비의 하얀 김이 공중에 떠 있는 정물 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "민숙이 굳은 표정으로 거실 TV 화면을 향해 시선을 고정한 채 서 있는 측면",
            "based_on_beat": 1,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "수리영이 열린 방문 앞에 서서 양팔을 위로 뻗고 기지개를 켜는 자세로 고정된 순간",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "original_description": "수리영이 방문을 열고 양팔을 위로 뻗은 채 기지개를 켜며 멈춘 정지 상태",
            "validator_reason": "'문을 열고'라는 선행 동작을 제거하고, 열린 문 앞에서의 기지개 정지 상태로 단일화함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "민숙의 손가락이 TV 전원 버튼에 닿아 있는 순간",
            "based_on_beat": 1,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수리영이 식탁 의자에 엉덩이를 대고 턱을 괸 채 앉아 있는 구도",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "민숙이 주전자를 기울여 컵에 달인 물을 붓고 있는 정지 찰나 (물줄기가 공중에 멈춘 상태)",
            "based_on_beat": 2,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "수리영이 컵을 입술에 댄 채 미간을 찌푸린 얼굴 클로즈업",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "현관에서 수리영의 손이 신발 뒤축을 잡은 채 몸을 숙이고 있는 순간",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "수리영의 코끝이 민숙의 어깨 부근에 밀착된 채 눈을 감고 있는 정지 상태",
            "based_on_beat": 2,
            "characters": [
              "수리영",
              "민숙"
            ],
            "original_description": "수리영의 코끝이 민숙의 어깨 부근에 바짝 다가가 눈을 감고 있는 정지 상태",
            "validator_reason": "'다가가'라는 연속 이동 동사를 제거하고 밀착된 결과 상태만 남김.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "민숙의 손목 위에 뚜렷하게 새겨진 작은 원형 표식 클로즈업",
            "based_on_beat": 2,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 6,
        "scene_heading": "S#6. 해안가 도로 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "귀에 이어폰을 꽂은 수리영이 해안가 도로에서 자전거 안장에 앉아 한쪽 무릎을 굽혀 페달을 밟아 내리는 주행 중간 찰나의 측면 전신, 머리카락과 옷자락이 주행 반대 방향으로 흩날리는 모습",
            "based_on_beat": 0,
            "characters": [
              "수리영"
            ],
            "original_description": "귀에 이어폰을 꽂은 수리영이 해안가 도로에서 자전거 페달 위에 발을 올린 채 멈춘 측면 전신",
            "validator_reason": "원문의 달리는 동작 추진력을 상실하고 멈춘 상태로 묘사되어, 동적 동사 freeze 규칙에 따라 주행 중인 mid-action 찰나로 수정",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "바다를 배경으로 수리영의 얼굴이 하늘을 향해 살짝 들린 채 미소 짓고 있는 클로즈업",
            "based_on_beat": 0,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 7,
        "scene_heading": "S#7. 유기견 보호원 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "거대한 맹견 로트와일러가 입을 크게 벌리고 앞발을 공중에 든 위협적인 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "로트와일러"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "맹견을 향해 시선을 고정하고 눈을 부릅뜬 수리영의 정면 얼굴 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "로트와일러의 네 발이 바닥에 얌전히 닿은 채 꼬리를 내리고 멈춘 상태",
            "based_on_beat": 1,
            "characters": [
              "로트와일러"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "50대 한국인 남자의 손이 주사기를 쥔 채 로트와일러 엉덩이에 바짝 닿아 있는 찰나",
            "based_on_beat": 1,
            "characters": [
              "50대 한국인 남자",
              "로트와일러"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수리영이 한 손에 스마트폰을 든 채 철창 안의 개들을 물끄러미 바라보는 구도",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "스마트폰 화면을 내려다보는 수리영의 굳은 표정 클로즈업",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "수리영의 손이 가위를 쥔 채 작은 개의 털 끝에 닿아 있는 정지 순간",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 8,
        "scene_heading": "S#8. 번화가·대형 마트 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "네온사인이 켜진 길거리 포장마차 사이에서 자전거 페달을 밟는 중간 자세로 머리카락이 뒤로 흩날리는 수리영의 측면",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "original_description": "네온사인이 켜진 길거리 포장마차 사이를 지나는 자전거 위의 수리영 정지 컷",
            "validator_reason": "이동 동작이므로 motion direction과 추진력을 보존하는 mid-action 자세로 재작성했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "마트 입구 앞에 자전거 손잡이를 쥔 채 서 있는 수리영의 전신",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "매장 안에서 수리영이 한국인 여자 직원과 서로를 마주보고 서 있는 정지 구도",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "한국인 여자 직원"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "남자 직원이 커다란 종이 박스를 가슴 높이로 안은 채 고개를 돌려 수리영 쪽을 바라보고 있는 측면",
            "based_on_beat": 1,
            "characters": [
              "남자 직원",
              "수리영"
            ],
            "original_description": "남자 직원이 커다란 종이 박스를 가슴 높이로 든 채 대화에 끼어들며 멈춘 측면",
            "validator_reason": "'대화에 끼어들며'라는 행동의 진행을 제거하고, 박스를 든 채 고개를 돌린 한 순간의 고정된 상태로 수정했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수리영이 마트 출입구 밖에서 스마트폰을 귀에 댄 채 서 있는 상체",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "수리영이 폰을 쥔 손을 내린 채 굳은 얼굴로 시선을 바닥으로 떨군 정지 상태",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 9,
        "scene_heading": "S#9. 해안가 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 밤의 해안도로, 자전거 핸들을 꽉 쥐고 상체를 앞을 향해 숙인 채 한쪽 페달을 밟고 있는 수리영, 옷자락과 머리카락이 속도에 의해 뒤로 휘날리는 모습",
            "based_on_beat": 0,
            "characters": [
              "수리영"
            ],
            "original_description": "어두운 밤의 해안도로, 자전거 핸들을 꽉 쥔 수리영의 상체가 속도를 이기려 앞을 향해 숙여진 정지 찰나",
            "validator_reason": "인물이 이동 중이므로 '정지 찰나'라는 명시적 정지 표현을 제거하고, 바람에 날리는 옷자락 등 motion direction을 보존한 mid-action 자세로 수정했습니다.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 10,
        "scene_heading": "S#10. 옥탑방 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 옥상 평상 위, 말라 비틀어진 약초 잎사귀 하나가 공중에 떠 있는 정물 컷",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "한쪽 발을 내딛어 구두코가 바닥에 닿기 직전인 한국인 남자의 발 클로즈업, 마른 잎이 구두 곁에 놓인 상태",
            "based_on_beat": 1,
            "characters": [
              "한국인 남자"
            ],
            "original_description": "마른 잎이 다가오는 한국인 남자의 구두코 곁에 닿아 있는 바닥 클로즈업",
            "validator_reason": "'다가오는'이라는 진행 동작을 발을 내딛는 중인 미드 액션 찰나로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "옥탑방 철문 앞 바닥에 길게 늘어진 남자의 어두운 그림자가 문밑을 덮고 있는 구도",
            "based_on_beat": 1,
            "characters": [
              "남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "남자의 손가락이 광고 전단지를 쥔 채 철문 틈 사이에 끼워 넣은 찰나",
            "based_on_beat": 1,
            "characters": [
              "남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "미세하게 벌어진 철문 안쪽으로 남자의 실루엣이 반쯤 걸쳐진 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "남자"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "불 켜진 옥탑방 창문에 비친 그림자, 남자의 덩치가 민숙의 어깨 부근 위로 기괴하게 포개진 실루엣 찰나",
            "based_on_beat": 1,
            "characters": [
              "남자",
              "민숙"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 11,
        "scene_heading": "S#11. 옥탑 방 밖 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "다세대 빌라 마당 한구석 담벼락에 자전거가 비스듬히 눕혀져 있는 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "수리영의 발이 옥탑방으로 이어지는 좁은 시멘트 계단 칸을 딛고 있는 정지 찰나",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "코끝을 찡그린 채 계단 중간에 멈춰 선 수리영의 얼굴 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 시선이 닿은 곳, 옥상 현관 철문이 안쪽으로 반쯤 열린 채 멈춘 정적 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 12,
        "scene_heading": "S#12. 옥탑방 안 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 거실 한가운데 서서 굳은 표정으로 시선을 한 곳에 고정한 수리영의 상체",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "original_description": "어두운 거실 한가운데 서서 굳은 표정으로 주변을 둘러보는 수리영의 상체",
            "validator_reason": "'둘러보는'이라는 연속 동작을 시선이 고정된 단일 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "가스레인지 위 냄비에서 희미한 스탠드 불빛을 받으며 하얀 김이 공중에 떠 있는 정물 컷",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "거실 식탁 위에 두 개의 찻잔 중 하나가 바닥으로 엎어진 채 멈춰 있는 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 손이 굳게 닫힌 방문 손잡이를 쥔 채 멈춘 순간",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "방바닥 널빤지 위에 검붉은 피가 흥건하게 고여 있는 바닥 클로즈업",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "바닥의 핏자국에서 시작된 붉은 발자국들이 닫힌 창문 커튼 쪽으로 줄지어 찍혀 있는 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "수리영의 손이 커튼 자락을 꽉 쥔 채 멈춰 있는 찰나",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "커튼 뒤 공간, 바닥에 주저앉은 민숙이 고개를 푹 숙인 채 미동도 없이 멈춰 있는 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "거칠게 살점이 뜯겨나가고 피가 맺힌 민숙의 어깨와 쇄골 부위 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "눈을 커다랗게 뜨고 입을 반쯤 벌린 수리영의 굳은 얼굴",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "피가 묻은 방바닥에서 뒤로 물러서는 도중 한 발이 바닥에서 살짝 들려 있는 수리영의 발 하단 구도",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "original_description": "피가 묻은 방바닥에서 수리영의 발이 뒤로 물러서며 멈춘 하단 구도",
            "validator_reason": "'물러서며 멈춘'이라는 시간 경과 표현을 뒤로 물러서는 도중의 한 찰나(mid-action)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "수리영의 엄지손가락이 스마트폰 액정 화면에 닿은 채 멈춰 있는 클로즈업",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "original_description": "수리영의 떨리는 엄지손가락이 스마트폰 액정 화면에 닿아 있는 클로즈업",
            "validator_reason": "'떨리는'이라는 연속적인 미세 동작 묘사를 정지된 시각적 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "수리영이 스마트폰을 귀에 바짝 댄 채 초점 없는 눈으로 허공을 응시하는 측면",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "축 늘어진 민숙의 손가락 사이로 심하게 구겨진 사진 한 장이 끼워져 있는 정물 컷",
            "based_on_beat": 3,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "수리영의 손끝이 민숙의 손에 쥐어진 사진 가장자리에 닿은 찰나",
            "based_on_beat": 3,
            "characters": [
              "수리영",
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "민숙의 손목 피부 위로 작은 원형 문신이 붉은빛을 띠며 선명하게 떠오른 클로즈업",
            "based_on_beat": 3,
            "characters": [
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "침대 위 하얀 벽면 한가운데 굵고 붉은 원형 표식이 붓 자국처럼 선명하게 그려져 있는 구도",
            "based_on_beat": 3,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "입을 크게 벌리고 양손을 허공을 향해 어지럽게 뻗은 채 굳어 있는 수리영의 일그러진 얼굴",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "original_description": "입을 크게 벌리고 양손으로 허공을 허우적거리는 수리영의 일그러진 얼굴",
            "validator_reason": "'허우적거리는'이라는 연속 동작을 양손을 뻗은 채 굳어 있는 단일 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 13,
        "scene_heading": "S#13. 옥탑방 외곽 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "옥외 시멘트 계단 모서리를 딛고 선 수리영의 발 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "옥탑방 앞 계단 아래, 멍한 눈으로 앞을 바라보며 우두커니 서 있는 수리영의 전신",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "경찰차 문 옆에 선 혜수의 시선이 계단 쪽을 향해 고정된 정지 상태",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 코앞에 마주 선 채 양손으로 그의 어깨를 감싸 쥔 혜수의 측면 구도",
            "based_on_beat": 1,
            "characters": [
              "혜수",
              "수리영"
            ],
            "original_description": "혜수가 수리영의 코앞에 바짝 다가서서 어깨를 감싼 측면 구도",
            "validator_reason": "'다가서서 감싼'은 두 동작의 연속으로 읽힐 수 있으므로 결과 상태 정지 자세로 수정.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "고개를 든 채 혜수의 눈을 멍하니 올려다보는 수리영의 텅 빈 표정",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "original_description": "고개를 들어 혜수의 눈을 멍하니 올려다보는 수리영의 텅 빈 표정",
            "validator_reason": "'고개를 들어'라는 동작의 진행을 '고개를 든 채'라는 결과 상태로 수정.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "눈썹을 치켜뜬 채 입술을 굳게 다문 혜수의 놀란 얼굴 클로즈업",
            "based_on_beat": 2,
            "characters": [
              "혜수"
            ],
            "original_description": "눈썹을 치켜뜨고 입술을 굳게 다문 혜수의 놀란 얼굴 클로즈업",
            "validator_reason": "'치켜뜨고'라는 동작 표현을 결과 상태인 '치켜뜬 채'로 수정.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "옥탑방으로 이어지는 가파른 계단을 향해 상체를 기울인 채 한쪽 다리를 들어올려 계단을 디디려는 혜수와 김형사의 mid-action 자세",
            "based_on_beat": 2,
            "characters": [
              "혜수",
              "김형사"
            ],
            "original_description": "혜수와 김형사의 상체가 옥탑방으로 이어지는 가파른 계단 위를 향해 기울어진 정지 찰나",
            "validator_reason": "달리는 동작 중에 실제로 정지한 것이 아니므로 '정지 찰나' 표현을 제거하고 추진력을 보존한 mid-action 묘사로 수정.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 14,
        "scene_heading": "S#14. 옥탑방 안 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "옥탑방 거실 한가운데 서서 허탈한 표정으로 빈 공간을 바라보는 김형사의 상체",
            "based_on_beat": 1,
            "characters": [
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "현관 쪽을 향해 몸을 반쯤 돌린 혜수의 멈춘 뒷모습",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "열린 방문 틈을 향해 상체를 앞으로 강하게 기울인 채 한쪽 발을 공중에 띄운 mid-stride 자세의 수리영",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "original_description": "수리영의 상체가 열린 방문 틈을 향해 튀어나갈 듯 기울어진 정지 상태",
            "validator_reason": "뛰어 들어가는 동작의 추진력을 보존하면서 정지 상태를 인위적으로 강조하는 표현을 제거하고 mid-action으로 재작성함",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "핏자국 하나 없이 깔끔하게 정돈된 침대와 하얀 벽면의 깨끗한 구도",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "창백하게 질린 얼굴로 텅 빈 방안을 응시하는 수리영의 굳은 표정",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찻잔 하나 없이 물기마저 마른 깨끗한 거실 식탁 표면 클로즈업",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "미간을 찌푸린 채 혀를 차는 듯 입술을 비틀고 있는 김형사의 얼굴",
            "based_on_beat": 3,
            "characters": [
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "혜수의 날카로운 눈초리가 김형사의 얼굴을 향해 고정된 측면",
            "based_on_beat": 3,
            "characters": [
              "혜수",
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "혜수의 손바닥이 수리영의 움츠러든 어깨 위에 묵직하게 얹혀 있는 찰나",
            "based_on_beat": 3,
            "characters": [
              "혜수",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "책상 위, 인형이 매달린 백팩이 모서리에 삐딱하게 놓여 있는 정물 컷",
            "based_on_beat": 3,
            "characters": [],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 15,
        "scene_heading": "S#15. 해안가. 버스정류장 부근 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 바닷가 버스정류장 벤치에 앉아 수평선을 멍하니 응시하는 수리영의 측면",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "혜수의 손이 차가운 음료수 캔을 쥔 채 수리영의 시선 앞으로 내밀고 있는 찰나",
            "based_on_beat": 1,
            "characters": [
              "혜수",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "고개를 든 채 혜수의 얼굴을 올려다보는 수리영의 굳은 표정",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "original_description": "고개를 들어 혜수의 얼굴을 올려다보는 수리영의 굳은 표정",
            "validator_reason": "'고개를 들어'라는 동작 진행의 뉘앙스를 '고개를 든 채'라는 고정된 결과 자세로 수정했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "벤치에서 몸을 일으켜 세운 수리영이 혜수와 마주 선 정지 구도",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "혜수를 등지고 어두운 해안도로 쪽으로 한쪽 발을 내디딘 수리영의 뒷모습",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "멀리 떨어진 수리영의 뒷모습을 향해 양손을 허리에 얹은 채 입을 벌리고 선 혜수의 상체",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "original_description": "멀어지는 수리영을 향해 양손을 허리에 얹은 채 입을 벌리고 선 혜수의 상체",
            "validator_reason": "'멀어지는'이라는 시간의 경과를 암시하는 표현을 고정된 거리감('멀리 떨어진')으로 수정했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "가로등 불빛 아래 혜수의 실루엣이 해안가 수풀 사이로 작게 내다보이는 구도",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 16,
        "scene_heading": "S#16. 경찰서 사무실 / N",
        "shots": [
          {
            "shot_index": 1,
            "description": "경찰서 사무실 문틀 사이로 스마트폰을 귀에 댄 채 서 있는 혜수의 굳은 얼굴",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "서류가 널브러진 책상 앞에 앉아 고개를 든 김형사의 멈춘 상체",
            "based_on_beat": 1,
            "characters": [
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "혜수의 손이 스마트폰 액정 화면을 김형사의 시선 앞으로 바짝 들이민 정지 찰나",
            "based_on_beat": 1,
            "characters": [
              "혜수",
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "김형사를 서늘하게 쏘아보는 혜수의 눈빛 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "혜수",
              "김형사"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 17,
        "scene_heading": "S#17. 옥탑방 / 동틀무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "푸르스름한 새벽빛 아래, 담장 위에 멈춰 서서 불 켜진 옥탑방 창문을 올려다보는 검은 고양이",
            "based_on_beat": 1,
            "characters": [
              "검은 고양이"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "검은 고양이의 네 발이 허공에 뜬 채 옥탑방 마당 안쪽으로 몸이 기울어진 정지 찰나",
            "based_on_beat": 1,
            "characters": [
              "검은 고양이"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 18,
        "scene_heading": "S#18. 안방 안 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "안방 바닥에 앉아 침대 가장자리에 이마를 기댄 채 눈을 감고 있는 수리영의 옆모습",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "두 눈을 번쩍 크게 뜨고 긴장한 표정으로 허공을 응시하는 수리영의 정면 얼굴",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "거실 복도에 서서 굳게 닫힌 자기 방 문을 노려보는 수리영의 뒷모습",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 손이 방문 손잡이를 꽉 움켜쥔 클로즈업",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수리영의 손이 창문 커튼의 끝자락을 강하게 쥐고 있는 찰나",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "젖혀진 커튼 너머로 아침 햇살이 창틀과 맨바닥을 비추는 텅 빈 창가 구도",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "놀란 듯 어깨가 위로 들린 채 굳어 있는 수리영의 상체",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "스마트폰을 귀에 바짝 붙인 채 동공이 확장된 수리영의 불안한 얼굴",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "original_description": "스마트폰을 귀에 바짝 붙이고 눈동자가 심하게 흔들리는 수리영의 불안한 얼굴",
            "validator_reason": "'눈동자가 심하게 흔들리는'이라는 연속적인 안구 움직임을 동공이 확장된 고정 상태로 수정하여 한 찰나를 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "수리영의 손이 작은 인형이 매달린 백팩의 어깨끈을 거머쥔 정지 상태",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "얼굴에 물방울이 맺힌 채 화장실 거울을 들여다보는 수리영의 정면 컷",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "거울 표면 위로 비친 욕실 뒷벽 타일에 붉은색 원형 표식이 선명하게 그려져 있는 정지 컷",
            "based_on_beat": 3,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "화들짝 놀라 고개를 돌린 수리영의 시선 끝에 아무 표식도 없는 깨끗한 욕실 벽면이 보이는 구도",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "거실 식탁 앞에 서서 유리컵 가장자리를 입술에 댄 수리영의 옆모습",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "거실 식탁 위 액자 속에 수리영과 민숙이 나란히 웃고 있는 정상적인 사진 클로즈업",
            "based_on_beat": 3,
            "characters": [
              "수리영",
              "민숙"
            ],
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "사진 속 민숙의 얼굴 형체가 아래로 길게 늘어진 채 일그러져 있는 기괴한 사진 표면 컷",
            "based_on_beat": 3,
            "characters": [
              "민숙"
            ],
            "original_description": "사진 속 민숙의 얼굴 형체가 아래로 길게 늘어지며 일그러져 있는 기괴한 사진 표면 컷",
            "validator_reason": "'늘어지며'라는 동적인 형태 변화 과정을 이미 늘어진 결과 상태의 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "두 눈을 질끈 감고 허공을 향해 입을 크게 벌린 수리영의 얼굴",
            "based_on_beat": 4,
            "characters": [
              "수리영"
            ],
            "original_description": "두 눈을 질끈 감고 입을 크게 벌린 채 허공을 향해 소리치는 수리영의 얼굴",
            "validator_reason": "'소리치는'이라는 연속적인 동작을 입을 크게 벌린 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "수리영의 손바닥이 붉어진 자신의 볼에 강하게 밀착된 멈춘 찰나",
            "based_on_beat": 4,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 19,
        "scene_heading": "S#19. 마트 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "이른 아침 마트 입구, 수리영의 두 손이 주차된 자전거 손잡이를 꽉 쥔 채 멈춰 선 전신.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "마트 매장 안, 수리영이 남자 직원과 마주 보고 서서 굳은 표정으로 쳐다보는 정면 상체.",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "남자 직원"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "남자 직원이 입을 반쯤 벌린 채 수리영을 향해 고개를 살짝 기울인 정지 측면.",
            "based_on_beat": 1,
            "characters": [
              "남자 직원",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "마트 밖, 건물 외벽 높은 곳에 매달린 CCTV 카메라를 올려다보는 수리영의 뒷모습.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "마트 밖 벽면에 기댄 수리영이 스마트폰을 귀에 바짝 댄 채 시선을 바닥으로 떨군 멈춘 상태.",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 20,
        "scene_heading": "S#20. 마트 총무과 / 실내",
        "shots": [
          {
            "shot_index": 1,
            "description": "총무과 사무실 안, 모니터 앞 의자에 앉은 40대 한국인 남자 보안 직원의 손이 마우스를 쥐고 있는 측면.",
            "based_on_beat": 1,
            "characters": [
              "40대 한국인 남자 보안 직원"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "보안 직원 뒤에 선 혜수와 수리영의 상체가 모니터 화면을 향해 바짝 기울어진 정지 상태.",
            "based_on_beat": 1,
            "characters": [
              "보안 직원",
              "혜수",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "모니터 화면 속, 유독 어둡게 처리되어 형태만 흐릿한 성인 남성의 실루엣이 떠 있는 찰나.",
            "based_on_beat": 1,
            "characters": [
              "성인 남성"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "한국인 보안 직원의 고개가 약간 기울어진 채 혜수 쪽으로 얼굴이 향해 있는 멈춘 순간.",
            "based_on_beat": 1,
            "characters": [
              "한국인 보안 직원",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "두 손을 꽉 쥔 수리영이 미간을 찌푸린 채 모니터를 노려보는 불안한 얼굴 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "혜수의 손바닥이 모니터 쪽을 향해 살짝 들어 올려진 채 입술이 벌어진 멈춘 상체.",
            "based_on_beat": 2,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 21,
        "scene_heading": "S#21. 경찰서 안 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "경찰서 사무실 안, 서류 뭉치를 든 김형사 앞에 혜수와 수리영이 나란히 서 있는 전신 구도.",
            "based_on_beat": 1,
            "characters": [
              "김형사",
              "혜수",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "김형사의 손에 들린 서류가 혜수 가슴 앞 허공에 멈춰 있는 측면 찰나.",
            "based_on_beat": 1,
            "characters": [
              "김형사",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "수리영을 향해 고개를 살짝 숙인 혜수의 얼굴에 옅은 미소가 지어진 정지 상체.",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "어수선한 경찰서 안, 여러 명의 한국인 형사들이 출입구 쪽을 향해 발을 내딛으며 상체가 일제히 앞으로 쏠린 찰나의 뒷모습.",
            "based_on_beat": 1,
            "characters": [
              "한국인 형사들"
            ],
            "original_description": "어수선한 경찰서 안, 여러 명의 한국인 형사들 상체가 출입구 쪽을 향해 일제히 쏠린 채 멈춘 뒷모습들.",
            "validator_reason": "몰려나가는 이동 동작이므로 '멈춘'이라는 단어를 제거하고 진행 방향의 추진력을 보존하는 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "텅 빈 사무실 안, 혜수의 빈 책상 앞 의자에 덩그러니 앉아 멍한 눈을 한 수리영의 정면.",
            "based_on_beat": 2,
            "characters": [
              "수리영",
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "책상 위, 심하게 훼손된 끔찍한 시신의 핏자국이 선명하게 찍힌 사진들이 어지럽게 널려 있는 정물 컷.",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "책상을 내려다보는 수리영의 두 눈이 커다랗게 떠진 채 하얗게 질린 굳은 얼굴 클로즈업.",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "김형사의 컴퓨터 모니터 화면 한가운데 영문 글자와 지도 위 붉은 좌표가 떠 있는 정지 화면.",
            "based_on_beat": 3,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "수리영의 검지손가락 끝이 마우스 왼쪽 버튼에 바짝 닿아 있는 멈춘 측면 찰나.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "수리영의 손에 쥐어진 펜 끝이 작은 종이 위에 검은 점을 찍은 채 멈춘 정지 상태.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "반으로 접힌 작은 메모지가 수리영의 겉옷 주머니 틈새에 반쯤 끼워져 있는 찰나의 손 클로즈업.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "경찰서 사무실 문틀 사이로 어깨를 움츠린 수리영이 문밖으로 한 발을 내딛으며 몸이 반쯤 빠져나간 찰나의 뒷모습.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "original_description": "경찰서 사무실 문틀 사이로 어깨를 움츠린 수리영의 몸이 반쯤 빠져나간 멈춘 뒷모습.",
            "validator_reason": "사무실을 나서는 이동 동작이므로 정지 강조를 피하고 걷는 도중의 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 22,
        "scene_heading": "S#22. 경찰서 밖 / D",
        "shots": [
          {
            "shot_index": 1,
            "description": "경찰서 밖 자전거 보관소 앞, 수리영의 엉덩이가 자전거 안장에 닿은 채 두 발로 땅을 짚은 측면 전신.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "자전거 페달 위에 올려진 수리영의 발목에 힘이 들어간 채 상체가 핸들 쪽으로 기울어진 정지 찰나.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 23,
        "scene_heading": "S#23. 어느 PC방 / 실내",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 PC방 안, 모니터 불빛을 받은 수리영의 양손이 키보드 자판 위에 올려진 정면 상체.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "모니터 화면 가득 붉은색 핀 기호가 찍힌 선명한 해상 지도가 떠 있는 화면 클로즈업.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "수리영의 손가락 사이로 인쇄된 지도 종이 여러 장이 겹쳐 쥐어져 있는 정물 컷.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "반으로 접힌 지도 뭉치가 열린 백팩 지퍼 안쪽으로 반쯤 꽂혀 들어간 찰나의 손 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "손"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 24,
        "scene_heading": "S#24. 해안가 / 소나기",
        "shots": [
          {
            "shot_index": 1,
            "description": "먹구름이 짙게 깔린 해안가 하늘 위로 하얀 번개 줄기가 선명하게 그어진 채 멈춘 찰나.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "허공에 거센 빗방울들이 사선으로 멈춘 빗속, 젖은 머리카락이 뒤로 흩날리는 가운데 앞으로 몸을 한껏 숙인 채 자전거 핸들을 꽉 쥔 수리영의 굳은 상체.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "original_description": "허공에 거센 빗방울들이 정지한 빗속, 어깨가 완전히 젖은 채 자전거 핸들을 꽉 쥔 수리영의 굳은 상체.",
            "validator_reason": "자전거를 타고 달리는 추진력을 보존하기 위해 머리카락이 흩날리고 몸을 숙인 mid-action 찰나로 보강했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "수리영의 자전거 앞바퀴가 해안도로의 물웅덩이를 강하게 가르며 사방으로 튀어오른 거센 물보라가 허공에 정지한 찰나의 하단 구도.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "original_description": "물보라가 튄 해안도로 바닥 위, 수리영의 자전거 앞바퀴가 물 웅덩이를 강하게 누르고 있는 하단 구도.",
            "validator_reason": "자전거가 빠르게 달리는 속도감을 살리기 위해 물보라가 공중에 튀어오르는 중간 과정에서 정지한 찰나로 묘사했습니다.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 25,
        "scene_heading": "S#25. 옥탑방 안 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "옥탑방 현관 바닥 위로 흙이 잔뜩 묻은 거친 신발 자국들이 어지럽게 찍혀 있는 바닥 클로즈업.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "열린 거실 창문 앞, 쓰러진 식탁 의자와 바닥에 헤집어진 가재도구들이 널브러진 멈춘 거실 구도.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "거실 한가운데 서서 입을 반쯤 벌린 채 충격으로 굳어 있는 수리영의 상체.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "문이 열린 방 안쪽, 하얀 벽면 한가운데 붉은 원형 표식이 붓 자국처럼 굵게 그려져 있는 구도.",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "붉은 원 한가운데 벽면에 심하게 구겨진 낡은 사진 한 장이 반쯤 꽂혀 있는 정지 컷.",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "붉은 피가 얼룩진 낡은 흑백 사진(식당 앞 두 명의 한국인 어린 소녀 모습) 표면 클로즈업.",
            "based_on_beat": 2,
            "characters": [
              "두 명의 한국인 어린 소녀"
            ],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "사진 가장자리를 꽉 쥔 채 두 눈을 크게 뜨고 굳어 있는 수리영의 얼굴.",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "original_description": "사진 가장자리를 꽉 쥔 수리영의 눈동자가 심하게 흔들리는 굳은 얼굴.",
            "validator_reason": "'눈동자가 심하게 흔들리는'은 연속적인 움직임을 나타내므로, 눈을 크게 뜬 고정된 상태로 수정했습니다.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "침대 매트리스 가장자리에 엉덩이를 댄 채 멍하니 허공에 시선을 둔 수리영의 정지된 측면.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "백팩을 멘 수리영이 구겨진 사진을 쥔 주먹을 꽉 쥔 채 열린 현관문 앞에 선 찰나.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 26,
        "scene_heading": "S#26. 포구 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "자욱한 잿빛 안개가 깔린 텅 빈 포구, 갯바위 위에 쪼그려 앉아 무릎을 모은 수리영의 정지된 실루엣.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "수리영의 무릎 위에 놓인 스마트폰 액정에 발신자 이름과 부재중 전화 알림창이 뜬 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "짙은 해무 사이로 뱃머리가 흐릿하게 드러난 낡은 소형 어선 한 척이 포구를 향해 하얀 물살을 일으키며 다가오는 mid-action 찰나.",
            "based_on_beat": 1,
            "characters": [],
            "original_description": "짙은 해무 사이로 뱃머리가 흐릿하게 드러난 낡은 소형 어선 한 척이 물 위에 멈춰 있는 정경.",
            "validator_reason": "원문의 '다가오는' 이동 동작 방향성과 추진력을 보존하기 위해 멈춰있다는 묘사 대신 물살을 가르는 mid-action으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "어선 밖 선착장 바닥, 인우가 굵은 밧줄을 쥐고 기둥에 감아 팽팽하게 당기고 있는 힘의 방향이 보존된 측면 mid-action 자세.",
            "based_on_beat": 2,
            "characters": [
              "인우"
            ],
            "original_description": "어선 밖 선착장 바닥, 인우의 두 손이 굵은 밧줄을 쥔 채 기둥에 바짝 붙어 있는 멈춘 측면.",
            "validator_reason": "밧줄을 고정시키는 능동적인 신체 역학과 힘의 방향을 잃지 않도록 멈춘 자세 대신 당기는 mid-action으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "밧줄을 쥔 인우의 등 뒤에 바짝 다가선 수리영이 간절한 눈빛으로 위를 올려다보는 정지 구도.",
            "based_on_beat": 2,
            "characters": [
              "인우",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "고개를 어깨 너머로 돌린 채 수리영을 무심한 표정으로 힐끗 내려다보는 인우의 굳은 얼굴.",
            "based_on_beat": 2,
            "characters": [
              "인우",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "인우의 오른손이 바지 주머니에 깊숙이 찔러 넣어지고 고개가 아래로 살짝 까딱여진 멈춘 상체.",
            "based_on_beat": 2,
            "characters": [
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "안개 낀 바다를 향해 선 수리영이 스마트폰을 입가에 댄 채 두 눈을 감고 있는 측면 클로즈업.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 27,
        "scene_heading": "S#27. 옥탑방 안 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두컴컴하고 물건이 널브러진 옥탑방 거실, 혜수가 스마트폰을 귀에 댄 채 굳은 표정으로 서 있는 전신.",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "스마트폰 불빛을 받은 혜수의 크게 떠진 굳은 눈동자 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "혜수의 상체가 김형사가 서 있는 방향을 향해 확 돌아간 채 입술이 벌어진 멈춘 순간.",
            "based_on_beat": 2,
            "characters": [
              "혜수",
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "김형사가 짝다리를 짚은 채 입꼬리를 비죽이며 오른손을 뒷머리에 얹고 있는 측면 찰나.",
            "based_on_beat": 2,
            "characters": [
              "김형사"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "강한 바람에 밀린 옥탑방 현관 철문이 안쪽으로 덜컹 꺾여 들어와 멈춘 정지 구도.",
            "based_on_beat": 2,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "텅 빈 옥탑방 거실 한가운데, 어깨를 축 늘어뜨린 채 우두커니 서 있는 혜수의 뒷모습.",
            "based_on_beat": 2,
            "characters": [
              "혜수"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 28,
        "scene_heading": "S#28. 바다 + 갑판 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "해 질 무렵 황금빛 바다 위, 소형 어선 한 척이 물 위에 조용히 떠 있는 원경 정지 상태.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "갑판 위에 앉은 수리영의 손이 지도를 쥔 채 허공을 향해 곧게 뻗어져 있는 찰나.",
            "based_on_beat": 1,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "지도를 향해 시선이 고정된 인우의 미간이 깊게 패인 굳은 얼굴 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 손가락이 낡은 사진(식당 앞 두 명의 한국인 어린 소녀 모습) 가장자리를 꽉 쥔 채 멈춰 있는 정물 컷.",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "사진을 본 인우의 두 눈이 커다랗게 떠지고 턱이 살짝 벌어진 당황한 얼굴 클로즈업.",
            "based_on_beat": 2,
            "characters": [
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "사진을 쥔 수리영의 손이 인우의 턱 밑으로 바짝 다가가 멈춘 정지 구도.",
            "based_on_beat": 2,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "인우의 두 발이 갑판 바닥에서 허공으로 살짝 뜬 채 조타실 쪽을 향해 상체가 기울어진 찰나.",
            "based_on_beat": 3,
            "characters": [
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "조타실 입구를 향해 몸을 날린 수리영의 두 팔이 인우의 어깨를 향해 뻗어진 정지 상태.",
            "based_on_beat": 3,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 29,
        "scene_heading": "S#29. 조타실 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "좁은 조타실 안, 수리영의 두 손이 인우의 팔뚝을 강하게 움켜쥔 채 멈춰 선 측면 구도.",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "상체가 조타핸들 쪽으로 기울어진 인우의 고개가 수리영 쪽으로 확 돌아간 정지 찰나.",
            "based_on_beat": 1,
            "characters": [
              "인우",
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "입술을 꽉 깨문 수리영의 일그러진 얼굴이 인우의 콧등 앞까지 바짝 다가간 클로즈업.",
            "based_on_beat": 1,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수리영의 검지손가락 끝이 사진 속 한 아이의 얼굴 표면에 바짝 닿아 있는 멈춘 손 클로즈업.",
            "based_on_beat": 2,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "입이 반쯤 벌어진 채 멍한 시선으로 허공을 응시하는 인우의 하얗게 질린 얼굴 정면.",
            "based_on_beat": 2,
            "characters": [
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "조타실 벽면 가득, 붉고 기괴한 원형 표식들이 거친 붓 자국처럼 선명하게 칠해져 있는 구도.",
            "based_on_beat": 3,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "붉은 원형 표식을 향해 고정된 수리영의 두 눈동자가 초점을 잃고 텅 비어 있는 정면 클로즈업.",
            "based_on_beat": 3,
            "characters": [
              "수리영"
            ],
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "눈이 감긴 수리영의 상체가 인우의 어깨 위에 완전히 포개진 채 축 늘어진 정지 찰나.",
            "based_on_beat": 3,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "자신의 어깨에 기댄 수리영을 곁눈질로 서늘하게 내려다보는 인우의 굳은 표정 측면.",
            "based_on_beat": 3,
            "characters": [
              "수리영",
              "인우"
            ],
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 30,
        "scene_heading": "S#30. 바다 / 해질 무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "해 질 무렵 붉은 노을빛이 내려앉은 수면 위, 거대한 잿빛 안개 장벽이 바다 한가운데를 가로막고 선 원경 컷.",
            "based_on_beat": 1,
            "characters": [],
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "짙은 안개 장벽 속으로 낡은 소형 어선의 뱃머리가 반쯤 진입한 찰나, 뱃머리에 부딪힌 물결이 뒤로 갈라지며 전진하는 추진력을 보여주는 구도.",
            "based_on_beat": 1,
            "characters": [],
            "original_description": "짙은 안개 장벽 속으로 낡은 소형 어선의 뱃머리가 반쯤 묻혀 삼켜진 채 멈춘 정지 구도.",
            "validator_reason": "원문의 '안개 안으로 들어가는' 이동 동작의 추진력 단서가 누락되었으므로, 물결이 갈라지는 mid-action 찰나로 재작성함.",
            "character_ids": []
          }
        ]
      }
    ],
    "total_shots": 186,
    "changed_shots": 30
  },
  "step_id": "shot_validator",
  "run_id": "b11475d1-1a6b-4d79-9fb9-2f8007096a21",
  "resolved_model": "gemini-pro",
  "updated_at": "2026-05-20T17:02:24.045050+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}