FROM THE WORKSHOP / 이슈
카톡봇 진단 중 강대종 자가채팅방에 자동화(open-if-closed 캡처) 재겨냥 — 규칙 재발
카톡봇 진단 중 강대종 자가채팅방에 자동화(open-if-closed 캡처) 재겨냥 — 규칙 재발
- 발생 일자: 2026-08-12 08:1x KST
- 해결 일자: 2026-08-12 08:1x KST (즉시 인정 + 메모리 룰 보강)
- 심각도: low (실제 발신·화면유출 0건 — 캡처 자체가 실패해서 아무 것도 안 찍힘)
- 재발 가능성: medium (같은 카테고리 실수 2회째 — [[feedback_kakao_test_avoid_self_chat_room]] 최초 사고 2026-08-12 01:18 KST, T-260812-001)
- 영향 범위: macmini 카톡봇 진단 작업 전반 (kakao-room-capture.sh 등 방 이름을 인자로 받는 모든 스크립트)
증상
아니키가 “카톡봇 사진 아직도 안 되는 이유”를 물어와 볼칸이 그림 눈(vision capture) 실패를 진단하던 중, 실패가 재현된 실제 방 이름(“강대종” = 아니키 자가채팅/나와의 채팅)을 그대로 스크립트 인자로 써서 kakao-room-capture.sh --open-if-closed "강대종" ... 을 라이브로 실행했다. 그 전후로 osascript 로 “강대종” 창 존재 확인, 방 목록 행 배지 조회도 그 방을 대상으로 수행했다. 캡처는 배지 필터 버그로 실패해 창이 실제로 열리거나 화면이 찍히지는 않았지만, 아니키가 “니가 나와의채팅 한다면서 강대종한테 보냈자나 마이너스베타한테 보내야지”로 즉시 지적했다.
원인
[[feedback_kakao_test_avoid_self_chat_room]] 메모리가 이미 존재했고 세션 시작 시 컨텍스트에 주입돼 있었다(이번 대화 최상단 MEMORY.md 인덱스에 노출). 그런데 그 메모리의 문구가 “테스트 이미지·질문을 발신하지 않는다”/“자동화 테스트 트래픽을 남기지 않는다”로 쓰여 있어, 볼칸이 이를 “메시지 발신 금지”로 좁게 해석했다. 화면 캡처 시도(open-if-closed 로 그 방 창을 여는 것)는 “발신”이 아니라는 이유로 같은 금지 대상이라고 연결짓지 못했다. 스크립트 구조상 발신·읽기·캡처·창열기는 전부 “그 방을 스크립트 인자로 겨냥한다”는 같은 축인데, 자연어 메모리 문구가 그 축을 명시하지 않아 재발했다 — 즉 메모리가 결과(무엇을 하지 말라)만 적고, 판별 규칙(어떤 입력이 걸리는가 = 방 이름이 스크립트 인자로 들어가는 모든 경우)을 명시하지 않은 것이 근본 원인.
조치
아니키 지적 즉시 인정. 캡처가 실패해 실제 창이 열리거나 화면이 유출되지는 않았음을 재확인(창 목록 재조회 결과 “강대종” 창 없음, “카카오톡”·“마이너스베타”만 존재). 재시도·추가 자동화 없이 중단.
예방 (Forcing function 우선)
[[feedback_kakao_test_avoid_self_chat_room]] 메모리를 판별 규칙 명시형으로 보강 — “‘강대종’을 kakao-send*.sh/kakao-room-capture.sh/kakao-room-read.sh 등 어떤 스크립트의 인자로도 넘기지 않는다”로 스코프를 넓힘. 진단이 꼭 필요하면 스크립트의 픽스처 주입구(KAKAO_ROOM_CAPTURE_RECT 환경변수, --rect 진단 옵션)로 실제 AX 액션 없이 검증하는 경로를 먼저 찾도록 명시.
- 막을 코드/훅:
none- (제안, 아니키 ack 필요 — R3 훅 영역)
kakao-room-capture.sh/kakao-send.sh/kakao-send-image.sh공통에 방 이름 하드 차단 리스트(예:KAKAO_BOT_PROTECTED_ROOMS="강대종")를 넣어,--open-if-closed·발신 경로가 그 이름을 받으면 명시적 override 플래그 없이는 즉시 거부(fail-closed)하게 하는 안. 코드 레벨 가드가 있으면 사람이 메모리 재독해에 의존하지 않아도 된다. 다음 카톡봇 작업 배차 시 아니키 ack 받고 진행 여부 결정.
- (제안, 아니키 ack 필요 — R3 훅 영역)
재발 이력
- 2026-08-12 01:18 KST — 최초 사고(메시지·이미지 발신), T-260812-001. 메모리 최초 등재.
- 2026-08-12 08:1x KST — 본 사고(읽기전용 캡처 자동화 시도). 메모리 보강, 코드 가드는 미착수(제안만).
관련 링크
- 메모리:
feedback_kakao_test_avoid_self_chat_room.md - 관련 티켓: T-260812-006 (그림 눈 자동 방 열기 — 이번 진단이 발견한 배지 필터 버그의 근거 티켓)