01-개념
01. 개념 — 테스트가 모델의 안전벨트다
섹션 제목: “01. 개념 — 테스트가 모델의 안전벨트다”왜 LLM과의 TDD가 더 가치 있는가
섹션 제목: “왜 LLM과의 TDD가 더 가치 있는가”사람의 TDD는 “설계를 먼저 생각하게 만든다”는 부드러운 가치다. 모델과의 TDD는 단단한 가치다 — 모델 출력의 정확성을 매번 자동으로 검증한다.
그래서 모델이 과감해질수록 테스트는 더 중요해진다. 에이전트가 30회의 도구 호출을 자율적으로 돌리는 동안 사람이 매 단계를 본다는 건 비현실적이다. 사람이 보지 않는 모든 자율 단계의 안전벨트가 테스트다.
에어비앤비 사례의 결정적 한 문장
섹션 제목: “에어비앤비 사례의 결정적 한 문장”“Brute-force retry loops: up to 10+ attempts per file with dynamic prompts containing the latest error output. They explicitly chose retries over prompt-engineering perfection.”
의역: “파일당 최대 10회 이상 brute-force 재시도. 매번 최신 에러 출력을 담은 동적 프롬프트. 그들은 명시적으로 ‘프롬프트 완벽화’ 대신 ‘재시도’를 선택했다.”
— Airbnb Engineering, Accelerating Large Scale Test Migration with LLMs
요점: “테스트를 통과할 때까지 반복”이 가능해지면, 프롬프트 완벽주의는 의미가 없어진다. 이게 LLM 시대의 TDD 정수다.
결과는 도발적이다 — 4시간 만에 75% 자동 성공, 4일 후 97%, 6주 안에 전체 마이그레이션 완료 (수동 추정 1.5년).
Harper Reed의 C 인터프리터 사례
섹션 제목: “Harper Reed의 C 인터프리터 사례”sources/23-case-studies-raw/success/harper-reed-c-interpreter-from-zero.md — Harper가 0에서 C 인터프리터를 만든 사례. 그의 핵심 습관 역시 테스트 우선 + 작은 단위 + 실패→재시도 루프다.
모델에게 테스트는 “보상 함수”
섹션 제목: “모델에게 테스트는 “보상 함수””이게 핵심 멘탈 모델이다. 강화학습 용어로 말하면 테스트는 즉각적이고 결정적인 보상 신호다. 사람의 코드 리뷰는 비싸고 느린 보상이다. 테스트는 싸고 빠른 보상이다. 그래서 모델은 테스트가 있는 환경에서 압도적으로 더 잘 동작한다.
추론: 테스트가 부족한 코드베이스에 에이전트를 풀어놓는 것은 안전벨트 없이 운전하는 것과 같다. 첫 작업은 “테스트 추가” 일 가능성이 높다.