2026 프론트엔드 피하기 대조표:
원격 Mac에서 Biome·TypeScript 증분 검사, 병렬 워커·캐시·배포 전 3단계
원격 Mac·CI에서 Biome와 tsc 증분을 같이 돌릴 때 흔한 함정은 워커 과다·캐시 충돌·게이트 순서입니다. biome.json과 tsc --incremental 대조표, CPU·캐시·배포 전 3단계를 정리하고 관련 글과 연결합니다.
01 biome.json vs TypeScript 증분: 무엇을 맞출까
Biome는 포맷·린트·import 정리를 한 바이너리로 처리하고, tsc는 .tsbuildinfo로 증분 타입 검사를 가속합니다. 캐시·병렬 모델이 달라 표로 키와 CLI를 맞추는 것이 중요합니다. ESLint·Stylelint CI 게이트 패턴도 그대로 재사용할 수 있습니다.
| 구분 | Biome (biome.json / CLI) | TypeScript 증분 (tsconfig / tsc) |
|---|---|---|
| 핵심 설정 | linter·formatter·files.include/ignore·vcs.useIgnoreFile |
compilerOptions.incremental·tsBuildInfoFile·(모노레포 시) references + tsc -b |
| 대표 CLI | biome check . / biome ci (CI용 exit code) |
tsc --noEmit --incremental 또는 tsc -b --pretty false |
| 증분·캐시 성격 | 런타임 메모리 중심, 디스크 캐시는 도구 버전에 따름 | tsBuildInfoFile 경로에 그래프 스냅샷 저장 |
| 병렬성 | Rust 기반 내부 병렬 — RAYON_NUM_THREADS로 스레드 상한 조절 |
단일 프로세스 위주; tsc -b로 프로젝트 레퍼런스 단위 병렬 가능 |
| CI에서 흔한 실패 | ignore 불일치·버전 업 후 규칙 폭발 | 캐시·브랜치 꼬임, 경로 별칭·루트 불일치 |
02 병렬 워커와 CPU 코어 바인딩(원격 Mac)
원격 Mac은 vCPU·메모리가 고정인 경우가 많아 Biome와 tsc를 동시에 풀스레드로 돌리면 SSH·러너가 끊길 수 있습니다.
- 코어 예약:
sysctl -n hw.ncpu확인 후 OS·에이전트용 1~2코어 여유. - Biome:
RAYON_NUM_THREADS상한(예: 6, 소형 인스턴스는 4 이하) 후biome ci. - tsc: 단일 프로세스 위주; 모노레포는
tsc -b로 프로젝트 단위 병렬 설계. Biome와 동시 풀가동은 job 분리 권장. - 우선순위:
nice -n 10또는taskpolicy -c maintenance biome ci처럼 QoS 클램프로 백그라운드 부하 완화.
번들·PostCSS와 겹치는 피크는 메모리 매트릭스 글과 함께 보세요.
vCPU 8 미만이면 biome→tsc 순차 + 캐시 히트가 병렬 OOM보다 안전한 경우가 많습니다.
03 캐시 디렉터리와 CI/CD 캐시 키
캐시 키에 lockfile·@biomejs/cli·typescript 버전을 넣지 않으면 오탐·미검출이 납니다. 원격 디스크는 휘발적이므로 캐시 미스 시 클린 루틴을 스크립트에 두세요.
tsBuildInfoFile(예:dist/.tsbuildinfo)를 캐시/아티팩트에 포함.- pnpm store·
node_modules와 타입체크 캐시 레이어 분리 여부 결정. - PR 워크플로는 캐시 쓰기·키 접두사로 브랜치 오염 방지.
package.json scripts 배포 전 점검과 PR 단위로 묶으면 게이트 공백이 줄어듭니다.
04 CI/CD 파이프라인에서의 권장 순서
설치·캐시 → biome ci → tsc --noEmit --incremental → 테스트 → 프로덕션 빌드 → (별도 job) E2E·스모크. 린트를 앞에 두면 비용 대비 빠르게 실패합니다.
macOS 노드에서는 Safari·Node 체크리스트·Vitest vs WebKit 매트릭스로 후단 검증을 붙이세요.
05 배포 전 3단계 검수(결정형)
- 정적 게이트:
biome ci+tsc --noEmit --incremental녹색, Node는 격리 규칙과 일치. - 프로덕션 빌드:
NODE_ENV=production산출물로 스테이징 배포, 소스맵·env 정책 점검. - 스모크: 핵심 사용자 경로를 Safari 등에서 확인. 예시는 배포 전 스모크 글 참고.
정적 검사 → 프로덕션 빌드 → 브라우저 스모크. 이 순서를 문서화해 두면 온콜 시에도 재현됩니다.
06 피하기 체크리스트
- ❌ Biome+tsc+번들을 한꺼번에 풀가동해 OOM.
- ❌
tsBuildInfoFile미캐시로 매번 풀 타입체크. - ❌ biome ignore와 tsconfig include 불일치.
- ❌ 프로덕션 빌드·Safari 스모크 생략.