Поверхности взаимодействия и контуры платформы (ось 2)
Версия: 3.0 Дата: 25.04.2026 Статус: Готов к обсуждению
Назначение документа
Этот документ — раскрытие второй оси верхнеуровневой архитектуры: поверхности взаимодействия (surfaces) и контуры платформы. Он отвечает на вопросы: через какие поверхности платформа взаимодействует с миром, какие у каждой поверхности характеристики, контракты, политики видимости, темпы эволюции, и как поверхности связаны с другими осями архитектуры.
Документ читается после главной архитектурной оси (overview/index.md) и манифеста переосмысления (overview/platform-vision-and-manifest.md).
Версия 2.0 этого документа сохранена как overview/layers-old-2026-04-25.md (статус Черновик, архивная). Решения, зафиксированные в архивной версии, остаются валидными для тех частей, которые не противоречат текущей версии.
Главный принцип поверхностей
Поверхность (surface) — это полностью самостоятельный контракт со своими правилами, не разные представления одного и того же API. Принцип «один API для всех» отвергнут как ложный.
Из этого следует:
- разные субъекты получают разные контракты, не разные «view» одного контракта;
- темп эволюции каждой поверхности независим;
- набор допустимых полей, политика видимости коммерческой информации, политика согласия и аутентификации — всё это per surface;
- одно и то же действие (например, поиск) на разных поверхностях может отличаться не только полями, но и семантикой;
- одно и то же доменное состояние (например,
Quote) проявляется на разных поверхностях с разной видимостью: B2C-витрина видит цену, агент видит структуру цены и applied policy, партнёр видит контракт-безопасные суммы, внутренний оператор видит трассу применения политики и подготовку взаиморасчётов.
Шесть основных поверхностей платформы
Поверхность 1. Internal Operational Surface (внутренняя операционная)
Кто использует: внутренние команды Vitiana — операторы, governance reviewers, support, finance, ручной review, внутренние административные инструменты.
Главные характеристики:
- Богатая модель данных — видимость lineage (происхождение полей), source precedence (приоритет источников), review state, anomaly flags;
- Полные mutation-операции — те, которых нет ни на одной внешней поверхности (manual override, force re-publication, manual mapping decision);
- Быстрый темп изменений контрактов — внешний контракт не нужен, внутренние пользователи следуют за платформой;
- Сильная связь с внутренними доменными процессами — поверхность напрямую отражает доменные сущности.
Что строго ЗДЕСЬ:
- governance review queues и решения;
- supplier monitoring consoles;
- anomaly handling screens;
- booking exception handling;
- reconciliation и finance support tools;
- partner management consoles;
- manual revalidation и переопределение коммерческих политик;
- audit-friendly поверхности с полным lineage.
Что НЕ должно жить здесь:
- агентский ежедневный workflow (это другая поверхность);
- партнёрские интеграции (это другая поверхность);
- B2C-функции (это другая поверхность).
Связи:
- Ось 1 (Domain) — самый полный набор сущностей и lineage.
- Ось 4 (Data) — главный потребитель аналитики и BI для внутренних команд.
- Ось 5 (Operational) — runbooks, инциденты, manual recovery — здесь.
Поверхность 2. Agency Working Surface (агентская рабочая)
Кто использует: туристические агентства, агенты, внутренние/внешние пользователи, которые собирают предложения, формируют quote, создают и сопровождают booking, работают с клиентом, ведут тур и историю изменений.
Главные характеристики:
- Полноценная рабочая система продаж и сопровождения туристического продукта, не «сайт поиска отелей»;
- Workspace-as-a-unit — рабочей единицей является не только пользователь, но и
workspace / tenant context. Quote, draft, proposal принадлежат рабочему пространству; - Объяснимость данных — agency surface видит applied commercial policy, quote validity, причины repricing;
- Customer context — агент работает в контексте конкретного клиента, ведёт его историю;
- Stateful workflow — draft, proposal, booking lifecycle поддерживаются длительными сессиями;
- Audit-friendly — следы решений сохраняются для последующего разбора.
Главные сценарии:
- поиск туристических продуктов;
- сравнение вариантов;
- создание quote с явной видимостью applied commercial policy;
- собственная агентская надбавка к цене;
- инициирование booking и сопровождение его жизненного цикла;
- работа с Tour Builder для составных продуктов;
- generation и share клиентского proposal;
- ведение customer context и истории;
- agency-scoped reporting (свои продажи, своя комиссия, свои клиенты).
Связи:
- Ось 1 (Domain) — все сущности, кроме чисто внутренних (Anomaly, ReviewCase в их «сыром» виде);
- Ось 2 — главная human-facing поверхность платформы;
- Ось 3 (Platform as Product) — agency tier структуры, agency tier pricing;
- Ось 4 (Data) — agency-scoped analytics для собственных продаж;
- Ось 5 (Operational) — у agency surface свой SLA, отличный от B2C.
Поверхность 3. Partner API Surface (партнёрский API)
Кто использует: партнёры с платным доступом — B2B-интеграторы, белые-лейблы (white-label), реселлеры, downstream-агрегаторы, корпоративные travel-системы.
Главные характеристики:
- Узкий стабильный контракт — поверхность строже и стабильнее внутренних/агентских;
- Жёсткое версионирование (versioning) — major/minor с явной политикой совместимости (compatibility policy);
- Окно совместимости (compatibility window) — старые версии поддерживаются заданный срок после выхода новых;
- Аутентификация и scope — API keys с явными scope, environment binding (sandbox vs production), ротация ключей;
- Квоты и тарифные уровни (quotas and tiers) — каждый тарифный уровень имеет явные envelope;
- Изоляция окружений — отдельные sandbox и production endpoint;
- Контракт-безопасное представление коммерческих сумм — без раскрытия внутренней структуры цены, только то, что зафиксировано контрактом;
- Webhook-доставка как first-class — асинхронные уведомления с подписью, политикой повторной доставки, версионированием полезной нагрузки.
Главные сценарии:
- поиск через партнёрский запрос с явным scope;
- получение offer-проекций;
- создание quote с partner-specific commercial policy;
- инициирование booking от имени downstream-клиента;
- получение booking lifecycle событий через webhook;
- работа с Tour Builder через закрытый API (если партнёр имеет соответствующий тариф);
- получение partner-facing analytics и usage reports.
Что НЕ должно утекать на эту поверхность:
- raw supplier payloads;
- внутренние governance details;
- внутренние коммерческие детали (только контракт-безопасные суммы);
- информация о других партнёрах или их данных.
Это самая важная коммерческая поверхность платформы под якорем B2B API marketplace.
Связи:
- Ось 1 (Domain) — узкая контракт-безопасная проекция сущностей;
- Ось 3 (Platform as Product) — главная коммерческая поверхность; tariff tiers, dynamic pricing, billing;
- Ось 4 (Data) — partner-facing analytics product;
- Ось 5 (Operational) — самые строгие SLA с credits для премиум-тарифов;
- Compliance — DPA (Data Processing Agreement), KYC/AML, sub-processor lists.
Поверхность 4. B2C Storefront Surface (B2C-витрина)
Кто использует: конечные клиенты vitrip.store; конечные клиенты партнёров через белые-лейбловые интеграции (если архитектура такого витриного типа разрешена тарифом партнёра).
Главные характеристики:
- Read-heavy traffic — высокий объём чтения с высоким cache-hit ratio;
- Презентационная безопасность — нет операционных и маржинальных деталей;
- Conversion-ориентация — UX оптимизирован под conversion rate;
- Минимизация внутренних деталей — пользователь видит только то, что ему нужно для решения о покупке;
- Ограниченная видимость цены — finalprice, без структуры (markup, fee, commission);
- Регуляторное соответствие — для EU GDPR cookie consent, для PSD2 SCA при оплате, для Package Travel Directive — обязательная информация о пакетных продуктах;
- Оптимизация под latency и SEO — для собственных сайтов критичны время загрузки и индексация поисковиками.
Главные сценарии:
- поиск туристических продуктов;
- просмотр property content и галерей;
- сравнение цен и условий;
- создание booking от своего имени с оплатой;
- просмотр истории своих бронирований;
- self-service отмена и изменение бронирования;
- вход в proposal по share-ссылке от агента.
Что НЕ должно утекать:
- агентская/партнёрская маржа и структура цены;
- внутренние identifier поставщиков;
- технические детали ingestion и governance;
- любая cross-tenant информация.
Связи:
- Ось 1 (Domain) — самая ограниченная проекция сущностей;
- Ось 3 (Platform as Product) — собственный канал продаж + opcionально partner white-label;
- Ось 4 (Data) — самый интенсивный источник tracking events для conversion analytics, A/B тестирования, recommendation;
- Ось 5 (Operational) — самые жёсткие требования к latency и uptime для conversion;
- Compliance — основной фокус GDPR cookie consent, PSD2 SCA, Package Travel Directive.
Поверхность 5. Service-to-Service Surface (сервис-к-сервису, S2S)
Кто использует: внутренние сервисы платформы между собой; внутренние workers, jobs, event consumers/producers; service identities для внутренних автоматизаций.
Главные характеристики:
- Сильная связность с внутренней доменной моделью — может работать с богатыми payloads, не контракт-безопасными;
- Богатый event/context payload — больше деталей, чем во внешних поверхностях;
- Idempotency — все critical S2S-операции идемпотентны;
- Replay safety — потребители (consumers) безопасны для повторного воспроизведения;
- Schema discipline — все события и команды имеют явные схемы;
- Strong observability — каждое S2S-взаимодействие порождает trace и метрики;
- Аутентификация через service identity и mTLS — никаких неявных доверий между сервисами (zero-trust networking).
Главные классы взаимодействий:
- доменные события (domain events) — между сервисами через event bus (Kafka);
- команды (commands) — синхронные RPC между сервисами или через job queue;
- async coordination — через очереди работы (work queues);
- broadcast — через event streams для fan-out.
Связи:
- Ось 1 (Domain) — самая полная связность с доменом;
- Ось 4 (Data) — каждое S2S-событие — потенциальный источник tracking;
- Ось 5 (Operational) — observability + reliability — критичны;
- Современная практика — паттерн hexagonal architecture / ports & adapters.
Поверхность 6. Tour Builder Closed Surface (закрытая поверхность Tour Builder)
Кто использует: собственные интерфейсы Vitiana (vitrip.store, agency working surface); партнёры с платным тарифом, дающим доступ к Tour Builder API.
Главные характеристики:
- Закрытый API — не публичный, не доступен в свободном sandbox; доступ через quasi-Partner API surface, но с отдельной коммерческой моделью;
- Модульный composition primitives API — низкоуровневые модули композиции как первичные единицы:
- модуль размещения (accommodation segment);
- модуль переезда (transfer segment) — авто, авиа, ж/д, водный;
- модуль активности (activity, experience);
- модуль услуги (service) — гид, страховка, виза;
- модуль аренды транспорта (transport rental);
- модуль страхования (insurance);
- пользовательский модуль (custom block);
- информационный модуль (informational block).
- Stateful composition — Draft → Variant → Proposal → Version → Artifact;
- Compatibility checks — проверка совместимости модулей по времени, географии, capacity, политике;
- Drift handling — отслеживание изменений в исходных offers и эффект на собранный тур;
- Per-tour merchant-of-record — определяется по составу модулей и поставщикам;
- Tour-level pricing — отдельная коммерческая логика, не сумма offer prices (per-tour markup, package discount, all-inclusive bundling).
Двойное использование:
- Vitiana строит собственные туры от своего имени (платформа = packager + seller).
- Партнёры с платным тарифом проектируют туры под свои каналы продаж (платформа = aggregator + tour builder service).
Связи:
- Ось 1 (Domain) — композиционные сущности (TourDraft, TourProposal, ProposalVersion, ProposalArtifact);
- Ось 3 (Platform as Product) — отдельный paid tier для доступа к Tour Builder;
- Ось 4 (Data) — tracking композиционных решений; ML для compatibility и recommendation на этапе сборки;
- Ось 5 (Operational) — отдельный SLA для Tour Builder;
- Compliance — Package Travel Directive (обязательная insolvency protection при пакетных турах в EU).
Контуры взаимодействия (interaction contours)
Поверхности — это как стороны общаются. Контуры — это как контракты группируются по доменным процессам. Один контур может проявляться на нескольких поверхностях с разной видимостью.
Контур приёма данных (data ingress contour)
Адаптеры приёма данных от поставщиков → нормализация → проверка целостности → сохранение в supplier trace и каноничной модели.
Поверхности, на которых проявляется:
- Внутренняя операционная (для observability и manual review);
- (Не на внешних поверхностях.)
Контур публикации (publication contour)
Решение о готовности offer к показу на разных поверхностях. Integrity gating, surface-aware visibility, governance hold.
Поверхности:
- Все поверхности, на которые offer публикуется (Agency, Partner, B2C, Tour Builder);
- Внутренняя операционная (для управления публикацией).
Контур поиска и обнаружения (search and discovery contour)
Принятие поискового намерения, ранжирование, возврат candidate results, fasceting, geo, multi-language.
Поверхности:
- Agency, Partner, B2C — все имеют свои варианты search-контракта;
- Tour Builder — поиск компонентов внутри сборки тура.
Контур фиксации обещаний (quote contour)
Создание quote с applied commercial policy, validity window, repricing, invalidation.
Поверхности:
- Agency — полная видимость applied policy;
- Partner — контракт-безопасное представление;
- B2C — упрощённая видимость финальной цены;
- Tour Builder — quote на тур-уровне (не offer-уровне).
Контур транзакционного коммита (transactional commit contour)
Booking commit, supplier confirmation, post-booking lifecycle.
Поверхности:
- Agency — agent-инициированный booking от имени клиента;
- Partner — partner-инициированный booking через API;
- B2C — самостоятельный booking конечного клиента;
- Внутренняя операционная — exception handling, manual recovery.
Контур композиции тура (tour composition contour)
Сборка многокомпонентного тура с проверкой совместимости и drift handling.
Поверхности:
- Tour Builder Closed — главная поверхность;
- Agency — agent использует Tour Builder через свою рабочую поверхность;
- B2C — конечный клиент видит уже собранный proposal по share-ссылке.
Контур взаиморасчётов (settlement and clearing contour)
Партнёрские балансы, кредитные лимиты, clearing entries, supplier payable, agency commission.
Поверхности:
- Внутренняя операционная — финансовые операторы;
- Partner — partner-facing balance dashboard, billing;
- Agency — agency-scoped commission reports.
Контур governance и review (governance contour)
Manual review, mapping decisions, anomaly handling, conflict resolution.
Поверхности:
- Внутренняя операционная — governance reviewers;
- (Не на внешних поверхностях напрямую; результаты влияют через публикацию и repricing.)
Контур наблюдаемости и инцидентов (observability contour)
Метрики, traces, logs, dashboards, alerting, incident response.
Поверхности:
- Внутренняя операционная — оперативные команды;
- Partner — partner-facing usage dashboards (часть analytics product);
- Agency — agency-scoped operational visibility.
Перекрёстные правила (cross-surface rules)
Правило 1. Каноничные сущности не дублируются для разных поверхностей
Одна и та же Property, Offer, Quote, Booking, Tour существует в одном экземпляре в каноничной модели. На разных поверхностях её видимость разная, но сущность одна.
Правило 2. Кросс-поверхностные изменения статуса разрешены только через governance
Если действие на одной поверхности должно повлиять на видимость на другой (например, оператор внутренней поверхности приостановил публикацию offer для всех внешних поверхностей) — это идёт через governance contour, не напрямую.
Правило 3. Контракт-безопасное представление коммерческих сумм для внешних поверхностей
Внешние поверхности (Partner API, B2C) не получают доступа к маржинальной структуре, applied commercial policy trace, settlement preparation context. Только то, что зафиксировано контрактом.
Правило 4. Surface-aware visibility — first-class
Visibility model — не runtime-фильтр на готовых данных, а часть контракта поверхности. Документируется явно для каждого поля доменной сущности.
Правило 5. Каждая поверхность имеет своё SLA
SLA по uptime, latency, freshness — different per surface. Партнёрский API имеет жёстче требования, чем внутренний; B2C — самые строгие к latency и uptime для conversion.
Поверхности и динамическое ценообразование
Динамическое ценообразование платформенных услуг (см. overview/platform-as-product.md) применяется по поверхностям:
- Partner API Surface — главная поверхность тарификации; цена зависит от объёма поисковых запросов, quote, booking, ML-инференса, supplier-call budget, сложности запросов;
- Tour Builder Closed Surface — отдельная коммерческая модель (paid tier), цена за композиционные операции;
- Agency Working Surface — подписка + комиссия с продаж;
- B2C Storefront Surface — собственный канал, монетизация через маржу платформы на туристических продуктах;
- Internal и S2S — нет внешней тарификации, внутренние операционные расходы.
Связь с другими осями архитектуры
Связь с осью 1 (каноничная доменная)
Каждая каноничная сущность определяет видимость на каждой поверхности:
| Сущность | Internal | Agency | Partner | B2C | S2S | Tour Builder |
|---|---|---|---|---|---|---|
Property | full + lineage | content + structure | contract-safe content | presentation-safe | full | content + module |
Offer | full + governance state | full operational + commercial | contract-safe with freshness | indicative | full | as composable input |
Quote | full + applied policy trace | actor-aware breakdown | contract-safe sum | not exposed (internal to checkout) | full | tour-level quote |
Booking | full lifecycle + audit | full state | contract-safe state | own only | full | as composition output |
TourDraft | full | composer view | (only for paid Tour Builder tier) | not exposed | full | first-class |
TourProposal | full | composer view + history | contract-safe versioned | published presentation | full | first-class |
Tenant | full | own context | own context | not exposed | full | own |
Anomaly / ReviewCase | full | not exposed | not exposed | not exposed | full | not exposed |
Связь с осью 3 (платформа как продукт)
Поверхности — это продуктовые поверхности:
- Partner API Surface = главный продукт B2B API marketplace;
- Tour Builder Closed Surface = премиальный продукт со своим тарифом;
- Agency Working Surface = собственный продукт для агентств;
- B2C Storefront Surface = собственный канал продаж туристических продуктов.
Связь с осью 4 (данные и интеллект)
Каждая поверхность — источник tracking events:
- Partner API — usage metering, partner load profile, query complexity;
- Agency — agent workflow analytics, conversion воронка для агентств;
- B2C — самый интенсивный источник conversion analytics, A/B тестирования, recommendation;
- Internal — операционная аналитика, governance metrics;
- Tour Builder — composition analytics, ML для compatibility и recommendation;
- S2S — operational events, reliability metrics.
Связь с осью 5 (операционная)
Каждая поверхность определяет:
- свой целевой уровень обслуживания (SLO — Service Level Objective);
- свой контракт обслуживания (SLA — Service Level Agreement);
- свои метрики деградации;
- свои runbooks для инцидентов;
- свои capacity envelopes (особенно per tenant tier на Partner API).
Связь с осью 6 (реализация)
Текущая реализация home-to-go-api имеет частичную поддержку поверхностей:
https://api.vitrip.store/stuba— это adapter ingestion, не Partner API Surface;- vitrip.store сайт (Preact + HTM, PHP backend) — это зачаточная B2C Storefront Surface;
- агентская поверхность — в концепции, не реализована;
- Partner API Surface — в концепции, не реализована;
- Internal Operational Surface — частично через admin-панель vitrip.store;
- Tour Builder Closed Surface — в концепции, не реализована.
Полная карта соответствия — в overview/relation-to-implementation-baseline.md.
Транспорт и протоколы — производный уровень
Этот документ намеренно не фиксирует:
- конкретный API gateway (Traefik, Kong, иной);
- REST vs gRPC vs GraphQL для каждой поверхности;
- конкретный мiddleware chain;
- exact Kubernetes ingress topology.
Тезис: транспорт — производный уровень. Сначала контракт поверхности, затем выбор транспорта.
Что разумно зафиксировать как направление:
- Partner API Surface — REST (OpenAPI) + Webhooks (AsyncAPI) как baseline;
- Service-to-Service Surface — gRPC + Kafka events;
- Internal Operational Surface — REST + WebSocket для интерактивности;
- B2C Storefront Surface — HTTP/HTML + REST для динамики;
- Agency Working Surface — REST + WebSocket для интерактивности;
- Tour Builder Closed Surface — REST + Webhooks; возможно gRPC для S2S-вариантов.
Это направление, не догма. Финальные решения — в фазе 4 при создании reference/api-as-product.md и связанных документов.
Этап зрелости поверхностей
Что уже зафиксировано
- Концептуальные границы шести поверхностей;
- Контракты второго круга для Partner API в reference/api-contracts.md;
- Концептуальные клиентские поверхности в reference/clients.md;
- Дисциплина асинхронной шины в reference/eventing-and-queue-baseline.md;
- Skeletons и схемы событий в нескольких документах фазы 3.
Что предстоит развернуть в следующих фазах
В фазе 4 (новые домены):
reference/api-as-product.md— Partner API как продукт со всеми атрибутами;reference/payment-domain.md— платёжный контур, влияющий на B2C и Agency;reference/notification-and-communication.md— webhook-доставка как first-class.
В фазе 5 (углубление):
reference/multi-tenant-isolation-strength.md— surface-aware tenant isolation;reference/tour-builder-operational-model.md— операционная модель Tour Builder Closed Surface.
В фазе 7 (переработка):
reference/clients.md— пересвязать с tenancy и API as product.
Что нельзя делать с этой картой поверхностей
- Делать вид, что поверхности — это просто разные view одного API;
- Подражать структуре Stuba/HomeToGo при дизайне Partner API Surface;
- Объединять Tour Builder Closed Surface с Partner API Surface в одну поверхность (разные коммерческие модели);
- Допускать утечку маржинальной структуры на внешние поверхности;
- Вводить временные поверхности «пока запустим B2C, потом разделим» — каждая поверхность first-class сразу.
Уточнение под Фазу 7 (28.04.2026) — соотношение surface contracts и client surfaces
После переработки reference/clients.md в Фазе 7 (27.04.2026) в проекте появилось две взаимодополняющие таксономии поверхностей: surface contracts (этот документ) и client surfaces (clients.md). Эта секция фиксирует их различие, чтобы будущий читатель не воспринимал их как конкурирующие.
Две ортогональные таксономии
Таксономия 1 — Surface Contracts (этот документ, layers.md): разделение по типу контракта, который платформа предоставляет миру. Фокус — на формальном API/протокольном уровне: что именно отдаётся как стабильный контракт, по каким правилам версионируется, какие коммерческие отношения у каждого контракта.
| # | Surface Contract | Тип контракта |
|---|---|---|
| 1 | Internal Operational | внутренний — нет внешнего контракта |
| 2 | Agency Working | first-party — managed application contract |
| 3 | Partner API | внешний — stable contract с версионированием |
| 4 | B2C Storefront | first-party — managed presentation contract |
| 5 | Service-to-Service (S2S) | внутренний — между сервисами платформы |
| 6 | Tour Builder Closed | специальный paid contract (отдельная коммерческая модель) |
Таксономия 2 — Client Surfaces (clients.md): разделение по product surface, который user/SDK видит. Фокус — на потребителе: какие frontend-приложения, машинные интеграции, embeddable виджеты существуют как продуктовые единицы.
| # | Client Surface | Product тип |
|---|---|---|
| 1 | Internal Operational | внутренний UI |
| 2 | Agency Working | first-party UI |
| 3 | Partner Machine | machine-to-machine integration |
| 4 | Partner UI/SDK | partner-facing dashboards + SDK npm package |
| 5 | B2C Client-Facing | end-user UI (vitrip.store) |
| 6 | White-Label and Embedded | embeddable виджеты, partner-hosted flows |
Соответствие между таксономиями
Таксономии не противоречат — они проецируются друг на друга:
| Surface Contract (layers.md) | Соответствующие Client Surfaces (clients.md) |
|---|---|
| Internal Operational | Surface 1 (Internal Operational) — 1:1 |
| Agency Working | Surface 2 (Agency Working) — 1:1 |
| Partner API | Surface 3 (Partner Machine) + Surface 4 (Partner UI/SDK) — Partner API Surface обслуживает оба клиентских surfaces |
| B2C Storefront | Surface 5 (B2C Client-Facing) — 1:1 + Surface 6 (White-Label) для partner-hosted B2C flows |
| Service-to-Service | (нет client surface — S2S не имеет user-facing UI) |
| Tour Builder Closed | (специальный paid контракт; клиентские surfaces 2, 4, 5 потребляют через свои UI) |
Иными словами:
- Partner API Surface в layers.md — это контрактный слой, который обслуживает два разных типа клиентов: machine-to-machine integrations (Surface 3 в clients.md) и UI/SDK для партнёров-операторов (Surface 4). Это один surface contract, но два product surfaces.
- Service-to-Service Surface — внутренний контракт, не имеет client surface (нет user/partner UI поверх него).
- Tour Builder Closed Surface — это специальный коммерческий paid контракт, доступный из нескольких client surfaces (Agency, Partner UI/SDK, B2C через published proposal view).
- White-Label and Embedded — это deployment option Partner API + B2C Storefront контрактов под партнёрским брендом, не отдельный новый contract. Согласно reference/api-as-product.md, white-label — feature Enterprise tier.
Какая таксономия для каких задач
- Дизайн контрактов API/AsyncAPI, версионирование, rate limits — использовать Surface Contracts (этот документ);
- Дизайн UI/SDK, продуктовая декомпозиция, capability matrix — использовать Client Surfaces (clients.md);
- При проектировании integration partner — обе одновременно: какой контракт он потребляет (Partner API) и какие client surfaces он использует (Machine + UI/SDK).
Каноничный итог уточнения
Layers.md остаётся главным документом по surface contracts (формально-контрактная сторона Оси 2). Clients.md — каноничный документ по client surfaces (продуктовая декомпозиция). Они дополняют друг друга, не конкурируют.
При конфликте — каждый документ авторитетен в своей таксономии:
- layers.md — для contractual обязательств, versioning, SLA, rate limits, security boundaries;
- clients.md — для UI/SDK packaging, capability matrix, truth visibility per product surface.
Уточнение выполнено через no-destruction.
Связанная документация
- Главная архитектурная ось (overview/index.md) — ось 0 (главная).
- Манифест переосмысления (overview/platform-vision-and-manifest.md) — переосмысление роли.
- Архитектурный якорь и бизнес-модель (overview/architectural-anchor-and-business-model.md) — обоснование якоря.
- Каноничная доменная ось (overview/canonical-domain-spine.md) — ось 1.
- Платформа как продукт (overview/platform-as-product.md) — ось 3.
- Ось данных и интеллекта (overview/data-and-intelligence-spine.md) — ось 4.
- Операционная ось (overview/operational-spine.md) — ось 5.
- Связь с реализацией (overview/relation-to-implementation-baseline.md) — ось 6.
- Граф пересечений архитектурных осей (overview/architectural-axes-and-cross-links.md) — карта пересечений.
- Архивная версия 2.0 (overview/layers-old-2026-04-25.md) — историческая запись.
- Контракты API (reference/api-contracts.md) — контракты второго круга.
- Клиентский слой (reference/clients.md) — клиентские поверхности второго круга.