Skip to content

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) за наступним алгоритмом:

  1. Пошук за типом (kind):
  2. Система шукає агентів, прив'язаних до цієї ноди (node_id), які мають kind = 'node_guardian' або 'node_steward'.

  3. Fallback (сумісність):

  4. Якщо спеціалізованих типів не знайдено, система шукає infra_monitor (як Guardian) та infra_ops (як Steward).

  5. Node Cache (Legacy):

  6. Якщо динамічний пошук не дав результатів, використовується закешоване значення з таблиці 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]).

Це дозволяє оператору швидко перейти до налаштувань агента або почати діалог з ним.