dragonflight/services
ZGaetano 55ff2e717f feat(cluster): full hardware breakdown per node
_normalizeNode:
- Maps cpu_usage, mem_used_mb/mem_total_mb from actual API fields
- Reads capabilities.gpus: name, memory_mb, device, bound status
  (bound = nvidia-smi confirmed driver, detected by name+memory_mb)
- Reads capabilities.blackmagic + blackmagic_model: model, port count,
  device paths

Node detail panel:
- GPUs: name, VRAM, device path, BOUND/UNBOUND badge (green if driver active)
- Capture cards: model name, port count badge, per-port device name
  with online/offline color coding

Stat row: adds Capture ports total count card

Topology SVG: shows GPU count and BMD port count under each node label

Fix: removeNode uses node.dbId (UUID) not node.id (hostname)
2026-05-26 18:06:30 +00:00
..
capture fix(recorders,library): empty-capture handling + right-click context menu 2026-05-23 03:52:30 +00:00
mam-api fix(video): revert S3 redirect — RustFS rejects range+Origin; proxy with cache headers 2026-05-26 17:40:02 +00:00
node-agent fix(decklink): mount /dev/blackmagic in sidecar + remote node routing via node-agent 2026-05-21 18:51:09 -04:00
premiere-plugin fix(premiere-plugin): hide growing-count badge until count > 0 2026-05-26 16:40:47 +00:00
web-ui feat(cluster): full hardware breakdown per node 2026-05-26 18:06:30 +00:00
worker feat(proxy): VBR 500k-1M encoding for proxy generation 2026-05-26 17:44:18 +00:00