ADR-0037: Service Landscape И Business Capabilities
Статус
Accepted
Контекст
Pin развивается как multi-tenant enterprise-платформа с несколькими прикладными контурами: учет, каталогы, остатки, персонал, отчетность, интеграции, безопасность и эксплуатация. Если capability и ownership не зафиксировать явно, команды начнут смешивать границы сервисов, дублировать source of truth и переносить бизнес-правила в UI, analytics или integration adapters.
Решение
Явно фиксировать service landscape и cross-service capabilities:
- каждый сервис имеет определенный owned state и documented source of truth;
- end-to-end сценарии описываются отдельными system documents;
- high-impact операции используют policy decisions, evidence-first workflow, manual review и fail-closed при stale critical data;
- service decomposition decisions принимаются только через documented matrix и ADR, а не по локальному удобству реализации.
Последствия
- cross-service сценарии получают отдельную документацию, а не прячутся в случайных service README;
- projections и aggregated views не подменяют owner service;
- reconciliation становится обязательной частью runtime design;
- integrations проектируются через anti-corruption layer и contract governance.