ADR-004 — Modular Monolith First¶
Status: Proposed
Decision¶
Implement the initial NestJS backend as a modular monolith with explicit engine ownership and API/event boundaries. Deploy background workers separately where operationally useful. Extract services only when justified by scale, reliability, independent deployment or team ownership.
Rationale¶
The migration already contains significant domain redesign and multi-tenancy risk. Premature distributed transactions/service operations would increase delivery risk without proving business value.