{
  "status": "completed",
  "completed_count": 11,
  "applicable_count": 11,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "scene_index": 1,
        "scene_heading": "#1. 고등학교 교실 – 오전",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "무심한 표정으로 정부 홍보 영상을 시청하던 상태",
            "after_state": "안경을 벗고 창밖의 새를 바라보며 자유로움에 생기를 느끼는 상태",
            "description": "현석은 무심하게 영상을 보다가 AR 안경을 벗어 던지고, 창밖으로 날아가는 새를 보며 일시적으로 눈빛이 살아난다."
          },
          {
            "beat_index": 2,
            "change_type": "information",
            "before_state": "일상적인 수업 시간의 고요하고 건조한 분위기",
            "after_state": "수험번호 및 시험장 위치 발송 소식을 듣고 교실 전체에 짙은 긴장감이 조성된 상태",
            "description": "선생님이 오후에 수험번호와 시험장 위치가 무작위로 발송된다고 공지하자 교실에 알 수 없는 긴장이 깔린다."
          },
          {
            "beat_index": 3,
            "change_type": "reaction",
            "before_state": "극도의 긴장감 속에서 안절부절못하며 대기하던 상태",
            "after_state": "선생님의 공지 이후 짙어진 압박감에 깊은 숨을 내쉬며 굳어지는 상태",
            "description": "시험 관련 공지가 내려지자 제호는 압박감을 이기지 못하고 깊게 숨을 내쉬며 두려움을 드러낸다."
          }
        ]
      },
      {
        "scene_index": 2,
        "scene_heading": "#2. 학교 계단 – 점심",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "고요한 계단에서 핸드폰 버튼을 누르지도 못한 채 홀로 극도로 긴장한 상태",
            "after_state": "현석이 나타나 셔터를 누르며 장난스럽게 분위기를 깨는 상태",
            "description": "제호가 떨리는 손으로 핸드폰을 쥐고 긴장하던 중, 현석이 위쪽에서 사진을 찍으며 장난스럽게 등장한다."
          },
          {
            "beat_index": 2,
            "change_type": "reaction",
            "before_state": "현석의 장난스러운 인사를 받은 상태",
            "after_state": "현석에게 인생을 포기한 놈이라며 차갑게 선을 긋는 상태",
            "description": "현석이 미소를 띠며 말을 걸자, 제호는 떨리는 목소리지만 차갑게 현석을 쏘아붙인다."
          },
          {
            "beat_index": 3,
            "change_type": "information",
            "before_state": "현석의 수험번호를 몰라 단순히 거리감을 두고 있던 상태",
            "after_state": "현석과 자신의 수험번호가 'DJH54'로 동일함을 확인하고 심장이 내려앉는 상태",
            "description": "현석이 자신의 수험번호를 보여주고 제호도 같은 번호임을 확인하면서 큰 충격에 휩싸인다."
          },
          {
            "beat_index": 4,
            "change_type": "decision",
            "before_state": "같은 수험번호임을 확인하고 충격적인 현실에 직면한 상태",
            "after_state": "현석이 무거운 분위기를 전환하며 과거에 약속한 배낭여행을 떠나자고 제안하는 상태",
            "description": "충격에 빠진 제호에게 현석은 태연한 척하며 중학교 때 약속했던 배낭여행을 가자고 제안한다."
          },
          {
            "beat_index": 5,
            "change_type": "emotion",
            "before_state": "현석의 예기치 못한 여행 제안에 말을 잇지 못하고 당황한 상태",
            "after_state": "분노, 두려움, 혼란이 교차하며 끝내 입을 다물고 굳어버린 상태",
            "description": "제호는 현석의 제안에 속마음이 복잡하게 얽혀 말문이 막히고 얼굴이 굳어진다."
          }
        ]
      },
      {
        "scene_index": 3,
        "scene_heading": "#3. 서울 골목길 – 오후",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "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": "제호가 흡수될 것을 알면서도 이러냐고 날카롭게 묻자, 현석이 자유롭게 살고 싶다며 진심을 답하고 제호는 크게 동요한다."
          }
        ]
      },
      {
        "scene_index": 4,
        "scene_heading": "#4. 농구코트 – 오후 늦게",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "action",
            "before_state": "텅 빈 농구코트에 들어선 상태",
            "after_state": "현석이 카메라를 세팅하고 농구공을 튕기며 제호를 도발하여 시합을 시작하는 상태",
            "description": "현석이 카메라로 녹화를 시작한 뒤 제호를 도발하고, 둘은 함께 농구 시합을 시작한다."
          },
          {
            "beat_index": 2,
            "change_type": "emotion",
            "before_state": "처음엔 가벼운 마음으로 웃으며 농구를 하던 상태",
            "after_state": "경기가 치열해지며 계속 밀리자 초조함이 극에 달해 손끝이 떨리는 상태",
            "description": "농구가 거칠어지며 제호가 계속 밀리게 되고, 볼을 빼앗겨 넘어지면서 깊은 초조함을 느낀다."
          },
          {
            "beat_index": 3,
            "change_type": "emotion",
            "before_state": "치열하게 몸을 부딪히며 농구를 하던 상태",
            "after_state": "바닥에 누워 현석의 승리 선언을 들으며 다가올 운명에 대한 두려움에 압도된 상태",
            "description": "경기가 끝나고 바닥에 드러누운 채 제호는 하늘을 바라보며 패배감과 두려움으로 가득 찬다."
          }
        ]
      },
      {
        "scene_index": 5,
        "scene_heading": "#5. 서울 거리 – 석양",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "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": "현석이 완전체가 된 자신의 누나가 정체성을 잃어버렸다는 아픈 과거를 제호에게 털어놓는다."
          },
          {
            "beat_index": 4,
            "change_type": "reaction",
            "before_state": "현석의 고백을 듣고 혼란스러워하는 상태",
            "after_state": "현석의 슬픔을 깊이 이해하고 다가가 조심스럽게 어깨를 다독이며 위로하는 상태",
            "description": "현석의 이야기를 들은 제호는 흔들리는 눈빛으로 바라보다가, 가만히 그의 어깨를 두드리며 위로를 건넨다."
          }
        ]
      },
      {
        "scene_index": 6,
        "scene_heading": "#6. 시험장 앞 – 다음 날",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "decision",
            "before_state": "시험장 앞 벤치에서 묵직한 침묵 속에 다가올 융합을 대기하던 상태",
            "after_state": "현석이 자신의 카메라를 건네며 사후의 삶을 제호에게 탁의하는 상태",
            "description": "현석은 제호에게 카메라를 건네며, 자신이 사라진 뒤에도 좋은 것들을 담아달라고 부탁한다."
          },
          {
            "beat_index": 2,
            "change_type": "reaction",
            "before_state": "현석의 갑작스러운 부탁에 슬픔이 차오르는 상태",
            "after_state": "현석의 마음을 담은 카메라를 조심스럽게 받으며 그의 뜻을 수용하기로 결심한 상태",
            "description": "제호는 조심스럽게 카메라를 받아들고 알았다고 대답하며 현석의 마지막 부탁을 받아들인다."
          }
        ]
      },
      {
        "scene_index": 7,
        "scene_heading": "#7. 시험장 복도",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "시험장 앞에서 제호에게 덤덤하게 카메라를 건네주던 현석의 상태",
            "after_state": "복도 모퉁이에서 홀로 죽음에 대한 공포를 이기지 못하고 눈물을 터뜨리는 상태",
            "description": "차가운 시험장 복도에서 현석은 참아왔던 공포와 슬픔에 휩싸여 홀로 목을 움켜쥐고 오열한다."
          },
          {
            "beat_index": 2,
            "change_type": "reaction",
            "before_state": "마음의 준비를 하며 복도를 서성거리던 제호의 상태",
            "after_state": "현석의 처절하게 우는 모습을 보고 충격을 받아 다가가지 못하고 벽에 기대어 숨을 죽이는 상태",
            "description": "제호는 홀로 우는 현석의 약한 모습을 발견하고 놀란 채 다가가지 못하고 몸을 숨긴다."
          }
        ]
      },
      {
        "scene_index": 8,
        "scene_heading": "#8. 시험장 앞 벤치",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "emotion",
            "before_state": "복도에서 몰래 울고 돌아와 아무 일 없는 척 태연하게 앉아 있는 현석의 상태",
            "after_state": "제호의 질문에 흔들리며 살고 싶다는 간절한 마음을 숨기지 못할 뻔한 상태",
            "description": "제호가 붉어진 눈으로 두렵냐고 묻자, 현석은 잠시 망설이다 '살고...'라며 살고 싶은 진심을 내비친다."
          },
          {
            "beat_index": 2,
            "change_type": "situation",
            "before_state": "벤치에서 마지막으로 진심 어린 대화를 나누던 상태",
            "after_state": "안내음이 울려 대화가 강제로 중단되고 현실의 벽을 체감하는 상태",
            "description": "'다음 조, 입장하세요'라는 안내 방송이 울리면서 두 사람의 대화가 끊기고 돌이킬 수 없는 순간이 다가온다."
          },
          {
            "beat_index": 3,
            "change_type": "relationship",
            "before_state": "서로의 슬픔을 간직한 채 벤치에 나란히 앉아 있던 상태",
            "after_state": "현석이 손을 내밀고 제호가 이를 꽉 잡으며 죽음 앞에서도 굳건한 유대를 다지는 상태",
            "description": "융합실로 향하기 전, 현석이 내민 손을 제호가 꼭 잡으며 두 사람은 두려움 속에서 서로를 의지한다."
          }
        ]
      },
      {
        "scene_index": 9,
        "scene_heading": "#9. 실험실 내부",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "시험장 밖 벤치에서 맞잡은 손을 통해 서로 의지하던 상태",
            "after_state": "붉은 경고등과 기계음이 가득한 실험대 위에 결박되어 완벽히 무력화된 상태",
            "description": "벤치에서 벗어나 실험실로 들어온 두 사람은, 45도로 기울어진 실험대 위에 결박되어 융합 수술을 기다리게 된다."
          },
          {
            "beat_index": 2,
            "change_type": "action",
            "before_state": "실험대 위에 결박된 채 의식을 유지하고 있던 상태",
            "after_state": "기계음이 고조되며 의식이 희미해지고 서서히 눈을 감으며 융합에 돌입하는 상태",
            "description": "안내 방송과 함께 융합이 시작되고 기계음이 고조되자, 두 사람은 서서히 눈을 감으며 융합 과정에 몸을 맡긴다."
          }
        ]
      },
      {
        "scene_index": 10,
        "scene_heading": "#10. 현석의 집 – 다음 날 아침",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "information",
            "before_state": "실험실에서의 융합 직후, 누구의 신체로 깨어났는지 인지하지 못해 혼란스러운 상태",
            "after_state": "거울 속 자신의 얼굴을 확인하고 제호 대신 자신이 살아남았다는 사실에 충격을 받은 상태",
            "description": "잠에서 깬 현석은 화장실 거울을 보고 자신이 살아남았다는 사실을 깨달으며 극심한 멘탈 붕괴를 겪는다."
          },
          {
            "beat_index": 2,
            "change_type": "emotion",
            "before_state": "자신이 살아남았다는 사실에 생존 본능적으로 찰나의 안도를 느끼는 상태",
            "after_state": "제호의 희생에 대한 끔찍한 죄책감과 슬픔에 휩싸여 오열하는 상태",
            "description": "현석은 순간적인 안도감을 느끼지만, 이내 자신이 겪는 현실의 무게와 죄책감에 무너져 절규하며 눈물을 터뜨린다."
          },
          {
            "beat_index": 3,
            "change_type": "situation",
            "before_state": "홀로 죄책감에 빠져 오열하며 현실을 부정하던 상태",
            "after_state": "안도하는 어머니의 포옹과 부작용으로 고통받는 누나의 울음소리가 겹치며 비극적인 현실에 완전히 억눌린 상태",
            "description": "어머니가 살아 돌아와서 고맙다며 그를 안아주지만, 옆방에서 완전체의 부작용을 겪는 누나의 울부짖음이 들려오자 현석의 표정은 처참하게 무너져 내린다."
          },
          {
            "beat_index": 4,
            "change_type": "information",
            "before_state": "가족의 참혹한 현실 앞에 절망하며 주저앉아 있던 상태",
            "after_state": "스마트폰의 기만적인 완전체 축하 메시지를 확인하고 기묘한 허탈감과 괴로움에 빠진 상태",
            "description": "스마트폰 화면에 기괴하고 찢긴 미소를 짓는 완전체 축하 애니메이션이 등장하며, 현석은 시스템의 잔혹함에 뼈저린 고통을 느낀다."
          }
        ]
      },
      {
        "scene_index": 11,
        "scene_heading": "#11. 서울 거리 – 몇 년 후",
        "beats": [
          {
            "beat_index": 1,
            "change_type": "situation",
            "before_state": "융합 직후 절망과 죄책감 속에서 오열하며 무너져 내렸던 과거의 상태",
            "after_state": "수년이 흘러 삭막하고 통제된 사회 속에서 낡은 카메라를 든 채 초라하게 배회하는 무기력한 상태",
            "description": "몇 년의 시간이 흐른 뒤, 현석은 회색빛 도시에서 무표정한 학생들 사이를 초라한 몰골로 걸어가며 허탈함을 느낀다."
          },
          {
            "beat_index": 2,
            "change_type": "decision",
            "before_state": "자신이 왜 살아남았는지 이유를 찾지 못해 오랜 시간 방황하며 세상을 관망하던 상태",
            "after_state": "제호를 떠올리며 자신이 살아남은 선택이 틀리지 않았음을 삶으로 증명해내겠다고 결심한 상태",
            "description": "현석은 내면의 독백을 통해 제호에게 말을 건네며, 자신이 살아남은 이유와 그 가치를 스스로 증명해 보이겠다는 굳은 결심을 다진다."
          },
          {
            "beat_index": 3,
            "change_type": "action",
            "before_state": "거리를 무기력하게 걸으며 내면의 갈등과 결의를 다지던 상태",
            "after_state": "결심을 행동으로 옮겨 과거 제호에게 부탁하려 했던 카메라를 직접 들어 세상을 기록하기 시작한 상태",
            "description": "현석은 걸음을 멈추고 낡은 카메라를 들어올려 서울 거리의 풍경을 렌즈에 담으며 새로운 발걸음을 뗀다."
          }
        ]
      }
    ],
    "total_beats": 34
  },
  "step_id": "beat_extract",
  "run_id": "d11dcf0f-4fce-4b93-b4ab-b04ecce5f251",
  "resolved_model": "gemini-pro",
  "updated_at": "2026-08-24T07:45:10.039312+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}