Low-code Runtime
Запуск, готовность, ручная передача артефакта и диагностика Low-code Runtime.
Общие сведения
Компонент предназначен для запуска экземпляра Low-code агента в Kubernetes кластере.
Эксплуатационная граница
Один Deployment Low-code Runtime исполняет одну версию одного агента. Все его экземпляры используют одинаковые исходные данные, манифест, образ и настройки. Среда исполнения не подключается к базе Low-code IDE и не загружает изменяемую рабочую копию.
Наружу предоставляются только согласованные A2A и MCP интерфейсы. Административный API
LangFlow и внутренний интерфейс lfx не публикуются.
Неизменяемые входные данные
Перед развертыванием зафиксируйте:
| Данные | Требование |
|---|---|
| Образ | Неизменяемый идентификатор, полный SBOM и файл блокировки зависимостей |
source.json | JSON Потока (Flow) и SHA-256 |
manifest.json | platform.low-code.publish-manifest/v1, SHA-256 и ссылка на исходные данные |
| Политика компонентов | Версия, соответствующая разрешенному набору поставки |
| Карточка A2A или описание MCP | Совпадает с манифестом и фактическими возможностями |
| Настройки выпуска | Версия манифестов Kubernetes, ресурсов и регистрационных меток |
Исправление любого байта создает новую версию и новую контрольную сумму. Изменять файл внутри работающего контейнера запрещено.
Последовательность запуска
Low-code Runtime должен:
- получить исходный Flow и манифест по токену либо ограниченному полномочию;
- ограничить тип содержимого, размер и время получения;
- проверить SHA-256 обоих файлов;
- проверить Flow, идентичность агента, политику и совместимость с
lfx; - повторно проверить компоненты, исполняемый код и отсутствие секретов;
- загрузить Flow через поддерживаемый интерфейс;
- выполнить проверку эндпоинта без вызова модели;
- сформировать карточку либо описание и сравнить его с разрешенными возможностями;
- перейти в состояние готовности.
Проверки состояния
| Маршрут | Значение | Не доказывает |
|---|---|---|
/health/live | Процесс работает | Исправность Потока (Flow), модели и доступа |
/health/ready | Артефакт, манифест, точка входа и критическая настройка приняты | Качество ответа модели и право конкретного пользователя |
/.well-known/agent-card.json | Карточка A2A выбранной версии | Право вызова; публичный клиент получает маршрут через Agent Registry |
Проверка готовности не должна выполнять тяжелый запрос к модели. Фактическая готовность AI Gateway подтверждается отдельной сквозной проверкой.
Ручная процедура развертывания
Информация: Agent Publisher в этой версии отсутствует.
Оператор выполняет шаги вручную:
- получить Flow из Low-code IDE или другого источника, соответствующего тому же контракту;
- запустить общий модуль проверки и формирования манифеста;
- убедиться в результате
validи сохранить контрольные суммы; - загрузить
source.jsonиmanifest.jsonв объектное хранилище по пути, содержащему контрольную сумму; - развернуть экземпляр агента в Kubernetes с обязательными метками,
включая
agent-platform.inno.tech/implementation-type=low-code; - дождаться готовности Low-code Runtime;
- сравнить фактическую карточку или описание с манифестом;
- дождаться автоматического обнаружения Agent Registry
Создание агента через Agent Registry API или прямой записью в PostgreSQL запрещено.
Регистрационный контракт
Одна сущность Service Kubernetes объявляет один протокол. Если один Deployment агента
предоставляет A2A и MCP интерфейсы, создаются две сущности Service с разными логическими именами.
Обязательные метки включают регистрацию, протокол, имя, версию, владельца и тип low-code. Аннотация версии контракта
равна agent-platform.agent-registry.registration/v1.
Имя агента соответствует виду <domain>-<function>-v<major>,
а основная версия имени совпадает с SemVer версии рабочей нагрузки.
Типичные причины неготовности
| Признак | Проверка | Безопасное действие |
|---|---|---|
| Несовпадение SHA-256 | Сравнить байты файла, путь и ожидаемый SHA-256 | Повторно разместить файл Потока (Flow) как новую версию |
component_not_allowed | Найти узел и версию политики в результате проверки | Исправить Поток (Flow) в Low-code IDE; не отключать проверку |
| Несовместимость среды исполнения | Сверить версию lfx и набор совместимости | Заблокировать обновление либо создать совместимый Поток (Flow) |
advertised_capability_unavailable | Сравнить манифест, карточку и исполняемый путь | Убрать неподдерживаемую возможность и создать новую версию |
| Ошибка AI Gateway | Проверить целевой профиль, срок полномочия, ограничение времени | Исправить настройку платформенной службы; не передавать пользовательский токен |
| Ошибка FileRef | Проверить цель, операцию, срок, размер, тип и SHA-256 | Получить новый FileRef; не передавать прямой URL |
| Превышение нагрузки | Проверить параллельность, очередь и сроки | Вернуть 429, применить ограниченную повторную попытку только для безопасного чтения |
Безопасность
- Пользовательский запрос приходит только через Platform Agent Gateway.
- Исходный пользовательский токен удаляется до обращения к среде исполнения.
- Low-code Runtime принимает короткоживущий токен, связанный с конкретным агентом, операцией и запуском.
- Неподписанные заголовки пользователя и агента не являются полномочием.
- SpiceDB проверяется до Guardrails, FileRef и любого другого действия.
- Недоступность SpiceDB приводит к запрету выполнения.
- Поток (Flow) не может менять ServiceAccount, сетевую политику, тома, переменные среды, ограничения ресурсов и регистрационные метки.
Наблюдаемость
Для диагностики достаточно идентификатора агента и версии, версии Потока (Flow),
хеш-префикса, traceId, кода ошибки.
Условие успешной эксплуатации
Версия считается исправной, когда готовность агента устойчива, карточка соответствует поведению, A2A и MCP проходят согласованный набор проверок, неверные FileRef и права отклоняются до выполнения, а Agent Registry автоматически обнаруживает рабочую нагрузку развернутого агента.