stable версия 1.0
FSP Capacity 1.0
Что оператор готов взять, сколько у него свободно и куда он возит. Волатильные данные с отметкой актуальности.
Зависит от:
core. Объявить этот модуль в манифесте без него нельзя (PROFILE-002).
Оператор описывает здесь три вещи: коммерческие рамки (кого и что он вообще берёт), свободную мощность на сегодня и направления отгрузки.
Оператор и склад, категории и схемы работы описаны в core.
Реестры
| Реестр | Что внутри |
|---|---|
capacity_model |
Сущности listing, storage_capacity, throughput_capacity, routes, route_schedules |
storage_types |
Закрытый справочник типов хранения и допустимых температурных режимов |
rules |
CAP-*, ROUTE-* |
Витрина склада: listing
Коммерческие рамки, без которых подбор бессмыслен: какие категории и маркетплейсы обслуживаются, какие схемы работы и типы контрагентов, минимальный чек и минимальный объём захода, с какой даты готовы принять, минимальный срок договора, что не берут вообще (restrictions). Ссылка rate_card_id ведёт в прайс оператора в FSP Pricing.
Без этих полей в выдачу попадают операторы, которые такого клиента не возьмут.
Свободная мощность
storage_capacity — свободная площадь по типу и режиму хранения. Базовая единица м², паллето-места производны через коэффициент типа хранения и не задаются независимо (CAP-001). Тип и режим обязательны: 100 м² заморозки и 100 м² амбиента не одно и то же (CAP-003).
throughput_capacity — свободная пропускная способность: приёмок, отгрузок или обработок в день. Место без пропускной способности бесполезно, поэтому подбор идёт по обоим числам.
Данные декларативны. Стандарт не требует их верификации и не описывает мониторинг занятости: оператор заполняет то, что считает верным, и отвечает за это сам (CAP-002). Единственный механизм — updated_at: сторона, читающая мощность, видит, когда её обновляли, и вправе понизить такого оператора в выдаче или вернуть код capacity_data_stale.
Верификация свободных площадей потребовала бы доступа к складской системе оператора, то есть закрыла бы протокол для всех, кто его не даёт.
Направления: routes и route_schedules
Город склада не отвечает на вопрос «возит ли он на Коледино по четвергам». Направление описывается маршрутом: склад-отправитель, точка назначения, маркетплейс, чьим транспортом идёт отправка. График лежит отдельными окнами: день недели, время окончания приёма заявок, плановое время отправления.
График определяет доступность отправки и не является ценовым условием, если прайс явно не связывает цену с днём недели (ROUTE-001, CAP-004). При этом route_id может использоваться как поле условия цены в FSP Pricing — направление влияет на ставку, но живёт здесь.
Нормативные правила
Обязательны для соответствия модулю. Префиксы объявлены в манифесте:
CAP-*, ROUTE-*.
ROUTE-001График маршрута определяет доступность отправки, но не является price_rule_condition, если прайс явно не связывает цену с днём недели.CAP-001Базовая единица свободной мощности — м². Паллето-места производны от м² через коэффициент типа хранения и не могут задаваться независимо.CAP-002Свободная мощность декларативна: стандарт не требует её верификации. Актуальность выражается через updated_at, ответственность за данные лежит на операторе.CAP-003Строка свободной площади обязана указывать тип хранения и температурный режим: площадь без режима не сопоставима с запросом.CAP-004Направление отгрузки описывается маршрутом; график маршрута определяет доступность отправки и не является ценовым условием (см. ROUTE-001).
Схема
JSON Schema 2020-12: /1.0/capacity/schema.json.
Определения: storage_type, temp_mode, operation, throughput_metric, counterparty_type, listing, storage_capacity, throughput_capacity, route, route_schedule.
Манифест модуля
{
"module": "capacity",
"title": "FSP Capacity",
"version": "1.0",
"status": "stable",
"summary": "Что оператор готов взять, сколько у него свободно и куда он возит. Волатильные данные с отметкой актуальности.",
"depends": [
"core"
],
"registries": [
"capacity_model",
"storage_types",
"rules"
],
"rule_prefixes": [
"CAP",
"ROUTE"
],
"schema": "schema.json"
}