Schema
The resolutions
Every tension edge in the canon is listed with its resolution, meaning the two records, the mechanism that settles it, the layer each side owns and the rule. An explicit resolution is one the canon states, and the rest are derived from the layers the two sides occupy, by the derivation described in separate, trade, or mitigate on the architecture page.
Do Not Repeat Yourself (DRY) against Locality of Behavior
- Mechanism: mitigation
- Stated by the canon
Normalization against Query Performance
- Mechanism: scope-separation
- Stated by the canon
Normalization against Denormalized Read Models
- Mechanism: scope-separation
- Stated by the canon
Database Normalization against Read Performance
- Mechanism: scope-separation
- Stated by the canon
Domain-Driven Design (DDD) against Simple CRUD
- Mechanism: irreducible-tradeoff
- Derived from the layers
Domain Model against Persistence Simplicity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Bounded Context against Cross-Context Reuse
- Mechanism: irreducible-tradeoff
- Derived from the layers
Context Mapping against Documentation Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
Anti-Corruption Layer against Mapping Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
Explicit Boundaries against Cross-Cutting Concerns
- Mechanism: irreducible-tradeoff
- Derived from the layers
Aggregate against Aggregate Size
- Mechanism: irreducible-tradeoff
- Derived from the layers
Value Object against Object Count
- Mechanism: irreducible-tradeoff
- Derived from the layers
Entity against Value Object
- Mechanism: irreducible-tradeoff
- Derived from the layers
Domain Service against Aggregate
- Mechanism: irreducible-tradeoff
- Derived from the layers
Runtime Discovery against Predictability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Runtime Discovery against Static Analysis
- Mechanism: irreducible-tradeoff
- Derived from the layers
Runtime Discovery against Startup Cost
- Mechanism: irreducible-tradeoff
- Derived from the layers
Service Discovery against Operational Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dynamic Binding against Static Safety
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dynamic Binding against Predictability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dynamic Binding against Debugging
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dynamic Dispatch against Traceability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Runtime Extensibility against Predictability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Runtime Extensibility against Security
- Mechanism: irreducible-tradeoff
- Derived from the layers
Causality against Parallelism
- Mechanism: irreducible-tradeoff
- Derived from the layers
Causal Consistency against Latency/Availability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Happens-Before Relationship against Parallel Execution
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event Ordering against Throughput
- Mechanism: irreducible-tradeoff
- Derived from the layers
Causal Dependency against Graph Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dependency Graph against Dynamic Loading
- Mechanism: irreducible-tradeoff
- Derived from the layers
Directed Acyclic Graph (DAG) against Bidirectional Collaboration
- Mechanism: irreducible-tradeoff
- Derived from the layers
Vector Clocks against Metadata Size
- Mechanism: irreducible-tradeoff
- Derived from the layers
Lamport Clocks against No Concurrent Causality Distinction
- Mechanism: irreducible-tradeoff
- Derived from the layers
Hybrid Logical Clocks against Clock Skew
- Mechanism: irreducible-tradeoff
- Derived from the layers
CRDTs against Metadata Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
CRDTs against Last-Write-Wins Overwrite
- Mechanism: irreducible-tradeoff
- Derived from the layers
Total-Order Broadcast against Latency
- Mechanism: irreducible-tradeoff
- Derived from the layers
CAP Theorem against Latency
- Mechanism: irreducible-tradeoff
- Derived from the layers
PACELC Theorem against Throughput
- Mechanism: irreducible-tradeoff
- Derived from the layers
Design by Contract against Development Speed
- Mechanism: irreducible-tradeoff
- Derived from the layers
Explicit Contracts against Rapid Prototyping
- Mechanism: irreducible-tradeoff
- Derived from the layers
Stable Interfaces against Evolution Speed
- Mechanism: irreducible-tradeoff
- Derived from the layers
Interface-Based Design against Interface Overuse
- Mechanism: irreducible-tradeoff
- Derived from the layers
Contract-First Design against Iteration Speed
- Mechanism: irreducible-tradeoff
- Derived from the layers
API Contract against Evolution
- Mechanism: irreducible-tradeoff
- Derived from the layers
Service Contract against Distributed Evolution
- Mechanism: irreducible-tradeoff
- Derived from the layers
Data Contract against Flexible Ingestion
- Mechanism: irreducible-tradeoff
- Derived from the layers
Schema Contract against Schema Flexibility
- Mechanism: irreducible-tradeoff
- Derived from the layers
Semantic Contracts against Cross-Domain Translation
- Mechanism: irreducible-tradeoff
- Derived from the layers
Preconditions against Permissive APIs
- Mechanism: irreducible-tradeoff
- Derived from the layers