Инструменты пользователя

Инструменты сайта


sharixopen:knowledge:modules:capability_resolution

Capability resolution и проверяемые зависимости

Доступность — несколько независимых проверок

Для возможности ShariX Open проверяются разные факты:

  1. Известен конкретный модуль/provider и его назначение.
  2. Исходники получены из ожидаемого репозитория/ветки; известна фактическая лицензия.
  3. Checkout существует, модуль выбран конфигурацией и реально загружен текущим Django-процессом.
  4. Для защищённой операции выполнены применимые условия entitlement.
  5. Настройки/схема/dependencies готовы, проверка health подтверждает нужный уровень работы.

Положительный import test не заменяет эти пункты. Публичность репозитория не является лицензией, а entitlement не является Git credential.

Два resolver с разными задачами

Sysadmin владеет module metadata/lifecycle/health и решением о разрешённых protected capabilities. Onboarding связывает предметную потребность с возможными реализациями: базовой, установленным модулем, доступным для установки вариантом, custom external либо defer.

Не создавайте в onboarding второй каталог лицензий и репозиториев. Его semantic mapping читает descriptive metadata из canonical Sysadmin projection.

Значения semantic availability

  • BASE — предусмотренная базовая реализация.
  • INSTALLED — модульная реализация уже установлена по текущей проверке.
  • PUBLIC_INSTALLABLE / PRIVATE_AVAILABLE — доступный вариант подключения, который ещё не равен рабочему runtime.
  • PRIVATE_UNAVAILABLE / UNAVAILABLE — нужная реализация сейчас недоступна с указанной причиной.
  • CUSTOM_EXTERNAL — явно выбранная внешняя/собственная реализация.
  • DECLINED — возможность отложена/не выбрана в данном проекте по его решению.

Fallback должен сохранять ограничение: например, ручная внешняя проверка хранит результат, но не означает автоматическое проведение встречи или зачисление в LMS. Поля настройки отсутствующего модуля не показываются как уже действующие.

Protected capability и готовность модуля

resolve_private_module_capabilities возвращает allowed, authorization_source, requested capabilities и detail. Это публичный интерфейс проверки конкретной защищённой операции, а не разрешение менять данные чужого модуля.

  • Отказ не должен удалять данные или отключать несвязанные приложения.
  • Источники online/offline authorization и пределы выданного разрешения проверяются штатным resolver.
  • Секреты доступа к Git/API не записываются в проектный manifest или Wiki.
  • Внутренний выпуск/управление закрытыми разрешениями описывается ответственными во внутренней документации.

Health и материализация

Sysadmin различает source/config/runtime, restart_required, materialization_staged/failed и результат module probe. Если target-specific setup прошёл, но полная сборка заблокирована другим модулем, это не готовый runtime. Отсутствующий sharix_health.py даёт generic-проверку, а не доказательство всех внешних интеграций.

  1. Проверьте canonical metadata и выбранную реализацию.
  2. Прочитайте причину недоступности и границы fallback.
  3. Установку/включение проводите штатной панелью модулей и installer, затем проверьте текущий процесс.
  4. В нужных условиях выполните live health отдельно от статической проверки.

Общий компонент может применяться и на Platform; его изменение передаётся ответственному Platform для проверки и принятия. Это не инструкция обновлять другую установку из публичного workflow.

Проверенные источники

Проверено по Git-исходникам 31.10.2026. Состояние исходников отделено от состояния конкретной установки; команды ниже при редакционной проверке не выполнялись, бизнес-данные и значения секретов не читались.

sharixopen/knowledge/modules/capability_resolution.txt · Последнее изменение: — sx_knowledge_api_open

© 2022 ShariX