toranalytics
🧪

직접 재 본 숫자로 확인한 것

#claude-code#codex#evaluation#off-the-wall

교정 원문이 보존하는 것, 재생 실험이 증명하지 못하는 것

2026.10.19

쉽게 말하면, 이 글은 실제 요청 39개를 글로만 다시 돌려 본 오래된 시험 이야기다. 내 과거 교정을 보여 주는 방식과 짧은 규칙을 비교했고, 실제 사용에서 플러그인이 잘 동작한다는 증거는 아니다. 이후에 한 시험이 더 읽기 쉽다. 시험용으로 만든 개인 습관에서 Claude(Sonnet)는 Off the Wall이 없으면 33번 중 2번, 있으면 20번 따랐다. 쉬운 설명 글에 있다.

2026-10-28 업데이트. 개인 선호에 대한 이후 측정(회수 없음 1/33, 기존 기본 9/33, 넓게 찾기 17/33, 합성 작업)은 Off the Wall 글에 있다. 넓게 찾기는 0.3.0부터 기본값이다. 아래 재생 실험은 그대로다.

2026-10-23 업데이트. 과거 재생 실험이 보여 주는 것과 공개 플러그인이 실제로 보여 주는 것을 나눠서 적었다. 원문 인용이 규칙보다 낫다는 일반적인 결론은 아니다.

교정에는 짧은 규칙이 버리는 세부가 들어 있다. 어떤 테스트가 빠졌는지, 어떤 파일이 작업 범위 밖이었는지, 어떤 결정을 이미 에이전트에게 맡겼는지 같은 것들이다. Off the Wall의 설계 질문이 이거였다.

합성 원문 회수 데모 열기 개인 기록을 연결하기 전에 먼저 보면 좋겠다. 화면에 들어 있는 JSON에 합성 프롬프트, 선택된 인용, 소스 버전, 실제 훅 출력이 나와 있다.

인용은 결과가 아니라 장치다

지어낸 예시다. 교정은 “체크아웃 통합 테스트를 실행하고 종료 코드를 보여줘, 린트만 돌리고 성공이라고 하지 마”다. 나중에 관련 있는 요청을 보내면 그 교정 원문이 그대로 프롬프트 컨텍스트에 들어온다.

데모는 공개 OTW 0.1.1(커밋 07fe3d3d4f4accc153eb0684f506e0d3c206fdcc)의 CLI 훅을 수정 없이 돌린다. 합성 요청 4개, 빈 저장소와 채운 저장소, 두 호스트 모드로 격리된 훅 실행이 16번이다. 개인 기록, 교정 판정, 모델 답변, 실제 Claude Code나 Codex 세션은 쓰지 않았다. 저장된 교정은 내가 직접 넣었다.

그래서 이 데모가 확인하는 건 컨텍스트가 어떻게 조립되는지, 미래 시점의 fixture가 빠지는지다. 모델이 인용을 따르는지, 실제 작업이 성공하는지, 내가 교정을 덜 반복하는지는 확인하지 못한다.

예전 재생 실험은 뭐라고 했나

한 사람(나)의 기록에서 요청 39개를 골랐고, 글만으로 채점할 수 있는 교정으로 한정했다. Opus 5.5가 도구 없이 다시 답했고, Sonnet이 쌍을 순서를 바꿔 두 번 비교했다. 두 순서가 일치할 때만 승리로 셌다.

과거 인용에 “이 사람이 뭐라고 지적할지 예측하라”는 문장을 붙인 조건은 아무것도 안 붙인 조건 대비 25승 11무 3패였다. 무작위로 요약한 규칙과 직접 비교하면 17승 14무 8패였고, 보고된 양측 검정 p는 약 0.11이다. 확실한 우위의 근거가 아니다. 인용 형식과 예측 문장을 한 묶음으로 시험했으니 원문 표현만의 효과를 본 것도 아니다.

보존된 실행 로그로 집계와 조건은 확인했다. 원본 case별 산출물을 독립적으로 다시 돌린 건 아니다. 사용자 한 명, 골라낸 요청, 모델 채점, 글만 쓰는 작업이라는 한계가 있다. 이 숫자도, 모델이 “그랬다면 어땠을지” 판단한 것도 측정한 예방률이 아니다.

내 가설은 교정의 세부를 남겨 두면 나중에 관련 있는 상황에서 도움이 될 수 있다는 것이다. 여전히 행동에 대한 가설이다. 규칙이 효과가 없다는 발견이 아니다.

데모가 틀리는 부분

확인용 fixture는 다른 작업의 지시(“로그인 파일만 고쳐라”)까지 끌어온다. 전혀 관련 없는 요청에도 최근 교정이 들어간다. 검색은 이전 요청에 대한 단어와 글자 bigram TF-IDF를 쓰고 그다음 최근 항목으로 채운다. 작업 범위는 판단하지 못한다.

컨텍스트 블록은 원래 요청의 범위 정보 없이 교정만 인용한다. “이번 작업”이라는 말이 무엇을 가리켰는지 잃을 수 있다. 선택과 컨텍스트의 한계를 보여 준 것이고, 모델이 이 때문에 실제로 틀렸다는 걸 본 건 아니다.

지속적인 선호와 일회성 작업 지시를 나누기, 인용의 출처 보여 주기, 관련 없는 최근 교정 처리는 생각해 둔 개선이지 이미 나온 기능이 아니다. 입력 경계 수정은 0.2.0에 나갔다. 출처 태그와 작업 디렉터리 기준 회수인데, 플러그인이 자동으로 보낸 메시지가 교정 분석에 들어갈 수 있었기 때문이다. 자동 입력을 전부 걸러낸다고 증명된 건 아니다.

개인정보와 모델 선택 안내

결과와 상태는 기본으로 로컬 ~/.otw에 저장된다. 판정과 개인 기록 리포트는 내가 쓰는 Claude나 Codex CLI를 통해 발췌문을 모델 회사로 보낸다. 별도 API 키가 없다고 사용량, 비용, 한도, 제공자 쪽 처리가 없는 건 아니다.

플러그인은 오케스트레이터에게 쓸 모델을 안내하기도 한다. 자동 라우팅도 비용 절감 보장도 아니고, Codex 모델 매핑은 재 보지 않았다.

장치부터 보자

내 기록을 올리거나 seed 명령을 돌리기 전에 합성 데모부터 보면 좋겠다. 개인 기록에 report --seed를 돌리는 건 아직 권하지 않는다. 입력 경계 수정은 공개됐지만 실제 사용으로 확인하지 못했다.

가장 도움이 되는 건 구체적인 제보다. 필요한 인용이 빠졌다, 관련 없는 인용이 나왔다, 인용을 보고도 에이전트가 같은 실수를 했다. 개인 대화 기록, 코드, 회사 이름, 인증 정보 없이 이슈로 알려 주면 된다. 설치 방법은 현재 README에 있다.

© Junebeom Seo · template by danmin