Workflow exceeds complexity threshold ===================================== .. list-table:: :stub-columns: 1 :widths: 20 80 * - Rule ID - ``workflow_too_complex`` * - Category - maintainability * - Severity - low Workflow has more than 20 steps across jobs without using reusable workflows or composite actions to reduce complexity. Detection --------- ``heuristic`` — Structural comparison across multiple jobs or steps. Examples -------- **Non-compliant:** .. code-block:: yaml jobs: lint: steps: [] # 6 steps test: steps: [] # 8 steps build: steps: [] # 7 steps # total: 21 steps — exceeds threshold **Compliant:** .. code-block:: yaml # ci.yml — lint + test only jobs: lint: steps: [] test: steps: [] # release.yml — build + deploy only (separate file) **Fix**: Split the workflow into smaller, focused workflows (e.g. ci.yml for lint/test, release.yml for build/deploy). Extract repeated job logic into reusable workflows.