Overview
- Bug Type:
- Inconsistent domain state
- Category:
- State & Data Consistency
Definition
Domain invariants across entities/aggregates are violated, leaving contradictory state.
How to fix Inconsistent domain state?
Model invariants explicitly; enforce within transactional boundaries; use aggregate patterns; add invariant checks/tests
Symptoms
Observable signs that may indicate Inconsistent domain state:
- Aggregate invariants violated (e.g., totals not matching line items).
- Conflicting statuses across related entities.
- Intermittent bugs after partial updates or reordering of operations.
Example Errors:
- ConstraintError: violated business invariant
- Assertion failed: aggregate state invalid
- Mismatch between derived and stored values
