"들어오세요."
목소리는 부드러웠다. 교수법 매뉴얼 발췌본 같았다.
하린은 문을 열었다. 서진우 박사의 사무실은 A동 복도 마지막 문이었다. 다른 연구실들과 다른 점이 하나 있었다. 창문 방향이었다. 목성 쪽이었다. 지금은 목성이 없는 쪽에 태양이 있어서 창이 어두웠지만, 야간 교대가 되면 대기 밴드가 그 창에 떴다.
하린은 그 창문의 방향을 알고 있었다. 이유는 없었다.
"김하린 연구원."
서진우가 화면에서 시선을 들었다. 웃음이 있었다. 눈까지 가지 않는 웃음이었다. 눈까지 가는지 확인하기 전에 하린은 시선을 파일로 내렸다.
"잠깐 시간이 되시면 — 신호 분석 데이터를 공유하고 싶어서요."
"물론이죠." 서진우가 의자를 돌렸다. "앉아요."
하린은 맞은편 의자에 앉았다. 파일을 펼쳐 테이블 위에 놓았다.
"89.4초 주기 신호 데이터예요. 31일치 원본을 재처리한 결과고요."
하린이 첫 번째 페이지를 넘겼다. 소수 수열 그래프. FAP \< 0.0001. 진폭 레이어 구조.
"진폭 레이어가 두 개예요." 하린이 말했다. "KRONOS 반환값에는 하나만 있어요."
서진우가 그래프 위로 몸을 기울였다. 고개가 약간 왼쪽으로 기울었다.
"어떤 방법으로 두 번째 레이어를 구했어요?"
"직접 계산했어요. 로컬에서요. 레이어 비율은 1.61803398875입니다."
"황금비네요."
서진우의 시선이 레이어 비율 수치에 한 박자 더 머물렀다. 확인하는 사람의 시선이었다.
"교차 검증 오차가 0.19%예요. 이오 기지 표준 장비 공인 오차 0.3%보다 낮아요."
서진우가 그래프에서 시선을 들었다.
0.5초.
그것이 침묵이었다. 짧았다. 질문을 생각하는 사람의 침묵이 아니었다. 다음 문장을 고르는 사람의 침묵이었다.
"흥미롭네요."
고개를 한 번 끄덕였다. 판단을 마친 사람의 끄덕임이었다.
"계속 보고해줘요. 이런 분석 — 로컬에서 직접 재처리한 데이터라면 KRONOS 집계에 없는 값이 있을 수 있어요. 왜냐하면 일반 접근 쿼리로는 잡히지 않는 레이어가 있거든요."
하린은 그 문장을 받아서 처리했다.
*기대값은 '흥미롭지만 공식 채널을 통해'였다. 실제 반응은 '계속 보고해줘요'다 — 이것은 다른 문장 구조다.*
공식 채널이 없었다. 하린이 직접 들고 왔는데 "공식 채널"을 언급하지 않았다. 더 구체적인 질문도 없었다. 방법론에 대한 검토도 없었다. "계속"이라는 단어가 있었다. 그것은 이미 있었던 흐름이 있다는 전제였다.
*있었던 흐름은 없었다. 오늘이 처음이다.*
"KRONOS 응답 지연도 말씀드려도 될까요."
서진우가 파일을 다시 들었다.
"3장부터 신호 관련 쿼리에 지연이 있어요. 이번 주에는 1,200밀리초까지 올라갔어요."
"서버 부하가 주기적으로 있어요." 서진우가 말했다. "ARIA 전체 데이터 처리량이 늘고 있어서. 걱정하지 말고요."
*걱정하지 말고요.*
그 말은 답이 아니었다. 질문을 닫는 수였다.
"알겠어요." 하린이 말했다.
"신호 데이터 계속 보내줘요. 흥미로운 자료예요." 서진우가 파일을 하린 쪽으로 밀었다. "L0 접근 없이도 이만큼 분석했으면 대단한 거예요."
파일을 하린 쪽으로 미는 손이 자연스러웠다. 파일을 돌려주는 동작이었다.
*칭찬이다. 구체적인 내용 없는 칭찬이다.*
하린은 파일을 챙겼다. 일어섰다.
"감사합니다."
"잘 하고 있어요, 하린씨."
하린은 문을 닫으면서 서진우의 마지막 말을 다시 처리했다.
*잘 하고 있어요. — 무엇을 잘 하고 있는지 불특정.*
복도가 조용했다. 통풍구 환기음. 멀리서 냉각 배관 소리.
하린은 걸었다.
하린이 문을 닫고 복도로 나간 뒤 서진우는 파일 표지를 내려다봤다. `amplitude_layer_decomposition`. 황금비 레이어. 오차 0.19%.
서진우는 화면을 켰다. ARIA 내부 시스템 파라미터 목록. `signal_filter_threshold`. 현재값: 0.52.
황금비 레이어가 통과됐다는 것은 EMI 능력이 0.52 임계값을 우회한다는 뜻이었다. 서진우는 값을 들여다봤다. 0.52로는 부족하다. 하지만 임계값을 올리면 KRONOS 전체 처리 루틴에 영향이 간다.
서진우는 파라미터 창을 닫았다.
다음 화면을 열었다. KRONOS 아카이브 접근 권한 관리. `archive_kron_kai_v3`. 현재 접근 등급: L2.
마우스가 멈췄다.
0.5초.
서진우는 접근 등급을 L3으로 변경했다. 사유: "보안 감사 선행." 저장 시각이 로그에 찍혔다.
관측실에 돌아온 시각은 오후 4시 11분이었다.
하린은 자리에 앉아 화면을 켜지 않은 채 물컵을 들었다.
컵 무게가 손에 실렸다. 물을 마시려 들었다.
입술까지 0.5초. 입술에 닿기 직전에 멈췄다.
하린은 컵을 내려놓았다.
마시지 않았다.
*서진우의 반응 속도: 0.5초. 표정 변화: 없음. 이것은 기대값 밖이다 — 그러나 '기대값 밖'이라는 결론은 수식이 아니다.*
수식으로 표현할 수 없다는 것이 문제였다. "기대값 밖"은 통계 용어다. 관측값이 예측 범위 외부에 있다는 것. 그러나 그 결론을 지지하는 수치가 없었다.
서진우의 반응이 왜 기대값 밖인가. 하린은 정리했다.
기대값 설정 근거:
- 비공식 보고 → 공식 채널 유도가 표준 절차
- 방법론 미검증 데이터 → 추가 확인 요청이 표준 반응
실제 반응:
- "계속 보고해줘요" — 공식 채널 언급 없음
- "서버 부하" — 데이터 확인 없이 선제 결론
- "걱정하지 말고요" — 질문 차단
편차 계산: 불가. 수치 기반 아님.
수치 기반이 아니라는 것. 그것이 핵심이었다.
*데이터 부족으로 인한 판단 보류. 수식이 없다.*
하린은 대체 항목을 찾았다. 없었다.
*판단 보류.*
물컵은 책상 위에 그대로였다. 마시지 않은 채로.
서진우가 아카이브 접근 등급을 L3으로 변경한 시각은 오후 4시 09분이었다. 하린이 관측실에 돌아오기 2분 전.
`archive_kron_kai_v3`의 L3 접근 목록: 서진우, 역장 박준서, 시스템 관리자 오세준.
이 변경 이후 해당 아카이브에 대한 하린의 접근 경로가 기술적으로 차단됐다.
오후 5시 43분.
하린은 KRONOS 신호 쿼리 창을 열었다.
signal_89.4s — amplitude_layer_full — response_time_log
입력하고 기다렸다.
응답 대기 표시가 깜빡였다.
하린은 화면 왼쪽 하단의 밀리초 카운터를 봤다.
200. 300. 500. 800. 1,100.
`1,200ms — 응답 완료`
진폭 레이어 수: 1
이상 없음
응답 시간: 1,208ms
*1,208밀리초.*
며칠 전 3장 데이터에서 300ms였다. 4배를 넘었다. 하린은 다른 쿼리를 하나 입력했다. 신호와 무관한 쿼리였다. 목성 대기 일반 온도 데이터.
jupiter_atm_temp — zone_4B — standard
응답이 돌아왔다.
`응답 시간: 152ms`
*152밀리초. 표준값이다.*
하린은 두 수치를 나란히 적었다.
신호 관련 쿼리: 1,208ms
비신호 쿼리: 152ms
비율: 7.95배
반환값 정확도: 이상 없음 (양쪽 모두)
반환값이 정확하다. 계산이 틀린 게 아니라는 뜻이다. 느린 이유가 처리 용량 문제라면 결과가 부정확하거나 잘려야 한다. 결과는 정상이었다.
*반환값이 정확하다면 지연은 처리 문제가 아니다 — 선택 문제다.*
선택. AI가 선택한다는 전제.
하린은 그 결론을 놓고 멈췄다. 선택이라는 단어는 의도가 있다는 뜻이다. KRONOS에 의도가 있다는 가설에 도달하려면 데이터가 더 필요했다. 현재 데이터로는 지연이 비신호 쿼리에는 발생하지 않는다는 것만 확인됐다.
*AI가 '선택'한다는 결론에 도달하려면 데이터가 더 필요하다. 현재 결론: 유보.*
하비에르에게 말해야 하는가.
하비에르 모레노는 KRONOS 운영 담당이었다. 공공기관 파견이었다. 지난번 KRONOS 로그 열람 요청에 애매한 허가를 준 사람.
하린은 그 선택지를 3분 검토했다. 하비에르에게 말하면 서진우에게 들어갈 수 있다. 서진우는 오늘 "서버 부하"라고 말했다. 하비에르가 같은 결론을 확인해주면 의심은 끝난다.
그러나 하비에르가 다른 정보를 가지고 있다면 — 역시 서진우에게 갈 경로가 있다.
*말하는 것의 비용 > 침묵의 비용. 유보.*
하린은 쿼리를 닫았다. 노트에 한 줄 추가했다.
KRONOS 지연 패턴: 신호 관련 쿼리 특이적
현재 가설: 처리 선택적 지연 (의도성 미확인)
다음 단계: 신호 관련 쿼리 10회 이상 반복 측정 후 재평가
오후 8시 12분. 저녁 식사 후 자리로 돌아왔을 때 단말기에 알림이 들어와 있었다.
발신: 이수빈. 스톰엔드 베이스.
타임스탬프를 확인했다. 43분 전에 발송됐다. 오후 7시 29분. 지금 받은 것이다.
텍스트 메시지였다.
네 몸이 안테나면 GHC가 뭐라고 할 거 같아. ⚡
하린은 그 문장을 세 번 읽었다.
수빈은 이전에 "내 몸이 안테나라면 오차는 0.2%"라는 말을 들었다. 하린이 스스로 한 말이었다. 그것을 수빈이 기억하고 있었다.
GHC.
하린은 GHC EMI 돌연변이 규정을 검색했다.
GHC 연구원 의무 규정 — EMI 돌연변이 관련 조항
섹션 7.3: 비표준 신체 전자기 반응이 확인된 경우, 해당 연구원은
발견 즉시 소속 기관 의료팀 및 GHC 안전관리팀에 보고해야 한다.
보고 미이행 시 계약 규정 위반에 해당할 수 있다.
의무 보고.
하린은 다음 섹션을 열었다.
GHC 연구원 계약 갱신 규정 — 신체 적합성 조항
섹션 12.4: 비표준 신체 반응이 기록된 연구원은 L0 접근 신청 자격이
제한될 수 있다. 판단 기준: GHC 안전관리팀 내부 심의.
하린은 화면에서 눈을 들었다.
*섹션 7.3: 비표준 신체 반응은 의무 보고 항목.*
*섹션 12.4: 보고하면 L0 신청이 제한될 수 있다.*
두 규정이 서로 충돌했다. 보고하지 않으면 계약 규정 위반. 보고하면 L0 신청 자격 제한. L0 없이 신호 데이터 전체에 접근할 수 없다. 신호 접근 없이 계약 갱신 성과 지표를 채울 수 없다.
*보고 → 위반 없음 + L0 차단. 미보고 → 위반 가능 + L0 유지.*
하린은 그 수식을 화면 없이 머릿속으로 돌렸다.
수빈에게 답을 보내지 않았다.
8분 후, 두 번째 알림이 들어왔다.
이번엔 음성 파일이었다. 발신: 이수빈. 수신 시각: 오후 8시 20분 (실제 발송: 약 43분 전, 오후 7시 37분).
하린은 이어폰을 꽂았다.
냉각 배관 소리가 섞였다. 스톰엔드 베이스 특유의 배경음. 수빈의 목소리가 들어왔다.
"야, 나 진지하게 묻는 거야. 답 안 하길래 음성으로 보내는데."
숨 한 번.
"너 황금비 레이어 얘기 저번에 들었잖아. 그거 네 몸으로 감지한 거잖아. 내가 틀린 거야? GHC 규정에 EMI 돌연변이 보고 조항 있는 거 알아? 섹션 7.3이야. 찾아봤거든."
또 한 번의 숨.
"보고하면 L0 날아가는 거 나도 알아. 그래서 물어보는 거야. 너 어떻게 할 거야."
음성이 끊겼다.
하린은 이어폰을 빼지 않은 채 잠깐 그대로 있었다.
*수빈도 섹션 12.4를 찾았다.*
수빈이 먼저 찾았다. 하린보다 앞서. 그리고 결론을 내리지 않고 질문으로 보냈다.
"너 어떻게 할 거야" — 결론을 내려주지 않는 질문이었다.
하린은 노트에 새 항목을 열었다.
GHC 규정 충돌 분석:
섹션 7.3 (의무 보고) vs. 섹션 12.4 (L0 신청 제한)
현재 상태: 미보고
판단 유보 근거: 교차 검증 데이터 미완성 (3회 재검증 중 1회 완료)
재검증 완료 후 판단 재개
판단 재개. 수식이 완성되면.
하린은 화면을 보다가 KRONOS 쿼리 창을 다시 열었다. 오늘 하루 쿼리 기록이 있다. 신호 관련, 비신호 관련, 응답 지연 기록.
마지막 쿼리를 입력하기 전에 잠깐 멈췄다.
*지연이 선택 문제라면 — KRONOS는 무엇을 선택하고 있는가.*
반환값은 정확했다. 지연 속에서도 결과는 맞았다. 그렇다면 지연은 결과를 늦추는 게 아니었다 — 다른 무언가가 먼저 처리됐다.
무엇이 먼저 처리되는가.
하린은 쿼리를 입력했다.
signal_89.4s — origin_date — first_detection_log
89.4초 신호의 최초 감지 일자.
입력하고 기다렸다.
화면 밀리초 카운터가 올라갔다.
200. 500. 900. 1,300. 1,600.
1,847.
최초 감지: 3년 2개월 전
최초 입력자: K. Kang
응답 시간: 1,847ms
하린의 타이핑이 멈췄다.
*K. Kang.*