34 lines
898 B
Markdown
34 lines
898 B
Markdown
# ADR-007: State Management and Facade Boundaries
|
|
|
|
Status: Accepted
|
|
Date: 2026-07-03
|
|
|
|
## Context
|
|
|
|
State must be predictable and isolated by domain to support Website, Builder, and Backoffice without cross-domain leakage.
|
|
|
|
## Decision
|
|
|
|
Use facade-centered state management by bounded context:
|
|
|
|
- Each feature domain exposes one or more facades.
|
|
- Facades expose read models and command methods.
|
|
- State is local to domain and projected as readonly selectors/signals.
|
|
- Shared/global state is limited to platform concerns (configuration, theme, localization, session status).
|
|
|
|
## Consequences
|
|
|
|
Positive:
|
|
|
|
- Clear ownership of state transitions.
|
|
- Improved maintainability and testability.
|
|
|
|
Negative:
|
|
|
|
- Requires disciplined facade boundaries.
|
|
|
|
## Compliance Requirements
|
|
|
|
- Components do not mutate service internals directly.
|
|
- Cross-domain communication is contract-based, not direct state access.
|