ADR 002: Modular Platform Architecture
Context
v2 moved away from large route/service buckets toward domain modules in both frontend and backend.
Decision
Use module roots:
- Backend:
backend/core-api/app/modules - Frontend:
apps/webapp/src/modules
Keep route files thin and expose cross-module behavior through public contracts.
Consequences
- New work should start in a module.
- Legacy adapters stay isolated.
- Cross-module dependencies should be explicit and stable.
- Documentation and code review should flag new direct route-level fetches or non-module backend logic.