Skip to content

Exit Codes

FlagLint uses a stable, machine-readable exit code contract guaranteed across all v1.x releases. See the full Exit Codes reference for CI examples and rationale.

CodeMeaningWhen it occurs
0Success — no blocking failures.Scan completed; no policy violations found.
1Policy or validation failure.validate --no-direct-launchdarkly found direct LD calls; new findings beyond baseline (--fail-on-new); dirty working tree without --allow-dirty.
2Invalid input.Bad --format value; missing or malformed baseline or config file.
3Internal FlagLint error.Unexpected runtime exception in FlagLint itself.
130Interrupted with SIGINT (Ctrl-C).
  • audit always exits 0 — it is informational only.
  • scan exits 1 when configured stale/review signals produce blocking candidates.
  • migrate --dry-run exits 0 after printing a plan.
  • migrate --apply exits 1 on a dirty working tree unless --allow-dirty is used.
  • validate --no-direct-launchdarkly exits 1 when direct LaunchDarkly evaluation calls are found.
  • validate --baseline <file> --fail-on-new exits 1 when any finding fingerprint is absent from the baseline.