Skip to content

Commit bbe4f48

Browse files
add coderabbit checking
Change-Id: I4fdd4c491c49129d5792676c55e3c1573485bf65 Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
1 parent c000abd commit bbe4f48

File tree

1 file changed

+142
-0
lines changed

1 file changed

+142
-0
lines changed

.coderabbit.yaml

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
2+
language: en-GB
3+
tone_instructions: ''
4+
early_access: false
5+
enable_free_tier: true
6+
reviews:
7+
profile: chill
8+
request_changes_workflow: true
9+
high_level_summary: true
10+
high_level_summary_placeholder: '@coderabbitai summary'
11+
auto_title_placeholder: '@coderabbitai'
12+
review_status: true
13+
commit_status: true
14+
poem: false
15+
collapse_walkthrough: true
16+
sequence_diagrams: false
17+
changed_files_summary: true
18+
labeling_instructions: []
19+
path_filters:
20+
- '**/*'
21+
- '**/gen/**'
22+
- '!**/test/**/gen/**'
23+
- '!**/.git/**'
24+
- '!**/target/**'
25+
path_instructions:
26+
- path: '**/*.java'
27+
instructions: |
28+
- Review code using Java 21 standards, taking into account the rules defined by `src/main/checkstyle/checkstyle.xml`.
29+
- Validate that code indentation uses spaces, not tabs, with an indent of multiple of 4.
30+
- Validate that immutable local variables are not annotated with `final` unless the variable is required for use in an inner class.
31+
- Allow use of `var` keyword when value is a cast `null`.
32+
- Use a coding standard where multi-line expressions have operators and tenary separators at the end of line.
33+
- Propose changes that only use the Java 21 API, not the API of Guava.
34+
- The pattern matching `instanceof` expression safely handles `null`, returning `false`.
35+
- path: '**/main/java/**/*.java'
36+
instructions: |
37+
- This project is mature and must provide a stable backwards-compatible public Java API.
38+
- In the 'Summary by CodeRabbit' section, you must always provide a list of up to 25 changes to the public Java API that will affect end users.
39+
If there are no changes, you must explicitly state that there are no changes to the public Java API in this PR.
40+
The public Java API is defined as public and protected methods on public classes, plus the file `module-info.java`.
41+
Provide the list by deeply analysing code flow, which incudes analysing code flow through private methods and calls to Guava and Java 21.
42+
Changes to be reported on include:
43+
- New or removed methods in the public Java API
44+
- Changes to method return types or parameter types in the public Java API
45+
- Changes to method behaviour in the public Java API that might affect consumers
46+
- This project uses `System.out.println` instead of logging
47+
- This project tends to prefer `for` loops to streams for performance reasons, however either form is acceptable.
48+
Do not make suggestions to change between streams and for loops or vice versa.
49+
- path: '**/test/java/**/*.java'
50+
instructions: |
51+
For test code, focus on:
52+
- Correctness of test assertions
53+
- Test coverage of edge cases
54+
- Clear test naming and documentation
55+
- Be more lenient with code style and minor optimisations
56+
abort_on_close: true
57+
auto_review:
58+
enabled: true
59+
auto_incremental_review: true
60+
ignore_title_keywords: []
61+
labels: []
62+
drafts: false
63+
base_branches:
64+
- 'main'
65+
tools:
66+
shellcheck:
67+
enabled: true
68+
ruff:
69+
enabled: false
70+
markdownlint:
71+
enabled: true
72+
github-checks:
73+
enabled: true
74+
timeout_ms: 90000
75+
languagetool:
76+
enabled: true
77+
enabled_only: false
78+
level: default
79+
enabled_rules: []
80+
disabled_rules:
81+
- EN_UNPAIRED_BRACKETS
82+
enabled_categories: []
83+
disabled_categories:
84+
- TYPOS
85+
- TYPOGRAPHY
86+
- CASING
87+
biome:
88+
enabled: true
89+
hadolint:
90+
enabled: false
91+
swiftlint:
92+
enabled: true
93+
phpstan:
94+
enabled: false
95+
level: default
96+
golangci-lint:
97+
enabled: false
98+
yamllint:
99+
enabled: true
100+
gitleaks:
101+
enabled: true
102+
checkov:
103+
enabled: false
104+
detekt:
105+
enabled: false
106+
eslint:
107+
enabled: true
108+
rubocop:
109+
enabled: false
110+
buf:
111+
enabled: false
112+
regal:
113+
enabled: false
114+
actionlint:
115+
enabled: true
116+
pmd:
117+
enabled: true
118+
cppcheck:
119+
enabled: false
120+
semgrep:
121+
enabled: true
122+
circleci:
123+
enabled: true
124+
ast-grep:
125+
packages: []
126+
rule_dirs: []
127+
util_dirs: []
128+
essential_rules: true
129+
chat:
130+
auto_reply: true
131+
knowledge_base:
132+
opt_out: false
133+
learnings:
134+
scope: auto
135+
issues:
136+
scope: auto
137+
jira:
138+
project_keys: []
139+
linear:
140+
team_keys: []
141+
pull_requests:
142+
scope: auto

0 commit comments

Comments
 (0)