Skip to content

Commit 5e5b20b

Browse files
authored
Coderabbit integration (#1908)
Following on the work of rapidsai/rmm#2244 and rapidsai/cuml#7725, this enables general instructions and configuration to enable coderabbit codereviews on cuvs. Closes #1767 Authors: - Ben Frederickson (https://github.com/benfred) - Corey J. Nolet (https://github.com/cjnolet) - Anupam (https://github.com/aamijar) Approvers: - Anupam (https://github.com/aamijar) - Corey J. Nolet (https://github.com/cjnolet) - Bradley Dice (https://github.com/bdice) URL: #1908
1 parent 4893d8d commit 5e5b20b

5 files changed

Lines changed: 587 additions & 0 deletions

File tree

.coderabbit.yaml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
reviews:
5+
profile: chill
6+
high_level_summary: true
7+
high_level_summary_in_walkthrough: true
8+
poem: false
9+
auto_review:
10+
enabled: true
11+
drafts: false
12+
base_branches:
13+
- "^main$"
14+
- "^release/.*"
15+
- "^hotfix/.*"
16+
ignore_usernames: ["rapids-bot", "GPUtester", "nv-automation-bot", "copy-pr-bot"]
17+
tools:
18+
markdownlint:
19+
enabled: true
20+
shellcheck:
21+
enabled: true
22+
gitleaks:
23+
enabled: true
24+
sequence_diagrams: false
25+
collapse_walkthrough: true
26+
27+
# Reduce noise from status messages
28+
request_changes_workflow: false
29+
review_status: false
30+
31+
# Path-specific review instructions
32+
# Note: Detailed C++/CUDA and Python review guidelines are in cpp/REVIEW_GUIDELINES.md and python/REVIEW_GUIDELINES.md
33+
path_instructions:
34+
- path: "docs/**/*"
35+
instructions: |
36+
For documentation changes, focus on:
37+
- Accuracy: Verify code examples compile and run correctly
38+
- Completeness: Check if API changes (parameters, return values, errors) are documented
39+
- Clarity: Flag confusing explanations, missing prerequisites, or unclear examples
40+
- Consistency: Version numbers, parameter types, and terminology match code
41+
- Missing docs: If PR changes public APIs without updating docs, flag as HIGH priority
42+
43+
- path: "c/include/cuvs/**/*"
44+
instructions: |
45+
For public C API headers, additionally check:
46+
- Doxygen documentation for all public functions/classes
47+
- API changes flagged for docs/ updates
48+
- Breaking changes require deprecation warnings and migration guide updates
49+
50+
- path: "cpp/include/cuvs/**/*"
51+
instructions: |
52+
For public C++ API headers, additionally check:
53+
- Doxygen documentation for all public functions/classes
54+
- API changes flagged for docs/ updates
55+
- Breaking changes require deprecation warnings and migration guide updates
56+
57+
- path: "notebooks/**/*"
58+
instructions: |
59+
For example notebooks:
60+
- Verify code examples match current API (parameter names, return types)
61+
- Flag outdated imports or deprecated API usage
62+
63+
- path: "ci/**/*"
64+
instructions: |
65+
For CI/build scripts:
66+
- Check for proper conda environment handling
67+
- Verify GPU availability checks before tests
68+
- Check for proper error handling and meaningful error messages
69+
70+
knowledge_base:
71+
opt_out: false
72+
code_guidelines:
73+
filePatterns:
74+
- "cpp/REVIEW_GUIDELINES.md"
75+
- "python/REVIEW_GUIDELINES.md"
76+
- "docs/source/contributing.md"
77+
- "docs/source/developer_guide.md"

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ cpp/scripts/run-cmake-format.sh @rapidsai/cuvs-cmake-codeowners
3131
/.github/ @rapidsai/ci-codeowners
3232
/ci/ @rapidsai/ci-codeowners
3333
/.shellcheckrc @rapidsai/ci-codeowners
34+
/.coderabbit.yaml @rapidsai/ci-codeowners
3435

3536
#packaging code owners
3637
/.pre-commit-config.yaml @rapidsai/packaging-codeowners

.github/workflows/pr.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ jobs:
6868
files_yaml: |
6969
build_docs:
7070
- '**'
71+
- '!**/*/REVIEW_GUIDELINES.md'
72+
- '!.coderabbit.yaml'
7173
- '!.devcontainer/**'
7274
- '!.github/CODEOWNERS'
7375
- '!.github/ISSUE_TEMPLATE/**'
@@ -90,6 +92,8 @@ jobs:
9092
- '!thirdparty/LICENSES/**'
9193
test_cpp:
9294
- '**'
95+
- '!**/*/REVIEW_GUIDELINES.md'
96+
- '!.coderabbit.yaml'
9397
- '!.devcontainer/**'
9498
- '!.github/CODEOWNERS'
9599
- '!.github/ISSUE_TEMPLATE/**'
@@ -124,6 +128,8 @@ jobs:
124128
- '!thirdparty/LICENSES/**'
125129
test_java:
126130
- '**'
131+
- '!**/*/REVIEW_GUIDELINES.md'
132+
- '!.coderabbit.yaml'
127133
- '!.devcontainer/**'
128134
- '!.github/CODEOWNERS'
129135
- '!.github/ISSUE_TEMPLATE/**'
@@ -157,6 +163,8 @@ jobs:
157163
- '!thirdparty/LICENSES/**'
158164
test_python_conda:
159165
- '**'
166+
- '!**/*/REVIEW_GUIDELINES.md'
167+
- '!.coderabbit.yaml'
160168
- '!.devcontainer/**'
161169
- '!.github/CODEOWNERS'
162170
- '!.github/ISSUE_TEMPLATE/**'
@@ -194,6 +202,8 @@ jobs:
194202
- '!thirdparty/LICENSES/**'
195203
test_python_wheels:
196204
- '**'
205+
- '!**/*/REVIEW_GUIDELINES.md'
206+
- '!.coderabbit.yaml'
197207
- '!.devcontainer/**'
198208
- '!.github/CODEOWNERS'
199209
- '!.github/ISSUE_TEMPLATE/**'
@@ -236,6 +246,8 @@ jobs:
236246
- '!thirdparty/LICENSES/**'
237247
test_rust:
238248
- '**'
249+
- '!**/*/REVIEW_GUIDELINES.md'
250+
- '!.coderabbit.yaml'
239251
- '!.devcontainer/**'
240252
- '!.github/CODEOWNERS'
241253
- '!.github/ISSUE_TEMPLATE/**'
@@ -273,6 +285,8 @@ jobs:
273285
- '!thirdparty/LICENSES/**'
274286
test_go:
275287
- '**'
288+
- '!**/*/REVIEW_GUIDELINES.md'
289+
- '!.coderabbit.yaml'
276290
- '!.devcontainer/**'
277291
- '!.github/CODEOWNERS'
278292
- '!.github/ISSUE_TEMPLATE/**'

0 commit comments

Comments
 (0)