Федерация
Раздел виден только глобальному администратору (global_admin). Его четыре
вторичные вкладки берутся из единого источника, поэтому одни и те же вкладки видны
с любой страницы федерации: Состояние, Тенанты, Регистрационные
токены, Продвижение каталога.
6.1. Состояние — здоровье федерации
Маршрут: /admin/federation/health
Почему это важно. Мониторинг связи с узлами тенантов (RPC-задержки, лаг outbox, реконнекты) — чтобы вовремя заметить проблемы федерации.
Дашборд состояния per тенант (обновление каждые 10 с): карточки Tenants online и Generated at; таблица per тенант (индикатор online/offline, Connected since, Last HB, Reconnects, RPC calls, p50/p95/p99, Timeouts, Outbox pending/dead).
6.2. Тенанты
Маршрут: /admin/tenants (детально — /admin/tenants/:tenantId)
Почему это важно. Управление жизненным циклом федеративных тенантов и их участников — основа модели множества инстансов (каждый заказчик = своя инсталляция).
Список: колонки Name, Slug, Members, Status (Active / Revoked / Decommissioned / Purge Pending / Deleted), Created, Actions. Меню действий: Revoke Access, Deactivate, Schedule Decommission (с периодом хранения 7–365 дней, по умолчанию 90), Hard Delete и Edit (имя/описание).
Детально о тенанте: для локальной строки — вкладка Members (таблица User / Role / Joined / Actions, Add Member, смена роли tenant_admin / analyst / viewer) и вкладка Settings (name, description, maxUsers, maxCases). Для федеративного узла — вкладка Health (статус связи, heartbeat, реконнекты, RPC p50/p95/p99, outbox pending/dead — обновление каждые 5 с) и вкладка Registry (метаданные узла).
6.3. Регистрационные токены
Маршрут: /admin/federation/tokens
Почему это важно. Токен — безопасный одноразовый способ подключить новый тенант к федерации (без передачи постоянных секретов).
Выпуск и отзыв токенов регистрации тенантов. Reload, Issue token (tenant
slug, display name, TTL 1–168 ч). Колонки: Tenant slug, Status (active / consumed
/ revoked / expired), Issued, Expires, Consumed, Revoked, Actions (Revoke).
Токен показывается один раз после выпуска — скопируйте его; он передаётся
тенанту через TENANT_REGISTRATION_TOKEN.
6.4. Продвижение каталога
Маршрут: /admin/federation/catalog/promotions
Почему это важно. Ревью предложений тенантов в общий каталог — контроль качества и целостности контента, попадающего на главный узел.
Очередь ревью предложений тенантов в канонический каталог. Фильтр статуса (All / Pending / Approved / Rejected). Колонки: Status, Kind (playbook / automation / indicator_type / connector), Name, Source, Base version, Submitted. Клик по строке открывает drawer с метаданными и предлагаемым контентом; для pending — Approve + merge и Reject (с заметкой ревьюера).
Runbook-и оператора. Day-2-операции федерации (mTLS-энроллмент, жизненный цикл тенанта, миграция) описаны в
docs/ops/06-federation-tenant-lifecycle.md,docs/ops/federation-operator-runbook.mdиdocs/ops/federation-mtls.md.