ADR-0013: Layer Dependencies И Architecture Tests
Статус
Accepted
Контекст
DDD и микросервисные границы не должны держаться только на code review. Нужны автоматические проверки: Domain не знает Infrastructure, Application не знает ASP.NET/EF, сервисы не импортируют друг друга.
Решение
Ввести architecture tests в CI и локальные test suites:
- dependency rules между layers;
- запрет forbidden namespaces;
- запрет service-to-service references;
- запрет
DbContextв controllers; - запрет
HttpContextв handlers; - запрет
IQueryableнаружу из repositories; - проверка feature-slice layout.
Последствия
- Нарушение архитектуры ломает PR.
- Исключения допускаются только через ADR с датой пересмотра.
- Shared building blocks становятся стабильнее.