코드 리뷰 플로우
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
애드온에 따라 GitLab은 두 가지 코드 리뷰 기능 중 하나를 실행합니다: 코드 리뷰 플로우는 에이전틱 AI로 코드 리뷰를 간소화하는 데 도움을 줍니다. 이 플로우는 GitLab UI에서만 사용할 수 있습니다. 머지 리퀘스트에서 코드 리뷰 플로우를 사용하려면:
모델 정보
- LLM: Anthropic Claude Sonnet 4 Vertex
- 자체 호스팅 모델을 사용하는 GitLab Duo에서 사용 가능
히스토리
애드온에 따라 GitLab은 두 가지 코드 리뷰 기능 중 하나를 실행합니다:
- 코드 리뷰 플로우: 에이전틱 버전으로, GitLab Duo Agent Platform의 일부입니다.
- GitLab Duo 코드 리뷰: 비에이전틱 버전으로, GitLab Duo Enterprise 애드온이 있는 사용자에게만 제공됩니다. 이 페이지는 에이전틱 버전을 설명합니다. 두 기능을 비교하는 방법을 알아봅니다.
코드 리뷰 플로우는 에이전틱 AI로 코드 리뷰를 간소화하는 데 도움을 줍니다.
이 플로우는:
- 코드 변경 사항을 분석합니다.
- 저장소 구조와 파일 간 종속성에 대한 향상된 컨텍스트 이해를 제공합니다.
- 실행 가능한 피드백이 있는 자세한 리뷰 댓글을 제공합니다.
- 프로젝트에 맞춤화된 사용자 정의 리뷰 지침을 지원합니다.
이 플로우는 GitLab UI에서만 사용할 수 있습니다.
플로우 사용#
전제 조건:
- Agent Platform 전제 조건을 충족하는지 확인합니다.
- 최상위 그룹에 대해 기본 플로우 허용 및 코드 리뷰가 켜져 있는지 확인합니다.
- 프로젝트에 대한 Developer, Maintainer 또는 소유자 역할이 있는지 확인합니다.
- 프로젝트에 대해 러너가 사용 가능하고 구성되어 있는지 확인합니다.
- 여러 GitLab Duo 네임스페이스에 속해 있는 경우 기본 설정에서 기본 GitLab Duo 네임스페이스를 설정했는지 확인합니다.
머지 리퀘스트에서 코드 리뷰 플로우를 사용하려면:
- 왼쪽 사이드바에서 코드 > 머지 리퀘스트를 선택하고 머지 리퀘스트를 찾습니다.
- 다음 방법 중 하나를 사용하여 리뷰를 요청합니다:
@GitLabDuo를 검토자로 할당합니다.- 댓글 상자에 빠른 작업
/assign_reviewer @GitLabDuo를 입력합니다.
리뷰를 요청한 후 코드 리뷰 플로우가 리뷰가 완료될 때까지 모니터링할 수 있는 세션을 시작합니다.
GitLab Duo와 리뷰에서 상호작용#
GitLab Duo를 검토자로 할당하는 것 외에도 다음을 통해 GitLab Duo와 상호작용할 수 있습니다:
- 리뷰 댓글에 답장하여 명확화 또는 대안적인 접근 방식을 요청합니다.
- 모든 토론 스레드에서
@GitLabDuo를 멘션하여 후속 질문을 합니다.
GitLab Duo와의 상호작용은 머지 리퀘스트를 개선하는 작업을 진행함에 따라 제안 및 피드백을 개선하는 데 도움을 줄 수 있습니다.
GitLab Duo에 제공된 피드백은 다른 머지 리퀘스트의 이후 리뷰에 영향을 주지 않습니다. 이 기능을 추가하기 위한 기능 요청이 있습니다. 이슈 560116을 참조하십시오.
컨텍스트 인식#
코드 리뷰 플로우는 두 단계로 실행됩니다:
-
사전 스캔: 플로우가 머지 리퀘스트 diff를 검사하고 이를 사용하여 프로젝트 저장소에서 가져올 관련 컨텍스트를 식별합니다. 사전 스캔에는 일반적으로 디렉터리 목록과 변경 사항에서 참조되는 테스트 및 종속성과 같은 관련 파일의 내용이 포함됩니다. 가져오는 정확한 컨텍스트는 diff 분석에 따라 달라집니다.
-
리뷰: 플로우가 대형 언어 모델에서 다음 데이터로 리뷰를 실행합니다. 리뷰 단계는 추가 컨텍스트를 온디맨드로 가져올 수 없습니다.
- 사전 스캔 단계의 결과.
- 머지 리퀘스트 제목.
- 머지 리퀘스트 설명.
- 머지 리퀘스트 diff.
- 파일의 원본 버전.
- 파일 이름.
- 사용자 정의 리뷰 지침.
제외할 콘텐츠를 지정하려면 GitLab Duo에서 컨텍스트 제외를 참조하세요.
파일 및 컨텍스트 제한#
코드 리뷰 플로우는 프롬프트를 실용적인 크기로 유지하기 위해 두 가지 제한을 적용합니다:
- 10,000줄보다 긴 파일의 경우 diff만 모델에 전송됩니다. 전체 파일 내용은 포함되지 않습니다.
- 사전 스캔에서 수집하는 총 컨텍스트는 약 1 MiB로 제한됩니다. 이 제한을 초과하면 리뷰 단계 실행 전에 컨텍스트가 약 800 KiB로 잘립니다.
이러한 제한은 플로우가 수집하는 데이터에 적용되며 선택한 모델의 컨텍스트 창과는 별개입니다.
매우 큰 머지 리퀘스트의 경우 잘린 컨텍스트로 인해 리뷰가 누락될 수 있습니다. 위험을 줄이려면:
- 머지 리퀘스트를 더 작은 머지 리퀘스트로 분할합니다.
- 리뷰와 관련이 없는 파일의 컨텍스트를 제외합니다.
사용자 정의 코드 리뷰 지침#
mr-review-instructions.yaml 파일로 코드 리뷰 플로우의 동작을 사용자 정의합니다.
저장소별 리뷰 지침으로 GitLab Duo를 안내하여:
- 특정 코드 품질 측면(보안, 성능, 유지 관리성 등)에 집중합니다.
- 프로젝트에 고유한 코딩 표준 및 모범 사례를 적용합니다.
- 맞춤화된 리뷰 기준으로 특정 파일 패턴을 대상으로 합니다.
- 특정 유형의 변경 사항에 대한 자세한 설명을 제공합니다.
코드 리뷰 플로우는 AGENTS.md 및 SKILL.md 파일을 참조하지 않습니다.
사용자 정의 지침을 구성하려면 GitLab Duo의 리뷰 지침 사용자 정의를 참조합니다.
프로젝트에 대한 GitLab Duo의 자동 리뷰#
히스토리
- GitLab 18.0에서 UI 설정으로 변경.
GitLab Duo의 자동 리뷰는 프로젝트의 모든 머지 리퀘스트가 초기 리뷰를 받도록 보장합니다. 머지 리퀘스트가 만들어지면 다음 경우를 제외하고 GitLab Duo가 이를 리뷰합니다:
- 초안으로 표시된 경우. GitLab Duo가 머지 리퀘스트를 리뷰하도록 하려면 준비됨으로 표시합니다.
- 변경 사항이 없는 경우. GitLab Duo가 머지 리퀘스트를 리뷰하도록 하려면 변경 사항을 추가합니다.
전제 조건:
- 프로젝트에서 Maintainer 역할 이상이 있어야 합니다.
@GitLabDuo가 머지 리퀘스트를 자동으로 리뷰하도록 활성화하려면:
- 상단 표시줄에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 설정 > 머지 리퀘스트를 선택합니다.
- GitLab Duo 코드 리뷰 섹션에서 GitLab Duo의 자동 리뷰 활성화를 선택합니다.
- 변경 사항 저장을 선택합니다.
자동 리뷰에 대한 크레딧 사용이 어떻게 귀속되는지에 대한 자세한 내용은 실행되는 코드 리뷰 기능 확인을 참조하세요.
그룹 및 애플리케이션에 대한 GitLab Duo의 자동 리뷰#
히스토리
그룹 또는 애플리케이션 설정을 사용하여 여러 프로젝트에 대한 자동 리뷰를 활성화합니다.
전제 조건:
- 그룹에 대한 자동 리뷰를 켜려면 그룹에 대한 소유자 역할이 있어야 합니다.
- 모든 프로젝트에 대한 자동 리뷰를 켜려면 관리자여야 합니다.
그룹에 대한 자동 리뷰를 활성화하려면:
- 상단 표시줄에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
- 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
- 머지 리퀘스트 섹션을 확장합니다.
- GitLab Duo 코드 리뷰 섹션에서 GitLab Duo의 자동 리뷰 활성화를 선택합니다.
- 변경 사항 저장을 선택합니다.
모든 프로젝트에 대한 자동 리뷰를 활성화하려면:
- 오른쪽 상단에서 Admin을 선택합니다.
- 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
- GitLab Duo 코드 리뷰 섹션에서 GitLab Duo의 자동 리뷰 활성화를 선택합니다.
- 변경 사항 저장을 선택합니다.
설정은 애플리케이션에서 그룹, 프로젝트 순으로 캐스케이드됩니다. 더 구체적인 설정이 더 광범위한 설정을 재정의합니다.
자동 리뷰에 대한 크레딧 사용이 어떻게 귀속되는지에 대한 자세한 내용은 실행되는 코드 리뷰 기능 확인을 참조하세요.
문제 해결#
오류 DCR4000#
Code Review Flow is not enabled. Contact your group administrator to enable the foundational flow in the top-level group. Error code: DCR4000이라는 오류가 발생할 수 있습니다.
이 오류는 기본 플로우 또는 코드 리뷰 플로우가 꺼져 있을 때 발생합니다.
관리자에게 연락하여 최상위 그룹에 대한 코드 리뷰 플로우를 켜도록 요청합니다.
오류 DCR4001#
Code Review Flow is enabled but the service account needs to be verified. Contact your administrator. Error code: DCR4001이라는 오류가 발생할 수 있습니다.
이 오류는 코드 리뷰 플로우가 켜져 있지만 최상위 그룹의 서비스 계정이 준비되지 않았거나 아직 생성 중일 때 발생합니다.
서비스 계정이 활성화될 때까지 몇 분을 기다린 다음 다시 시도합니다. 오류가 지속되면 관리자에게 문의하여 Developer 역할로 최상위 그룹에 서비스 계정이 생성되었는지 확인하도록 요청합니다.
오류 DCR4002#
No GitLab Credits remain for this billing period. To continue using Code Review Flow, contact your administrator. Error code: DCR4002라는 오류가 발생할 수 있습니다.
이 오류는 현재 청구 기간에 할당된 GitLab Credits를 모두 사용한 경우 발생합니다.
관리자에게 추가 크레딧을 구매하도록 연락하거나 다음 청구 기간 초에 크레딧이 재설정될 때까지 기다립니다.
오류 DCR4003#
, you don't have permission to create a pipeline for Code Review Flow in this project. Contact your administrator to update your permissions. Error code: DCR4003이라는 오류가 발생할 수 있습니다.
이 오류는 코드 리뷰 플로우가 CI/CD 파이프라인에서 실행되는데 이 프로젝트에서 파이프라인을 만들 권한이 없어서 발생합니다.
관리자에게 연락하여 파이프라인을 실행하는 데 필요한 권한을 부여하도록 요청합니다.
오류 DCR4004#
, you need to set a default GitLab Duo namespace to use Code Review Flow in this project. Please set a default GitLab Duo namespace in your preferences. Error code: DCR4004라는 오류가 발생할 수 있습니다.
이 오류는 GitLab Duo가 리뷰를 시작한 사용자의 기본 GitLab Duo 네임스페이스를 식별할 수 없을 때 발생합니다.
기본 설정에서 기본 GitLab Duo 네임스페이스를 설정한 다음 리뷰를 다시 요청합니다.
오류 DCR4005#
Code Review Flow could not obtain the required authentication tokens to connect to the GitLab AI Gateway and the GitLab API. Please request a new review. If the issue persists, contact your administrator. Error code: DCR4005라는 오류가 발생할 수 있습니다.
코드 리뷰 플로우는 GitLab AI Gateway 및 GitLab API에 연결하기 위한 인증 토큰이 필요합니다. 이 오류는 잘못된 GitLab Duo 설정이나 일시적인 인프라 문제로 인해 해당 토큰을 생성할 수 없을 때 발생합니다.
Self-managed 인스턴스의 경우 관리자에게 GitLab Duo 구성을 확인하도록 요청합니다.
오류 DCR4006#
Code Review Flow could not add the service account to this project. Contact your administrator to verify that the service account has the required project access. Error code: DCR4006이라는 오류가 발생할 수 있습니다.
이 오류는 서비스 계정을 프로젝트 멤버로 추가할 수 없을 때 발생합니다. 그룹 구성원 잠금이 활성화되어 있거나 서비스 계정에 필요한 액세스 권한이 없을 때 발생할 수 있습니다.
관리자에게 연락하여 서비스 계정을 개발자로 프로젝트에 추가할 수 있는지 확인하도록 요청합니다.
오류 DCR4007#
Code Review Flow is not available for this project. Contact your administrator to verify that the flow is enabled and the required configuration is in place. Error code: DCR4007이라는 오류가 발생할 수 있습니다.
이 오류는 플로우가 비활성화되어 있거나 프로젝트에 필요한 구성이 없을 때 발생합니다.
관리자에게 연락하여 프로젝트에 대해 플로우가 활성화되어 있는지 확인하도록 요청합니다.
오류 DCR4008#
Code Review Flow could not create the required CI/CD pipeline. Please request a new review. If the problem persists, contact your administrator. Error code: DCR4008이라는 오류가 발생할 수 있습니다.
이 오류는 러너 가용성 문제 또는 내부 구성 문제로 인해 코드 리뷰 플로우가 리뷰를 실행하기 위한 CI/CD 파이프라인을 만들거나 구성할 수 없을 때 발생합니다.
리뷰를 다시 시작해 봅니다. 오류가 지속되면 관리자에게 문의합니다.
오류 DCR4009#
Code Review Flow could not retrieve the source branch for this merge request. Please request a new review. Error code: DCR4009라는 오류가 발생할 수 있습니다.
이 오류는 코드 리뷰 플로우가 머지 리퀘스트의 소스 브랜치를 가져올 수 없을 때 발생합니다.
리뷰를 다시 시작해 봅니다.
오류 DCR5000#
Something went wrong while starting Code Review Flow. Please try again later. Error code: DCR5000이라는 오류가 발생할 수 있습니다.
이 오류는 내부 오류로 인해 GitLab Duo Agent Platform이 코드 리뷰 플로우를 시작할 수 없을 때 발생합니다.
리뷰를 다시 시작해 봅니다. 오류가 지속되면 관리자에게 문의합니다.
대규모 머지 리퀘스트 리뷰에서 누락된 컨텍스트#
머지 리퀘스트에 크게 변경된 파일이 많이 포함된 경우 코드 리뷰 플로우가 컨텍스트를 놓칠 수 있습니다.
이는 사전 스캔 결과가 파일 및 컨텍스트 제한을 초과하고 리뷰 단계 실행 전에 데이터가 잘릴 때 발생할 수 있습니다.
리뷰를 개선하려면:
- 머지 리퀘스트를 더 작은 머지 리퀘스트로 분할합니다.
- 리뷰와 관련이 없는 파일의 컨텍스트를 제외합니다.
- Maintainer 또는 소유자에게 코드 리뷰에 대해 Claude Sonnet 4.6 Vertex를 선택하도록 요청합니다. Sonnet 4.6 Vertex는 기본 모델보다 더 큰 컨텍스트 창을 가지고 있습니다.
구성 진단 스크립트#
오류 코드에서 코드 리뷰 플로우 문제의 원인을 확인할 수 없는 경우 진단 스크립트를 실행하여 GitLab Duo 구성을 확인할 수 있습니다.
이 스크립트는 모든 GitLab Duo Agent Platform 기능에 적용되는 검사를 포함하여 코드 리뷰 플로우에 필요한 전체 구성 체인을 확인합니다.
자세한 내용은 구성 진단 스크립트 실행을 참조하세요.
