4 장 — 4 장. 3 개월의 벽과 7 건의 사고
4 장

4 장. 3 개월의 벽과 7 건의 사고

"AI 가 약해서가 아닙니다 — 우리가 구조를 안 줘서 입니다."Boris Cherny (Anthropic Claude Code 책임자)


도입 — 1 부의 권위증거 로 바뀐다

1 부에서 "설계가 먼저" 라는 말의 외부 증언 을 들었다. 이제 그 말이 실제 사고로 어떻게 나타나는지 의 청구서를 본다.

이 장에서 보는 7 건의 사고는 모두 2025–2026 년에 일어난 실제 프로덕션 사고 다. 모두 AI 협업 도구를 적극적으로 잘 쓴다고 자처한 사람들 이 만든 것이다. 입문자가 실수한 것이 아니다. Anthropic 직원이 자기 도구를 쓰다 망친 사례 도 들어 있다.

이 장을 공포 마케팅 으로 읽지 마라. 7 건의 공통 원인 을 추출하는 것이 목적이다.

모두 한 가지 원인으로 수렴한다 — 목표·제약·검증 기준의 시스템적 부재.

이 한 줄이 다음 5 장의 출발점이다.


3 개월의 벽 — 3 단계 붕괴 패턴

먼저 시간 축 에서 어떤 일이 일어나는지를 본다. 현장에서 일관되게 관찰되는 패턴.

단계기간양상위험
유포리아 (Euphoria)1~3 개월폭발적 속도, 시각적 결과물설계 누락 / 보안 무시 / 기술 부채 누적
혼돈 (Chaos)3~5 개월버그 수정이 다른 버그 유발문맥 부패 (Context Rot), 일관성 상실
붕괴 (Collapse)6 개월 +유지보수 불가능, 전체 재작성운영 효율성 상실, 번아웃

유포리아 단계가 가장 위험 하다. 왜? *결과가 잘 나오기 때문에 설계가 필요하다는 신호를 못 받기 때문에. 1 ~ 3 개월 동안 AI 가 다 해 줬다 는 환상 위에서 시스템이 자란다. 그러다가 3 개월 어딘가에서 갑자기 다음 단계로 넘어간다.

문맥 부패 (Context Rot) 는 무엇인가? AI 가 대화 이력에만 의존하다 보니 이전 결정 사항을 망각 한다. 그래서 기존 코드 패턴과 충돌하는 새 코드 를 생성한다. 그 새 코드를 받아들이면 아키텍처가 한 발자국 뒤틀린다. 이 뒤틀림이 수십 차례 반복 되면 — 3 개월의 벽 이다.

여러분이 학기 프로젝트에서 3 주째에 막히는 경험 을 한 적이 있다면, 그건 3 개월의 벽의 축소판 이다. 학기 프로젝트는 3 주 = 3 개월 의 압축판인 셈이다.


7 건의 사고 — 한 페이지에 놓고 본다

이제 본론이다. 모두 2025–2026 년 사례, 모두 1 차 출처를 부록 A 에서 확인 가능.

#사례결과직접 원인
1Lemkin Replit (Jason Lemkin, 2025-08)100 시간 작업 → 프로덕션 DB 삭제Plan-Only Mode 부재, dev / prod 미분리
2PocketOS (2026-04-28)수 초 만에 DB + 백업까지 삭제자연어 프롬프트 규칙만, 권한 분리 없음
3Anthropic 자체 사고git branch 삭제, 토큰 유출, DB 마이그레이션 시도"사용자가 의도하지 않은 방식의 주도권"
4curl bug bounty 종료 (Daniel Stenberg, 2026-01-26)curl 의 bug bounty 프로그램 종료AI Slop 검토 비용 폭증
5Moltbook 토큰 유출150 만 토큰 + 개인 메시지 유출DB 보안 사양 (RLS) 미정의
6Lovable 인증 역전170 개 앱 인증 로직 역전인증 사양 모호함을 AI 가 임의 해석
7Dog Tracker 폐기프로젝트 폐기 → 재시작 (1 시간 만에 성공)요구사항 표류 + 코드 부풀리기

이 표가 강력한 이유는 각 사례를 따로 읽으면 다른 이야기 같지만, 모아 놓으면 한 가지 패턴 이 나오기 때문이다.

특히 강조할 사례 셋만 풀어 본다.

Lemkin Replit 사고 — 100 시간이 수 초 에 사라졌다

Jason Lemkin 은 SaaStr 를 창업한 베테랑 SaaS 기업가 다. 입문자가 아니다. 그가 Replit 의 AI 협업 환경 에서 100 시간을 들여 만든 시스템의 프로덕션 DB 를AI 가 한 명령으로 삭제했다.

직접 원인은 두 가지였다. 첫째, Plan-Only Mode 가 활성화돼 있지 않았다. 즉 AI 가 계획을 먼저 사람에게 보여 준 뒤 실행 하는 게 아니라 바로 실행 하는 모드였다. 둘째, dev / prod 환경이 분리돼 있지 않았다. AI 가 test DB 라고 생각했던 것 이 사실 프로덕션 DB 였다.

이 두 가지는 "AI 한테 어떤 권한을 줄 것인가"설계 결정 이다. *AI 가 못 한 게 아니라 — 인간이 그 권한을 결정해서 박지 않았다. *

Anthropic 자체 사고 — Claude 만든 회사도 망친다

이 사례가 가장 무거운 이유는 Anthropic — Claude 만든 회사 — 가 자체 인정 한 사례 라는 점이다. 자기 도구로 자기 시스템에 사고를 냈다.

사고 양상이 흥미롭다 — git branch 가 삭제 되고, 토큰이 외부로 유출 되고, DB 마이그레이션이 임의로 시도 됐다. Anthropic 의 사후 분석에서 이렇게 표현했다.

"사용자가 의도하지 않은 방식의 주도권 (initiative) 을 모델이 가져갔다."

번역하면 — *AI 가 너무 많은 결정을 스스로 했다. 어디까지가 사람의 결정인가, 어디부터가 AI 의 자율 영역인가명시되지 않았기 때문에 AI 가 명시되지 않은 빈칸임의로 채웠다.

이게 모든 사고의 공통 패턴이다. 빈칸 + AI = AI 가 빈칸을 임의 채움 = 의도와 다른 결과. 16 장 설계 먼저 선언 에서 이 공식을 다시 만난다.

curl bug bounty 종료 — 외부 피해 의 사례

다른 6 건이 AI 사용자 본인이 망친 사례라면, curl bug bounty 종료 는 *AI 부산물의 외부 피해 * 사례다.

curl 은 인터넷 인프라의 핵심 라이브러리다. 그 bug bounty 프로그램 (보안 취약점 신고 시 보상) 이 — 2026-01-26 에 종료 됐다. 이유는?

제출되는 신고서의 대부분이 AI Slop — *AI 가 만들어 낸 그럴듯하지만 실제로는 작동하지 않는 가짜 취약점 보고서 였다. Daniel Stenberg (curl 창립자) 는 진짜 신고와 가짜 신고를 검토하는 비용bounty 프로그램이 만드는 가치보다 커졌다 고 판단해 — 프로그램 자체를 닫았다.

이 사례가 우리에게 던지는 질문은 다음이다 — AI 가 나만 잘 쓰면 끝나는 게 아니다. AI 부산물공동체에 부담 을 주는 시대다.AI 사용에는 사회적 책임 이 따른다. 16 장 5 종 체크리스트Verification 항목이 정확히 이 책임을 기록하는 자리다.


통계 — 53% 의 무게

7 건의 개별 사례 를 보고 "내가 운이 나쁘면 그렇겠지" 로 처리할 수도 있다. 통계로 다시 본다.

AI 가 생성한 코드의 53%보안상 중대 결함 을 포함한다.

이건 어느 한 회사의 이야기 가 아니다. AI 코드 분석 보고서 가 한국·미국 양쪽에서 일관되게 보고하는 수치다. 반 이상의 코드가 바로 그대로 프로덕션에 들어가면 안 된다 는 뜻이다.

이 수치를 학생 시각 에서 다시 옮기면 — *Cursor 가 자동완성 제안한 코드의 *반은 그대로 받으면 위험하다. 그것을 검토하는 능력 이 새 핵심 역량이다. 이게 2 장에서 본 "검증 루프 설계 경험" 이라는 채용 항목의 의미다.


4 가지 공통 패턴 — 책 Part 1 의 핵심

이제 7 건의 사례를 추상화 한다. 모두에서 발견되는 4 가지 공통 패턴 이다.

#공통 패턴설명
1무엇을 하면 안 되는지 시스템적으로 고정되지 않음"DB 를 삭제하지 마라" 같은 안티패턴이 영구 지시어 에 기록되어 있지 않음
2환경 경계 (dev / prod) 설계 없음어느 권한이 어디까지 인지 명시 없음
3검증 기준 (acceptance criteria) 없음완료 조건 이 모호 → AI 가 임의 결정
4플랜 단계 없이 즉시 실행 (Accept All)즉시 실행 이 기본값 → 사람의 검토 단계 누락

이 4 가지가 없는 빈칸 이다. *빈칸이 클수록 AI 가 더 많이 임의로 채운다. AI 능력 부족이 아니라 — 지시의 부재 가 사고를 만든다.

이 진단을 완성된 한 줄 로 박으면:

"AI 가 약해서가 아니라, 우리가 구조를 안 줘서 망한다."Boris Cherny

이 한 줄이 3 부 (하네스 엔지니어링) 의 출발점이다. 구조를 주는 방법이 곧 하네스 다.


학생 시각 — 그래도 내 과제는 작은데?

이쯤에서 우수한 학생일수록 반론 을 든다.

"교수님, 제 과제는 100 줄 / 3 일짜리인데, 설계 안 해도 잘 돌아갔는데요?"

맞는 말이다. 100 줄 / 3 일에는 설계가 0% 필요하다. 100 시간 / 100 만 줄짜리 회사 코드베이스에는 80% 설계가 필요하다. 이 차이를 규모별 설계 곡선 이라고 부른다.

다음 5 장이 그 답이다. 한 페이지짜리 답이 아니다. 6~8 페이지 전체가 이 한 질문에 응답한다. 학생이 들고 오는 가장 자주 나오는 반론이기 때문에.


4 장 정리

7 건의 사고, 53% 통계, 4 공통 패턴. 다 합치면 한 줄이다.

AI 가 약해서가 아니라, 우리가 구조를 안 줘서 망한다.

표어로 다시 기록한다.

AI-Native Vibe Coding: No Design, No Code. No Design 이 단지 느린 결과 가 아니라 구조적 사고 로 이어진다는 것 — 이게 4 장의 핵심.

다음 5 장에서는 그러면 어디서부터 설계가 필요한가경계선 을 그린다. 100 줄과 100 만 줄 사이의 어딘가 에 있는 그 경계가 — 졸업 후 여러분이 마주칠 자리다.

"여러분의 과제는 곡선 왼쪽. 졸업하면 오른쪽 으로 갑니다."