/cc-quality:checklist:pr-review — PR 합치기 전 점검표#
| 항목 | 내용 |
|---|---|
| 실행 명령 | /cc-quality:checklist:pr-review |
| 분류 | 개발 |
| 난이도 | ●●○ 보통 |
| MCP 서버 | serena |
한마디로#
코드 변경(PR)을 본 코드에 합치기 전에 빠뜨린 게 없는지 확인하는 체크리스트입니다. 비행기가 이륙하기 전 조종사가 한 줄씩 확인하는 점검표와 같다고 보면 됩니다.
누가·언제 쓰나요#
- 동료의 코드 변경(Pull Request)을 검토(리뷰)할 때
- "코드 리뷰 좀 해줘" 요청을 받았을 때
- 변경 내용을 최종적으로 합치기(merge) 직전, 마지막 확인이 필요할 때
무엇을 해주나요#
- 무엇을 봐야 하는지 정리된 항목들을 순서대로 짚어 줍니다 — 빌드·테스트·보안·아키텍처·성능·접근성·문서까지.
- 빠르게 보고 넘어가야 할 때 쓰는 5분 점검과, 꼼꼼히 보는 전체 점검 두 버전을 제공합니다.
- 어떤 문제는 반드시 고쳐야 하고(Must-Have), 어떤 건 권장 수준인지(Should/Nice) 우선순위를 알려 줍니다.
- 리뷰 코멘트와 결과(승인/수정요청/의견)를 적을 때 바로 복사해 쓸 수 있는 문구 템플릿을 줍니다.
어떻게 쓰나요#
/checklist/pr-review [PR 번호 또는 링크]
CI(자동 빌드/테스트) 상태는 아래 명령으로 확인합니다.
gh pr checks [PR_NUMBER]
gh pr view [PR_NUMBER] --web
안에서 무슨 일이 벌어지나요#
리뷰를 단계별로 짚어 줍니다.
- 빠른 점검(5분) — 빌드 성공, 테스트 통과, 린트 통과, 보안 문제 없음, 호환성 깨짐 여부만 먼저 확인합니다.
- 전체 점검 — PR 제목·이슈 연결 같은 메타 정보부터 변경 범위, 코드 품질(아키텍처·네이밍·구조), 상태 관리, 테스트, 보안, 성능, 다국어, 접근성, 문서까지 10개 영역을 차례로 봅니다.
- 우선순위 분류 — 발견한 문제를 "반드시 고쳐야 함 / 고치면 좋음 / 의견 정도"로 나눠 줍니다.
- 코멘트·결과 작성 — 정해진 템플릿으로 리뷰 코멘트와 최종 결과(승인·수정요청·의견)를 일관되게 남깁니다.
⚙️ 상세 옵션·실행 명세 (개발자 / AI 에이전트용)
Triggers#
- During Pull Request reviews
- When code review is requested
- Final verification before merge
Usage#
/checklist/pr-review [PR number or link]Quick Review (5-minute review)#
Minimum items to check when a quick review is needed:
- Build success (CI)
- Tests passing
- Lint check passing
- No security issues
- Breaking Changes verified
Full Review Checklist#
1. PR Meta Information#
- PR title follows convention
- Format:
type(scope): gitmoji description
- Format:
- Related issues linked
- Appropriate labels assigned
2. Change Scope#
- PR purpose is clear
- Focused on a single purpose (one PR = one feature/fix)
- Change scope is appropriate
- No unnecessary file changes
3. Code Quality#
Architecture
- Clean Architecture layer separation followed
- Dependency direction correct (Domain ← Data ← Presentation)
- No cross-feature module dependencies
Naming & Readability
- Meaningful variable/function names
- Project naming conventions followed
- Appropriate comments
Code Structure
- No duplicate code (DRY)
- Single Responsibility Principle followed
- Appropriate abstraction level
4. State Management (BLoC)#
- Event/State are
sealed class extends Equatable+ copyWith (no@freezed) - Appropriate state separation
- Error handling implemented
- Loading state handled
- Resources released in dispose
5. Testing#
- Tests added for new features
- Existing tests passing
- Edge case tests included
6. Security#
- No hardcoded secrets
- No sensitive information in logs
- Input validation applied
7. Performance#
- No N+1 query issues
- Unnecessary re-renders prevented
- Image optimization applied
- Appropriate caching strategy
8. Internationalization#
- No hardcoded strings
- Translation keys added
9. Accessibility#
- Semantic labels applied
- Touch target size appropriate
10. Documentation#
- Public API documented
- Breaking Changes documented
Review Priority#
Must-Have (cannot Approve)#
- Build failure
- Test failure
- Security vulnerability
- Undocumented Breaking Change
- Architecture violation
Should-Have (can Approve after requesting improvements)#
- Insufficient performance optimization
- Insufficient test coverage
- Insufficient documentation
- Insufficient accessibility
Nice-to-Have (comment only)#
- Naming improvement suggestions
- Code style suggestions
- Additional optimization suggestions
Review Comment Templates#
Required Fix (Blocking)#
🔴 **[Required]** {description}
{code location}: {file}:{line}
**Problem**: {problem description}
**Suggestion**: {solution}Improvement Request (Non-blocking)#
🟡 **[Improvement]** {description}
{code location}: {file}:{line}
**Current**: {current code}
**Suggestion**: {improved code}Suggestion/Question#
🟢 **[Suggestion]** {description}
{code location}: {file}:{line}
**Question/Suggestion**: {content}Praise#
✨ **Nice!** {description}
{code location}: {file}:{line}
{praise content}Review Result Templates#
Approve ✅#
LGTM! 🎉
All checklist items verified.
- Build successful
- Tests passing
- No security issuesRequest Changes 🔄#
Changes requested.
**Required fixes** (must resolve before merge):
1. {item 1}
2. {item 2}
**Recommended fixes** (optional):
1. {item 1}Comment 💬#
Overall looks good. A few questions/suggestions.
**Questions**:
1. {question 1}
**Suggestions**:
1. {suggestion 1}CI/CD Verification#
gh pr checks [PR_NUMBER]
gh pr view [PR_NUMBER] --web- Build successful
- Test successful
- Lint successful
- Coverage check
References#
- Detailed checklist:
.claude/checklists/pr-review.md - Feature complete checklist:
.claude/commands/checklist/feature-complete.md - Code review skill:
.claude/commands/quality:review.md