# Auto-Discovery

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

## Repair

- Refactored by: Add Scanner, Add Annotation, Add Manifest
- Detected by: static lists of handlers/plugins
- Violated by: manual enumeration of discoverable components
- Measured by: manual registration count
- Enforced by: registry validation

## requires

- [Metadata](https://banes-lab.com/records/lex/metadata.md)
- [Conventions](https://banes-lab.com/records/lex/conventions.md)

## reinforces

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

## enables

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

## conflicts-with

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

## tensions-with

- [Startup Cost](https://banes-lab.com/records/lex/startup-cost.md)

## tensions

- [Auto-Discovery Startup Cost](https://banes-lab.com/records/tension/auto-discovery-startup-cost.md)
