-
Notifications
You must be signed in to change notification settings - Fork 4.3k
Expand file tree
/
Copy path.coderabbit.yaml
More file actions
54 lines (54 loc) · 2.39 KB
/
.coderabbit.yaml
File metadata and controls
54 lines (54 loc) · 2.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
language: en-US
early_access: false
tone_instructions: |
Be encouraging to first-time and student contributors — OpenMRS has many. Explain *why*
a change matters, not just *what* to change. Suggest concrete code rather than abstract
principles. Skip nits that checkstyle/SpotBugs already enforce.
reviews:
profile: chill
request_changes_workflow: false
high_level_summary: true
poem: false
review_status: true
collapse_walkthrough: true
auto_review:
enabled: true
drafts: false
base_branches:
- master
- "^\\d+\\.\\d+\\.x$"
path_filters:
- "!**/target/**"
- "!initial_test_db.sql"
- "!**/messages_*.properties"
path_instructions:
- path: "**/*.java"
instructions: |
Include the license header from license-header.txt on new files. Style is enforced
by checkstyle.xml — focus on semantic issues, not formatting nits.
- path: "**/src/main/**/*.java"
instructions: |
Flag missing @since tags on new public API in the api/ module, Hibernate/JPA misuse,
missing @Transactional on data-modifying service methods, and any change to public
API that could break downstream modules.
- path: "**/src/test/**/*.java"
instructions: |
Tests should use JUnit 5 (org.junit.jupiter) and AssertJ/Hamcrest as already present
in the codebase. Flag JUnit 4 imports in new tests. Prefer BaseContextSensitiveTest
for integration tests that need a Spring context.
- path: "**/liquibase/**/*.xml"
instructions: &liquibase-instructions |
Liquibase changesets must be append-only — never edit an existing changeSet id/author.
Flag any modification to historical changesets. New changesets need a unique id and
author, and should include a rollback block where feasible.
- path: "**/liquibase-*.xml"
instructions: *liquibase-instructions
- path: "**/*.hbm.xml"
instructions: |
OpenMRS is migrating Hibernate XML mappings to JPA annotations. New entities or
fields should be added to the @Entity class, not these files. Flag new mapping
additions and suggest annotation-based equivalents.
- path: "**/pom.xml"
instructions: |
Flag dependency version changes that bypass the BOM, additions of non-Apache-2.0-compatible
licenses, and any new <repository> entries pointing outside Maven Central or OpenMRS infra.