Broadcast CLUSTER_HEARTBEAT every 5s; peers reply with CLUSTER_NODE_INFO containing resources and labels. Update memberList from received node info and set status/lastSeen; keep UDP discovery responses.
Disable HTTP-based updateAllMembersInfoTaskCallback loop to reduce network and memory overhead.
Add protocol constants HEARTBEAT_MSG and NODE_INFO_MSG; increase UDP buffer to 512 bytes.
Set default heartbeat_interval_ms to 5000 ms.
Fix sdkVersion JSON fallback by converting to const char* before assigning to String.