목표
PR이 열릴 때마다 lint·type check를 자동으로 실행해 코드 품질을 검증한다.
배경 / 필요성
- CI 없이 코드 리뷰 봇만 붙이면 실제 빌드 오류를 잡지 못함
- 브랜치 보호 규칙에 "CI 통과 필수" 상태 체크를 연동해야 머지 전 검증이 완성됨
- 테스트 코드가 생기면 test step을 추가하는 확장 구조로 설계
작업 범위
완료 조건 (Acceptance Criteria)
제안하는 구현 방식
pnpm 공식 캐싱 액션 활용 (pnpm/action-setup)
- 앱별 필터링으로 변경된 패키지만 검사하는 방식은 초기에 단순하게 전체 실행으로 시작
- 테스트 step은 플레이스홀더로 추가해 나중에 채울 수 있도록 구성
- Next.js 15에서
next lint 명령이 제거됨 → apps/web은 eslint 직접 실행
apps/web, apps/api 모두 ESLint 9 flat config 형식(eslint.config.mjs) 사용
관련 이슈
없음
목표
PR이 열릴 때마다 lint·type check를 자동으로 실행해 코드 품질을 검증한다.
배경 / 필요성
작업 범위
.github/workflows/ci.yml작성 — PR 대상 브랜치develop,main트리거apps/web— lint(eslint src/), type check(tsc --noEmit), ESLint 9 flat config(eslint.config.mjs) 추가apps/api— lint(eslint "{src,test}/**/*.ts"), type check(tsc --noEmit), ESLint 9 flat config(eslint.config.mjs) 추가apps/mobile— lint (expo lint)packages/shared,packages/database— type check완료 조건 (Acceptance Criteria)
main·develop브랜치 보호에 CI 상태 체크 필수 조건 추가됨제안하는 구현 방식
pnpm공식 캐싱 액션 활용 (pnpm/action-setup)next lint명령이 제거됨 →apps/web은eslint직접 실행apps/web,apps/api모두 ESLint 9 flat config 형식(eslint.config.mjs) 사용관련 이슈
없음