Pre-PR check은(는) 무엇을 하나요?
모든 항목을 수행한 후, 통과/실패 여부를 증거(명령어와 요약 결과)와 함께 테이블로 보고하세요.
-
make check가 모두 통과해야 함 (docs-check, lint + SAST, test, build, license) — 단, 다음 2가지 경우는 예외:- 문서만 변경된 PR (
docs(design): …, ADR, docs):make docs-check만 통과하면 됨 - 아직 스택을 선택하지 않은 저장소 (target에
not configured출력 — ADR-0001이 아직 accepted되지 않음): 해당 target은 N/A (아직 설정되지 않음) 으로 보고하며, 통과로 간주하지 않고 중단 사유도 아님 — 통과를 위해 recipe를exit 0으로 수정하지 마세요
그리고 사용자가 보는 화면을 변경한 경우
make e2e(e2e 테스트 추가/수정 포함), 미들웨어, 헤더, 쿠키, 오류 페이지 또는 새 라우트를 건드린 경우make dast도 실행 - 문서만 변경된 PR (
-
git diff origin/main...HEAD --stat— 작업과 관련된 파일만 수정되었는지 확인, 불필요한 파일 (빌드 출력물, .env, 개인 파일) 이 없어야 함 -
삭제하지 않은 임시 로그:
git diff origin/main...HEAD | grep -n '\[DBG-'에서 발견되면 안 됨 (fix-bug항목 3) -
diff에서 시크릿 검색:
git diff origin/main...HEAD | grep -nEi '(api[_-]?key|secret|token|password|BEGIN .*PRIVATE KEY)'— 발견되면 중단하고 알림 -
새로운 환경 변수가
.env.example에 모두 포함되어 있어야 함 -
추가/업그레이드된 의존성 (lockfile, go.mod, Dockerfile
FROMdiff 확인): 버전과 라이선스가docs/dependencies.md와 일치하고 PR 설명에 명시되어야 함 -
새로운 마이그레이션 (있는 경우): 실행 가능하고 롤백 가능해야 함
-
문서: README/docs/ADR (
docs/adr/) 가 변경 사항에 맞게 업데이트되어야 함; 도메인의 새로운 용어는 CONTEXT.md 에 있어야 하며 코드 내 이름이 CONTEXT.md 와 일치해야 함 -
review스킬에 따라 리뷰 수행 (Claude Code: 하위 에이전트reviewer; 다른 에이전트:.agents/skills/review/SKILL.md를 읽고 스스로 diff 검토) 후 "수정 필요" 항목을 먼저 해결해야 함 -
커밋 메시지가 Conventional Commits 형식을 따르고 브랜치가
main이 아니어야 함 -
PR 설명에
Closes #<issue>가 포함되어야 함 (이슈가 없으면 먼저 생성) 및## CHANGELOG제목 (카테고리 + 사용자 관점의 한국어 한 줄 또는-) —CHANGELOG.md자체는 수정하지 않음 (docs/release.md참조) -
UI를 건드린 경우: 하드코딩된 텍스트 없음, 모든 언어에 키가 완전히 있음, 직접적인 색상 값 없음,
th/en× light/dark 모두 확인 (docs/ui.md참조)
어느 항목이든 통과하지 못하면 PR을 열지 말고 먼저 수정하거나 무엇이 문제인지 보고하세요.