phase-1: scaffold platform foundation structure and architecture governance

This commit is contained in:
sdarbinyan
2026-07-03 01:26:30 +04:00
parent a59ffbcaa4
commit b957112fc7
85 changed files with 918 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
# ADR-002: Layered Feature Architecture with Single Responsibility
Status: Accepted
Date: 2026-07-03
## Context
The platform must support Website, Builder, and Backoffice while keeping shared capabilities reusable and independent.
## Decision
Adopt the following architecture layers and responsibilities:
- Core: bootstrap, app wiring, global policies, base adapters.
- Shared: pure contracts, pure utilities, generic primitives.
- UI Library: reusable presentational components only.
- Widgets: configurable functional blocks built from UI components.
- Layouts: page section composition and structural orchestration.
- Pages: route containers mapping configuration to layouts/widgets.
- Website: public commerce experience.
- Builder: configuration editing domain.
- Backoffice: business data management domain.
Single responsibility is mandatory for each layer.
## Consequences
Positive:
- Predictable layering and ownership.
- Higher reuse across Website, Builder, and Backoffice.
- Reduced accidental coupling.
Negative:
- Requires import boundary enforcement.
- Requires upfront contracts before feature implementation.
## Compliance Requirements
- Shared and UI layers cannot depend on feature layers.
- Feature layers interact through contracts/facades, not direct imports.
- New artifacts must be placed in the correct layer folder.