# Versioning

Record: `arch:versioning`
Kind: mechanism
Layer: [Contracts Core](https://banes-lab.com/records/layer/contracts-core.md)
Severity: mandatory
Scope: API, schema, package, service
Canonical: https://banes-lab.com/ontology#arch-versioning

## Repair

- Refactored by: Add Semantic Versioning, Add API Version
- Detected by: incompatible diff without version bump
- Violated by: unversioned breaking changes
- Measured by: version compliance, deprecation window
- Enforced by: release gates, API checks

## requires

- [Stable Interfaces](https://banes-lab.com/records/arch/stable-interfaces.md)
- [Compatibility Policy](https://banes-lab.com/records/lex/compatibility-policy.md)

## reinforces

- [Backward Compatibility](https://banes-lab.com/records/arch/backward-compatibility.md)
- [Governance](https://banes-lab.com/records/arch/governance.md)

## enables

- [Controlled Evolution](https://banes-lab.com/records/lex/controlled-evolution.md)

## conflicts-with

- [Silent Breaking Changes](https://banes-lab.com/records/lex/silent-breaking-changes.md)

## tensions-with

- [Version Sprawl](https://banes-lab.com/records/lex/version-sprawl.md)

## tensions

- [Versioning Version Sprawl](https://banes-lab.com/records/tension/version-sprawl-versioning.md)

## contracts

- [Versioned Evolution Over Breaking Change](https://banes-lab.com/records/algo/no-breaking-change.md)

## referenced-by

- [Stable Interfaces](https://banes-lab.com/records/arch/stable-interfaces.md)
- [API Contract](https://banes-lab.com/records/arch/api-contract.md)
- [Backward Compatibility](https://banes-lab.com/records/arch/backward-compatibility.md)
- [Protocol Compatibility](https://banes-lab.com/records/arch/protocol-compatibility.md)
- [Integration Events](https://banes-lab.com/records/arch/integration-events.md)
