Safeguard
Developer Tools•

How do you turn on a license gate without breaking every build?

Baseline existing license findings, block only new violations, start in report mode, then tighten. A rollout plan that keeps developers on your side.

Safeguard Security Team
3 min read

Turn on a license gate in stages. Scan everything first, record existing findings as a baseline, run the gate in report only mode, then block only new violations on pull requests. Tighten later, tier by tier, with an owner and a date for each old finding. A gate that fails the whole backlog on day one gets disabled.

Why the naive rollout fails

If you enable a deny rule against a repository that already contains a denied license, every pull request fails, including ones that did nothing to dependencies. Developers learn the gate is noise and ask for it to be removed.

Staged plan

  1. Scan all repositories and export a full inventory with license values.
  2. Review the unknowns and the denied licenses first, since those need decisions.
  3. Store the current findings as a baseline, with an owner and a target date.
  4. Run the gate in report mode for two weeks and read the output.
  5. Switch to blocking for new findings only: a pull request fails when it adds or upgrades to a denied or unreviewed license.
  6. Work down the baseline by risk, then retire baseline entries as they are fixed.
StageBehaviorGoal
ScanNo gateKnow what exists
ReportComment onlyTune rules
Block newFail on new findingsStop the bleeding
Burn downFix baselineReach zero exceptions

Tune before you block

Review false positives. Expression handling is a common source: a dual licensed package with OR should not fail because one option is denied. Unknown licenses should go to review, not auto deny. See allow, review, deny tiers and how to baseline a new scanner.

Give developers a way out

Provide a request path for exceptions with a named approver and an expiry. See how to track exceptions for the register pattern.

Try it yourself

Click through it at your own pace, or open it full screen.

Watch how a gate evaluates a change and note which results would block and which would only warn.

Measure the rollout with two numbers: how many baseline entries remain, and how many pull requests the gate blocked that turned out to be wrong. The first should fall every month. The second should fall to near zero after tuning. If the second stays high, fix the rules before adding strictness, because trust in the gate is what makes it last.

Safeguard supports policies and gates for pull requests, and you can start with a free scan to see your baseline.

Quick check

Should a new gate block on day one?

Usually not. Start in report mode, baseline old findings, then block new ones.

What about unknown licenses?

Route them to review rather than auto deny.

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.