← 작업일지

2026-09-03 · v1.0.0

2026.09.03 작업일지 v1.0.0

20:39, 과거 대화의 Approval 문구를 현재 승인창으로 오인하던 문제가 막혔다. 20:50, 한 질문에 답과 추천 버튼이 여러 번 오던 중복 발신이 멈췄다. 22:11, 진짜 승인창에는 텔레그램 Run Everything 버튼이 생겼다.

이날의 문제는 모두 비슷한 얼굴을 하고 있었다. 화면에 글자가 있다는 사실과, 그 글자가 지금 일어나고 있는 상태라는 사실을 구분하지 못했다. 터미널은 과거 대화와 현재 입력창을 한 화면에 쌓는다. 브릿지가 단어만 찾으면 어제의 승인 문구가 오늘의 버튼이 되고, 앞선 답변이 새 답처럼 다시 발송된다.

1. 스크롤백의 Approval은 승인창이 아니다

Cursor 화면에는 과거 답변의 Approval이라는 단어가 남아 있었다. 화면 아래 상태줄에는 평소 권한 모드인 Run Everything이 보였다. 브릿지는 두 조각을 합쳐 “승인 모달이 열렸다”고 판단했다. 실제로는 평범한 입력 화면이었다.

#2125는 단어 조합 대신 활성 모달의 구조를 확인하도록 바꿨다. 승인 제목, 선택지, 현재 입력 영역이 같은 화면 문맥에 있어야 승인으로 인정했다. 수정 뒤 Athena·Hermes·Vulcan 세 Cursor 브릿지를 같은 파일로 맞추고 실제 답이 다시 오는지 확인했다.

2. 한 질문에는 마지막 답 하나만

다음 문제는 중복이었다. 한 사용자 턴 안에 텍스트만 있는 assistant 행이 여러 개 생기면 브릿지가 각각을 최종 답으로 셌다. 재시작 뒤 고아 기록을 회수할 때 이미 보낸 답과 추천문구, 확인 버튼이 다시 도착했다.

#2126은 한 사용자 턴에서 마지막 텍스트 답 하나만 최종으로 확정했다. 뒤에 도구 호출이 이어지면 앞의 중간 문장은 최종 후보에서 빠졌다. 재시작 뒤 같은 턴을 다시 훑어도 새 답이 없으면 발신하지 않았다.

배운 것 — “텍스트가 완성됐다”와 “사용자 턴이 끝났다”는 같은 사건이 아니다.

3. 진짜 승인만 폰으로 꺼냈다

오탐을 줄인 뒤에는 실제 승인창을 다룰 수 있었다. #2127은 활성 Approval 모달이 생기면 텔레그램에 Run Everything 버튼을 한 번만 보냈다.

버튼을 눌렀다고 곧바로 키를 넣지는 않는다. 콜백이 허용된 채팅에서 왔는지, 같은 승인창이 아직 열려 있는지, 이미 처리한 버튼은 아닌지 다시 확인한 뒤에만 Shift+Tab을 한 번 주입한다. 오래된 버튼, 다른 채팅, 화면이 바뀐 뒤의 탭은 모두 거부한다.

이어 #2128은 텔레그램 작업이 살아 있는 Cursor TUI를 계속 보도록 좌표를 고정했고, #2129은 승인 모달의 일부 문구만 보이는 상태를 승인으로 세지 않게 했다.

4. 강제 종료된 중간보고가 다시 살아났다

Codex Telegram Bridge에는 다른 종류의 과거가 남아 있었다. 턴을 강제 종료해도 저장된 상태를 읽어 10분 뒤 중간보고가 다시 시작됐다. 공유할 새 진행 내용이 없는데도 빈 보고가 반복되는 문제였다.

#2124는 강제 종료 상태를 진행 상태보다 먼저 판정하고, 실제로 새 공개 진행이 생겼을 때만 중간보고를 허용했다. 재시작했다고 과거 프롬프트를 새 작업처럼 다시 무장하지 않도록 현재 프로세스에서 받은 입력만 대상으로 삼았다. 코드는 이날 main에 들어갔고, 라이브 브릿지 재시작과 최종 확인은 다음 날 아침까지 이어졌다.

5. 눈에 보이는 문제도 하나 고쳤다

Windows에서는 접근성 설정에 노란 포인터가 선택돼 있는데 실제 커서는 흰색으로 남는 문제가 있었다. 시스템 커서 핸들을 다시 적용해 활성 포인터의 색을 확인했고, 크기를 바꿔도 노란색이 유지되도록 적용 순서를 맞췄다.

이 작업은 브릿지 코드와 무관하지만 하루의 주제는 같았다. 설정 화면에 적힌 값보다 실제 화면에 나타난 결과가 정답이었다.

6. 남은 줄

Cursor 브릿지의 라이브 파일이 최신인지 판단할 때 저장소 HEAD만 보는 문제는 별도 PR로 넘겼다. 운영 체크아웃이 뒤처져도 실행 파일 자체는 최신일 수 있기 때문이다. 또한 Cursor 지시가 화면에 도착했는데도 착탄 판정이 실패하는 rc4·rc5 경로가 남았다.

그날 main에는 승인 오탐 차단, 턴당 최종 답 하나, 텔레그램 승인 버튼, TUI 고정, 승인 모달 완전성 검사가 들어갔다. 과거 문구를 현재 상태로 오인하는 길을 하나씩 없앤 날이었다.


화면을 읽는 자동화에서 가장 위험한 것은 못 읽는 일이 아니라, 과거를 지금이라고 믿는 일이다.

— 강대종 / @ssamssae