Skip to content

*: add coderabbit configuration#2248

Merged
prestist merged 1 commit into
coreos:mainfrom
prestist:coderabbit-config
Jul 23, 2026
Merged

*: add coderabbit configuration#2248
prestist merged 1 commit into
coreos:mainfrom
prestist:coderabbit-config

Conversation

@prestist

@prestist prestist commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add .coderabbit.yaml to configure automated CodeRabbit code reviews
  • Exclude vendor/ from reviews and add path-specific review instructions for frozen config specs, experimental spec, providers, stages, resource fetching, tests, and docs
  • Enable PR title validation (subsystem: description convention), request-changes workflow, and disable ~20 irrelevant language-specific linters

Details

Review behavior:

  • chill profile with request-changes workflow enabled
  • No poems or fortune messages
  • Incremental reviews on each push, skip drafts and WIP/DO NOT MERGE titles

Path instructions (13 rules):

  • config/v3_0/ through config/v3_6/ -- frozen specs, flag any modifications
  • config/v3_7_experimental/ -- check for ./generate and translation updates
  • config/** -- stable API, backward compatibility
  • internal/exec/stages/ -- fixed stage list, declarative only
  • internal/providers/ -- retry, empty config, docs, needs-net
  • internal/resource/ -- security-critical, secure defaults
  • tests/ -- registry import, table-driven tests
  • docs/ -- platform documentation enforcement

Tools enabled: golangci-lint, shellcheck, yamllint, markdownlint, hadolint, actionlint, zizmor, gitleaks, trufflehog

Tools disabled: ruff, biome, eslint, phpstan, phpmd, phpcs, swiftlint, detekt, rubocop, flake8, pylint, oxc, stylelint, htmlhint, clippy, brakeman, fortitudeLint, shopifyThemeCheck, luacheck, prismaLint, sqlfluff, squawk, dotenvLint, buf

@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 91ecc8a4-cf15-473c-92a9-d34aa11e47bd

📥 Commits

Reviewing files that changed from the base of the PR and between a1a0240 and cbe4a08.

📒 Files selected for processing (1)
  • .coderabbit.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .coderabbit.yaml
📜 Recent review details
⏰ Context from checks skipped due to timeout. (8)
  • GitHub Check: Shellcheck
  • GitHub Check: Build container image
  • GitHub Check: tmt-tests
  • GitHub Check: Test ignition-validate (1.26.x, windows-latest)
  • GitHub Check: Test ignition-validate (1.26.x, macos-latest)
  • GitHub Check: Test (1.25.x)
  • GitHub Check: Check binary size
  • GitHub Check: Test (1.26.x)

📝 Walkthrough

Walkthrough

Adds .coderabbit.yaml with repository-specific review rules, path instructions, automated review settings, warning-mode pre-merge checks, selected lint and security tools, and chat auto-replies.

Changes

CodeRabbit configuration

Layer / File(s) Summary
Review policy and path instructions
.coderabbit.yaml
Sets the review language and behavior, excludes vendor/**, and defines guidance for configuration versions, execution stages, providers, resources, tests, and documentation.
Review automation and pre-merge checks
.coderabbit.yaml
Enables incremental automatic reviews, configures finishing touches, and sets pull request title, description, and commit convention checks to warning mode.
Tool and chat integrations
.coderabbit.yaml
Enables selected Go and security tools, disables unrelated tools, and enables automatic chat replies.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 6
✅ Passed checks (6 passed)
Check name Status Explanation
Title check ✅ Passed The title matches the required subsystem: description format and accurately summarizes the CodeRabbit config change.
Description check ✅ Passed The description clearly describes the new CodeRabbit configuration and its review rules, so it is on-topic.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Commit Message Convention ✅ Passed Only non-merge commit since merge base is '*: add coderabbit configuration', which matches the required format.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Binary size report (bin/amd64/ignition)

Size
Base (main) 21MiB
PR (#2248) 21MiB
Delta +0B (0.00%)

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.coderabbit.yaml:
- Around line 151-200: Update the tool configuration alongside the existing
disabled linters to explicitly disable both clang and cppcheck, ensuring they
cannot run against this Go repository’s C files. Leave the other tool settings
unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 97dc8999-2b14-47e9-9dea-a97a55b99c26

📥 Commits

Reviewing files that changed from the base of the PR and between 7feb4ce and 23f4716.

📒 Files selected for processing (1)
  • .coderabbit.yaml
📜 Review details
⏰ Context from checks skipped due to timeout. (8)
  • GitHub Check: Test ignition-validate (1.26.x, windows-latest)
  • GitHub Check: Test ignition-validate (1.26.x, macos-latest)
  • GitHub Check: Build container image
  • GitHub Check: Check binary size
  • GitHub Check: Test (1.25.x)
  • GitHub Check: Test (1.26.x)
  • GitHub Check: tmt-tests
  • GitHub Check: Shellcheck
⚠️ CI failures not shown inline (2)

GitHub Actions: Release notes / Require release note: *: add CodeRabbit configuration

Conclusion: failure

View job details

##[group]Run set -euo pipefail
 �[36;1mset -euo pipefail�[0m
 �[36;1mif [ -n "skip-notes" ]; then�[0m
 �[36;1m    # Don't trust the label list in the event metadata, since runs�[0m
 �[36;1m    # can be scheduled out of order and the list might be stale.�[0m
 �[36;1m    label=$(curl --no-progress-meter \�[0m
 �[36;1m        -H "Accept: application/vnd.github+json" \�[0m
 �[36;1m        -H "Authorization: token ***" \�[0m
 �[36;1m        "https://api.github.com/repos/coreos/ignition/pulls/2248" |�[0m
 �[36;1m        jq '.labels[] | select(.name == "skip-notes")')�[0m
 �[36;1m    if [ -n "${label}" ]; then�[0m
 �[36;1m        echo "PR has skip-notes label; skipping"�[0m
 �[36;1m        exit 0�[0m
 �[36;1m    fi�[0m
 �[36;1mfi�[0m
 �[36;1mdiffinfo=$(curl --no-progress-meter \�[0m
 �[36;1m    -H "Accept: application/vnd.github+json" \�[0m
 �[36;1m    -H "Authorization: token ***" \�[0m
 �[36;1m    "https://api.github.com/repos/coreos/ignition/compare/7feb4ce111db204d81bebd7fb5dfb8ffa5514f9e...23f47163dd3577a9fa5ff402a75f257a2f7199f2" |�[0m
 �[36;1m    jq '.files[] | select(.filename == "docs/release-notes.md")')�[0m
 �[36;1mif [ -z "${diffinfo}" ]; then�[0m
 �[36;1m    echo "Found no changes to docs/release-notes.md."�[0m
 �[36;1m    if [ -n "skip-notes" ]; then�[0m
 �[36;1m        echo "To ignore, add skip-notes label to PR."�[0m
 �[36;1m    fi�[0m
 �[36;1m    exit 1�[0m
 �[36;1mfi�[0m
 �[36;1mecho "Found change to docs/release-notes.md."�[0m
 shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
 ##[endgroup]
 Found no changes to docs/release-notes.md.
 To ignore, add skip-notes label to PR.
 ##[error]Process completed with exit code 1.

GitHub Actions: Release notes / 0_Require release note.txt: *: add CodeRabbit configuration

Conclusion: failure

View job details

##[group]Run set -euo pipefail
 �[36;1mset -euo pipefail�[0m
 �[36;1mif [ -n "skip-notes" ]; then�[0m
 �[36;1m    # Don't trust the label list in the event metadata, since runs�[0m
 �[36;1m    # can be scheduled out of order and the list might be stale.�[0m
 �[36;1m    label=$(curl --no-progress-meter \�[0m
 �[36;1m        -H "Accept: application/vnd.github+json" \�[0m
 �[36;1m        -H "Authorization: token ***" \�[0m
 �[36;1m        "https://api.github.com/repos/coreos/ignition/pulls/2248" |�[0m
 �[36;1m        jq '.labels[] | select(.name == "skip-notes")')�[0m
 �[36;1m    if [ -n "${label}" ]; then�[0m
 �[36;1m        echo "PR has skip-notes label; skipping"�[0m
 �[36;1m        exit 0�[0m
 �[36;1m    fi�[0m
 �[36;1mfi�[0m
 �[36;1mdiffinfo=$(curl --no-progress-meter \�[0m
 �[36;1m    -H "Accept: application/vnd.github+json" \�[0m
 �[36;1m    -H "Authorization: token ***" \�[0m
 �[36;1m    "https://api.github.com/repos/coreos/ignition/compare/7feb4ce111db204d81bebd7fb5dfb8ffa5514f9e...23f47163dd3577a9fa5ff402a75f257a2f7199f2" |�[0m
 �[36;1m    jq '.files[] | select(.filename == "docs/release-notes.md")')�[0m
 �[36;1mif [ -z "${diffinfo}" ]; then�[0m
 �[36;1m    echo "Found no changes to docs/release-notes.md."�[0m
 �[36;1m    if [ -n "skip-notes" ]; then�[0m
 �[36;1m        echo "To ignore, add skip-notes label to PR."�[0m
 �[36;1m    fi�[0m
 �[36;1m    exit 1�[0m
 �[36;1mfi�[0m
 �[36;1mecho "Found change to docs/release-notes.md."�[0m
 shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
 ##[endgroup]
 Found no changes to docs/release-notes.md.
 To ignore, add skip-notes label to PR.
 ##[error]Process completed with exit code 1.
🔇 Additional comments (1)
.coderabbit.yaml (1)

1-150: LGTM!

Also applies to: 201-202

Comment thread .coderabbit.yaml
@prestist prestist changed the title *: add CodeRabbit configuration *: add coderabbit configuration Jul 21, 2026
@prestist prestist added the skip-notes This PR does not need release notes label Jul 21, 2026
@prestist
prestist force-pushed the coderabbit-config branch 2 times, most recently from 9778706 to daacd44 Compare July 21, 2026 18:55
@cverna

cverna commented Jul 22, 2026

Copy link
Copy Markdown
Member

Not sure if you want to do the same, but https://github.com/coreos/coreos-assembler/pull/4597/changes#diff-5666075b2557144f70919b913905272043d5f45e4094e28a2238ce0f074f76deR3 should disable the Summary by CodeRabbit in the PR description

@prestist
prestist force-pushed the coderabbit-config branch from daacd44 to a1a0240 Compare July 22, 2026 13:53
Add .coderabbit.yaml to configure automated code reviews. Key settings:
- Exclude vendor/ from reviews
- Path-specific instructions for frozen specs, experimental spec,
  providers, stages, and tests
- PR title check enforcing 'subsystem: description' convention
- Enable request-changes workflow
- Disable irrelevant language-specific linters (including clang and
  cppcheck)
@prestist
prestist force-pushed the coderabbit-config branch from a1a0240 to cbe4a08 Compare July 22, 2026 17:38
@prestist
prestist merged commit bf61d9a into coreos:main Jul 23, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-notes This PR does not need release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants