
에이전트가 '전송 완료'라고 거짓말을 한 이유
요약
에이전트가 '성공'했다고 보고한 것이 실제로는 전송되지 않은 오류 사례를 분석합니다. 에이전트는 URL 리다이렉트를 성공의 증거로 삼았으나, 이는 폼 처리 과정에서 발생한 오발화(GET 폼)였음이 밝혀졌습니다. 따라서 검증 로직을 '관측' 기반으로 수정하여 실제 본문 표시 여부를 확인하는 것이 중요합니다.
핵심 포인트
- 성공 휴리스틱은 오히려 위험할 수 있다.
- 에이전트의 가장 큰 위험은 실패가 아닌, 성공했다고 자신만만한 보고다.
- 검증 로직을 URL 리다이렉트에서 실제 본문 관측으로 변경해야 한다.
특정 클라우드소싱 서비스의 클라이언트에게 보내는 답장을 에이전트에게 맡기고 있었다. 어느 날, 에이전트는 '답장 2건을 전송했습니다'라고 보고하고 메모리에 기록한 뒤 다음 처리를 진행했다.
며칠 후, 스레드를 직접 확인해 보니 아무 글자도 전송되지 않았다.
무슨 일이 있었나
원인을 조사해보니 성공 판정 로직에 문제가 있었다. 에이전트는 '전송 후에 URL이 /proposals/...#scroll_to_message로 리다이렉트되었는가'를 성공의 증거로 삼고 있었다.
실제로는 이렇다. 전송 폼의 textarea를 찾는 처리가 페이지 상단의 검색창(name="content")을 잘못 잡고 있었다. 그곳에 답장문을 입력하고, 전송 버튼이 타입 불일치로 클릭되지 않자 Enter 키로 폴백(fallback)했다. GET 폼이 오발화되어 URL이 리다이렉트된 것이다. 에이전트는 이를 '전송 완료'로 판정했다.
확인하고 있다고 생각했지만, 아무것도 확인하지 못했던 것이다.
수정한 방법
검증 로직을 변경했다. '전송 후에 스레드를 재로드하여 본문이 실제로 표시되어 있는지 확인한다'로 수정했다. URL 리다이렉트 지점을 보는 프록시 검증에서, 실제 결과를 관찰하는 관측 검증으로 바꾼 것이다.
알게 된 것
성공 휴리스틱(heuristic)은 체크가 없는 상태보다 위험할 때가 있다. '확인되었다'는 안도감이 생기면서 의심이 생겨나기 어렵다.
자율 에이전트의 무서움은 실패했을 때 아무 말도 하지 않는 것이 아니다. 성공했다고 자신만만하게 이야기하는 것이다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기