Files
microdao-daarion/SWAPPER-CABINETS-FIXED.md
Apple 3de3c8cb36 feat: Add presence heartbeat for Matrix online status
- matrix-gateway: POST /internal/matrix/presence/online endpoint
- usePresenceHeartbeat hook with activity tracking
- Auto away after 5 min inactivity
- Offline on page close/visibility change
- Integrated in MatrixChatRoom component
2025-11-27 00:19:40 -08:00

4.5 KiB
Raw Blame History

Swapper Service Connections - Виправлено в кабінетах нод

Дата: 2025-11-22
Статус: Готово до використання


🎉 Виконано

1. Виправлено відображення

  • Swapper Service Connections відображається в кабінеті кожної ноди
  • Отримання даних через API /api/node/{node_id}
  • Автоматичне виявлення swapper_url для кожної ноди

2. Підсвічування активної моделі

  • Активна модель підсвічується зеленим кольором
  • Зелений фон для рядка активної моделі
  • Зелена анімація для індикатора активної моделі
  • Бейдж "ACTIVE" для активної моделі
  • Окремий блок "Active Model" з деталями

3. Детальна інформація про моделі

  • Model Name (з підсвічуванням активної)
  • Ollama Name
  • Type (llm/code/vision/math)
  • Size (GB) - вага моделі
  • Priority (high/medium/low)
  • Status (Loaded/Unloaded)
  • Uptime (hours) - час роботи
  • Requests - кількість запитів

4. Real-time оновлення

  • Автоматичне оновлення кожні 10 секунд
  • Кнопка "Refresh" для ручного оновлення
  • Відображення в реальному часі

🎨 Візуальні покращення

Активна модель:

  • 🟢 Зелений фон рядка (bg-green-500/10)
  • 🟢 Зелена рамка (border-green-500/30)
  • 🟢 Зелений текст назви (text-green-300)
  • 🟢 Анімований індикатор (animate-pulse)
  • 🟢 Бейдж "ACTIVE"

Окремий блок Active Model:

  • Зелена картка з активною моделлю
  • Деталі: Uptime, Requests, Size
  • Відображається перед таблицею всіх моделей

📊 Структура відображення

1. Заголовок Swapper Service

  • Статус (healthy/error)
  • Режим роботи (single-active)
  • Кнопка Refresh

2. Блок Active Model (якщо є)

  • Зелена картка
  • Назва моделі
  • Uptime, Requests, Size

3. Таблиця всіх моделей

  • Model Name (з підсвічуванням активної)
  • Ollama Name
  • Type, Size, Priority
  • Status, Uptime, Requests

4. Підсумок

  • Total models
  • Loaded / Total

🔧 Технічні деталі

Отримання даних:

  1. Отримує swapper_url з конфігурації ноди
  2. Спробує різні API endpoints:
    • /api/cabinet/swapper/status
    • /api/status
    • /api/models
    • /status
    • /health (fallback)

Підсвічування:

// Активна модель
rowClass = isActive 
    ? 'bg-green-500/10 border-green-500/30' 
    : 'hover:bg-slate-800/50';

// Зелений текст
text-green-300 для активної моделі

🧪 Тестування

1. Перевірити відображення

# Node #2
curl http://localhost:8899/node/node-2

# Node #1
curl http://localhost:8899/node/node-1

2. Відкрити в браузері

http://localhost:8899/node/node-2  # Node #2 кабінет
http://localhost:8899/node/node-1  # Node #1 кабінет

3. Перевірити функціональність

  • Swapper Service Connections відображається
  • Активна модель підсвічується зеленим
  • Таблиця моделей з описом та вагами
  • Real-time оновлення працює

Готово!

Swapper Service Connections виправлено та покращено! 🎉

  • Відображається в кабінеті кожної ноди
  • Активна модель підсвічується зеленим
  • Детальна інформація про моделі
  • Real-time оновлення

Можна використовувати прямо зараз!


Last Updated: 2025-11-22
Status: Готово до використання
URL: http://localhost:8899/node/node-1 або /node/node-2