# Convention over Configuration

> A design rule that a framework infers settings from stable naming and placement conventions, and explicit configuration covers only the exceptions.

Record: `architecture:convention-over-configuration`
Kind: principle
Layer: [Declarative Core](https://banes-lab.com/records/layer/declarative-core.md)
Severity: contextual
Scope: framework, application structure
Canonical: https://banes-lab.com/ontology#architecture-convention-over-configuration

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Declarative Configuration](https://banes-lab.com/records/architecture/declarative-configuration.md) and before [Capability Declaration](https://banes-lab.com/records/architecture/capability-declaration.md).

## Repair

- Refactored by: Normalize Structure, Remove Redundant Config
- Detected by: convention deviations
- Violated by: inconsistent project conventions
- Measured by: convention compliance score
- Enforced by: scaffolding, lint rules

## Requires

- [Stable Conventions](https://banes-lab.com/records/lexicon/stable-conventions.md)

## Reinforces

- [Pattern Consistency](https://banes-lab.com/records/architecture/pattern-consistency.md)
- [Predictability](https://banes-lab.com/records/architecture/predictability.md)

## Enables

- [Reduced Boilerplate](https://banes-lab.com/records/lexicon/reduced-boilerplate.md)

## Conflicts with

- [Excessive Configuration](https://banes-lab.com/records/lexicon/excessive-configuration.md)

## In tension with

- [Explicitness](https://banes-lab.com/records/lexicon/explicitness.md)

## Tensions

- [Convention over Configuration / Explicitness](https://banes-lab.com/records/tension/convention-over-configuration-explicitness.md)

## Contracts

- [Automation Kernel](https://banes-lab.com/records/algorithms/automation-kernel.md)

## Severity

- [contextual](https://banes-lab.com/records/vocabulary/severity-contextual.md)

## Category

- [Metadata / Self-Description / Declarative Systems](https://banes-lab.com/records/architecture-category/metadata-self-description-declarative-systems.md)

## Reinforced by

- [Derived Naming Registry](https://banes-lab.com/records/architecture/derived-naming-registry.md)

## Linked from

- [Definitions own what, code owns how](https://banes-lab.com/software-architecture/model/definitions-own-what.md)
- [Correctness / Determinism / Verification](https://banes-lab.com/ontology/principles/architecture-category-correctness-determinism-verification.md)
- [Architecture Review / Evolution / Governance Artifacts](https://banes-lab.com/ontology/principles/architecture-category-architecture-review-evolution-governance-artifacts.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/principles/architecture-category-taxonomy-classification-naming.md)
- [Metadata / Self-Description / Declarative Systems](https://banes-lab.com/ontology/lexicon/lexicon-category-metadata-self-description-declarative-systems.md)
- [Automation](https://banes-lab.com/ontology/algorithms/algorithms-domain-automation.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
- [The resolutions](https://banes-lab.com/ontology/schema/the-resolutions.md)
