# Concrete Coupling

> A defect in which high-level policy depends directly on concrete implementations instead of on abstractions.

Record: `architecture:concrete-coupling`
Kind: anti-pattern
Layer: [Enforcement Core](https://banes-lab.com/records/layer/enforcement-core.md)
Severity: discouraged
Scope: modularity
Canonical: https://banes-lab.com/ontology#architecture-concrete-coupling

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [God Object](https://banes-lab.com/records/architecture/god-object.md) and before [Schema Drift](https://banes-lab.com/records/architecture/schema-drift.md).

## Repair

- Refactored by: extract_interface, introduce_port, extract_adapter, inject_dependency, apply_DIP
- Detected by: domain_imports_infrastructure, vendor_sdk_in_core, new_dependency_inside_business_logic, missing_interface_boundary
- Violated by: Let high-level policy depend directly on low-level implementations, vendor APIs, framework classes, or concrete constructors, then spread those concrete assumptions across the core.
- Measured by: concrete infrastructure imports in core modules
- Enforced by: import rules that forbid infrastructure in the core, architecture tests

## Severity

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

## Category

- [Anti-patterns](https://banes-lab.com/records/architecture-category/anti-patterns.md)

## Force

- [Modularity](https://banes-lab.com/records/force/modularity.md)

## Negated by

- [Interface-Based Design](https://banes-lab.com/records/architecture/interface-based-design.md)
- [Abstraction](https://banes-lab.com/records/architecture/abstraction.md)
- [Replaceability](https://banes-lab.com/records/architecture/replaceability.md)

## Linked from

- [The direction axis](https://banes-lab.com/software-architecture/model/the-direction-axis.md)
- [Anti-patterns](https://banes-lab.com/ontology/principles/architecture-category-anti-patterns.md)
- [Contracts / Interfaces / Compatibility](https://banes-lab.com/ontology/principles/architecture-category-contracts-interfaces-compatibility.md)
- [Core Modular Design](https://banes-lab.com/ontology/principles/architecture-category-core-modular-design.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
- [The forces](https://banes-lab.com/ontology/schema/the-forces.md)
