07 테스트, 실패, 수정
알려진 결함을 주입하고, ClickStack으로 진단하고, 수정을 적용한 뒤 복구를 증명합니다.
결과물
약 20분 안에 하나의 장애를 실패에서 검증된 복구까지 처리해 봅니다. 이것은 Module 06에서 바로 이어지며, Module 00에서 설정한 ClickStack MCP를 사용합니다.
Step 1 — 결함 하나 선택
Fault 01부터 시작하세요. Fault 02는 두 번째 짧은 연습이고, Fault 03은 안정적으로 실패하려면 더 큰 데이터셋이 필요합니다.
| 브랜치 | 예상되는 실패 | 다시 빌드할 대상 |
|---|---|---|
fault/01-map-not-loading | 지도 폴리곤이 사라지고, 다른 카드는 정상 동작 | frontend |
fault/02-zone-stats-500 | zone 지도 데이터가 HTTP 500으로 실패 | backend |
fault/03-slow-dashboard | 트렌드 요청이 타임아웃, 여러 달치 데이터가 있을 때만 사용 | backend |
Step 2 — 결함 주입과 재현
다음 예시는 로컬 작업을 보존한 채 Fault 01을 주입합니다:
cd "$(git rev-parse --show-toplevel)"
git stash push --include-untracked -m "before-module-07"
git switch build-workshop-v1
git switch fault/01-map-not-loading
cd workshops/build_workshop/app
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
up -d --build frontendlocalhost:8080에서 새 브라우저 세션을 여세요. 지금 지도가 비어 있는 것이 정상입니다. 다른 곳에서 발생하는 실패는 이 시나리오의 일부가 아닙니다.
Step 3 — 증거로 진단하기
에이전트에게 답이 아니라 증상을 주세요:
Using the clickstack MCP, investigate the current workshop failure.
Correlate frontend and backend telemetry, identify the root cause, and cite the exact
events, request, response content type, or trace that supports the conclusion.
Do not edit code yet.Fault 01에서는 ClickStack → Client Sessions도 살펴보세요. 유용한 증거는 프런트엔드 오류와 리소스 파싱 실패입니다. 정상인 백엔드 트레이스도 영향 범위를 좁혀주기 때문에 증거입니다.

무언가를 수정하기 전에 다음을 적어 두세요:
- 실패하는 구성 요소;
- 그것을 증명하는 증거; 그리고
- 수정 전에는 실패하고 수정 후에는 통과할 복구 점검 하나.
Step 4 — 수정과 다시 빌드
증명된 원인을 해결하는 최소한의 변경을 에이전트에게 요청한 뒤, 영향을 받은 서비스를 다시 빌드하세요. Fault 01의 경우:
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
up -d --build frontendFault 02나 03의 경우 frontend를 backend로 바꾸세요.
새 브라우저 세션을 여세요. 원래 증상이 사라져야 하고, ClickStack에 새로 일치하는 오류가 나타나지 않아야 합니다. 선택한 시간 범위에는 이전 장애 이벤트가 남아 있습니다. 히스토리가 사라지기를 기대하지 말고 타임스탬프를 비교하세요.
Step 5 — 깨끗한 기준 상태로 복귀
시도한 수정 사항을 보존하고 build-workshop-v1을 복원한 뒤, 두 앱 서비스를 다시 빌드하세요:
cd "$(git rev-parse --show-toplevel)"
git stash push --include-untracked -m "module-07-fix"
git switch build-workshop-v1
cd workshops/build_workshop/app
docker compose --env-file .env.workshop \
-f docker-compose.workshop.yml \
-f docker-compose.otel.yml \
up -d --build frontend backend완료 확인
- 수정 전에 주입된 증상이 나타났습니다.
- 에이전트가 근본 원인을 증명하는 텔레메트리를 인용했습니다.
- 수정 후 같은 복구 점검이 통과합니다.
- 새 세션에서 새로 일치하는 오류가 생기지 않습니다.
git branch --show-current가build-workshop-v1을 반환합니다.
08 채팅과 Langfuse로 계속하세요.