# Runtime Binding

Record: `arch:runtime-binding`
Kind: mechanism
Layer: [Extensibility Core](https://banes-lab.com/records/layer/extensibility-core.md)
Severity: contextual
Scope: runtime, plugin, service
Canonical: https://banes-lab.com/ontology#arch-runtime-binding

## Repair

- Refactored by: Add DI Container, Add Registry
- Detected by: fixed binding tables
- Violated by: compile-time wiring of runtime choices
- Measured by: configurable binding coverage
- Enforced by: composition root tests

## requires

- [Runtime Discovery or Configuration](https://banes-lab.com/records/lex/runtime-discovery-or-configuration.md)

## reinforces

- [Dynamic Binding](https://banes-lab.com/records/arch/dynamic-binding.md)

## enables

- [Environment-Specific Composition](https://banes-lab.com/records/lex/environment-specific-composition.md)

## conflicts-with

- [Static Wiring](https://banes-lab.com/records/lex/static-wiring.md)

## tensions-with

- [Debugging](https://banes-lab.com/records/lex/debugging.md)

## tensions

- [Runtime Binding Debugging](https://banes-lab.com/records/tension/debugging-runtime-binding.md)

## referenced-by

- [Service Registry](https://banes-lab.com/records/arch/service-registry.md)
