Official References: Best Practices · Review · Worktrees · Automations
왜 하드닝은 별도 루프로 다뤄야 하는가
사고 대응은 시스템을 다시 green으로 돌립니다. 하드닝은 그 green 상태를 유지하게 만듭니다.
하드닝을 사후 작업이 아닌 독립 루프로 운영하세요.
하드닝 타임라인 모델
| 구간 | 목적 | 필수 산출물 |
|---|---|---|
| 0–24시간 | 의사결정 신뢰도 보존 | 사고 타임라인 + 근거 패킷 |
| 24–72시간 | 지배적 실패 클래스 차단 | 자동화 통제 1개 + 회귀 테스트 1개 |
| 3–14일 | 학습의 제도화 | 런북/프로세스 업데이트 + 오너 확인 |
통제 포트폴리오 버킷
하드닝 액션을 아래로 추적하세요.
- 탐지 통제: 알림 라우팅, 신호 품질, 대시보드 가시성
- 예방 통제: 테스트, 정책 체크, 정적 안전장치
- 복구 통제: 롤백 리허설, 핸드오프 계약, 에스컬레이션 맵
각 액션에 오너/기한/검증 근거를 넣어야 합니다.
레인 기반 실행 모델
- Controls 레인: 강제 규칙 및 자동화 구현
- Quality 레인: 원인 클래스 회귀 커버리지 고정
- Operations 레인: 런북 + 커뮤니케이션 프로토콜 업데이트
레인이 공유 파일을 수정해야 한다면 merge owner를 한 명 지정하세요.
신뢰성 스코어카드
항목별 이진 점수(0/1)로 기록합니다.
- 원인 클래스 테스트 커버 확보
- 롤백 경로 리허설 및 시간 측정 완료
- 에스컬레이션 오너십 문서화
- 모니터링/알림 업데이트
- 런북 업데이트에 대한 오너 확인 완료
최소 종료 기준은 4/5입니다.
하드닝 종료 게이트
아래를 모두 만족해야 종료할 수 있습니다.
- 스코어카드 기준 충족
- 통제가 일상 딜리버리 워크플로우에서 동작
- 오너 채택 확인 완료
- 미해결 고위험 후속 항목 없음
완료 근거 번들
아래 항목을 한 번들로 보관하세요.
- incident id + 요약
- 적용한 통제 항목
- 테스트 근거 링크
- 런북/프로세스 diff
- 잔여 액션 오너 + 기한
고급 안티패턴
하드닝 백로그 없이 "복구 완료" 선언
사고 재발을 사실상 예약하는 패턴입니다.
통제를 추가했지만 실제로는 미사용
리허설되지 않은 통제는 압박 상황에서 실패합니다.
문서만 업데이트하고 오너 계약은 없음
문서는 늘었지만 실행 책임은 비어 있습니다.
빠른 체크리스트
하드닝 루프 종료 전:
- 자동화 통제 1개 이상 머지
- 회귀 테스트 1개 이상 머지
- 런북/프로세스 업데이트 공개
- 오너 확인 기록
Codex는 빠른 복구를 돕습니다. 시간이 지날수록 더 잘 복구하게 만드는 건 하드닝입니다.
하드닝 포트폴리오 우선순위 매트릭스
하드닝 액션은 두 축으로 우선순위를 정합니다.
- 리스크 감소 규모
- 운영 채택까지 걸리는 시간
| 우선순위 | 리스크 감소 | 채택 속도 | 대표 액션 |
|---|---|---|---|
| P0 | 높음 | 빠름 | 차단 정책 체크, 롤백 검증 게이트 |
| P1 | 높음 | 중간 | 원인 클래스 회귀 테스트 추가 |
| P2 | 중간 | 빠름 | 런북/핸드오프 템플릿 개선 |
| P3 | 중간/낮음 | 느림 | 구조적 리팩터링 |
문장 다듬기보다 P0/P1을 먼저 닫으세요.
하드닝 실험 설계
각 하드닝 액션을 작은 실험으로 운영합니다.
- 가설: "통제 X를 넣으면 실패 클래스 Y가 Z% 감소한다."
- 측정: 지표 + 관찰 기간 정의
- 가드레일: 통제 자체 롤백 조건
- 오너: 실행 오너 1명 + 검증 오너 1명
- 리뷰 날짜: 고정 날짜 지정
예시
- 가설: 릴리스 전 롤백 리허설 의무화로 SEV-1 MTTR 편차 감소
- 측정: 다음 4회 사고/드릴의 p95 MTTR
- 가드레일: 릴리스 리드타임 20% 이상 악화가 2회 지속되면 게이트 재보정
오너십 운영 리듬
주간 신뢰성 스탠드업 (20분)
- 기한 초과 하드닝 항목 리뷰
- 근거 링크가 약한 항목 리뷰
- blocked 항목 즉시 재배정
- 증거 링크 없는 항목은 close 금지
월간 통제 감사
- 통제가 실제로 동작 중인지 확인
- 오너가 여전히 유효한지 확인
- 리스크 감소가 없는 통제는 폐기
하드닝 품질 루브릭 (0–2점)
| 항목 | 0 | 1 | 2 |
|---|---|---|---|
| 명확성 | 모호 | 부분 범위 | 정확한 범위/경계 |
| 근거 | 없음 | 이미지 수준 | 명령/로그 링크 |
| 오너십 | 없음 | 단일 오너 | 오너+검증자+기한 |
| 채택 | 미확인 | 체감 수준 | 실제 워크플로우 관측 |
| 리스크 영향 | 불명 | 추정 | 지표 추세로 확인 |
최소 통과 7/10. 미달이면 루프를 닫지 않습니다.
하드닝 백로그 템플릿
### Hardening Item
- Incident reference:
- Failure class:
- Proposed control:
- Priority band: P0/P1/P2/P3
- Execution owner:
- Verifier owner:
- Due date:
- Evidence link(s):
- Adoption check date:
- Status: open | in_progress | verified | retired하드닝 프로그램의 흔한 실패
- 지표 개선 효과 없이 backlog만 닫힘
- 통제를 추가했지만 운영자에게 전파되지 않음
- 런북만 바꾸고 on-call 체크리스트는 미반영
- 오너가 퇴사/이동했는데 재지정 없음
이 문제는 월간 감사로 해결해야 합니다.
사고 발견사항 → 통제 설계 매핑
| 발견 유형 | 통제 후보 | 검증 방식 |
|---|---|---|
| 탐지 누락 | 알림 규칙 + 라우팅 개선 | synthetic alert replay |
| 의사결정 지연 | 체크포인트 SLA + commander 스크립트 | 드릴 타이밍 감사 |
| 복구 지연 | 롤백 리허설 게이트 | timed rollback run |
| 반복 회귀 | 테스트 하네스 + 정책 체크 | 회귀 스위트 추세 |
이 매핑이 하드닝을 추상화에서 구체화로 바꿉니다.
14일 하드닝 스프린트 템플릿
- 1–2일: 리스크/가역성 기준 우선순위화
- 3–5일: P0/P1 통제 구현
- 6–8일: 검증 커버리지와 근거 링크 추가
- 9–11일: 실운영 채택 체크
- 12–14일: 요약 공개 + 잔여 리스크 오너 확정
일정이 밀려도 검증은 줄이지 마세요.
잔여 리스크 레지스터 형식
### Residual Risk
- Risk statement:
- Why not fully solved yet:
- Temporary control in place:
- Trigger for re-prioritization:
- Owner:
- Target resolution date:트리거/기한 없는 잔여 리스크는 미관리 리스크입니다.
통제 경제성 프레임워크
모든 하드닝 통제에는 비용이 있습니다. 트레이드오프를 명시하세요.
| 통제 유형 | 신뢰성 개선 시점 | 운영 비용 | 권장 사용 상황 |
|---|---|---|---|
| 차단 정책 게이트 | 즉시 | 중간 | 고심각도 반복 실패 |
| 회귀 스위트 확장 | 단기/중기 | 중간/높음 | 원인 클래스 재발 |
| 런북/템플릿 개선 | 단기 | 낮음 | 오너십 모호성 |
| 구조 단순화 | 중기/장기 | 높음 | 만성 복합 장애 |
먼저 신뢰성 대비 효율이 높은 통제를 선택하세요.
채택 하드닝 체크리스트
머지 시점은 완료가 아닙니다. 채택을 별도로 검증해야 합니다.
- 오너가 사이드채널 지식 없이 통제를 실행할 수 있는가
- 통제 자체 실패 경로가 문서화되어 있는가
- on-call 체크리스트에 새 통제 포인트가 반영되었는가
- 로그/대시보드 근거로 통제 실행이 확인되는가
머지됐지만 쓰이지 않는 통제는 거짓 확신입니다.
하드닝 QA 게이트
verified 전 반드시 확인:
- 구현 근거 (diff + 명령 출력)
- 행동 근거 (드릴/리플레이 신호)
- 오너십 근거 (실행 오너 + 검증 오너 승인)
하나라도 빠지면 in_progress 유지.
통제 Sunset 프로토콜
통제는 기본적으로 영구 유지 대상이 아닙니다.
폐기 조건:
- 목표 지표 개선 효과 없음
- 더 강한 통제와 중복
- 운영 비용이 리스크 감소 대비 과도
폐기 시 대체안 또는 사유 노트를 남기세요.
통제 롤아웃 시퀀싱
새 통제를 3단계로 배포합니다.
- Shadow mode — 차단 없이 동작 관찰
- Warn mode — 위반 노출 + 오너 귀속
- Enforce mode — 정의된 고위험 조건에서 차단
급격한 운영 충격 없이 안전성을 올릴 수 있습니다.
하드닝 채택 점수
채택 점수(0–5)로 관리합니다.
- 대상 환경에서 통제가 활성화됨
- 오너가 학습/확인 완료
- 런북 실행 절차 반영
- 대시보드 신호로 런타임 실행 확인
- 실제 사고/드릴 1회 이상 적용
4 미만이면 채택 미완료입니다.
신뢰성 부채 레저
연기된 하드닝 작업은 별도 레저에 기록:
| Debt item | Why deferred | Risk if delayed | Revisit date |
|---|
재검토 날짜 없는 연기는 상시 리스크가 됩니다.