FSP 1.0

FSP / Модули

Модули

МодульВерсияСтатусО чёмЗависит от
core 1.0 stable Общий язык: услуги, единицы начисления, категории товара, габаритные профили, оператор и склад.
pricing 1.0 stable Как оператор описывает свой прайс: тарифный план, предложения, правила цены, условия, модификаторы, ступени. core
capacity 1.0 stable Что оператор готов взять, сколько у него свободно и куда он возит. Волатильные данные с отметкой актуальности. core
quote 1.0 stable Запрос сметы (операции + объём) и ответ: подошедшие операторы, смета, применённые допущения, коды непокрытия. core, pricing, capacity
order planned Поставка на склад, отгрузка, возврат: заказ как объект обмена между заявителем и оператором. core, capacity
tracking planned События по заказу и остатки на складе оператора. core, order

Протокол собран из модулей. Каждый модуль версионируется отдельно и объявляется в манифесте стороны — правка в одном месте не ломает остальные (см. profile/).

Как устроен модуль

modules/<модуль>/
  module.json      манифест: версия, статус, зависимости, состав реестров, префиксы правил
  README.md        спецификация модуля
  rules.csv        нормативные правила модуля
  *.csv            реестры мастер-данных
  schema.json      JSON Schema сущностей ($id — https://openfsp.ru/1.0/<модуль>/schema.json)

Реестры объявлены в module.json и сверяются с файлами на диске в обе стороны: необъявленный CSV в каталоге модуля — блокирующая ошибка, как и объявленный реестр без файла.

Версионирование

Версия модуля — MAJOR.MINOR.

  • MINOR — совместимое добавление: новый реестр, новое необязательное поле, новый код в открытом справочнике.
  • MAJOR — несовместимое изменение: удаление или переименование поля, новое обязательное поле, сужение закрытого справочника, смена смысла существующего кода.

Коды стандартных услуг неизменяемы после публикации (CAT-001) — переименование услуги невозможно ни в какой версии.

Модули planned не имеют реестров и не могут быть объявлены в манифесте. Почему order и tracking ещё не описаны, сказано на странице модуля.

Что не входит в стандарт

appendix/ — разбор реальных прайсов операторов, реестр проверок и открытые дыры. Это материалы проверки стандарта, а не часть протокола.