{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "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": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "지역 주민들 사이에 사건에 대한 소문만 무성한 상태",
            "after_state": "경찰의 수사 난항이 보도되며 주민들의 불안과 두려움이 더욱 고조된 상태",
            "description": "뉴스를 통해 범인의 윤곽조차 잡지 못하는 상황이 전해지며 지역 사회 전반의 불안감이 커진다."
          }
        ]
      },
      {
        "scene_index": 5,
        "scene_heading": "S#5. 옥탑방 안 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "앞치마를 두르고 어두운 표정으로 심각하게 TV 뉴스를 주시하는 상태",
            "after_state": "수리영이 방에서 나오자 황급히 TV를 끄고 다정한 태도를 꾸며내는 상태",
            "description": "연쇄살인 뉴스를 무겁게 지켜보던 민숙은 딸이 등장하자 불안한 기색을 숨기고 TV를 끈다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "각자의 일정을 확인하며 일상적인 대화를 나누는 상태",
            "after_state": "각자 일이 끝난 후 마트에서 만나 모처럼 밖에서 저녁을 먹기로 약속한 상태",
            "description": "수리영은 알바를 마치고 엄마가 일하는 마트로 찾아가 함께 저녁 식사를 하기로 결정한다."
          },
          {
            "beat_index": 3,
            "change_type": "information",
            "before_state": "엄마에게 애교를 부리며 포옹하던 상태",
            "after_state": "민숙의 손목에 있는 또렷한 표식을 인지하지만 어릴 적부터 익숙해 대수롭지 않게 넘기는 상태",
            "description": "수리영은 엄마의 손목에 평소보다 선명해 보이는 원형 표식을 발견하지만 일상적인 일로 치부한다."
          }
        ]
      },
      {
        "scene_index": 6,
        "scene_heading": "S#6. 해안가 도로 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "바닷바람을 맞으며 자전거를 타고 밝고 평온하게 이동하는 상태",
            "after_state": "사나운 개 짖는 소리가 들려오며 긴장감 있는 다음 상황이 예고되는 상태",
            "description": "이어폰을 끼고 여유롭게 해안도로를 달리던 수리영 주변으로 맹견이 짖는 소리가 들려온다."
          }
        ]
      },
      {
        "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": "수리영은 엄마에게 상황을 알리려 전화하지만, 연결되지 않자 일 때문에 바쁠 것이라 생각하고 전화를 끊는다."
          },
          {
            "beat_index": 3,
            "change_type": "action",
            "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",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "불안감을 안고 빌라에 도착해 급히 옥탑방 계단을 뛰어오르는 상태",
            "after_state": "갑작스레 훅 끼치는 역겨운 냄새를 맡고 불길한 이변이 발생했음을 감지한 상태",
            "description": "황급히 계단을 오르던 수리영은 평소와 다른 기분 나쁜 냄새를 맡고 집 안의 이상을 직감한다."
          },
          {
            "beat_index": 2,
            "change_type": "situation",
            "before_state": "역겨운 냄새에 당황하며 옥상에 막 도달한 상태",
            "after_state": "굳게 닫혀 있어야 할 현관문이 반쯤 열려 있는 것을 목격하고 침입을 확신하는 긴박한 상황",
            "description": "옥상에 올라선 수리영은 열린 철문을 확인하며 엄마에게 끔찍한 일이 생겼을지도 모른다는 위기에 직면한다."
          }
        ]
      },
      {
        "scene_index": 12,
        "scene_heading": "S#12. 옥탑방 안 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "엄마가 집에 있을 거라 생각하며 평온하게 집안을 살피는 상태",
            "after_state": "피투성이 방과 훼손된 엄마의 시신을 발견하고 충격과 공포에 얼어붙은 상태",
            "description": "수리영이 집으로 돌아와 엄마를 찾다가, 자신의 방 커튼 뒤에 죽어있는 엄마를 발견하고 경악한다."
          },
          {
            "beat_index": 2,
            "change_type": "action",
            "before_state": "너무 놀라 뒤로 주춤거리며 아무것도 하지 못하는 상태",
            "after_state": "위기 상황을 벗어나고자 이모 혜수에게 다급히 전화를 거는 상태",
            "description": "놀라 뒷걸음질 치던 수리영은 부들부들 떨면서도 혜수에게 전화를 걸어 도움을 요청한다."
          },
          {
            "beat_index": 3,
            "change_type": "reaction",
            "before_state": "전화 연결을 기다리며 혜수의 목소리에 기대려는 상태",
            "after_state": "엄마의 문신이 변하고 벽에 붉은 원이 그려지는 기이한 현상을 보고 소름 끼치는 비명을 지르는 상태",
            "description": "수리영은 시신 주변에서 설명할 수 없는 기괴한 환각 현상들을 목격하고 극도의 공포에 사로잡혀 소리를 지른다."
          }
        ]
      },
      {
        "scene_index": 13,
        "scene_heading": "S#13. 옥탑방 외곽 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "수리영이 홀로 공포에 질려 옥탑방 계단을 뛰어내려오는 상태",
            "after_state": "사이렌 소리와 함께 경찰인 혜수가 현장에 도착해 수리영과 조우한 상태",
            "description": "비명을 지르며 옥탑방을 빠져나온 수리영 앞에 혜수가 경찰차를 타고 도착한다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "수리영이 왜 혼이 빠진 상태인지 전혀 알지 못하는 혜수",
            "after_state": "엄마가 죽어있다는 말을 듣고 사태의 심각성을 인지한 상태",
            "description": "수리영이 엄마가 죽어있다고 말하자, 혜수는 크게 놀라며 김형사와 함께 즉각 현장인 옥탑방으로 뛰어 올라간다."
          }
        ]
      },
      {
        "scene_index": 14,
        "scene_heading": "S#14. 옥탑방 안 / N",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "reaction",
            "before_state": "자신의 방 안에 처참한 살인 현장이 그대로 있을 것이라 확신하는 수리영",
            "after_state": "핏자국도 시신도 없이 지나칠 정도로 깨끗하게 정돈된 방을 보고 당혹감에 휩싸인 상태",
            "description": "현장을 훑어본 혜수와 김형사가 아무것도 없다고 하자, 수리영이 방으로 뛰어들어가 말끔해진 내부를 보고 헷갈려하며 충격을 받는다."
          },
          {
            "beat_index": 2,
            "change_type": "relationship",
            "before_state": "형사들에게 자신이 목격한 증거(찻잔 두 개 등)를 호소하며 믿음을 구하는 수리영",
            "after_state": "김형사에게 장난전화 취급을 당하며 무시와 핀잔을 듣게 된 상태",
            "description": "수리영이 식탁 위의 찻잔을 근거로 항변하지만, 김형사는 귀찮아하며 장난전화로 치부하고 짜증을 낸다."
          },
          {
            "beat_index": 3,
            "change_type": "information",
            "before_state": "분명히 본 끔찍한 현장이 감쪽같이 사라진 사실에 혼란스러워하는 수리영",
            "after_state": "과로로 인한 악몽이라는 혜수의 위로를 들으며, 방 안 물건들의 미세한 위치 변화를 감지하는 상태",
            "description": "혜수가 수리영을 악몽을 꾼 것이라 달래며 밖으로 데리고 나가는 사이, 수리영의 백팩과 인형의 위치가 발견 당시와 미세하게 달라져 있음이 암시된다."
          }
        ]
      },
      {
        "scene_index": 15,
        "scene_heading": "S#15. 해안가. 버스정류장 부근 / 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": 16,
        "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": 17,
        "scene_heading": "S#17. 옥탑방 / 동틀무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "사건의 여파 속에 무겁고 어두웠던 밤의 옥탑방 외부",
            "after_state": "새벽녘 동이 트고 고양이가 지나가는 새로운 아침 시간대로의 전환",
            "description": "동틀 무렵, 검은 고양이가 불 켜진 옥탑방을 슬쩍 보고 담을 넘으며 밤이 지나고 날이 밝았음을 보여준다."
          }
        ]
      },
      {
        "scene_index": 18,
        "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": "reaction",
            "before_state": "가중되는 불안감을 다스리기 위해 세안을 하고 거울을 보는 평범한 일상 상태",
            "after_state": "욕실 벽에 나타났다 사라진 붉은 원 환각을 목격하고 호흡이 가빠지며 공포에 질린 상태",
            "description": "수리영이 거울을 보던 중 벽에 갑자기 붉은 원이 발생하는 환각을 보고 놀라 고개를 돌리지만, 환각은 이내 거짓말처럼 사라진다."
          },
          {
            "beat_index": 4,
            "change_type": "action",
            "before_state": "반복되는 기이한 환각에 자신이 왜 이러는지 몰라 비명을 지르며 멘붕에 빠진 상태",
            "after_state": "자신의 뺨을 강하게 치며 흔들리는 이성을 붙잡고 억지로 정신을 다잡는 상태",
            "description": "거실로 뛰쳐나온 수리영은 엄마 사진의 얼굴이 뭉개지는 끔찍한 환각에 비명을 지르지만, 곧 스스로 뺨을 때리며 정신을 차리려 애쓴다."
          }
        ]
      },
      {
        "scene_index": 19,
        "scene_heading": "S#19. 마트 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "엄마의 행방에 대한 단서가 없음",
            "after_state": "남자 직원과의 대화를 통해 엄마가 전날 낯선 남자와 대화했다는 사실을 앎",
            "description": "수리영이 마트 직원에게 물어 엄마가 실종 전 남자와 대화했다는 단서를 확보한다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "직원의 목격담만 들은 상태",
            "after_state": "CCTV 위치를 직접 확인하고 영상을 확보하기로 결심함",
            "description": "수리영이 마트 밖 CCTV 위치를 확인한 후, 혜수에게 연락해 CCTV 확인을 요청한다."
          }
        ]
      },
      {
        "scene_index": 20,
        "scene_heading": "S#20. 마트 총무과 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "CCTV 영상에서 엄마의 단서를 찾을 거란 기대감",
            "after_state": "화면이 어두워 식별이 불가능하자 극도의 불안감을 느낌",
            "description": "CCTV 영상을 돌려보지만 해당 부분만 유독 어두워 남자를 식별하지 못하자 수리영의 불안이 깊어진다."
          },
          {
            "beat_index": 2,
            "change_type": "action",
            "before_state": "현장에서 영상 분석에 난항을 겪음",
            "after_state": "추후 정밀 분석을 위해 CCTV 전체 영상 복사본을 확보함",
            "description": "혜수가 보안직원에게 CCTV 영상 전체의 복사본을 요청하여 가져가기로 한다."
          }
        ]
      },
      {
        "scene_index": 21,
        "scene_heading": "S#21. 경찰서 안 / D",
        "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": "information",
            "before_state": "엄마의 현재 위치를 전혀 모름",
            "after_state": "엄마의 휴대전화 위치추적 결과를 통해 위치가 바다임을 알아냄",
            "description": "아무도 없는 틈을 타 김형사의 모니터를 확인한 수리영은 엄마의 폰 마지막 위치가 바다 좌표라는 사실을 확인한다."
          },
          {
            "beat_index": 4,
            "change_type": "decision",
            "before_state": "단서를 확인하며 혜수를 기다림",
            "after_state": "좌표를 몰래 메모한 후 홀로 바다로 찾아가기로 결심함",
            "description": "수리영이 엄마의 마지막 위치 좌표를 메모한 뒤, 혜수를 기다리지 않고 몰래 사무실을 빠져나온다."
          }
        ]
      },
      {
        "scene_index": 22,
        "scene_heading": "S#22. 경찰서 밖 / D",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "경찰서에서 도주 결심만 한 상태",
            "after_state": "직접 확보한 단서를 좇아 자전거를 타고 달리기 시작함",
            "description": "수리영이 주차된 자전거를 타고 경찰서 밖을 서둘러 떠난다."
          }
        ]
      },
      {
        "scene_index": 23,
        "scene_heading": "S#23. 어느 PC방 / 실내",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "숫자로 된 좌표 메모만 가지고 있음",
            "after_state": "PC방에서 좌표의 실제 위치를 찾아 지도를 인쇄하고 길을 나설 준비를 함",
            "description": "수리영이 좌표를 인터넷 지도에 입력해 위치를 확인한 뒤 여러 장의 지도를 인쇄해 백팩에 챙긴다."
          }
        ]
      },
      {
        "scene_index": 24,
        "scene_heading": "S#24. 해안가 / 소나기",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "이동 가능한 평범한 흐린 날씨",
            "after_state": "천둥 번개를 동반한 세찬 소나기가 내리는 악천후",
            "description": "해안가에 잔뜩 낀 먹구름과 함께 천둥 번개가 치고 폭우가 쏟아진다."
          },
          {
            "beat_index": 2,
            "change_type": "emotion",
            "before_state": "목적지를 향해 자전거로 이동 중",
            "after_state": "거센 빗속에서도 오직 엄마를 찾아야 한다는 강렬한 집념에 휩싸임",
            "description": "악천후 속에서도 굴하지 않고 오로지 엄마를 찾겠다는 일념만으로 빗속을 뚫고 달린다."
          }
        ]
      },
      {
        "scene_index": 25,
        "scene_heading": "S#25. 옥탑방 안 / 해질 무렵",
        "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": "decision",
            "before_state": "연이은 기이한 현상에 정신이 혼미함",
            "after_state": "무언가에 홀린 듯 단서가 된 사진을 쥐고 다시 집을 나서기로 함",
            "description": "혼미한 정신 속에서도 발견한 사진을 손에 꽉 쥔 채 이끌리듯 가방을 메고 다시 밖으로 향한다."
          }
        ]
      },
      {
        "scene_index": 26,
        "scene_heading": "S#26. 포구 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "소나기가 쏟아지던 해안가",
            "after_state": "비가 그친 뒤 시야를 가리는 자욱한 안개가 깔린 텅 빈 포구",
            "description": "소나기가 그친 포구에 짙은 안개가 몰려와 배조차 보이지 않는 고립된 상황이 펼쳐진다."
          },
          {
            "beat_index": 2,
            "change_type": "relationship",
            "before_state": "배가 없어 홀로 막막하게 바다를 바라봄",
            "after_state": "안개를 뚫고 도착한 인우와 접촉하여 배를 타기로 합의함",
            "description": "하염없이 기다리던 수리영은 배를 몰고 나타난 인우에게 다가가 엄마를 찾기 위해 배에 태워달라고 설득하여 탑승을 허락받는다."
          },
          {
            "beat_index": 3,
            "change_type": "action",
            "before_state": "혜수의 계속된 전화를 무시하며 독단적으로 행동함",
            "after_state": "출발 전 혜수에게 안심시키는 음성메시지를 남김",
            "description": "배에 타기 전, 수리영은 걱정할 이모 혜수에게 잠깐 다녀올 데가 있다는 메시지를 남긴다."
          }
        ]
      },
      {
        "scene_index": 27,
        "scene_heading": "S#27. 옥탑방 안 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "연락 두절된 조카 수리영을 걱정하며 기다림",
            "after_state": "음성메시지를 통해 수리영이 홀로 어딘가로 목적을 갖고 떠났음을 인지함",
            "description": "혜수가 수리영이 남긴 녹음메시지를 확인하며 아이가 독단적으로 행동에 나섰음을 알게 된다."
          }
        ]
      },
      {
        "scene_index": 28,
        "scene_heading": "S#28. 바다 + 갑판 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "reaction",
            "before_state": "수리영이 지도를 보여주며 북동쪽 70km 지점으로 가자고 함",
            "after_state": "인우가 그곳엔 아무것도 없다며 수리영의 목적을 의아해함",
            "description": "수리영이 지도를 내밀며 목적지를 말하지만, 인우는 그곳이 단순한 바다일 뿐이라며 엄마를 찾는다는 수리영의 말을 의심한다."
          },
          {
            "beat_index": 2,
            "change_type": "emotion",
            "before_state": "인우가 수리영의 목적지에 대해 의문을 가짐",
            "after_state": "수리영이 오래된 사진을 보여주자 인우가 크게 당황하며 모른다고 회피함",
            "description": "수리영이 낡은 사진을 보여주며 장소를 묻자, 인우는 사진을 보고 몹시 당황한 기색을 숨기지 못하고 발뺌한다."
          },
          {
            "beat_index": 3,
            "change_type": "decision",
            "before_state": "수리영이 인우의 흔들리는 시선을 포착하고 집요하게 추궁함",
            "after_state": "압박감을 느낀 인우가 발작적으로 조타실로 달려가 뱃머리를 돌리려 함",
            "description": "수리영이 사진 속 '금월'이라는 글자를 가리키며 장소를 알고 있지 않냐고 다그치자, 인우는 견디지 못하고 배를 돌리기로 결심한다."
          }
        ]
      },
      {
        "scene_index": 29,
        "scene_heading": "S#29. 조타실 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "수리영이 배를 돌리려는 인우를 제지하며 실랑이를 벌임",
            "after_state": "수리영이 엄마가 그곳에 잡혀있을 수 있다며 분노 섞인 절박함으로 호소함",
            "description": "조타실로 따라 들어온 수리영이 배를 돌리려는 인우를 막아서며 엄마를 찾아야 한다는 절박하고 분노 어린 감정을 표출한다."
          },
          {
            "beat_index": 2,
            "change_type": "reaction",
            "before_state": "인우가 사진과 실종된 엄마의 연관성을 캐물음",
            "after_state": "수리영이 엄마의 이름(강민숙)을 밝히자 인우가 사색이 됨",
            "description": "인우가 사진과 엄마의 관계를 묻자 수리영이 엄마의 이름과 나이를 밝히고, 이를 들은 인우는 큰 충격을 받으며 얼굴이 굳어진다."
          },
          {
            "beat_index": 3,
            "change_type": "situation",
            "before_state": "수리영이 사색이 된 인우와 대치 중임",
            "after_state": "조타실 내부에 그려진 붉은 원을 발견한 수리영이 인우를 의심하며 의식을 잃고 쓰러짐",
            "description": "인우의 얼굴 너머로 방 안에서 봤던 기이한 붉은 원들을 발견한 수리영은 인우의 정체에 공포를 느끼다 혼미해지며 쓰러진다."
          }
        ]
      },
      {
        "scene_index": 30,
        "scene_heading": "S#30. 바다 / 해질 무렵",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "황금빛 그림자가 드리워진 바다 위를 항해함",
            "after_state": "배가 세상과의 경계를 지우는 듯한 짙은 안개 속으로 진입함",
            "description": "해가 지는 바다 위, 기절한 수리영을 태운 인우의 배가 미지의 영역을 암시하는 짙은 안개 속으로 서서히 빨려 들어간다."
          }
        ]
      }
    ],
    "total_beats": 60
  },
  "step_id": "beat_extract",
  "run_id": "18b5bd93-6a63-465d-b0c9-2571e3edb75c",
  "resolved_model": "gemini-pro",
  "updated_at": "2026-06-28T11:43:05.867824+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}