dpp_rules/lint/mod.rs
1//! Passport plausibility lints — non-binding findings that flag *implausible*
2//! data (arithmetic that doesn't add up, values outside physically plausible
3//! ranges, or fields whose declared values are inconsistent with each other),
4//! as distinct from the *malformed* data JSON Schema catches or the
5//! *non-compliant* data a [`crate::batteries`]/[`crate::textiles`]-style rule
6//! catches. A lint finding never blocks publish — see [`LintSeverity`].
7//!
8//! Each lint cites the physics or arithmetic behind it, the way the sector
9//! rule modules cite the regulatory article behind a binding rule. Findings
10//! are phrased as questions ("intended?"), never verdicts.
11
12mod types;
13
14pub mod battery;
15pub mod textile;
16pub mod unsold_goods;
17
18pub use types::{LintFinding, LintSeverity};
19
20/// Version of this crate's lint pack. Bump whenever a lint is added, removed,
21/// or its trigger condition changes — callers surface this alongside
22/// findings so a consumer can tell which pack produced them.
23pub const LINT_PACK_VERSION: &str = "1.0.0";