Verification · Static analysis
Linting
Rule-based detection of bug-prone patterns, unused code and conventions the formatter does not cover.
Sub-techniques
-
Correctness rules
V1005.001Rules for likely bugs: unused results, shadowing, unreachable code, wrong comparisons.
-
Convention rules
V1005.002Project conventions encoded as lint rules instead of review comments.
-
Custom lint rules
V1005.003Repository-specific rules written as plugins or pattern rules for mistakes that recur in review.
How to build it
- Enable the linter's recommended set and fix or baseline existing findings.
- Turn recurring review comments into custom rules (an ESLint plugin, a Semgrep rule, a Clippy lint config).
- Fail CI on new findings only, so the baseline shrinks without blocking work.
Signals in a repository
- Lint config in pyproject.toml ([tool.ruff]), eslint.config.js, .golangci.yml or clippy.toml.
- A CI job named lint, or a lint script in package.json, Makefile or justfile.
- Inline suppressions (noqa, eslint-disable) show which rules are enforced.