Gemini CLI로 돌아가기
Gemini CLI고급14분 소요

Gemini 사고 복구 플레이북

Gemini CLI 팀이 프로덕션 회귀 이슈를 가역적 통제와 함께 다루기 위한 고급 사고 대응 운영 모델.

advancedincident-responseoperationsrelease

공식 참고 자료: Get Started · CLI Commands · Sub-agents · Skills

왜 이 플레이북이 필요한가

프로덕션 사고는 속도와 통제를 분리하지 못한 팀을 가장 크게 흔듭니다.

이 플레이북은 Gemini CLI 팀이 감사 가능성을 잃지 않으면서 빠르게 복구하도록 기준을 제공합니다.

심각도 매트릭스

레벨 대표 영향 기본 대응
SEV-1 핵심 사용자 여정/데이터 신뢰 손상 롤백 우선 평가
SEV-2 주요 워크플로우 심각 저하 통제된 완화 + hotfix 레인
SEV-3 제한적 회귀 계획된 보정 릴리스

최초 15분 표준

  • 사고 오너와 대행 오너 지정
  • 영향 도메인 관련 고위험 머지 동결
  • 기준 근거 수집(실패 명령, 로그, 영향 반경)
  • next-owner 필드를 포함한 레인 트래커 오픈

next-owner 필드가 비면 에스컬레이션 품질이 급격히 떨어집니다.

4개 사고 대응 레인

  • Triage 레인: 영향도와 신뢰도 분류
  • Mitigation 레인: feature flag / hotfix / rollback 후보 준비
  • Verification 레인: 재현 가능한 재실행 + 안전성 점검
  • Comms 레인: 내부/외부 이해관계자 업데이트 주기 관리

가능하면 레인 간 write scope를 분리하세요.

의사결정 정책

가장 먼저 사용자 안전을 복구할 수 있는 "가장 가역적인 옵션"을 우선합니다.

의사결정 순서:

  1. flag/config로 위험 경로 비활성화
  2. 범위 제한 패치 적용
  3. 검증된 안정 리비전으로 전체 롤백

사고 근거 패킷

주요 결정 지점마다 아래를 저장하세요.

  • 심각도, 오너, 시각
  • 영향 시스템/사용자
  • 실행한 명령과 결과
  • 잔여 리스크 문장
  • 다음 체크포인트 시각

사고 후 하드닝 루프

하루 이내에:

  • 주요 의사결정 전환점을 포함한 타임라인 공개
  • 가드레일 자동화 최소 1개 추가
  • 원인 클래스용 회귀 테스트 1개 추가
  • 후속 작업 오너/기한 지정

하드닝 작업이 없으면 같은 사고가 다시 반복됩니다.

고급 안티패턴

오너십 맵 없이 공유 파일 병렬 수정

속도가 중요한 순간에 merge 압력을 키웁니다.

직감만으로 "해결" 선언

확신 표현이 아니라 재실행 근거를 사용하세요.

사고 종료 시점에만 커뮤니케이션

이해관계자는 단일 요약보다 주기적 업데이트가 필요합니다.

빠른 체크리스트

종료 전:

  • 심각도/오너 기록
  • 완화 경로 선택 근거 명시
  • 재실행 근거 첨부
  • 하드닝 후속 작업 오너 지정

Gemini는 대응 속도를 올려주지만, 이 플레이북이 대응을 통제 가능한 상태로 유지합니다.

시나리오 라이브러리 (실전 압박 패턴)

이 라이브러리는 이상적인 경로가 아니라 실제 압박 상황에서 플레이북을 연습하기 위해 사용합니다.

시나리오 A — 배포 직후 인증 토큰 장애

  • 신호: 특정 서비스에서 401/403 급증
  • 리스크: 고객 신뢰 저하 + 지원 부하 급증
  • 의사결정 분기: feature-flag 롤백 vs 제한적 hotfix
  • 최소 근거: 실패 엔드포인트 목록, 첫 이상 배포 해시, 롤백 안전성 체크 결과
  • 오너 핸드오프: 조사 오너 → 완화 오너 → 검증 오너

시나리오 B — 과금 상태 불일치

  • 신호: 매출 이벤트와 거래 원장이 불일치
  • 리스크: 재무/법적 노출
  • 의사결정 분기: 즉시 쓰기 동결 vs 범위 제한 재처리
  • 최소 근거: 불일치 표본 수, 영향 반경, 재처리 안전 경계
  • 오너 핸드오프: 데이터 오너 + 사고 커맨더 이중 승인

시나리오 C — 권한 누수 경로 발견

  • 신호: 저빈도지만 심각한 우회 접근 보고
  • 리스크: 보안 사고 격상
  • 의사결정 분기: 긴급 롤백/권한 회수 우선, 이후 패치
  • 최소 근거: 최소 재현 케이스, 회수 완료 증명, 감사 로그 스냅샷

워룸 산출물 번들 (복붙 템플릿)

### Incident Command Snapshot
- Incident ID:
- Severity:
- Incident commander:
- Current phase: detection | containment | recovery | hardening
- Latest stable revision:
- Candidate mitigation path:
- Risk if we wait 30 minutes:
- Next checkpoint at:
- Next owner:
### Checkpoint Decision Record
- Timestamp:
- Evidence reviewed:
- Decision: continue mitigation | rollback | escalate+pause
- Why this decision now:
- Rejected alternatives:
- Owner for execution:
- Owner for verification:

에스컬레이션 메시지 템플릿

내부 엔지니어링 에스컬레이션

[INCIDENT][SEV-X] <short summary>
Impact: <users/systems>
Current decision: <path>
Immediate ask: <approval/resource>
Next update: <time>
Owner: <name>

이해관계자 업데이트

Status: investigating/mitigating/recovered
Customer impact: <plain language>
Current mitigation: <plain language>
Known unknowns: <top 1-2>
Next committed update time: <time>

종료 수용 기준 (하드 게이트)

아래를 모두 만족할 때만 incident response를 종료합니다.

  1. 완화 경로 실행 + 최신 명령 근거로 검증 완료
  2. 24시간 관찰 구간 동안 롤백 트리거/오너 문서화 유지
  3. 잔여 리스크를 명시적으로 기록
  4. 하드닝 백로그 오너/기한 배정
  5. 커뮤니케이션 타임라인 완결

하나라도 빠지면 상태는 active 유지입니다.

종료 직후 30분 리뷰

즉시 짧은 리뷰를 실행합니다.

  • 가장 먼저 왔지만 무시된 신호는 무엇인가?
  • 어떤 체크포인트 의사결정이 가장 오래 걸렸는가?
  • 오너십이 모호해진 구간은 어디인가?
  • 해결 시간을 가장 줄였을 가드레일 1개는 무엇인가?
  • 추가/재정의해야 할 지표 1개는 무엇인가?

컨텍스트가 사라지기 전에 백로그 항목으로 전환하세요.

프로바이더별 사전 준비 체크

플레이북 시작 전 아래를 강제합니다.

  • 리포지토리 상태: 마지막 안정 리비전 확인 + 롤백 경로 즉시 실행 가능 여부 확인
  • 오너 그래프: commander/mitigation/verifier/comms 오너 명시
  • 근거 채널: 체크포인트 기록을 남길 단일 문서/스레드 지정

최소 사전 체크 명령

git rev-parse --short HEAD
git log --oneline -n 5
# 서비스 헬스 체크 명령 추가

결과를 첫 체크포인트에 첨부하세요.

의사결정 품질 가드레일

각 체크포인트 결정마다 3문장을 요구합니다.

  1. 가역성 문장 — 이 결정을 얼마나 빨리 되돌릴 수 있는가?
  2. 영향 반경 문장 — 이 결정이 틀렸을 때 무엇이 악화되는가?
  3. 검증 문장 — 무엇이 성공 신호인지 정확히 무엇으로 증명하는가?

하나라도 빠지면 고급 수준 의사결정으로 보지 않습니다.

핸드오프 수용 테스트

다음 오너로 넘기기 전에 확인:

  • 범위 경계(포함/제외)가 명시됨
  • 미해결 unknown 목록이 존재함
  • 다음 체크포인트 시간이 커밋됨
  • 즉시 롤백 트리거가 기록됨

이 테스트로 레인 간 컨텍스트 손실을 줄입니다.

60분 커맨드 타임라인 블루프린트

심각도가 불명확하지만 영향이 실제로 발생한 상황에서 이 타임라인을 사용합니다.

  • T+00–10: 심각도 가설 확인, 고위험 머지 동결, commander+deputy 지정
  • T+10–20: 완화 분기 옵션 수립, 롤백 준비성 확인
  • T+20–35: 상충 경로 병행 없이 한 분기를 명확히 실행
  • T+35–50: 검증 실행 + 사고 전 기준선과 비교
  • T+50–60: 의사결정 노트 게시 + 다음 체크포인트 시간 확정

핵심은 단순 속도가 아니라 압박 상황에서의 동기화된 의사결정 품질입니다.

의존성 리스크 매트릭스

완화 선택 전에 영향 의존성을 먼저 분류하세요.

의존성 클래스 실패 증상 기본 대응 자세
Auth/identity 접근 거부 또는 우회 rollback-first + audit 캡처
Billing/ledger 거래 불일치 write freeze + 정합 경계 설정
Messaging/queue 지연/중복 처리 처리량 조절 + replay guard
Observability 신호 누락/지연 보수적 롤백 임계값 적용

이 매트릭스가 과신 기반 단일 처방을 줄여줍니다.

충돌 의견 처리 프로토콜

오너 간 완화 권고가 충돌하면:

  1. 두 권고를 하나의 의사결정 기록에 함께 남김
  2. 가역성과 영향 반경을 각각 점수화
  3. 반증 근거가 없으면 더 가역적인 경로 우선
  4. 10분 이내 재평가 체크포인트 예약

의견 충돌은 정상이고, 비구조적 충돌이 위험합니다.

의사결정 신뢰도 계층

각 체크포인트 결정에 신뢰도 태그를 붙입니다.

  • L1 (low): 근거 불완전, 가역 액션만 허용
  • L2 (medium): 근거 일부 확보, 범위 제한 완화 허용
  • L3 (high): 근거 일관, 확장 롤아웃/종료 허용

L1 상태로 incident response를 닫지 마세요.

복구 브랜치 전략 매트릭스

브랜치 전략을 의도적으로 선택하세요.

브랜치 유형 사용 시점 리스크
Hotfix 브랜치 국소 코드 경로 회귀 숨은 부작용
Rollback 브랜치 불확실성/안전 리스크가 넓을 때 기존 기술부채 재유입
Containment 브랜치 조사 중 부분 완화 필요 임시 상태 장기화

단일 브랜치 오너 없이 3개 브랜치를 동시에 유지하지 마세요.

사고 종료 리뷰 패키지

최종 종료 전 하나의 패키지를 남깁니다.

  • 타임라인(핵심 시각+결정)
  • 완화 diff 요약
  • 검증 명령 번들
  • 잔여 리스크 레지스터
  • 하드닝 백로그 링크

이 패키지로 신규 오너가 10분 내 상황을 이해할 수 있어야 합니다.

리더십 핸드오프 노트 템플릿

### Incident Leadership Note
- What happened:
- Why this decision path was chosen:
- Current confidence level (L1/L2/L3):
- What remains uncertain:
- What we need from leadership:
- Owner for next 24h watch:

짧고 명시적인 리더십 노트가 의사결정 재논쟁을 줄입니다.

연결된 가이드