mirror of
https://github.com/gromlab-ru/slm-design.git
synced 2026-08-22 07:30:16 +03:00
3.2 KiB
3.2 KiB
Проверка Level 2
Проверка расширенной модели слоёв и доменных границ.
Проект Level 2 выполняет все автоматические проверки и архитектурное ревью Level 1, используя нормативный порядок из шести слоёв.
Сопоставление структуры
Конфигурация проверки проекта дополнительно определяет:
- физический путь слоя
domains; - доменные модули непосредственно в слое и внутри Groups;
- Groups слоя
domains; - вложенные модули внутри доменных модулей.
Сопоставление путей не определяет предметный смысл. Оно позволяет проверить направление импортов, публичные API, циклы и доступ к вложенным модулям.
Автоматическая проверка
Новых автоматических правил Level 2 не требуется. Структурные инварианты обеспечивают правила Level 1:
- порядок
app → compositions → domains → infra → ui → shared; - импорт модулей только через публичные API;
- отсутствие циклов в графе модулей;
- отсутствие прямого доступа к вложенным модулям извне родителя;
- отсутствие реализации и API у Groups.
Архитектурное ревью
Дополнительное правило Level 2 проверяется на ревью. Нужно определить:
- представляет ли доменный модуль одну связную предметную область;
- не разделена ли одна область на соседние доменные модули без самостоятельных владельцев;
- не объединены ли в одном модуле несвязанные предметные области;
- принадлежат ли модели, правила, сценарии и продуктовое состояние правильному домену;
- остаётся ли Group только навигационной классификацией;
- не размещены ли page-specific composition или самостоятельный технический сервис в
domains.
Связанные правила
SLM-L2-DOMAIN-R001SLM-L1-LAYER-R001SLM-L1-LAYER-A002SLM-L1-MODULE-R006SLM-L1-MODULE-R011SLM-L1-GROUP-R007
Скрипт draft-rules.js проверяет целостность реестров и ссылок документации, но не определяет предметные границы приложения.