-
-
Notifications
You must be signed in to change notification settings - Fork 201
Add coderabbit configuration file #3564
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add coderabbit configuration file #3564
Conversation
📝 WalkthroughWalkthroughAdds a single comprehensive default configuration file (.coderabbit.yaml) defining language/tone, automated incremental PR reviews, pre-merge checks, many linter/security tools, chat/integration and knowledge-base defaults, and code-generation/docstring/unit-test settings. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Dev as Developer
participant VCS as VCS/PR
participant CR as CodeRabbit Auto-Review
participant Tools as Linters/Scanners
participant Checks as Pre-Merge Checks
participant Status as PR Status/Labels
Dev->>VCS: Open/Update PR
VCS->>CR: Trigger auto_review (incremental)
CR->>Tools: Run configured toolset (linters/scanners)
Tools-->>CR: Reports (issues/warnings)
CR->>Checks: Apply finishing_touches & pre_merge_checks (warning mode)
Checks-->>CR: Results
CR->>Status: Post summaries, labels, statuses per config
sequenceDiagram
autonumber
actor User as Reviewer/User (Chat)
participant CRChat as CodeRabbit Chat
participant KB as Knowledge Base
participant Integr as Integrations (Jira/Linear)
User->>CRChat: Ask/Interact about PR
CRChat->>KB: Query web_search / code_guidelines (auto)
CRChat->>Integr: Create/link issues (auto when applicable)
Integr-->>CRChat: Issue refs/updates
CRChat-->>User: Reply per chat/config
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. 📜 Recent review detailsConfiguration used: .coderabbit.yaml 💡 Knowledge Base configuration:
You can enable these sources in your CodeRabbit configuration. 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (11)
✨ Finishing Touches🧪 Generate unit tests
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
Status, Documentation and Community
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (4)
.coderabbit.yaml (4)
56-146
: Optional: Disable non-relevant tool integrations to reduce noise and runtimeGiven pygame-ce is primarily Python/C/C++ with GitHub Actions, many tool integrations here won’t ever run meaningfully and may add overhead or incidental noise. Consider disabling ecosystems you don’t use (Swift, PHP, Go, Kotlin, Ruby, Shopify, Prisma, HTML/web, Rust, Rego, PMD/Java, CircleCI, etc.).
Below is a minimal, conservative pass that keeps Python, YAML, Shell, GH checks, security scanners, C/C++ linters, markdown, and generic static analyzers, and disables obviously unrelated stacks. Adjust per your actual stack.
biome: - enabled: true + enabled: false hadolint: enabled: true swiftlint: - enabled: true + enabled: false phpstan: - enabled: true + enabled: false level: default phpmd: - enabled: true + enabled: false phpcs: - enabled: true + enabled: false golangci-lint: - enabled: true + enabled: false yamllint: enabled: true gitleaks: enabled: true checkov: enabled: true detekt: - enabled: true + enabled: false eslint: - enabled: true + enabled: false flake8: enabled: true rubocop: - enabled: true + enabled: false buf: - enabled: true + enabled: false regal: - enabled: true + enabled: false actionlint: enabled: true pmd: - enabled: true + enabled: false cppcheck: enabled: true semgrep: enabled: true circleci: - enabled: true + enabled: false clippy: - enabled: true + enabled: false sqlfluff: - enabled: true + enabled: false prismaLint: - enabled: true + enabled: false pylint: enabled: true oxc: - enabled: true + enabled: false shopifyThemeCheck: - enabled: true + enabled: false luacheck: - enabled: true + enabled: false brakeman: - enabled: true + enabled: false dotenvLint: enabled: true htmlhint: - enabled: true + enabled: false checkmake: enabled: true osvScanner: enabled: true
29-31
: Consider path_filters to skip generated/vendor dirsAdding excludes helps speed and reduces false positives (e.g., artifacts, vendored deps). Example:
- path_filters: [] + path_filters: + - '!**/build/**' + - '!**/dist/**' + - '!**/.venv/**' + - '!**/venv/**' + - '!**/node_modules/**' + - '!**/.eggs/**' + - '!**/*.egg-info/**'Tune to your repo layout.
27-27
: Nit: Disable poems in walkthroughs to keep signal highPoems can distract in a busy OSS repo. Suggest disabling unless desired by maintainers.
- poem: true + poem: false
146-154
: Nit: Confirm chat art usage
chat.art: true
will add ASCII/emoji art in replies. If you prefer concise, professional responses in PRs, consider turning it off:- art: true + art: false
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
.coderabbit.yaml
(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (20)
- GitHub Check: x86_64
- GitHub Check: msys2 (clang64, clang-x86_64)
- GitHub Check: msys2 (ucrt64, ucrt-x86_64)
- GitHub Check: build (macos-14)
- GitHub Check: debug_coverage (ubuntu-24.04, 3.14.0rc1)
- GitHub Check: msys2 (mingw64, x86_64)
- GitHub Check: build (ubuntu-24.04)
- GitHub Check: x86_64
- GitHub Check: debug_coverage (ubuntu-24.04, 3.13.5)
- GitHub Check: Debian (Bookworm - 12) [armv7]
- GitHub Check: Debian (Bookworm - 12) [ppc64le]
- GitHub Check: debug_coverage (ubuntu-24.04, 3.9.23)
- GitHub Check: i686
- GitHub Check: Debian (Bookworm - 12) [armv6]
- GitHub Check: aarch64
- GitHub Check: Debian (Bookworm - 12) [s390x]
- GitHub Check: dev-check
- GitHub Check: AMD64
- GitHub Check: x86
- GitHub Check: build (ubuntu-22.04)
🔇 Additional comments (3)
.coderabbit.yaml (3)
8-8
: High-level summary disabled — aligns with PR intent
reviews.high_level_summary: false
matches the stated goal in the PR description. No issues.
45-55
: Pre-merge checks thresholds: confirm fit for the projectDocstring coverage at 80% (mode=warning) is fine, but for a mixed Python/C codebase this can generate frequent warnings if docstrings aren’t a priority. If that becomes noisy, consider lowering the threshold or scoping via path_instructions in code_generation.docstrings.
33-39
: Auto-review settings look goodAutomatic and incremental reviews enabled; drafts are skipped; no label/base-branch constraints. Matches common defaults and should work as expected.
I would recommend the following settings to also be set:
(configuration docs at https://docs.coderabbit.ai/reference/yaml-template) |
@coderabbitai rereview please |
@oddbookworm I'll re-review the PR changes for you. ✅ Actions performedReview triggered.
|
Maybe a comment or marker should be added for every setting change away from the default configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, looks good so far.
More changes can be made later of course, but let's see how these settings are. |
The walkthrough is now collapsible, some filters were added for files that coderabbit can ignore, it no longer generates a poem, and it can now run on closed/merged pulls