{
  "status": "partial",
  "completed_count": 23,
  "applicable_count": 28,
  "failed_count": 5,
  "data": {
    "scenes": [
      {
        "scene_index": 1,
        "scene_heading": "S#1. 숲속 / 해 질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "피를 흘리며 숲속을 필사적으로 도망치는 남자",
            "after_state": "갑자기 나타난 검은 인영에게 덮쳐져 비명을 지르는 상태",
            "description": "도망치던 남자가 정체불명의 검은 인영에게 습격을 당한다."
          }
        ]
      },
      {
        "scene_index": 2,
        "scene_heading": "S#2. 도시 뒷골목 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "전봇대에 뒤엉켜 가쁜 숨을 내쉬고 있는 남녀",
            "after_state": "남자가 돌변하여 여자의 목을 물어뜯고 여자는 쓰러진 상태",
            "description": "다정해 보이던 남자가 기괴한 모습으로 여자의 살점을 뜯으며 공격한다."
          }
        ]
      },
      {
        "scene_index": 3,
        "scene_heading": "S#3. 현장 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "형체를 알아볼 수 없는 변사체가 방치된 현장",
            "after_state": "혜수를 비롯한 경찰들이 출동해 폴리스 라인을 치고 시신을 수거하는 상태",
            "description": "경찰이 비상령을 내리고 본격적인 사건 수사에 돌입한다."
          }
        ]
      },
      {
        "scene_index": 4,
        "scene_heading": "S#4. 옥탑방 / D",
        "beats": []
      },
      {
        "scene_index": 5,
        "scene_heading": "S#5. 옥탑방 안 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "연쇄살인 뉴스를 보며 표정이 어둡고 심각한 민숙",
            "after_state": "딸 수리영이 나타나자 황급히 TV를 끄고 다정하게 대하는 상태",
            "description": "민숙이 딸에게 걱정을 숨기고 일상적인 다정한 엄마의 모습으로 태도를 전환한다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "각자 일과 아르바이트를 하러 가야 하는 평범한 일상",
            "after_state": "수리영의 아르바이트가 끝난 뒤 마트에서 만나 저녁을 먹기로 약속한 상태",
            "description": "수리영이 엄마에게 저녁을 함께 먹자고 제안하고 민숙이 이를 수락한다."
          }
        ]
      },
      {
        "scene_index": 6,
        "scene_heading": "S#6. 해안가 도로 / D",
        "beats": []
      },
      {
        "scene_index": 7,
        "scene_heading": "S#7. 유기견 보호원 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "reaction",
            "before_state": "사납게 짖으며 날뛰는 맹견(로트와일러)",
            "after_state": "수리영과 눈을 마주치자 기세가 수그러들어 얌전해진 상태",
            "description": "통제 불가였던 맹견이 수리영의 눈빛 하나에 제압되어 얌전한 양이 된다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "엄마와 당연히 통화가 될 거라 생각한 수리영",
            "after_state": "엄마가 전화를 받지 않아 약간의 의아함을 느끼는 상태",
            "description": "수리영이 민숙에게 전화를 걸지만 연결되지 않는다."
          }
        ]
      },
      {
        "scene_index": 8,
        "scene_heading": "S#8. 번화가·대형 마트 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "엄마가 마트에서 일하고 있을 거라 믿고 찾아온 수리영",
            "after_state": "엄마가 낯선 이와 이야기한 뒤 조퇴했다는 사실을 알게 된 상태",
            "description": "동료 직원들을 통해 엄마의 예상치 못한 조퇴 소식과 낯선 인물의 존재를 전해 듣는다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "마트에서 엄마를 찾으며 헤매던 수리영",
            "after_state": "계속 연락이 닿지 않자 일단 집으로 돌아가기로 결심한 상태",
            "description": "수리영이 전화를 받지 않는 엄마를 찾기 위해 집으로 향한다."
          }
        ]
      },
      {
        "scene_index": 9,
        "scene_heading": "S#9. 해안가 / N",
        "beats": []
      },
      {
        "scene_index": 10,
        "scene_heading": "S#10. 옥탑방 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "굳게 잠겨 있는 옥탑방 현관문 앞의 낯선 남자",
            "after_state": "전단지를 틈새로 밀어 넣어 잠금을 풀고 집 안으로 침입한 상태",
            "description": "남자가 교묘한 수법으로 문을 열고 민숙의 집에 무단으로 들어간다."
          },
          {
            "beat_index": 2,
            "change_type": "situation",
            "before_state": "방 안에 무방비하게 혼자 있던 민숙",
            "after_state": "침입한 남자에게 덮쳐져 어깨를 물어뜯기며 비명을 지르는 상태",
            "description": "남자가 민숙을 기습적으로 공격하고 끔찍하게 훼손한다."
          }
        ]
      },
      {
        "scene_index": 11,
        "scene_heading": "S#11. 옥탑 방 밖 / N ~ S#12. 옥탑방 안 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "평범한 귀가",
            "after_state": "역겨운 냄새와 반쯤 열린 현관문을 통한 불길한 조짐",
            "description": "자전거를 세우고 집으로 올라가던 수리영이 역겨운 냄새를 맡고 열린 문을 보며 불길함을 느낀다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "불길한 예감 속에서 집 안을 살핌",
            "after_state": "자신의 방에서 끔찍한 상태의 민숙의 시신을 발견함",
            "description": "거실과 안방을 지나 자기 방문을 연 수리영이 핏자국과 함께 처참하게 죽어있는 엄마(민숙)의 시신을 발견한다."
          },
          {
            "beat_index": 3,
            "change_type": "reaction",
            "before_state": "시신 발견에 충격을 받아 이모(혜수)에게 전화함",
            "after_state": "기이한 현상(표식 변화, 붉은 원)을 목격하며 극도의 공포에 비명을 지름",
            "description": "패닉 상태로 전화를 걸던 중 민숙 손의 사진을 확인하려다 표식이 붉게 변하고 벽에 붉은 원이 그려지는 기현상을 보며 끔찍한 비명을 지른다."
          }
        ]
      },
      {
        "scene_index": 12,
        "scene_heading": "S#13. 옥탑방 외곽 / N ~ S#14. 옥탑방 안 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "방 안에서 기이한 현상에 압도됨",
            "after_state": "비명을 지르며 밖으로 도망쳐 도착한 혜수와 조우함",
            "description": "공포에 질려 계단을 뛰어 내려온 수리영이 마침 도착한 혜수에게 엄마가 죽어있다고 횡설수설 알린다."
          },
          {
            "beat_index": 2,
            "change_type": "situation",
            "before_state": "끔찍한 살인 현장과 시신",
            "after_state": "시신과 핏자국이 모두 감쪽같이 사라진 깨끗한 방",
            "description": "혜수와 김형사가 옥탑방에 올라가 확인하지만, 시신은 물론 혈흔까지 모두 사라진 빈 방만이 남아있다."
          },
          {
            "beat_index": 3,
            "change_type": "reaction",
            "before_state": "자신이 본 시신과 현장을 확신하며 주장함",
            "after_state": "김형사는 장난으로, 혜수는 악몽으로 치부하며 믿지 않음",
            "description": "수리영이 분명히 찻잔과 시신을 봤다고 억울해하지만, 김형사는 장난전화라며 화를 내고 혜수는 과로로 인한 악몽이라 여기며 수리영을 밖으로 데리고 나간다."
          },
          {
            "beat_index": 4,
            "change_type": "information",
            "before_state": "단순한 환각을 본 것인지 헷갈림",
            "after_state": "방안 물건의 위치가 바뀐 것을 인지하고 누군가의 개입을 확신/혼란스러워함",
            "description": "방을 나서던 수리영은 백팩과 인형의 위치가 시신 발견 당시와 미세하게 달라진 것을 눈치챈다."
          }
        ]
      },
      {
        "scene_index": 13,
        "scene_heading": "S#15. 해안가. 버스정류장 부근 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "무엇이 진실인지 몰라 멍하고 혼란스러운 상태",
            "after_state": "스스로 헛것을 본 것이라 합리화하며 엄마를 확인하기 위해 집으로 가려는 결심",
            "description": "수리영은 혜수의 위로 속에서 엄마가 그런 일을 당했을 리 없다고 스스로 합리화하며, 상태를 확인하기 위해 집으로 달려간다."
          },
          {
            "beat_index": 2,
            "change_type": "situation",
            "before_state": "수리영과 혜수가 대화하는 해안가",
            "after_state": "누군가 두 사람을 지켜보고 있는 감시의 시선 암시",
            "description": "수리영이 달려가고 혜수가 소리치는 가운데, 두 사람의 모습을 멀리서 지켜보는 누군가의 시선이 묘사된다."
          }
        ]
      },
      {
        "scene_index": 14,
        "scene_heading": "S#16. 경찰서 사무실 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "수리영을 진정시키고 사무실로 복귀함",
            "after_state": "민숙이 계속 전화를 받지 않자 점점 짙어지는 불길한 예감",
            "description": "혜수가 경찰서에 들어오며 민숙에게 전화를 걸지만, 계속 응답이 없자 내색하지 않았던 불길함이 커진다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "단순 가출이나 연락 두절로 여기는 김형사의 태도",
            "after_state": "민숙의 평소 성향으로 보아 심각한 상황임을 확신하고 위치 추적을 지시함",
            "description": "김형사는 기다려보자고 하지만, 혜수는 딸과의 약속을 어길 민숙이 아니라고 확신하며 즉각적인 위치 추적을 지시한다."
          }
        ]
      },
      {
        "scene_index": 15,
        "scene_heading": "S#17. 옥탑방 / 동틀무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "긴박했던 사건의 밤",
            "after_state": "동이 트는 새벽녘, 고양이가 지켜보는 스산한 옥탑방의 정적",
            "description": "새벽이 밝아오는 가운데, 검은 고양이가 불 켜진 옥탑방을 주시하며 담을 넘는 모습으로 미스터리한 분위기가 이어진다."
          }
        ]
      },
      {
        "scene_index": 16,
        "scene_heading": "S#18. 안방 안 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "환각 속 시신이 남아있을지도 모른다는 불안과 두려움",
            "after_state": "방 안이 깨끗이 비어있음을 확인하고 한숨을 돌리며 안도함",
            "description": "수리영이 조심스럽게 자신의 방을 확인한 후, 시신과 혈흔이 없다는 사실에 다행스러워한다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "단순한 연락 두절인지 불안해하는 상태",
            "after_state": "엄마의 사고를 확신하고, 혜수가 실종신고 후 위치추적 중이라는 사실을 인지함",
            "description": "혜수와의 통화를 통해 엄마의 실종신고가 접수되었고 위치를 추적 중이라는 소식을 듣게 된다."
          },
          {
            "beat_index": 3,
            "change_type": "emotion",
            "before_state": "전화를 끊고 안정을 찾으려 욕실에서 세수를 함",
            "after_state": "거울 속 붉은 원과 사진 속 얼굴이 뭉개지는 환각을 겪으며 공포와 혼란에 빠짐",
            "description": "수리영이 거울과 식탁의 사진을 통해 기이한 환각을 연속으로 경험하며, 스스로 뺨을 쳐 정신을 다잡으려 한다."
          }
        ]
      },
      {
        "scene_index": 17,
        "scene_heading": "S#19. 마트 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "엄마의 어제 동선이나 만난 사람에 대한 단서가 없음",
            "after_state": "엄마가 낯선 남자와 대화했다는 사실을 알게 되고 CCTV를 통해 단서를 찾으려 함",
            "description": "수리영이 마트 남자 직원으로부터 전날 엄마가 누군가와 이야기한 것을 알게 되어 CCTV 위치를 확인하고 혜수에게 상황을 알린다."
          }
        ]
      },
      {
        "scene_index": 18,
        "scene_heading": "S#20. 마트 총무과 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "CCTV 영상을 통해 단서가 될 남자의 모습을 식별할 수 있을 거라 기대함",
            "after_state": "해당 장면만 유독 어두워 남자 식별이 불가능하여 수리영의 불안이 깊어짐",
            "description": "CCTV 영상을 돌려보지만 대화를 나누는 부분만 어두워 확인할 수 없자 수리영이 초조해하고, 혜수는 영상 원본 복사를 요청한다."
          }
        ]
      },
      {
        "scene_index": 19,
        "scene_heading": "S#21. 경찰서 안 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "혜수를 기다리며 경찰서 자리에 얌전히 앉아있음",
            "after_state": "책상 위 끔찍한 살인사건 사진들이 환각 속 엄마 시신과 흡사해 충격을 받음",
            "description": "혼자 남겨진 수리영이 책상에 널린 살인사건 확대 사진을 보고 환각에서 본 엄마의 모습과 겹쳐 경악한다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "경찰서에서 결과를 초조하게 기다리던 상태",
            "after_state": "엄마 폰의 GPS 좌표가 해상임을 확인하고, 몰래 좌표를 적어 단독으로 찾아 나서기로 결심함",
            "description": "김형사의 모니터에 뜬 엄마 폰의 마지막 위치(바다 좌표)를 몰래 열어 확인한 수리영은 사색이 되어 좌표를 메모하고 서둘러 나간다."
          }
        ]
      },
      {
        "scene_index": 20,
        "scene_heading": "S#22. 경찰서 밖 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "경찰서 건물에서 서둘러 빠져나옴",
            "after_state": "목적지를 향해 지체 없이 자전거를 타고 다급하게 달림",
            "description": "경찰서를 나온 수리영이 주차된 자전거를 타고 급하게 어딘가로 이동한다."
          }
        ]
      },
      {
        "scene_index": 21,
        "scene_heading": "S#23. 어느 PC방 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "메모지에 적힌 막연한 좌표 수치만 가지고 있음",
            "after_state": "해상 좌표의 정확한 위치를 지도에서 확인하고 여러 장 인쇄하여 시각적 정보를 확보함",
            "description": "수리영이 PC방에 앉아 좌표를 검색하고, 해상 지도를 여러 장 출력하여 백팩에 챙겨 넣는다."
          }
        ]
      },
      {
        "scene_index": 22,
        "scene_heading": "S#24. 해안가 / 소나기",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "낮 시간대의 평범한 날씨 속에서 이동 중",
            "after_state": "천둥 번개와 폭우가 쏟아지는 악천후 속에서도 멈추지 않고 빗속을 질주함",
            "description": "갑작스러운 거친 소나기 속에서도 수리영은 엄마를 찾아야 한다는 일념으로 꿋꿋이 자전거를 타고 달린다."
          }
        ]
      },
      {
        "scene_index": 23,
        "scene_heading": "S#25. 옥탑방 안 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "엄마의 흔적을 찾기 위해 다시 돌아온 자신의 집",
            "after_state": "누군가 가재도구를 온통 헤집고 창문을 열어둔 침입 흔적을 발견함",
            "description": "집 안이 난장판이 되어 있고 누군가 침입한 발자국을 발견한 수리영이 호흡이 가빠지며 긴장한다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "난장판이 된 집안에 놀라며 당황한 상태",
            "after_state": "벽의 붉은 원과 꽂힌 피 묻은 사진을 통해, 환각 속 엄마 손에 있던 과거 사진이 물리적 단서로 등장했음을 확인하고 경악함",
            "description": "수리영이 자신의 방 벽에 나타난 붉은 원과 그 가운데 꽂힌 피 묻은 과거 사진이 이전 환각과 일치함을 보고 충격에 주저앉는다."
          },
          {
            "beat_index": 3,
            "change_type": "action",
            "before_state": "기이한 연속 상황에 정신이 혼미하여 침대에 주저앉음",
            "after_state": "사진을 유일한 단서로 꽉 쥔 채 무엇인가에 홀린 듯 다시 집 밖으로 나섬",
            "description": "엄마의 어린 시절 모습이 담긴 피 묻은 사진을 손에 꼭 쥐고, 수리영은 이끌리듯 백팩을 멘 채 옥탑방을 나선다."
          }
        ]
      }
    ],
    "total_beats": 36
  },
  "step_id": "beat_extract",
  "run_id": "6db5263a-bccb-4070-bf7c-58a807787d06",
  "resolved_model": "gemini-pro",
  "updated_at": "2026-04-30T21:25:07.107415+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50"
}