Skip to content

Latest commit

 

History

History
42 lines (28 loc) · 2.21 KB

File metadata and controls

42 lines (28 loc) · 2.21 KB

Server 머지 전 체크리스트

PR을 올리기 전에 작성자가 확인하고, CI의 AI 리뷰가 차단/제안을 판정하는 기준으로도 사용합니다. 근거 규칙은 ../AGENTS.md에 있습니다.

판정 지침

  • 정확성과 명시된 완료 조건에 영향을 주는 것만 차단으로 분류합니다. 스타일 선호와 개선 아이디어는 제안으로 둡니다.
  • 아래 체크리스트는 신규·수정 코드에만 적용합니다. 변경하지 않은 코드의 기존 위반은 지적하지 않고 부채 이슈로 관리합니다.
  • 규칙 위반을 지적할 때는 근거가 되는 AGENTS.md 항목을 함께 제시합니다.

체크리스트

트랜잭션

  • @Transactional이 걸린 메서드 안에서 S3·FastAPI·LiveKit·GitHub API를 호출하지 않는가?
  • 같은 클래스 내부 호출에서 별도로 선언한 @Transactional 속성이 적용된다고 기대하고 있지 않은가?
  • Command / Query 구분에 맞는 클래스에 들어갔고, @Transactional 위치가 규칙과 같은가?

쿼리

  • 반복문 안에서 리포지토리를 호출하지 않는가?
  • 연관 엔티티를 함께 조회할 때 fetch join 또는 @EntityGraph를 썼는가?
  • 새 조회 조건을 추가했다면 인덱스 검토 근거를 PR 본문에 남겼는가?

계층

  • 컨트롤러에 분기·계산·엔티티 조작이 들어가지 않았는가?
  • 컨트롤러가 리포지토리를 직접 호출하지 않는가?
  • XxxUseCase에 단건 조회 외의 로직이 들어가지 않았는가?
  • 서비스에 불필요한 인터페이스와 Impl을 만들지 않았는가?

엔티티 · 응답

  • 엔티티에 setter가 생기지 않았고, 생성이 create(...) 팩토리를 거치는가?
  • 응답이 ApiResponse로 감싸졌고, 응답 DTO 필드에 @Schema가 붙었는가?
  • 새 에러가 XxxErrorCode enum에 추가되고, 컨트롤러에 @ApiErrorCodeExample로 명시됐는가?

설정 · 경계

  • 같은 prefix의 설정값 3개 이상을 @Value로 나눠 주입하지 않았는가?
  • AGENTS.md경계 항목(global/ 공용 코드, application.yaml, 엔티티 스키마)을 건드렸다면 Server 가디언 확인을 받았는가?