# Consistency

Record: `arch:consistency`
Kind: quality-attribute
Layer: [Atomic Boundary](https://banes-lab.com/records/layer/atomic-boundary.md)
Severity: mandatory
Scope: data, transaction, distributed system
Canonical: https://banes-lab.com/ontology#arch-consistency

## Repair

- Refactored by: Add Constraints, Add Transaction, Add Reconciliation
- Detected by: data anomalies, failed invariant checks
- Violated by: invariant-breaking writes
- Measured by: consistency violation count
- Enforced by: database constraints, invariant tests

## requires

- [Invariants](https://banes-lab.com/records/arch/invariants.md)
- [Validation](https://banes-lab.com/records/arch/validation.md)

## reinforces

- [Correctness](https://banes-lab.com/records/arch/correctness.md)

## enables

- [Reliable State](https://banes-lab.com/records/lex/reliable-state.md)

## conflicts-with

- [Inconsistent Replicas/Models](https://banes-lab.com/records/lex/inconsistent-replicas-models.md)

## tensions-with

- [Availability](https://banes-lab.com/records/lex/availability.md)
- [Latency](https://banes-lab.com/records/arch/latency.md)

## tensions

- [Consistency Availability](https://banes-lab.com/records/tension/availability-consistency.md)
- [Consistency Latency](https://banes-lab.com/records/tension/consistency-latency.md)

## referenced-by

- [Code Review](https://banes-lab.com/records/arch/code-review.md)
- [Reference Architecture](https://banes-lab.com/records/arch/reference-architecture.md)
- [Standardization](https://banes-lab.com/records/arch/standardization.md)
- [Total-Order Broadcast](https://banes-lab.com/records/arch/total-order-broadcast.md)
- [Microservices](https://banes-lab.com/records/arch/microservices.md)
- [Space-Based Architecture](https://banes-lab.com/records/arch/space-based-architecture.md)
- [Invariants](https://banes-lab.com/records/arch/invariants.md)
- [Centralized Configuration](https://banes-lab.com/records/arch/centralized-configuration.md)
- [Decentralization](https://banes-lab.com/records/arch/decentralization.md)
- [Consensus](https://banes-lab.com/records/arch/consensus.md)
- [Do Not Repeat Yourself (DRY)](https://banes-lab.com/records/arch/duplicate-code.md)
- [Scalability](https://banes-lab.com/records/arch/scalability.md)
- [Caching](https://banes-lab.com/records/arch/caching.md)
- [Single Source of Truth](https://banes-lab.com/records/arch/single-source-of-truth.md)
- [Normalization](https://banes-lab.com/records/arch/normalization.md)
- [Governance](https://banes-lab.com/records/arch/governance.md)
- [Failover](https://banes-lab.com/records/arch/failover.md)
- [Atomicity](https://banes-lab.com/records/arch/atomicity.md)
- [ACID](https://banes-lab.com/records/arch/acid.md)
- [Unit of Work Pattern](https://banes-lab.com/records/arch/unit-of-work-pattern.md)
