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.
Encapsulation against Debuggability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Information Hiding against Observability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Abstraction against Simplicity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Modularity against Cross-Cutting Concerns
- Mechanism: irreducible-tradeoff
- Derived from the layers
Composability against Performance Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
Composition Over Inheritance against Simplicity for Trivial Reuse
- Mechanism: irreducible-tradeoff
- Derived from the layers
Reusability against YAGNI
- Mechanism: irreducible-tradeoff
- Derived from the layers
Reusability against Over-Generalization
- Mechanism: irreducible-tradeoff
- Derived from the layers
Replaceability against Deep Optimization
- Mechanism: irreducible-tradeoff
- Derived from the layers
Interchangeability against Specialized Optimization
- Mechanism: irreducible-tradeoff
- Derived from the layers
Independence against Coordination Cost
- Mechanism: irreducible-tradeoff
- Derived from the layers
Autonomy against Governance
- Mechanism: scope-separation
- Derived from the layers
Autonomy against Standardization
- Mechanism: scope-separation
- Derived from the layers
Autonomy against Global Consistency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Interface Segregation Principle (ISP) against Interface Proliferation
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dependency Inversion Principle (DIP) against Runtime Indirection
- Mechanism: irreducible-tradeoff
- Derived from the layers
Open/Closed Principle (OCP) against Simplicity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Liskov Substitution Principle (LSP) against Narrow Specialized Behavior
- Mechanism: irreducible-tradeoff
- Derived from the layers
Polymorphism against Traceability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event-Driven Architecture against Debuggability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event-Driven Architecture against Strong Consistency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Publish/Subscribe Pattern against Delivery Ordering
- Mechanism: irreducible-tradeoff
- Derived from the layers
Message Queue against Latency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Message Broker against Operational Dependency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event Bus against Event Storm / Traceability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event Stream against Storage Volume
- Mechanism: irreducible-tradeoff
- Derived from the layers
Event Sourcing against Query Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Command Query Responsibility Segregation (CQRS) against Eventual Consistency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Domain Events against Event Granularity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Integration Events against Duplication with Domain Events
- Mechanism: irreducible-tradeoff
- Derived from the layers
Asynchronous Communication against Immediate Consistency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Eventual Consistency against User Expectations
- Mechanism: irreducible-tradeoff
- Derived from the layers
Eventual Consistency against Strong Immediate Consistency
- Mechanism: irreducible-tradeoff
- Derived from the layers
Saga Pattern against Workflow Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Outbox Pattern against Relay Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Compensating Transaction against Business Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Append-Only Log against Storage Growth
- Mechanism: irreducible-tradeoff
- Derived from the layers
Dead-Letter Queue against Operational Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
Idempotent Consumer against State Overhead
- Mechanism: irreducible-tradeoff
- Derived from the layers
Competing Consumers against Ordering
- Mechanism: irreducible-tradeoff
- Derived from the layers
Defensive Programming against Verbosity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Fail Fast against Graceful Degradation
- Mechanism: irreducible-tradeoff
- Derived from the layers
Fail Safe against Availability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Fail Secure against Availability
- Mechanism: irreducible-tradeoff
- Derived from the layers
Graceful Degradation against Consistency / Feature Completeness
- Mechanism: irreducible-tradeoff
- Derived from the layers
Fault Tolerance against Cost
- Mechanism: irreducible-tradeoff
- Derived from the layers
Resilience against Complexity
- Mechanism: irreducible-tradeoff
- Derived from the layers
Robustness Principle against Strict Validation
- Mechanism: irreducible-tradeoff
- Derived from the layers
Error Handling against Simplicity
- Mechanism: irreducible-tradeoff
- Derived from the layers