Skip to content

Bom Rules

  • bom.compliance: Checks populated BOM components for RoHS/REACH compliance metadata. Runs only when explicitly enabled.
  • bom.dnp-consistency: Compares BOM do-not-populate flags with PCB footprint population attributes.
  • bom.eol-detection: Checks lifecycle-style BOM fields for end-of-life and not-recommended markers.
  • bom.footprint-mismatch: Compares normalized BOM footprint values with PCB footprint assignments.
  • bom.identity-conflicts: Detects components whose identity fields (MPN, manufacturer) differ between BOM and schematic sources, or appear multiple times within the same BOM with conflicting values.
  • bom.lifecycle: Checks BOM lifecycle fields and local lifecycle data for risky component states.
  • bom.missing-mpn: Checks populated BOM and schematic rows for missing manufacturer part numbers.
  • bom.risk-score: Scores each populated BOM row on missing MPN, missing manufacturer, no suppliers, and single-source-without-alternates signals. Emits a finding per at-risk component so release readiness reflects aggregate BOM supply-chain quality.
  • bom.single-source: Checks supplier metadata for BOM rows that only list one source.
  • bom.unknown-lifecycle: Flags components that have no lifecycle data from any source (BOM field, lifecycle database, or supplier plugin). Unknown lifecycle status is not silently treated as safe — the absence of data is itself a supply-chain signal.
  • bom.variant-consistency: Checks KiCad variant DNP overrides against each variant-specific BOM.