Skip to content
SEO Optimizer is live, Audit on page SEO and AI-search readiness. Try it free

Workflow

Pull request checks

Scanverra scans every pull request, comments with the critical and high issues it adds, and sets the scanverra/repo-scan status check. Issues already on the target branch never block a merge.

Needs a paid plan, a connected GitHub account and admin access to the repository, because Scanverra adds a webhook to it.

Set it up

  1. 1

    Connect GitHub

    On the Repo Scanner page, connect the GitHub account that has admin access to the repository.
  2. 2

    Open pull request checks

    Click the pull request icon next to the repository's Scan button.
  3. 3

    Choose when to scan

    Scan pull requests is on by default. Turn on Scan pushes to branches to also scan pushes to the branches you list, for example main, production. Then Turn on.
  4. 4

    Require the check (optional)

    In GitHub, open Settings, then Branches, add a rule for your main branch and require the status check scanverra/repo-scan. Pull requests that add critical or high issues then can't be merged.

What the check looks at

Each scan is compared with the latest scan of the pull request's target branch. Findings are matched by tool, rule and file (not line), so moving old code doesn't make it new. The status is failure only when the PR adds critical or high issues; it is error if the scan couldn't finish. Scanverra keeps one comment per PR and updates it on every push.

The pull request comment
### ❌ Scanverra: 2 new critical or high issues

Score 72/100 · quality gate passed · compared with the latest scan of `main`

| Severity | Issue |
| --- | --- |
| 🔴 critical | Hardcoded API key (`src/lib/payments.ts:12`) |
| 🟠 high | SQL query built from user input (`src/api/orders.ts:48`) |

5 critical or high issues were already on `main` and don't block this PR.

Open the full report. From there you can open a fix pull request for the issues Scanverra can fix.

Pull request checks or the GitHub Action?

Both use the same scanner. Pick the one that fits how you work.

Pull request checksGitHub Action
SetupA switch in Scanverra. No workflow file.A workflow file and a repository secret.
Where it runsOn Scanverra, after GitHub sends the webhook.In your GitHub Actions runner.
GateNew critical or high issues, compared with the target branch.fail-on severity, or fail-on-new for the same new-code gate.
ResultsPR comment, status check and the Scanverra report.Job log, SARIF in code scanning, and the Scanverra report when uploading.

The Action is documented in CI/CD.

Troubleshooting

  • Nothing appears on the pull request

    In GitHub, open the repository's Settings, then Webhooks, and check the latest delivery to Scanverra. A 401 means the webhook secret changed: turn pull request checks off and on again.

  • "GitHub didn't allow a webhook on this repository"

    The connected account isn't an admin of the repository. Connect an account that is, or ask an admin to turn the checks on.

  • Checks stopped after a plan change

    Webhook scans run only on paid plans. Your settings are kept: they start working again when the plan is active.

  • Every issue counts as new

    The target branch has no earlier scan to compare with. Scan it once from the Repo Scanner page, or turn on Scan pushes to branches for main.