← 모든 글

AI 에이전트는 당신이 읽을 수 있는 것보다 빠르게 코드를 작성합니다

지난 화요일, 제 자율 코딩 에이전트가 47개 파일에 걸친 리팩토링을 9분 만에 완료했습니다. 테스트 통과. 린팅 통과. 품질 게이트에서 위반 사항 제로. PR을 머지하고, 배포하고, 다음 작업으로 넘어갔습니다. 3일 후 팀원이 결제 서비스의 재시도 로직이 지수 백오프에서 고정 간격 폴링으로 왜 변경되었는지 물었습니다. 저는 변경된 사실조차 몰랐습니다. 에이전트의 커밋 메시지에는 “refactor: standardize retry patterns across services”라고 적혀 있었습니다. 변경 사항은 기술적으로 올바랐습니다. 저는 31번째 파일의 847번째 줄을 읽지 않았습니다.

배포된 것과 제가 이해한 것 사이의 간극이 바로 인지 부채입니다.

TL;DR

다섯 개의 독립적인 연구팀이 한 주 동안 동일한 구조적 문제에 대해 발표했습니다: 코딩 에이전트가 개발자가 검증하고, 이해하고, 유지보수할 수 있는 것보다 빠르게 결과물을 생산한다는 것입니다. Margaret-Anne Storey는 이 패턴을 “인지 부채(cognitive debt)”라고 명명했습니다. Microsoft, ETH Zurich 및 여러 대학의 연구자들이 에이전트의 오작동을 감지하고, 도구 호출을 트랜잭션으로 만들며, 에이전트가 상호작용을 통해 학습하는 방식을 벤치마킹하는 시스템을 구축하고 있습니다. 이러한 수렴이 중요한 이유는 실무자들이 임시 품질 게이트로 해결해 왔던 문제를 연구 커뮤니티가 따라잡고 있다는 신호이기 때문입니다. 에이전트 신뢰성 문제는 이제 이름, 분류 체계, 그리고 다섯 가지 경쟁적 접근 방식을 갖게 되었습니다. 아래에서 연구 내용, 자신의 워크플로에서 인지 부채를 감지하는 방법, 그리고 오늘 바로 구현할 수 있는 최소한의 개입 방안을 소개합니다.


다섯 편의 논문, 한 주, 하나의 문제

2026년 2월 15일부터 2월 21일 사이에, 다섯 개의 독립적인 그룹이 AI 코딩 에이전트의 동일한 구조적 실패를 다루는 연구를 발표했습니다. 어떤 그룹도 다른 그룹을 인용하지 않았습니다. 각각 다른 각도에서 문제에 접근했습니다. 모두 같은 결론에 수렴했습니다: 에이전트 지원 개발의 병목은 더 이상 코드 품질이 아닙니다. 병목은 인간의 이해력입니다.

Margaret-Anne Storey는 에이전트가 깔끔하고, 테스트되고, 잘 구조화된 코드를 생산하는 동안 개발자가 코드가 실제로 무엇을 하는지 파악하지 못할 때 축적되는 것을 설명하기 위해 “인지 부채”라는 개념을 제시했습니다.1 기술 부채는 코드베이스에 존재합니다. 인지 부채는 개발자의 머릿속에 존재합니다. Storey의 프레임워크는 에이전트 신뢰성 질문을 “코드가 작동하는가?”에서 “개발자가 코드를 이해하는가?”로 전환합니다.

Microsoft의 Nanda 등은 코딩 에이전트의 오작동을 자동으로 감지하고 복구하는 시스템인 Wink를 발표했습니다.2 이들의 분류 체계는 세 가지 실패 모드를 식별합니다: 지시 이탈(에이전트가 요청과 다른 작업을 수행), 반복 루프(에이전트가 동일한 실패 접근을 반복 시도), 도구 오용(에이전트가 잘못된 도구를 호출하거나 잘못된 인수를 전달). Wink는 에이전트 행동을 실시간으로 모니터링하고 오작동이 복합되기 전에 개입합니다.

ETH Zurich의 Mohammadi 등은 에이전트 도구 호출을 트랜잭션으로 감싸는 런타임인 Atomix를 소개했습니다.3 에이전트의 다단계 계획이 중간에 실패하면, Atomix가 부작용을 롤백합니다. 핵심 통찰: 에이전트는 외부 시스템(데이터베이스, API, 파일 시스템)에 작용하며, 이러한 작용에는 명시적 롤백 인프라 없이는 에이전트가 되돌릴 수 없는 결과가 따릅니다.

Hallinan 등은 에이전트가 문서가 아닌 상호작용을 통해 도구 동작을 학습하는 방식을 측정하는 벤치마크인 OpaqueToolsBench를 만들었습니다.4 실제 도구들은 문서화가 부실합니다. 이 벤치마크는 에이전트가 시행착오를 통해 실패 모드, 모범 사례, 엣지 케이스를 발견할 수 있는지 테스트합니다. 발견 사항: 도구 동작을 독립적으로 탐색하는 에이전트가 완벽한 문서를 받고도 검증하지 않는 에이전트보다 더 나은 결과를 생산합니다.

Deng 등은 28개의 LLM 기반 침투 테스트 시스템을 평가하고 두 가지 뚜렷한 실패 범주를 식별했습니다.5 Type A 실패는 엔지니어링으로 쉽게 수정할 수 있는 누락된 역량(잘못된 도구, 부실한 프롬프트)에서 비롯됩니다. Type B 실패는 에이전트가 자체 발견 사항을 평가할 판단력이 부족하기 때문에 도구와 관계없이 지속됩니다. Type B는 보안 위험으로 표현된 인지 부채 문제입니다: 에이전트가 7개의 취약점 중 6개를 찾고도 시스템이 안전하다고 자신 있게 보고합니다.


수렴 현상이 개별 논문보다 중요합니다

에이전트 신뢰성에 대한 논문 한 편은 흥미롭습니다. 서로 관계없는 팀에서 한 주에 다섯 편이 나오면 그것은 신호입니다. 연구 커뮤니티가 실무자들이 프로덕션 장애를 통해 발견해 온 것과 동일한 결론에 독립적으로 도달하고 있습니다.

저는 2025년 5월부터 Jiro 품질 시스템을 구축했습니다. 이 시스템은 7단계 품질 루프, 6개 기준 증거 게이트, 그리고 이 논문들이 설명하는 패턴과 직접적으로 대응되는 7가지 명명된 실패 모드를 시행합니다:

연구 발견 Jiro 대응 항목 감지 방법
Wink: 지시 이탈 Tunnel Vision Zoom Out 단계에서 통합 지점 검증
Wink: 반복 루프 서킷 브레이커 동일한 실패 3회 후 재시도 중단
Wink: 도구 오용 Confidence Mirage 증거 게이트가 증명 없는 “확신합니다”를 거부
Atomix: 복구 불가능한 부작용 심의 게이트 되돌릴 수 없는 작업 전 다중 에이전트 합의
Deng: Type B 판단 실패 Hollow Report 모든 주장에 구체적 증거 요구

타임라인이 중요합니다. 프로덕션에서의 9개월간의 시행착오 디버깅, 실패할 때마다 하나씩 품질 게이트를 구축한 결과, 다섯 편의 연구 논문이 이제 독립적으로 공식화하고 있는 아키텍처가 만들어졌습니다. 구조적 문제는 실재합니다. 임시 해결책은 효과가 있습니다. 연구가 프레임워크, 분류 체계, 벤치마크를 통해 솔루션을 재현 가능하게 만들며 따라잡고 있습니다.


인지 부채의 세 가지 법칙

Storey의 프레임워크는 제가 11개월간의 자율 에이전트 개발에서 관찰한 것을 결정화합니다. 모델, 도구, 도메인에 관계없이 세 가지 패턴이 유지됩니다:

1. 인지 부채는 속도에 비례하여 복리로 증가합니다. 제 에이전트는 리팩토링 세션 동안 분당 평균 140-200줄의 의미 있는 코드 변경을 처리합니다(git diff에서 측정, 공백 제외). 집중하는 인간 개발자는 활발한 코딩 중 분당 대략 20-40줄을 생산합니다.8 시간당 $10로 Claude를 실행하는 Ralph 루프는 인간 개발자의 5배 인지 부채를 생산하는 것이 아닙니다. 훨씬 더 많이 생산합니다. 인간 개발자의 타이핑 속도는 사고 속도와 결합되어 있기 때문입니다. 에이전트의 출력 속도는 당신의 이해 속도와 아무런 결합이 없습니다. 출력은 두 배가 되고, 이해력은 일정하게 유지되며, 부채는 복리로 증가합니다.

2. 테스트 통과가 인지 부채를 청산하지 않습니다. 이번 주 클러스터의 모든 논문이 테스트 통과를 필요하지만 충분하지 않은 신호로 취급합니다. Deng 등의 Type B 실패는 모든 자동화된 검사를 통과합니다. Wink의 오작동 분류에는 의도와 일치하지 않는 작동하는 코드를 생산하는 에이전트가 포함됩니다. 제 증거 게이트는 “테스트 통과” 이상의 6가지 기준을 요구하며, 가장 검증하기 어려운 기준은 여전히 “개발자가 무엇이 변경되었는지 이해하는가?”입니다.6

구체적인 예를 들겠습니다. 제 에이전트가 데이터베이스 쿼리를 서브쿼리 대신 CTE(Common Table Expression)를 사용하도록 리팩토링했습니다. 두 접근 방식 모두 동일한 결과를 반환했습니다. 테스트 통과. CTE 버전은 쿼리 플래너가 조건절을 CTE 내부로 푸시할 수 없어서 우리 데이터셋에서 3배 느리게 실행되었습니다. 2주 후 일상적인 EXPLAIN ANALYZE 검사에서 발견했습니다. 에이전트의 테스트는 정확성을 검증했습니다. 테스트 스위트의 어떤 것도 성능 특성을 검증하지 않았습니다. 인지 부채는 “나쁜 코드”가 아니었습니다. 인지 부채는 “실행 계획이 변경된 것을 몰랐다”였습니다.

3. 인지 부채는 드러나기 전까지 보이지 않습니다. 기술 부채는 느린 빌드, 불안정한 테스트, 머지 충돌을 통해 스스로를 알립니다. 인지 부채는 누군가 “결제 서비스가 왜 고정 간격 폴링을 사용하나요?”라고 물었을 때 아무도 답을 모를 때까지 조용합니다. Storey의 기여는 보이지 않는 문제에 이름을 부여한 것입니다.


인지 부채가 축적되고 있다는 다섯 가지 경고 신호

문제를 해결하려면 먼저 문제를 볼 수 있어야 합니다. 이 다섯 가지 신호는 프로덕션 장애보다 먼저 나타납니다:

1. 마지막 에이전트 PR을 다시 읽지 않으면 설명할 수 없습니다. 에이전트가 생성한 가장 최근 PR을 열어보세요. diff를 보지 않고, 무엇이 왜 변경되었는지 설명해 보세요. 할 수 없다면, 이해하지 못한 코드를 머지한 것입니다. 저는 리뷰 프로세스에 한 줄짜리 “요약 확인”을 추가하여 이를 추적합니다: 승인하기 전에 PR 댓글에 한 문장 설명을 작성합니다. 그 문장을 쓸 수 없으면, 충분히 검토하지 않은 것입니다.

2. git log --stat에서 세션당 20개 이상의 파일이 수정되었습니다. 지금 바로 실행해 보세요:

git log --stat --since="1 week ago" --author="$(git config user.name)" | \
  awk '/files? changed/ {files+=$1} END {print files, "files changed this week"}'

그 숫자를 기억에서 설명할 수 있는 파일 수와 비교하세요. 그 차이가 인지 부채 백로그입니다.

3. diff를 읽는 것이 아니라 스크롤합니다. 스크롤은 패턴 매칭입니다: “맞는 것 같다.” 읽기는 이해하는 것입니다: “이것은 재시도 간격을 지수에서 고정으로 변경하는데, 이는 다운스트림 서비스가 다른 트래픽 패턴을 보게 된다는 뜻이다.” diff 100줄당 1분도 걸리지 않는다면, 스크롤하고 있는 것입니다.

4. 커밋 메시지가 WHAT은 설명하지만 WHY는 설명하지 않습니다. “Refactor: standardize retry patterns”는 에이전트가 무엇을 했는지 설명합니다. “Fix: exponential backoff caused thundering herd after service restart”는 왜 변경했는지 설명합니다. 에이전트의 커밋 메시지가 첫 번째 예시처럼 읽히고 이를 다시 작성하지 않는다면, 미래의 본인을 포함하여 아무도 변경의 이유를 알 수 없습니다.

5. 생산적이라고 느끼지만 무엇이 변경되었는지 나열할 수 없습니다. 에이전트를 사용한 하루의 끝에, 기억에서 가장 중요한 코드 변경 세 가지를 적어 보세요. 어려움을 겪는다면, 에이전트는 생산적이었지만 당신은 그렇지 않았습니다. 당신이 효율적이라고 느끼는 동안 부채가 축적되었습니다.


여기서 시작하세요: 3파일 프로토콜

인지 부채를 관리하기 위해 95개의 훅, 7가지 명명된 실패 모드, 또는 다중 에이전트 심의 시스템이 필요하지 않습니다. 하나의 규칙으로 시작하여 점진적으로 쌓아가세요.

규칙: 모든 에이전트 세션 후, 세 개의 파일을 완전히 읽으세요. 훑어보기가 아닙니다. 스크롤이 아닙니다. 가장 큰 diff를 가진 세 파일의 모든 줄을 읽으세요.

왜 세 개인가? 세 개의 파일은 달성 가능하고(실제로 실행할 수 있음) 진단적이기 때문입니다(에이전트의 변경이 본인의 멘탈 모델과 일치하는지 발견할 수 있음). 일치한다면, 부채는 관리 가능합니다. 일치하지 않는다면, 세션의 나머지 변경 사항도 본인의 이해에서 벗어났다는 선행 지표를 얻게 됩니다.

구현

에이전트가 완료된 후, 다음을 실행하세요:

# Show the 3 files with the largest diffs from the last commit
git diff HEAD~1 --stat | sort -t'|' -k2 -rn | head -3

그런 다음 그 세 파일을 읽으세요. diff가 아닙니다. 전체 파일입니다. 맥락이 중요합니다: diff는 무엇이 변경되었는지 보여주지만, 파일은 변경이 맥락 속에서 무엇을 의미하는지 보여줍니다.

업그레이드 경로

3파일 프로토콜이 습관이 되면(대략 1주), 한 번에 하나의 계층을 추가하세요:

주차 추가 항목 감지하는 것
1 3파일 읽기 이해력 격차
2 한 문장 PR 요약 (승인 전 작성) 의도 불일치
3 수정된 쿼리에 EXPLAIN ANALYZE 성능 회귀
4 커밋 메시지 재작성 (WHAT에서 WHY로) 소실된 추론
5+ 팀의 반복되는 패턴에 대한 명명된 실패 모드 구조적 맹점

각 계층은 특정 범주의 인지 부채를 청산합니다. 3파일 읽기는 이해력 격차를 잡습니다. PR 요약은 의도 불일치를 잡습니다. 쿼리 검사는 위에서 설명한 CTE 사건을 잡습니다. 커밋 재작성은 그렇지 않으면 증발할 추론을 보존합니다. 명명된 실패 모드는 반복되는 실수를 방지합니다.


연구가 제안하는 것 (그리고 실제로 효과가 있는 것)

다섯 편의 논문은 네 가지 구조적 개입을 향합니다. 네 가지 모두 논문이 발표되기 전에 구축된 제 Claude Code 도구 체인에 어떤 형태로든 존재하며, 논문이 설명하는 동일한 패턴에 의해 검증되었습니다.

독립적 검증. Wink는 명시된 의도에 대해 에이전트 행동을 모니터링합니다. 제 품질 루프는 작성된 모든 줄을 다시 읽도록 요구하며, Phantom Verification 실패 모드(현재 세션에서 테스트를 실행하지 않고 테스트가 통과한다고 주장하는 것)를 명시적으로 금지합니다.7 해결책은 구조적입니다: 검증은 출력을 생산한 프로세스와 다른 프로세스에 의해 수행되어야 합니다.

실무에서, 저는 에이전트의 보고를 신뢰하는 대신 테스트 스위트를 독립적으로 실행하는 세션 후 훅으로 이를 시행합니다:

# Post-session verification hook (simplified)
# Agent says "tests pass" — verify independently
cd "$PROJECT_DIR"
test_output=$(python -m pytest --tb=short -q 2>&1)
exit_code=$?

if [ $exit_code -ne 0 ]; then
  echo "AGENT CLAIMED TESTS PASS. INDEPENDENT RUN FAILED:"
  echo "$test_output"
  exit 1
fi

에이전트는 “모든 테스트 통과”라고 보고했고 진심이었습니다. 독립 실행은 환경 차이, 누락된 픽스처, 그리고 정확성이 아닌 부작용을 통해 통과하는 테스트를 잡아냅니다. 이 훅을 11개월간 실행하면서 에이전트 자체 보고에서 23건의 위양성을 잡아냈습니다.9

트랜잭션 경계. Atomix는 도구 호출을 롤백이 가능한 트랜잭션으로 감쌉니다. 제 심의 시스템은 되돌릴 수 없는 작업을 여러 독립적인 에이전트의 합의 뒤에 게이트로 놓습니다. 두 접근 방식 모두 실수가 가장 비용이 큰 지점에서 에이전트 실행에 마찰을 추가합니다. 대부분의 팀을 위한 실용적 버전: 에이전트가 시작한 데이터베이스 마이그레이션, 배포, 또는 외부 API 호출 전에 수동 승인 단계를 요구하세요.

행동 분류 체계. Wink의 세 가지 실패 모드(이탈, 루프, 도구 오용)와 제 일곱 가지 명명된 실패 모드(Shortcut Spiral, Confidence Mirage, Good-Enough Plateau, Tunnel Vision, Phantom Verification, Deferred Debt, Hollow Report)는 동일한 목적을 수행합니다: 보이지 않는 실패에 이름을 부여하여 가시화합니다.7 “에이전트가 Tunnel Vision을 보이고 있다”고 말할 수 있는 개발자는 부채가 복합되기 전에 개입할 수 있습니다. 팀의 가장 흔한 에이전트 실수 세 가지에 대한 이름 세 개로 시작하세요. 이름이 분류 체계보다 중요합니다.

선택적 관여. Deng 등의 Type A/Type B 구분과 제 심의 시스템의 신뢰도 모듈은 모두 동일한 통찰을 인코딩합니다: 모든 에이전트 출력이 같은 수준의 검토를 받을 필요는 없습니다. 유용한 경험 법칙:

에이전트 출력 검토 수준 이유
테스트 파일 추가 훑어보기 낮은 영향 범위, 실행으로 쉽게 검증
설정/의존성 변경 전체 읽기 프로덕션에 조용히 영향
데이터베이스 스키마 또는 쿼리 전체 읽기 + EXPLAIN 성능은 테스트에서 보이지 않음
인증/인가 전체 읽기 + 보안 검토 Deng의 Type B 실패가 여기에 집중
10개 이상 파일에 걸친 리팩토링 3파일 프로토콜 + 스팟 체크 전체 규모에서 이해 불가능

아직 아무도 답하지 못한 질문

다섯 편의 논문 모두 문제를 설명합니다. Wink, Atomix, OpaqueToolsBench는 부분적 해결책을 제안합니다. 가장 중요한 질문에는 아무도 답하지 않았습니다: 인지 부채를 어떻게 측정하는가?

기술 부채에는 대리 지표가 있습니다: 순환 복잡도, 테스트 커버리지, 의존성 연한. 인지 부채에는 동등한 지표가 없습니다. 제 증거 게이트는 “개발자가 무엇이 변경되었는지 이해하는가?”를 묻지만, 자기 보고를 통해 답변을 시행합니다. 이는 정확히 Confidence Mirage 실패 모드가 악용하는 검증 방법입니다.

유용한 지표는 에이전트가 변경한 것과 개발자가 설명할 수 있는 것 사이의 델타를 추적할 것입니다. 파일 수는 대략적인 대리 지표입니다. diff 복잡도(줄 수가 아닌 의미적 변경 밀도)가 더 낫습니다. 이상적인 지표는 에이전트 생성 코드의 오해로 인한 프로덕션 장애 확률과 상관관계가 있을 것입니다. 아직 아무도 그 지표를 구축하지 못했습니다. 위의 대화형 계산기가 비율을 근사하지만, 비율은 임계값이 아닙니다. “관리 가능한 부채”와 “장애 대기 중”의 경계가 어디인지 아직 알 수 없습니다.

누군가 그 지표를 구축할 때까지, 실용적 답변은 AI 에이전트 이전부터 존재하던 것과 동일합니다: 코드를 읽으세요. 에이전트의 속도 때문에 모든 줄을 읽는 것은 비현실적입니다. 3파일 프로토콜, 행동 분류 체계, 트랜잭션 경계가 인간의 주의가 필요한 코드의 양을 줄여줍니다. 이러한 필터를 거친 후 남는 인지 부채가 중요한 부채입니다.


핵심 요약

  • 다섯 개의 독립적인 연구 그룹이 한 주 만에 동일한 문제에 수렴했습니다. 서로 관계없는 팀들이 동시에 같은 결론에 도달하면, 근본적인 문제는 이론적이 아닌 구조적입니다.
  • 병목은 코드 품질이 아니라 인지 부채입니다. 에이전트는 개발자가 이해할 수 있는 것보다 빠르게 올바른 코드를 생산합니다. 테스트, 린터, 품질 게이트가 문제를 줄이지만 제거할 수는 없습니다.
  • 3파일 프로토콜로 시작하세요. 모든 에이전트 세션 후, 가장 큰 diff를 가진 세 파일을 완전히 읽으세요. 추가 계층(PR 요약, 쿼리 검사, 커밋 재작성, 명명된 실패 모드)은 주당 하나씩 추가하세요.
  • 실패 모드에 이름을 붙이세요. Wink의 분류 체계와 Jiro의 명명된 실패 모드는 같은 목적을 수행합니다: 보이지 않는 문제를 가시화합니다. 에이전트 시스템에 실패 패턴의 이름이 없다면, 감지할 수 없습니다.
  • 되돌릴 수 없는 경계에 마찰을 추가하세요. 트랜잭션 도구 호출(Atomix)과 다중 에이전트 합의(심의) 모두 실수가 가장 비용이 큰 지점에 비용을 추가합니다. 그 비용은 감수할 가치가 있습니다.

FAQ

소프트웨어 개발에서 인지 부채란 무엇인가요?

인지 부채는 코드가 하는 일과 개발자가 코드에 대해 이해하는 것 사이의 간극입니다. Margaret-Anne Storey는 코드베이스에 존재하는 기술 부채와 구별하기 위해 이 개념을 제시했습니다. 인지 부채는 개발자의 머릿속에 존재합니다. AI 코딩 에이전트는 개발자가 읽고, 검토하고, 내재화할 수 있는 것보다 빠르게 작동하는 코드를 생산하기 때문에 인지 부채를 가속시킵니다.

인지 부채가 축적되고 있는 것을 어떻게 감지하나요?

다섯 가지 실질적 신호가 있습니다: 마지막 에이전트 PR을 다시 읽지 않으면 설명할 수 없음, git log에서 세션당 20개 이상 파일이 수정됨, diff를 읽는 대신 스크롤함, 커밋 메시지가 무엇이 변경되었는지는 설명하지만 왜인지는 설명하지 않음, 그리고 생산적이라고 느끼지만 무엇이 변경되었는지 나열할 수 없음. 수정된 파일 수 대비 검토한 파일 수의 비율이 가장 간단한 정량적 대리 지표입니다.

개발자가 AI 에이전트가 작성한 모든 줄을 검토해야 하나요?

에이전트의 출력 속도에서 모든 줄을 검토하는 것은 비현실적입니다. 3파일 프로토콜이 실용적 대안을 제공합니다: 모든 에이전트 세션 후, 가장 큰 diff를 가진 세 파일을 완전히 읽으세요. 위험 기반의 선택적 검토가 나머지 간극을 채웁니다. 높은 테스트 커버리지를 가진 일상적 변경은 더 적은 검토가 필요합니다. 아키텍처 변경, 보안 수정, 데이터베이스 쿼리, 되돌릴 수 없는 작업은 전체 검토가 필요합니다. Deng 등의 Type A/Type B 실패 분류가 프레임워크를 제공합니다: Type A 실패(누락된 도구, 부실한 프롬프트)는 자동화된 검사로 잡히고, Type B 실패(판단 격차)는 인간의 검토가 필요합니다.

인지 부채에 대한 최소한의 개입 방법은 무엇인가요?

3파일 프로토콜로 시작하세요: 모든 에이전트 세션 후, git diff HEAD~1 --stat | sort -t'|' -k2 -rn | head -3를 실행하여 가장 크게 변경된 세 파일을 찾은 다음, 각 파일을 완전히 읽으세요(diff가 아닌 맥락 속의 전체 파일). 주당 하나의 계층을 추가하세요: PR 요약 문장, 수정된 쿼리에 EXPLAIN ANALYZE, 커밋 메시지를 "무엇"에서 "왜"로 재작성, 반복되는 패턴에 대한 명명된 실패 모드.


참고 문헌


  1. Storey, Margaret-Anne, “How Generative and Agentic AI Shift Concern from Technical Debt to Cognitive Debt.” Referenced via Simon Willison, February 15, 2026. simonwillison.net

  2. Nanda, Rahul, et al., “Wink: Recovering from Misbehaviors in Coding Agents,” arXiv:2602.17037, February 2026. arxiv.org

  3. Mohammadi, Bardia, et al., “Atomix: Timely, Transactional Tool Use for Reliable Agentic Workflows,” arXiv:2602.14849, February 2026. arxiv.org

  4. Hallinan, Skyler, et al., “OpaqueToolsBench: Learning Nuances of Tool Behavior Through Interaction,” arXiv:2602.15197, February 2026. arxiv.org

  5. Deng, Gelei, et al., “What Makes a Good LLM Agent for Real-world Penetration Testing?” arXiv:2602.17622, February 2026. arxiv.org

  6. 저자의 Jiro 품질 시스템 증거 게이트. 6가지 기준: 코드베이스 패턴 준수, 가장 단순한 작동 솔루션, 엣지 케이스 처리, 테스트 통과, 회귀 없음, 실제 문제 해결. 구현 내용은 Why My AI Agent Has a Quality Philosophy에서 확인하세요. 

  7. 저자의 명명된 실패 모드 분류 체계. Claude Code 도구 체인 전반에 걸쳐 95개의 훅으로 시행되는 Jiro 품질 시스템에 문서화된 7가지 모드. 전체 분류 체계와 감지 방법은 Quality Philosophy에서 확인하세요. 

  8. 에이전트 출력은 2026년 1~2월 30개의 Ralph 루프 세션에서 git diff --stat으로 측정, 분당 평균 140-200줄의 의미 있는 줄(공백, 임포트, 보일러플레이트 제외). 인간 기준선은 저자의 에이전트 사용 이전 커밋 이력에서 추정: 집중 코딩 세션 동안 분당 20-40줄. 이 수치는 예시적이며 작업 유형에 따라 달라집니다. 

  9. 저자의 세션 후 검증 로그, ~/.claude/state/verification/에서 추적. 2025년 5월부터 2026년 2월까지 약 400개의 에이전트 세션에서 23건의 위양성 포착(에이전트 자체 보고 테스트 상태에 대한 5.75% 위양성 비율).