Reviewing a Pull Request
How Scrubby reviews every PR and what to expect from the comments, inline suggestions, and check runs that show up on your changes.
When the Scrubby GitHub App is installed on a repo, every pull request gets reviewed automatically. This page walks through what happens from the moment you push to the moment you merge.
What you’ll see on a PR
When a PR is opened, synchronized, or reopened on an indexed repository:
- A Scrubby check run appears on the PR in the “in progress” state, so you immediately know the review is running.
- Within a minute or two, the check completes and a summary comment is posted (or updated, if Scrubby has already commented on this PR).
- If there are convention violations on specific lines, you’ll see inline suggestions — GitHub suggestion blocks you can accept and commit directly.
The comment doesn’t read like a generic AI reviewer. It’s grounded in your team’s actual patterns: “This new endpoint is missing the corresponding spec file. Endpoints in this domain consistently get tests at spec/requests/<endpoint>_spec.rb based on the last 47 commits.”
What gets checked
Three layers of analysis run on every PR.
Co-change gaps
The most powerful check. Scrubby analyzes your git history to find files that frequently change together. If you changed user.rb but didn’t change user_spec.rb, and those files have changed together in the majority of past commits, Scrubby flags it.
Common catches:
- Model change without migration.
- API endpoint change without client update.
- Code change without test update.
- Controller change without route update.
See Co-Change Analysis for the threshold and mechanics.
Domain crossings
When a PR touches files in multiple domains, Scrubby highlights the crossing. Changes that span domain boundaries often need more careful review and may affect areas the author didn’t consider.
Convention violations
Each changed file is checked against the conventions for its segment. Violations are posted as inline GitHub suggestions you can commit directly from the PR.
How it ranks findings
Scrubby aggregates, deduplicates, and ranks findings by severity. The summary comment leads with the highest-severity issues; inline suggestions are scoped to specific lines and severities so the PR doesn’t get spammed.
If a finding feels off, you can dismiss it on the PR. That signal flows back into Scrubby’s learning loop: repeated dismissals weaken the connection that produced the bad finding.
Required check (recommended)
To prevent merging a PR that ignores Scrubby’s findings, add the Scrubby check to your branch protection rules:
- Go to Settings › Branches on your repository.
- Edit (or add) the protection rule for your default branch.
- Under Require status checks to pass before merging, add
Scrubby Review.
Prerequisites
The repository must be indexed before PR reviews will work. If a PR is opened on an unindexed repo, the Scrubby check posts a status indicating that indexing is needed; the review will retry once the index is built.
Re-running a review
Pushing new commits to the PR automatically re-runs the review. There’s nothing to manually trigger. If you need to force a fresh analysis (rare), close and reopen the PR.
What if it didn’t run?
See PR Review Didn’t Run.
Last updated