judgev0.7.0

Rules

The 78 rules in judge's static rule registry, with their evidence class and whether they can gate a verdict.

Every rule judge can report is documented in a static registry (src/rule_registry.rs), one entry per rule id. A test keeps each entry’s verdict effect consistent with the evidence class the analyzer assigns. For any rule,

cargo judge explain-rule <rule-id>

prints its evidence class, preconditions, exclusions, the wording its findings may use, its verdict effect and, where one exists, a curated example. It is a pure lookup: it never runs an analysis and never exits with 1.

Evidence classes

Class Meaning How findings are worded
derived fact An exact fact of the declared inputs, such as a syntax or manifest occurrence As a fact of the input, never as a quality judgment
bounded semantic A result within the examined workspace or view “No reference found within the examined view”, never an absolute “unused”
external measurement The result of an imported report or a lookup at the time it ran Valid for that snapshot, not a timeless truth
heuristic A hint or possible reading Never as proof; advisory by default

Verdict effect

Gating rules can fail a baseline verdict (exit code 1) and count towards the health score. Advisory only rules are listed separately as advisory heuristics and never change the verdict, the exit code or the score. In 0.7.0, 49 rules are gating and 29 are advisory only.

Many rules only run under preconditions: some need judge.toml configuration, the Deep Tier (--features deep), a specific subcommand, an imported report or the network feature. explain-rule states the precondition of each rule.

All rules

Rule Evidence class Verdict effect
undocumented-public-item derived fact gating
semver-hazard derived fact gating
crate-boundary-violation bounded semantic gating
dependency-cycle bounded semantic gating
feature-graph-cycle derived fact gating
module-boundary-violation bounded semantic gating
internal-leak bounded semantic gating
module-boundary-violation-deep bounded semantic gating
re-export-chain heuristic advisory only
signature-complexity heuristic advisory only
maintainability-index heuristic advisory only
untested-hotspot external measurement gating
mutation-survivor external measurement gating
unused-pub-workspace bounded semantic gating
unused-pub-api heuristic advisory only
dead-enum-variant bounded semantic gating
test-only-pub bounded semantic gating
unreachable-from-entry bounded semantic gating
crate-coupling heuristic advisory only
module-coupling heuristic advisory only
feature-gated-dead-code heuristic advisory only
dead-trait-impl bounded semantic gating
duplicate-crate-versions derived fact gating
msrv-drift derived fact gating
workspace-dep-drift derived fact gating
misplaced-dependency-kind heuristic advisory only
unused-dev-dependency bounded semantic gating
heavy-dependency heuristic advisory only
unused-feature-flag derived fact gating
default-features-unused derived fact gating
unused-feature derived fact gating
unused-dependency bounded semantic gating
dep-without-repo derived fact gating
duplicate-code derived fact gating
size-distribution heuristic advisory only
complexity-concentration heuristic advisory only
unlinked-file bounded semantic gating
orphan-module bounded semantic gating
stringly-error-boundary heuristic advisory only
primitive-domain-value heuristic advisory only
boolean-state-cluster heuristic advisory only
public-invariant-bypass heuristic advisory only
manual-resource-lifecycle heuristic advisory only
unsafe-surface derived fact gating
unsafe-density heuristic advisory only
integer-cast-risk heuristic advisory only
panic-in-lib derived fact gating
hardcoded-secret heuristic advisory only
swallowed-result derived fact gating
empty-error-arm derived fact gating
catch-all-error derived fact gating
suppression-debt derived fact gating
merged-stub derived fact gating
empty-impl derived fact gating
assertion-free-test derived fact gating
tautological-test derived fact gating
ignored-test-accumulation derived fact gating
conversational-artifact derived fact gating
restating-comment derived fact gating
step-comment-inflation derived fact gating
generic-naming derived fact gating
doc-restates-signature derived fact gating
silent-default heuristic advisory only
context-free-propagation heuristic advisory only
debug-format-leak heuristic advisory only
complexity-inflation heuristic advisory only
abstraction-inflation heuristic advisory only
fragile-substring-classification heuristic advisory only
duplicative-reinvention heuristic advisory only
connectivity-drop heuristic advisory only
monomorphization-load heuristic advisory only
name-collision-risk heuristic advisory only
phantom-crate external measurement gating
phantom-version external measurement gating
fresh-low-reputation-dep external measurement gating
yanked-dependency external measurement gating
dep-single-maintainer external measurement gating
known-vulnerability external measurement gating

Edit this page on GitHub · Docs for v0.7.0