-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.coderabbit.yaml
More file actions
139 lines (136 loc) · 4.56 KB
/
.coderabbit.yaml
File metadata and controls
139 lines (136 loc) · 4.56 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
language: ko-KR
early_access: false
tone_instructions: >
Be concise, constructive, and production-focused. Prioritize architecture
boundaries, crash safety, and maintainability over stylistic trivia.
reviews:
profile: chill
request_changes_workflow: false
high_level_summary: true
high_level_summary_instructions: |
Summarize the PR by module and risk:
1) functional impact and user-facing behavior changes,
2) risk points (network/error handling, threading, state consistency),
3) required follow-up tests and verification.
review_status: true
review_details: false
commit_status: true
fail_commit_status: false
collapse_walkthrough: false
changed_files_summary: true
sequence_diagrams: false
estimate_code_review_effort: false
suggested_labels: false
auto_apply_labels: false
suggested_reviewers: false
auto_assign_reviewers: false
poem: false
in_progress_fortune: false
path_filters:
- "!**/build/**"
- "!**/.gradle/**"
- "!**/.idea/**"
- "!**/.venv_qa_bot/**"
- "!**/.venv*/**"
- "!**/venv*/**"
- "!**/__pycache__/**"
- "!**/*.pyc"
- "!**/bin/**"
- "!**/gen/**"
- "!**/out/**"
- "!**/obj/**"
- "!**/.externalNativeBuild/**"
- "!**/.signing/**"
- "!**/release/**"
- "!**/*.apk"
- "!**/*.aab"
- "!**/*.ap_"
- "!**/*.dex"
- "!**/*.class"
- "!**/*.iml"
- "!**/*.iws"
- "!**/*.swp"
- "!**/.DS_Store"
- "!**/qa_bot_commit_msg.txt"
- "!**/qa_bot_explanation.txt"
- "!**/pr_body.md"
- "!**/tmp_github_output.txt"
- "!**/.tmp_runner/**"
- "!**/.claude/**"
- "!**/captures/**"
- "!**/.classpath"
- "!**/.project"
- "!**/.cproject"
- "!**/.settings/**"
- "!**/local.properties"
- "!**/sentry.properties"
- "!**/dayo_keystore*"
- "!**/*.jks"
- "!**/*.keystore"
- "!**/*keystore*.properties"
- "!**/crashlytics.properties"
- "!**/crashlytics-build.properties"
- "!**/fabric.properties"
- "!**/com_crashlytics_export_strings.xml"
- "!**/google-services*.json"
- "!**/output-metadata.json"
- "!**/*.log"
path_instructions:
- path: "app/src/main/**/*.kt"
instructions: |
This layer is app-level wiring only.
Review for:
- lifecycle-safe initialization in Application class,
- SDK initialization order and error handling,
- accidental business logic leakage into app module.
- path: "domain/src/main/**/*.kt"
instructions: |
Enforce Domain Layer boundaries.
Ensure:
- no Android imports in domain files,
- repository interfaces stay thin and naming is consistent,
- UseCases are small and usually delegate with `operator fun invoke()`,
- no business logic placed in repository interfaces.
- path: "data/src/main/**/*.kt"
instructions: |
Data layer should be implementation and mapping only.
Check:
- API services are suspend and return `NetworkResponse<T>`,
- `when` handles all 4 `NetworkResponse` cases (no `else`),
- errors are passed through without swallowing,
- mappers convert DTO → domain clearly and handle nullable API fields,
- repository methods remain thin and include DI wiring updates for new APIs.
- path: "presentation/src/main/**/*.kt"
instructions: |
Review for clean Compose/VM architecture.
Verify:
- Route/Screen split is maintained (routing + state in Route, UI-only Screen),
- ViewModel injections stay in Route/RouteOwner only,
- state exposure uses Flow/StateFlow and/or LiveData intentionally,
- one `when` expression handles all `NetworkResponse` branches,
- no hardcoded colors (use theme Color constants),
- no direct navigation from composables using `NavController`.
- path: "**/src/main/res/**/*.xml"
instructions: |
For UI resources and layouts, ensure existing naming conventions and
resource organization are preserved. Avoid introducing unused IDs or
hardcoded values where theme resources already exist.
- path: ".github/**/*"
instructions: |
Check workflow safety and reproducibility:
- no plaintext secrets in files,
- pinned and maintained actions when practical,
- Gradle/JDK matrix changes remain consistent with app requirements.
auto_review:
enabled: true
auto_incremental_review: true
ignore_title_keywords:
- "WIP"
- "wip"
labels:
- "!wip"
drafts: false
base_branches:
- ".*"
chat:
auto_reply: true