Fixed
- Bulk upgrade no longer stalls when one device hangs — selecting a dozen+ devices for SW/FW upgrade used to freeze after a few completions if one device got stuck. Now each finished device immediately starts the next one; a stuck device only holds its own slot, the rest of the queue keeps flowing. Check phase also gets a 5-minute hard timeout per device.
stalebadge respects per-device polling interval — devices configured with long poll intervals (e.g. 1440 s) no longer show as stale between normal polls. The threshold now scales with each device's interval instead of a fixed 2.5 min.