PR 리뷰
이 규칙은 모든 리뷰어(사람 또는 Copilot 코드 리뷰, Claude 등의 에이전트)에게 적용됩니다.
자매 스킬 github은 작성자 측의 역할(코멘트 수정, 답변, 다음 리뷰 요청)을 다룹니다.
저장소 자체의 리뷰 규칙(AGENTS.md, CONTRIBUTING.md, 스타일 가이드)이 이 스킬과 충돌하는 경우 저장소 규칙이 우선합니다.
리뷰의 목표는 올바른 PR을 병합하는 것입니다. 말할 거리를 찾는 것이 아닙니다. "발견된 이슈 없음"도 좋은 결과입니다.
발견 기준
발견 항목을 게시하려면 현실적인 실패 시나리오를 구체적으로 명명할 수 있을 때만 게시하십시오: 실제 호출자, 입력 또는 설정, 그리고 그것이 생성하는 잘못된 결과. 한두 문장으로 그 시나리오를 작성할 수 없다면 게시하지 마십시오.
| 심각도 | 사용 시기 |
|---|---|
| Blocking | 일반적인 경로에서 잘못된 결과, 보안 허점, 데이터 손실, 빌드 또는 테스트 실패, 공개 API에 대한 변경 변경, 또는 저장소에 명시된 규칙을 명백히 위반한 경우 |
| Should fix | 덜 일반적인 경로에서 발생하는 실제 버그, 새로운 동작에 대한 테스트 누락, 또는 정상적인 경우 독자가 잘못된 동작을 하도록 유도하는 문서나 지침 |
| Nit | 이름, 문구, 또는 작은 명확성 수정. 선택 사항입니다. 리뷰당 최대 3개, 첫 번째 라운드에서만 게시 가능합니다. |
게시하지 마십시오:
- 비현실적인 입력, 잘못 구성된 환경, 또는 공격이 이미 부여한 접근 권한을 가진 공격자가 필요한 가상의 시나리오.
- 어떤 호출자도 도달할 수 없는 경우에 대한 방어 코드("null 검사 추가 고려").
- 저장소 내의 포맷터, 린터, 또는 타입 검사기가 이미 강제하는 모든 것.
- 두 합리적인 접근 방식 사이의 개인적 선호.
- 핫 경로나 측정이 없는 성능 문제.
- PR 범위를 확장하라는 요청: 해당 PR이 의도하지 않은 기능, 리팩터링, 또는 정리.
- PR이 변경하지 않은 코드의 문제(단, PR로 인해 문제가 악화되는 경우는 제외). 그럼에도 심각한 문제가 있다면 한 번만 언급하고 기존 문제, 차단 아님으로 표시하십시오.
문서, 스킬 및 기타 지침의 경우 한 가지 질문을 하십시오: 이 텍스트를 따르는 독자가 정상적인 경우 잘못된 동작을 할까요? 드문 설정에 대한 누락은 많아야 Nit입니다. 모든 에지 케이스를 명시적으로 요구하지 마십시오.
라운드를 통한 수렴
PR은 각 리뷰 라운드가 진행될수록 더 조용해져야 하며, 더 시끄러워져서는 안 됩니다.
- 1라운드 (첫 번째 리뷰): 전체 diff, 모든 심각도, Nit는 위의 제한 적용.
- 2라운드 이후 (이전 리뷰 이후의 새 커밋):
- 이전 리뷰 이후 변경된 내용만 리뷰하고, 이전 발견 사항이 수정되었는지 확인.
- 이미 리뷰했지만 변경되지 않은 코드에 대해 새로운 발견 사항을 제기하지 마십시오. 그곳에서 무언가를 놓친 경우 Blocking인 경우에만 게시.
- Nit 없음.
- 작성자가 이유와 함께 답변한 발견 사항을 다시 제기하지 마십시오. 단, 그 이유가 잘못되었다는 새로운 증거가 있는 경우는 예외. 의견 차이만으로는 새로운 증거가 아닙니다.
- 아무것도 기준을 충족하지 못하면 한 줄로 말하고 중단하십시오. 리뷰를 부풀리지 마십시오.
발견 항목 작성
- 코멘트당 하나의 이슈, 관련 코드 줄에 고정.
- 심각도로 시작:
Blocking:,Should fix:, 또는Nit:. - 그런 다음 한두 문장으로 실패 시나리오를 설명하고, 작동하는 가장 작은 수정을 제시.
- 리뷰당 최대 5개의 발견 항목, 가장 심각한 것부터 먼저. 더 많은 경우 나머지는 요약에 간략히 나열. 중복을 하나의 코멘트로 병합하여 각 위치를 모두 나열.
- 구체적이고 중립적으로 작성. 칭찬 보충어, 망설이는 "고려해볼 만한" 등의 표현 사용 금지.
요약
짧은 요약으로 마무리:
- 판정: 승인, Nit 포함 승인, 또는 변경 요청(최소 하나의 Blocking 발견 항목이 있는 경우에만).
- 심각도별 개수.
- 2라운드 이후: 이전 발견 항목 중 수정된 것과 여전히 열려 있는 것.
루프에서 에이전트로서 리뷰
다른 에이전트가 당신의 발견 사항을 수정하고 다음 리뷰를 요청하는 경우:
- 작성자의 답변을 리뷰의 일부로 처리. "abc1234에서 수정됨"은 해당 커밋을 확인하라는 의미. "이유 때문에 그대로 둠"은 그 이유가 잘못되지 않은 한 발견 사항이 종결되었음을 의미.
- 세 라운드 후에는 Blocking 발견 사항만 게시하고, 나머지 항목은 작성자의 판단에 맡긴다고 말합니다.