비싼 검사 전에 싼 검사
Lint 가 30 초고 test 가 8 분이면 lint 먼저. 실패하면 test 안 돔 — 실패 PR 당 8 분 절약. 원칙 일반화:
- Format 체크 (5 초) — 첫째.
- Lint (30 초) — 둘째.
- Type 체크 (1-3 분) — 셋째.
- Unit 테스트 (2-10 분) — 넷째.
- Integration / e2e 테스트 (5-30 분) — 다섯째.
- Performance budget / smoke deploy — 마지막.
Job level needs: graph 가 이걸 인코딩. Matrix level fail-fast 는 단일 job 의 병렬성 안에서 같은 아이디어를 인코딩.
반대 패턴: 가시성을 위한 병렬화
Main 에선 반대를 원할 수 있어: 다 병렬 돌려서 모든 실패를 한 번에 보고. 회고 분석을 위한 '깨진 거 다 말해' 모드. 대부분 팀이 PR 엔 fail-fast, main 엔 full-parallel.