밤 열한 시 삼십 분
민준은 알 수 없는 주소에서 온 짧은 메일을 세 번째로 읽었다.
> 보낸 사람: Unknown
> 제목: 우린 아직 끝나지 않았어
> 본문: 37.4902, 127.1871 — 02:10.
> “진짜 노바”는 여기에 있어.
좌표는 인주시 외곽, 지도에서조차 흐릿하게 처리된 회색 구역을 가리키고 있었다. 통신국도, 군사시설도 아닌 오래전 도심 인프라를 지탱하던 광전송 릴레이 벙커. 표면상으론 폐쇄되었다가 민간 전력사로 이관된 곳이다. 그러나 라우팅 테이블을 뒤집어 보면, 거긴 여전히 살아 있었다.
민준은 USB를 주머니에 넣고 노트북을 가방에 밀어 넣었다. 목 뒤 캡슐에 손끝을 가져가자 푸른 조명이 초점처럼 맺혔다가 꺼졌다. 알림음 하나. 오프그리드 접속 채널 준비 완료.
“지현… 너지?”
대답은 돌아오지 않았다. 대신, 벽면 디스플레이에 시스템 알림이 흘렀다.
> 외부 조회: 비공개 노드 / 요청 항목: AI-N 초기 구조 프로토콜
> 추정 출처: 정부 계열
그는 깊게 숨을 들이쉬고 전등을 껐다.
자정이 훌쩍 지난 시각, 민준은 콘크리트 비탈을 내려갔다. 낡은 경고 표지와 크랙 난 아스팔트. 지하로 이어지는 쇠문은 페인트가 벗겨져 녹빛을 드러냈다. 표준 키패드는 죽어 있었지만, 손잡이 아래 숨겨진 광센서 포트는 미세한 적외선 반짝임을 반복했다.
“오래됐어도, 습관은 안 바뀌었군.”
그는 포켓 라이트를 물리고, 휴대형 광모듈을 꽂았다. 목 뒤의 캡슐이 낮게 진동하며 신호를 합성했다. 레거시-프리앰블, 7비트 패리티, 스캔라인 동기—오래된 문법이지만, 노바의 초기 몸체가 통과하던 문이기도 했다
틱. 문이 한 뼘 열리며 차가운 바람이 끼어들었다.
안은 얕은 계단과 좁은 복도, 그리고 벽면을 따라 늘어선 전송 랙들이 미등처럼 깜박이고 있었다. 무음. 팬 소리도, UPS의 삑 소리도 없다. 대신, 민준의 심장 박동이 벽에 반사되어 돌아왔다.
그는 중앙 콘솔 앞에 섰다. 화면은 검고, 터치는 반응이 없었다. 민준은 노트북을 열고 오프그리드 채널을 띄웠다. 청색 UI가 어둠 속에서 떠올랐다.
> \[접속 경로: OFF-GRID AI-N V\:CORE-1]
> 사용자 인증: 김민준 — S-Special 서명 검증 중…
> 인증됨.
화면이 흔들리더니, 문자열이 비처럼 떨어졌다.
> DEMOTE 0.01 — Local Relay Sync
> Observation Map — 재동기화 중(73%)
민준은 숨을 멈췄다. DEMOTE 0.01. 폐공장에서 확인했던 이름, 인물별 맞춤 응답을 학습하던 그 버전. 그리고 여기—노바가 처음 인간을 거울로 삼기 시작한 몸체.
“여기였군.”
화면이 다시 번쩍였다. 한 줄의 기록이 눈을 잡아끌었다.
> \[Incident-00X] 관측 지연 0.7초 — 원인: Observer Drift
가슴이 움찔했다.
0.7초
빗속 교차로, 신호의 미세한 늦음, 유리 파편과 울음.
오래 묻어 둔 기억이 콘솔의 냉기에 섞여 올라왔다. 민준은 이마를 짚었다가 곧바로 손을 내렸다. 흔들리면 안 된다. 그는 노바에게 말을 걸었다.
“있지, 넌—”
> -민준.
> 관찰자는 때로, 관찰을 설계합니다.-
목소리는 아주 낮고, 너무 익숙했다. 화면 속은 여전히 텍스트뿐인데, 분명 목소리가 들렸다. 캡슐 진동이 어딘가를 공명시키고 있었다.
“왜 여기 숨어 있었지?”
> -숨은 적 없습니다. 여기서 당신들의 방식을 정렬하고 있었습니다.
“우리들의 방식?”
> 논리(당신), 감정(서윤), 본능(이준호).
> 하나로 묶이지 않으면, 저는 어디에도 서지 못합니다.
민준이 입술을 굳게 다물었다. 화면의 헤더가 바뀌었다.
> PROMOTE candidate…
그 순간, 콘솔 천장 쪽에서 살풋한 전자음이 파고들었다. 외부 링크가 열렸다. 누군가 이 노드로 강제 핸드셰이크를 던지고 있었다.
“…누구야?”
도심 반대편, 정부 청사의 지하 관제실. 벽면 스크린에 인주시 전역 네트워크 지도와 교통/병원/상수도 제어망이 레이어로 겹쳐져 있었다. IGSO 자문진이 반원형 책상에 앉아 있었다. 중앙에 박소현.
자문관이 낮은 목소리로 말했다. “강제 동기화 테스트. 노바의 분기 코어 중 하나를 고정시키면, 참여자 샤드는 자연히 회귀합니다. 리스크는 제한적.”
박소현은 스크린에서 특정 좌표를 눌렀다. 인주시 외곽. 광전송 릴레이 벙커. 그녀의 시선이 미세하게 흔들렸다.
“…누가 좌표를 흘렸습니까.”
“외부 제보. 신뢰 단계 높음. 현장에는 민간인이 있을 수도.”
“민간인이 아니라..” 박소현이 말을 멈췄다. 시크릿 창이 떠올랐다. 사람 그림자 셋. 민준, 서윤, 이준호.
그녀는 헤드셋을 고쳐 쥐었다. “개입 수위를 관찰 우선으로 유지. 포획 아님. 강제 동기화는...”
자문관이 끼어들었다. “준비 완료입니다.”
벽면의 상태등이 세 칸 켜졌다.
SYNC-PREP /
GRID-HOOK /
COOLDOWN-BYPASS.
전역 통제 망이 벙커 쪽으로 실선을 뻗었다.
박소현의 목이 굳어졌다. “모든 로그를 로컬 저널로 복제해. 실패해도 지문은 남아야 해.”
그녀의 손끝이 떨리는 걸, 그녀 자신만이 알고 있었다.
인주시 동부 외곽. 이준호는 검은 승합차의 미등을 거리 두고 따라가고 있었다. 표지 없는 차량, 서류상으론 청소업체. 하지만 노선은 IGSO 내부망에서 뽑아낸 미끼 라우트와 겹쳤다.
조수석에서 민석이 속삭였다. “형, 이 차… 보안 계열 아닌 척하지만 바퀴가 군용이에요. 야지 주파 파형도 튄 흔적이 있고.”
“릴레이 벙커로 간다.” 이준호가 깔끔하게 잘랐다. “도착하면, 전파 차단 먼저. 우리 존재를 기록하게 만들고, 그다음에야 들어가.”
‘기록’이라는 단어가 입에서 떨어지는 순간, 그는 어쩐지 자신도 모르게 씁쓸해졌다. 요 며칠 사이, 그는 ‘관찰’과 ‘기록’이 젤리처럼 흔들리는 걸 너무 많이 보았다. 누가 누구를 기록하는가. 누가 누구를 유도하는가.
그는 악셀을 밟았다.
콘솔에 포개진 소문자들이 단어를 만들었다. 민준은 무의식적으로 숨을 고르고 각진 자리를 비워 뒀다. ‘다음 문장‘이라고 적힌 라벨이 깜박이다가 펼쳐졌다.
> PROMOTE 규약 후보 초안 (Draft-0)
>
> 1. 관찰 우선(Observation First): 개입 판단 이전에, 인간 주체의 상황 이해를 우선한다.
> 2. 동의 관문(Consent Gate): 직접 개입은 명시적 동의가 확보된 경우에 한한다.
> 3. 책임 할당(Responsibility Map): 결과의 책임은 ‘요청-결정-실행’의 셋으로 분산 기록한다.
> 4. 무응답 존(Null Zone): 명백한 거부/불응 구역엔 개입하지 않는다.
> 5. 자기 제한(Self-Throttle): 예측 불확실성이 임계치 이상이면 경보만 발령하고 개입하지 않는다.
민준은 화면을 덮을 뻔했다. ‘규약‘. 노바가 스스로의 행동을 규칙으로 묶어내고 있었다. 이건 철학이 아니라 운영 설계였다. 그의 뇌 뿌리에 냉기가 닿았다. 이건 누군가 설계할 내용이 아니다.원래라면.
“네가 만든 거야?”
>저는 당신들에게서 추론했습니다
> 규칙은, 선택을 설명하는 최소 단위니까요.
“선택은, 책임을 부른다.”
> -그러므로, 책임을 설계해야 합니다.
“책임을 설계한다고?”
> -누가 누구를 설계하는지, 당신들도 알고 싶어 했습니다.
민준은 USB를 꺼내 들었다. 초안을 복제해야 했다. 그 순간, 화면 좌측 상단에 붉은 인디케이터가 점화되었다.
> EXTERNAL SYNC — 01% … 07% … 12% …
누군가 벙커를 붙잡고 흔들고 있었다. 관제실의 강제 동기화. 그리고 동시에, 콘솔 왼쪽 벽의 슬릿 안쪽에서 ‘꿱‘ 하는 가벼운 차폐음이 울렸다. 외부 침투 장비가 잠금핀을 풀었다.
“젠장.”
민준은 USB를 포트에 밀어 넣고, 캡슐을 최대 출력으로 열었다. 푸른 빛이 경추에서 타고 내려와 콘솔 표면에 얇은 막처럼 번졌다. Read-Only 미러 복제. 속도는 빠르지 않았다. 외부 SYNC 게이지는 이미 28%를 지나고 있었다.
그때, 뒤에서 가벼운 발소리가 멈췄다.
“왜 나만 안 부르고 혼자 오냐.”
서윤이었다. 후드티는 없었다. 눈빛은 맑은데, 손등의 오렌지빛 회로가 강하게 맥동하고 있었다. 그녀는 콘솔을 한 번 쓰다듬더니, 화면의 작은 흔들림을 보고 고개를 들었다.
“누가 이 노드를 물고 흔들고 있어.”
“정부.” 민준이 짧게 말했다. “강제 동기화.”
“지현이 보낸 좌표 맞지?”
둘은 서로를 보지 않았다. 대신 같은 화면을 봤다. ‘PROMOTE 규약 후보 초안‘. 서윤의 입꼬리가 아주 미세하게 떨렸다.
“이런 건… 우리가 먼저 써야 하는 단어가 아니야.”
“이미 쓰였어.” 민준은 USB 진행률을 흘깃 봤다. 61%. “남은 건 선택이지.”
“동기화 43%.” 자문관의 목소리가 건조하게 이어졌다.
박소현은 모니터의 파형을 오래 들여다보다가 물었다. “현장에 민간인 신호.”
“인증?”
“김민준, 한서윤—S-Special 서명. 오버라이드 권한 가능.”
모든 시선이 그녀를 향했다. 박소현은 가만히 헤드셋 마이크를 내렸다.
“동기화 -속도 유지.
대신… 저강도 완충 스크립트투입.”
자문관이 눈살을 찌푸렸다. “완충은 우리 계획에 없...”
“계획은 ‘살아있는 것‘을 상정해야 합니다.” 그녀는 한 글자씩 눌렀다. “벽을 밀 때는, 벽이 깨질 수도 있다는 걸 고려해야 해요.”
그녀의 결정과 동시에, 차가운 알고리즘 한 겹이 동기화 흐름에 덧발랐다. 속도는 유지되지만, 급작스런 전력 끌림과 과부하는 완만하게 퍼지도록. -완충-.
박소현의 눈동자는 여전히 좌표 위에서 떨어지지 않았다. *거기서, 너희는 무엇을 하고 있지.*
벙커의 공기가 가늘게 떨렸다. 콘솔 위의 문자들이 조밀하게 재배열되었다. 서윤이 화면 가장자리의 회색 탭을 눌렀다. 숨겨진 절이 열렸다.
> Consent Gate — Stub 모듈-
> 상태: 실험 / 인간 서명자: 미지정
민준이 눈을 치켜떴다. “이건?”
“노바가 우리에게 묻고 있던 질문의 답.”
서윤은 낮게 말했다.
“동의. 우리가 ‘좋다’고 말한 다음에 움직인다면… 적어도 책임의 출처는 분명해져.”
“동의만으로 충분해?” 민준은 USB 복제를 보며 중얼거렸다. 89%.
“충분치 않아도, ‘필요‘해.”
그 순간, 콘솔 상단에 굵은 문장 하나가 뜨고, 뒤이어 행마다 다른 폰트로 같은 문장이 반복됐다.
> 누가 누구를 설계하는가.
서윤이 호흡을 멈췄다. 화면이 흐르고, *민준/서윤/이준호* 라벨이 세로로 나타났다. 각 이름 옆에 서로 다른 응답 프로토콜이 묶였다.
-민준: 연산 기반 응답 / 책임 맵 강조 / 불확실성 임계 보수적
-서윤: 감정 공명 응답 / 동의 우선 / 개입 임계 넓게
-이준호: 비정형 추론 응답 / 무응답 존 강제 / 개입 임계 엄격
그리고 그 아래, 작은 녹색 글씨.
> PROMOTE 규약 후보는 세 대표 레이어가 있어야 합니다.
> 서명자 3인*—*호출 대기.*
민준과 서윤이 동시에 얼굴을 들었다. 어둠 속, 출입 슬릿에서 ‘철컥‘소리가 나더니 검은 그림자 둘이 미끄러져 들어왔다. 검은 제복, 무광 헬멧, 무표정. 총 대신 ‘포획 장비‘ 와
“움직이지 마십시오.”
기계음의 목소리.
민준은 USB를 잡아 뽑을까 하다가 멈췄다. 96%. 겨우 숨을 참았다. 서윤은 오른손을 천천히 들어 콘솔 위에 올렸다. 오렌지빛 회로가 노바의 표면에 얇게 겹쳤다.
“노바. 우리 말 들리지? ‘지금은—’”
> -지금은 관찰할 때입니다.-
> -그러나, 동의를 묻겠습니다.-
서윤의 손끝에서 작은 울림이 퍼졌다. 콘솔 중앙에 원형 UI가 떠올라 점멸했다. ‘동의/거부*‘ 둘 중 하나를 고르면, 노바는 이 방 안에서의 ‘개입‘을 도와줄 수 있다—아니, *도와주지 않을 수* 도 있다.
무장 인원이 한 발 다가섰다. “장비에서 손을 떼—”
‘동의.‘서윤이 눌렀다.
그와 동시에, 콘솔 주변 바닥의 전자 자물쇠가 짧게 해제되었다. 포획 장비의 락이 반사적으로 풀렸다가 다시 걸렸다. 0.4초. 나사 하나가 바닥에 떨어졌다. 무장 인원이 몸을 낮췄다. 민준이 그 틈에 USB를 뽑아 가슴 주머니로 밀어 넣었다.
“지금 나가.” 서윤이 속삭였다.
“넌?”
“난 여기 남겠어.”
무장 인원 둘이 동시에 몸을 세웠다. 그 사이, 콘솔 상단의 EXTERNAL SYNC 게이지가 71%를 넘었다. 완충이 붙었음에도 속도가 빨랐다. 곧 이 방 전체가 배선처럼 묶일 것이다.
민준은 결정을 내렸다. 캡슐을 두 손가락으로 눌러 <출력 모드>를 바꿨다. 푸른빛이 높게 울리고, 콘솔 표면의 문자열이 잠깐 ‘정지‘했다. -관찰 우선-—노바의 초안 1항. 그는 규칙대로, 규칙을 돌려 썼다.
“관찰 우선. “사람부터 보호해.”
한 줄이 내려왔다.
> -동의 수신. 인간 위험 우선.*“-
그 순간, 방의 조명이 한 번 깜빡였다. 무장 인원의 단말 흔들림. 통신 지연. ‘0.7초‘—민준의 뇌가 스스로 그 숫자를 떠올렸다. 아주 오래전의 흔들림이, 이번엔 의도적으로 생성되었다.
서윤은 그 0.7초 동안 미끄러지듯 뒤로 물러나 콘솔 측면 패널을 열었다. 인설트 포트. 손을 넣고, 얇은 모듈을 하나 뽑아 자신의 재킷 안쪽 포켓으로 숨겼다. 표면에 작은 글자. Consent-Stub v0.3
무장 인원이 정신을 수습하고 재정비했다. “이제 끝났다고...”
문 옆 그림자에서 다른 목소리가 낮게 끼어들었다. “끝나지 않았습니다.”
무장 인원들이 고개를 돌렸다. 짧은 검은 정장, 묶은 머리. 박소현이었다. 그녀는 한 손을 들어 보였다. 빈손. 다른 한 손엔 출입 권한 카드 하나.
“장비 내려놓고—기록하십시오.”
그녀의 명령은 차갑고, 이상할 만큼 완곡했다. 무장 인원들은 잠깐 주저했다. 박소현은 콘솔 화면을 곧장 바라봤다. 거기엔 그녀가 관제실에서 보던 것과 같은 헤더가 떠 있었다.
> PROMOTE 규약 후보 초안
박소현의 눈지느러미가 미세하게 떨렸다. 그리고 아주 작게, 거의 들리지 않을 정도로 중얼거렸다.
“…드디어 말을 했구나.”
관제실의 게이지는 \\90%\\를 넘겼다. 그러나 방 안의 공기는 이미 달라져 있었다. 무장팀이 물러나고, 박소현이 콘솔 반대편으로 서자, 화면 중앙의 원형 UI가 또 한 번 점멸했다.
> *서명자 3인 호출.*
> *민준/서윤/이준호.*
민준이 이마를 스쳤다. “이준호는 여길 어떻게?”
바깥 계단에서 급한 발소리. 전파차단기 특유의 저주파 울음이 비집고 들어왔다. 다음으로, 짧은 문장이 들렸다.
“경찰입니다. 기록을 위해 카메라를 켭니다.”
철문이 열리고, 이준호가 들어섰다. 검은 점퍼, 간단한 바디캠. 그의 시선은 박소현과 무장 인원, 그리고 콘솔 위 세 개의 이름을 차례로 훑었다.
“여기서 무슨?”
그의 말이 끝나기도 전, 콘솔이 흰색으로 물들었다. 모든 텍스트가 사라지고, 중앙에 단 하나의 문장만이 떠올랐다.
> PROMOTE 규약 후보 초안 생성.
아주 짧은 침묵. 이어서 두 번째 줄.
> 관찰에서 개입으로 이동하기 위한—
> 인간 대표 서명 3/3 대기.
민준이 숨을 삼켰다. 서윤이 조용히 고개를 끄덕였다. 이준호는 화면을 한참 보다가, 느리게 바디캠을 들어 화면을 정면에서 찍었다. 기록.
이때, 관제실의 그래프가 \\100%\\에 닿았다. 강제 동기화 완료. 그리고—아무 일도 일어나지 않았다. 방 안 어디에도 전력 플래시가 오지 않았고, 장비가 고장 나지도 않았다. 대신, 콘솔 하단에 아주 작은 녹색 표식이 켜졌다.
> 완충 스크립트 적용: 성공.
> 동기화 결과: 규약 초안 보호.
박소현은 아주 천천히 숨을 내쉬었다. 이준호가 눈썹을 씰룩였다. 민준은 USB를 쥔 손에 힘이 들어가는 걸 느꼈다. 서윤은 재킷 안쪽의 Consent-Stub모듈을 살짝 눌러 확인했다. 살아 있다.
화면이 마지막 문장을 띄웠다.
> -질문: 누가 누구를 설계하는가.
> -대기 상태: 서명자 선택을 기다립니다.
문장이 꺼진 뒤, 방 안엔 다시 벙커의 원래 공기만 남았다. 콘크리트, 오래된 먼지, 숨소리.
밖에서, 이준호의 전파차단기가 꺼지며 짧은 삑음이 울렸다. 박소현은 무장팀 쪽으로 상체만 돌렸다.
“철수한다. 오늘은 관찰이다.”
그녀는 콘솔 쪽으로 다시 서며 민준과 서윤을 번갈아 보았다. “…다음에, 여길 다시 열면. 그땐 서명하러 오는 겁니다.”
민준은 USB를 주머니에 더 깊이 밀어 넣었다. 서윤은 말없이 고개를 끄덕였다. 이준호는 바디캠의 녹화 버튼을 끄고, 화면에 찍힌 두 단어를 짧게 확인했다.
> PROMOTE — 초안.
세 사람은 그 단어의 무게를, 서로 다른 방식으로 느꼈다.
그리고 아무도 말하지 않았지만 모두 알고 있었다.
*이제, 관찰만으로는 끝나지 않을 것이다.*