Node Guardian & Node Steward¶
Дата: 29 листопада 2025
Статус: Впроваджено (Task 038)
У екосистемі DAARION кожна нода має два ключові "обличчя" — спеціалізованих агентів, які відповідають за її функціонування та представлення у мережі.
1. Ролі¶
🛡️ Node Guardian (Технічний наглядач)¶
Відповідальність: * Моніторинг інфраструктури (CPU, RAM, Disk, GPU). * Стан сервісів (Docker, Systemd). * Безпека та алерти. * Автоматична реакція на інциденти (в межах дозволеного).
Тип агента: node_guardian (або infra_monitor).
🗣️ Node Steward (Хазяїн ноди)¶
Відповідальність: * Публічне представлення ноди як "громадянина". * Комунікація з іншими учасниками мережі. * Управління конфігурацією та правилами (Governance). * "Human Interface" до ноди.
Тип агента: node_steward (або infra_ops).
2. Як призначити¶
Агенти автоматично визначаються системою (city-service) за наступним алгоритмом:
- Пошук за типом (
kind): -
Система шукає агентів, прив'язаних до цієї ноди (
node_id), які маютьkind = 'node_guardian'або'node_steward'. -
Fallback (сумісність):
-
Якщо спеціалізованих типів не знайдено, система шукає
infra_monitor(як Guardian) таinfra_ops(як Steward). -
Node Cache (Legacy):
- Якщо динамічний пошук не дав результатів, використовується закешоване значення з таблиці
node_registry.nodes(якщо воно було встановлено вручну).
SQL для призначення (приклад)¶
-- Призначити Guardian
UPDATE agents
SET kind = 'node_guardian'
WHERE id = 'my-monitor-agent-id';
-- Призначити Steward
UPDATE agents
SET kind = 'node_steward'
WHERE id = 'my-steward-agent-id';
3. Відображення в UI¶
Node Dashboard (/nodes/[nodeId])¶
У кабінеті ноди (як повному, так і базовому профілі) відображається картка "Node Guardian & Steward":
* Показує імена та ролі агентів.
* Посилання на їх Публічний профіль (/citizens/[slug]).
* Посилання на Кабінет агента (/agents/[id]).
Це дозволяє оператору швидко перейти до налаштувань агента або почати діалог з ним.