# Service Registry

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

## Repair

- Refactored by: Register Service, Add Discovery Client
- Detected by: static lookup tables
- Violated by: manual endpoint/plugin lookup
- Measured by: registry coverage
- Enforced by: startup checks, [health checks](https://banes-lab.com/records/arch/health-checks.md)

## requires

- [Registration Protocol](https://banes-lab.com/records/lex/registration-protocol.md)

## reinforces

- [Discovery](https://banes-lab.com/records/lex/discovery.md)
- [Runtime Binding](https://banes-lab.com/records/arch/runtime-binding.md)

## enables

- [Dynamic Resolution](https://banes-lab.com/records/lex/dynamic-resolution.md)

## conflicts-with

- [Hardcoded Lookup](https://banes-lab.com/records/lex/hardcoded-lookup.md)

## tensions-with

- [Registry Availability](https://banes-lab.com/records/lex/registry-availability.md)

## tensions

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

## referenced-by

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