Skip to main content

Rules reference

A rule is a single check zuit performs against your code. Each rule has a stable id (e.g. MAINT001-cyclomatic) that never changes once shipped, a dimension, and a default severity.

All rules by dimension​

Complexity​

Rule IDTitleDefault severityLanguages
CPLX001-fan-outModule Fan-OutLowAll
CPLX002-cyclic-depsCyclic ImportsHighAll
CPLX003-duplicate-codeDuplicate Code Block DetectedMediumAll

Documentation​

Rule IDTitleDefault severityLanguages
DOC001-public-api-undocPublic API DocumentationMediumAll
DOC002-todo-fixmeTODO / FIXME Marker InventoryInfoAll
DOC003-empty-docEmpty or Placeholder Documentation CommentInfoAll

Maintainability​

Rule IDTitleDefault severityLanguages
MAINT001-cyclomaticCyclomatic ComplexityMediumAll
MAINT002-cognitiveCognitive ComplexityMediumAll
MAINT003-fn-lengthFunction LengthLowAll
MAINT004-file-lengthFile LengthLowAll
MAINT005-deep-nestingDeep NestingMediumAll
MAINT006-too-many-paramsToo Many ParametersLowAll
MAINT007-return-complexityExcessive Return StatementsLowAll

Security​

Rule IDTitleDefault severityLanguages
SEC001-hardcoded-secretHardcoded SecretsHighAll
SEC002-eval-sinkUnsafe Code ExecutionHighPython, JS/TS
SEC003-shell-injectionShell Injection SinkHighAll
SEC004-weak-cryptoWeak Cryptographic Hash AlgorithmMediumAll
SEC005-insecure-deserInsecure DeserializationHighPython, JS/TS
SEC006-sql-injectionSQL Injection via String InterpolationHighAll
SEC007-path-traversalPath Traversal via Unvalidated File PathsHighAll
SEC101-rust-unsafeUnsafe Code Audit TrailInfoRust only

Dependency Security​

Rule IDTitleDefault severityLanguages
DEP001-vulnerable-depsKnown Vulnerable DependencyHighAll (project-level)

Test Smells​

Rule IDTitleDefault severityLanguages
TEST001-test-ratioLow Test-to-Source RatioLowAll
TEST002-no-assertsTest File With No AssertionsMediumAll
TEST003-skippedSkipped or Ignored TestsInfoAll
TEST004-flaky-timeTest Uses Time or RandomnessMediumAll
TEST005-assert-countToo Many Assertions in One TestLowAll

Severity levels​

Severity controls how heavily a finding is weighted in the dimension score. Higher severity = larger penalty.

SeverityWeightUse
info0Informational; does not affect the score
low1Minor issue
medium4Moderate issue
high12Serious issue
critical30Must fix immediately

See Severity and scoring for the score formula.

Suppression​

All rules support inline suppression via special comments. See Finding Suppression for syntax and examples.