Skip to content

Wire Lizard cyclomatic-complexity checks into CI #642

Description

@milindsrivastava1997

Goal

Add Lizard-based cyclomatic-complexity checks to CI for the ASAPQuery Rust query engine and planner code.

Scope

  • Pin the Lizard version used by CI.
  • Run it against production Rust sources, excluding tests and generated/vendor code where appropriate.
  • Start with an agreed CCN threshold (for example 10 or 15) based on a baseline scan.
  • Apply the check to both ASAPQuery and the standalone ASAPPlanner repository/workflow as appropriate.
  • Make the check fail when new or existing functions exceed the selected threshold, with a documented baseline/allowlist if needed.

Initial local result

A local Lizard 1.24.0 scan with CCN greater than 10 found 9 focused warnings in ASAPQuery and 35 warnings in ASAPPlanner. The largest ASAPQuery hotspot is execute_range_query_pipeline at CCN 42. ASAPPlanner largest is resolve at CCN 57.

Acceptance criteria

  • CI runs the complexity check for relevant Rust changes.
  • The command and threshold are documented and reproducible locally.
  • Existing intentional exceptions are explicit rather than silently ignored.
  • CI failure behavior is verified.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions