# Narrowest Concern

Record: `arch:narrowest-concern`
Kind: principle
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Severity: mandatory
Scope: file
Canonical: https://banes-lab.com/ontology#arch-narrowest-concern

## Repair

- Refactored by: Reclassify to the Narrower Role
- Detected by: one tag carrying files of several distinct roles
- Violated by: classifying to a saturated high-level label where a narrower accurate one fits
- Measured by: files per tag, skew toward the broadest tags
- Enforced by: classification review

## requires

- [Classification Judgment](https://banes-lab.com/records/lex/classification-judgment.md)

## reinforces

- [Placement Predictability](https://banes-lab.com/records/lex/placement-predictability.md)

## enables

- [Layer Spine Precedence](https://banes-lab.com/records/arch/layer-spine-precedence.md)

## conflicts-with

- [Saturated Role Tag](https://banes-lab.com/records/lex/saturated-role-tag.md)

## contracts

- [Concern Classification](https://banes-lab.com/records/algo/concern-classification.md)

## referenced-by

- [One Concern Per File](https://banes-lab.com/records/arch/one-concern-per-file.md)
- [Layer Spine Precedence](https://banes-lab.com/records/arch/layer-spine-precedence.md)
