Контексты
NOTE
Статус: Target design. Документ описывает целевую доменную модель. Соответствующий код реализован частично (см.
backend/internal/core/) или пока не начат. Правила маркировки — в50-processes/documentation-standard.md.
Каждый файл в этой папке описывает один ограниченный контекст: его агрегаты, доменные события, команды, политики, инварианты, интеграционные события и связи с другими контекстами.
Точка входа — ../domain-model.md: context map и Big Picture event storming.
Список контекстов
Основные
- Catalog — единая модель товара (Canonical Product, identity, equivalence).
- Ingestion — поступление данных от поставщиков.
- Offers — товарные канвы и наблюдения от поставщиков.
- Matching — Anti-Corruption Layer Offer ↔ Catalog.
- Pricing — расчёт цены, Price Rules, кастомные обработчики.
- Estimate — рабочий процесс сметы.
Поддерживающие
- Customer — клиент, B2B/B2C, аутентификация.
- Credentials — учётные записи поставщиков.
- Supplier Network — граф поставщиков, supply chain trace.
- Visibility — политики видимости данных.
- Search — поиск и аналоги.
- Enrichment — AI-обогащение характеристик и контента.
- Moderation — AI-агенты для всех кейсов, требовавших оператора.
Шаблон описания контекста
Каждый файл следует такой структуре (порядок секций обязателен):
- Назначение — 1–2 предложения, зачем существует BC.
- Главный смысл — invariant верхнего уровня (одно предложение).
- Aggregates / Entities / Value Objects — таблица.
- Domain Events — таблица: имя (рус + en) → причина → актор/policy.
- Commands — таблица: имя → актор → агрегат → результат.
- Policies — таблица: «когда событие X — отправить команду Y».
- Read Models — что строится из событий BC для чтения.
- Invariants — список инвариантов агрегатов.
- Integration Events — что публикуется наружу (топик, partition_key, схема).
- Subscribed Integration Events — что BC подписан читать.
- Context Map links — отношения с другими BC (PL / ACL / OHS / SK / Conformist / Customer-Supplier).
- Mini event storming — mermaid-диаграмма основного flow.
- Связанные файлы — deep-dive, сценарии, ADR, схемы.