Files
slm-design/DRAFT/level-2/domains/README.md
2026-08-02 22:53:05 +03:00

2.6 KiB
Raw Blame History

Доменные пакеты Level 2

Доменный пакет заменяет один выбранный доменный модуль Level 1. Он объединяет SLM-модули одной предметной области вокруг контролируемого Domain API, но сам не является модулем, Group или публичным API.

domains/auth/
├── api/                       # Обязательный модуль
├── adapters/                  # При наличии dependency ports
├── assemblies/
│   └── default/               # Обязательная штатная assembly
└── react/
    ├── session/
    └── queries/

Другие предметные области того же SLM root могут оставаться доменными модулями Level 1.

Основные границы

  • Доменный пакет определяет предметную и структурную policy boundary.
  • Domain API является единственным семантическим шлюзом к данным и операциям домена.
  • Фабрики, ports и adapters изолируют SDK, backend, storage, runtime capabilities и provider failures.
  • Assemblies содержат обязательную штатную сборку default и дополнительные production-контексты.
  • Состояние и кэш принадлежат framework bindings или compositions: они могут хранить framework metadata и UI-state, но materialize domain payload только из значений Domain API.
  • Framework Groups содержат domain-specific SLM-модули фреймворка.
  • Realtime задаёт messages, subscriptions, correlation, resync, errors и cleanup.
  • Тестирование проверяет Domain API через фабрики, adapters через port contracts и assemblies через production wiring.
  • Переход auth показывает локальный переход с Level 1 без big-bang всего root.
  • Открытые вопросы отделяют принятые решения от ещё не нормированных деталей.

Точные блокирующие требования объявлены только в реестре правил Level 2.