# Static Analysis

Record: `arch:static-analysis`
Kind: mechanism
Layer: [Computation Core](https://banes-lab.com/records/layer/computation-core.md)
Severity: mandatory
Scope: codebase, build
Canonical: https://banes-lab.com/ontology#arch-static-analysis

## Repair

- Refactored by: Fix Violations, Tune Rules
- Detected by: static analysis rule failures
- Violated by: ignored analyzer findings
- Measured by: issue count, false-positive rate
- Enforced by: CI quality gates

## requires

- [Ruleset](https://banes-lab.com/records/lex/ruleset.md)

## reinforces

- [Type Safety](https://banes-lab.com/records/arch/type-safety.md)
- [Security](https://banes-lab.com/records/lex/security.md)
- [Architecture Compliance](https://banes-lab.com/records/lex/architecture-compliance.md)

## enables

- [Automated Enforcement](https://banes-lab.com/records/lex/automated-enforcement.md)

## conflicts-with

- [Unchecked Dynamic Code](https://banes-lab.com/records/lex/unchecked-dynamic-code.md)

## tensions-with

- [False Positives](https://banes-lab.com/records/lex/false-positives.md)

## tensions

- [Static Analysis False Positives](https://banes-lab.com/records/tension/false-positives-static-analysis.md)

## referenced-by

- [Metaprogramming](https://banes-lab.com/records/arch/metaprogramming.md)
- [Reflection](https://banes-lab.com/records/arch/reflection.md)
- [Plugin Architecture](https://banes-lab.com/records/arch/plugin-architecture.md)
- [Runtime Discovery](https://banes-lab.com/records/arch/runtime-discovery.md)
- [Type Safety](https://banes-lab.com/records/arch/type-safety.md)
