The review process is real.
Pull requests are required, force-push is blocked, and the default branch is under a ruleset. 20 of 23 review controls pass.

Free Verify scan · n8n-io/n8n
Canon Verify read n8n's public repository and scored it 80/100, third of 69 repos assessed. Review and CI rank near the top. The path to production doesn't: no named deploy approver, write-by-default workflow tokens, and no build provenance.
Commit 447fc86 · 132 controls · Oct 16, 2026 · Re-checked daily
Scanned with public access only. Customer results are never published.
Out of 100. Stronger than 94% of the 68 other assessed repositories.
Score
80/100
Rank 3 of 69 · median 68
Gaps
22
11 fewer than the median of 33
Critical
3 controls
1 root cause
Not visible
16
Needs admin access
Visible controls Verify found unmet. Fewer is better. Stronger than 93% of the 68 other assessed repositories.
This is what Canon Verify found in n8n's public configuration. Your team's process probably has the same gaps. Most private repos do.
5 minutes. No repository access needed.
Analysis
Pull requests are required, force-push is blocked, and the default branch is under a ruleset. 20 of 23 review controls pass.
Three critical controls fail on one fact: the production environment has no resolved reviewers. Anyone who can run the deploy workflow can ship.
Workflows default to write tokens, deploys use long-lived keys instead of OIDC, and packages publish without provenance. A compromised action could push code or cut a release, and downstream users couldn't tell.
Priority
What Verify read
No resolved production reviewers.
Risk: Anyone who can run the deploy workflow can ship to production.
# Settings → Environments → production → Required reviewers: <release-team>
jobs:
deploy:
environment: productionHave this gap too? Start from the Release Gate flow.
Open in DesignWhat Verify read
At least one workflow grants write permissions at the top level or declares none.
Risk: A compromised action gets a token that can push code or publish a release.
permissions:
contents: readWhat Verify read
No provenance or attestation step was found in the workflows.
Risk: Downstream users can't confirm a package or release came from this repository.
permissions:
id-token: write
attestations: write
steps:
- run: npm publish --provenance
- uses: actions/attest-build-provenance@v2
with:
subject-path: dist/*Overview
Public-access limit
This free scan used public access only. These controls live in settings only a repository admin can read. Verify checks them on your connected repository.
Method
01
Verify reads the repository at a pinned commit: settings, rulesets, workflows, and files.
02
Each control is checked against a written expectation. Same inspector, same criteria, every repository.
03
Every result shows the evidence Verify read. Assessments re-run daily, and changes are logged.
132 controls · 69 repositories assessed · re-run daily
| This free scan | Verify on your repository | |
|---|---|---|
| Access | Public | GitHub App you install |
| Controls read | 108 of 108 | All 108 |
| Private repositories | No | Yes |
| Results | Published here | Private to your organization |
Evidence locker
Canon re-assesses this repository daily. An entry appears only when something changed — the score, a control's outcome, or a control ceasing to apply.
Canon Verify runs the same inspection on your private repo. Read-only GitHub App. First scan free.
Read-only access. No code stored. How Canon handles your data →
Maintain n8n? If anything here is inaccurate or out of date, email security@strikelabs.co and we'll correct it.