The gateway launchd plist does not set ProcessType, so macOS treats it as a background process eligible for App Nap. When the system is idle, App Nap can suspend the process and freeze setTimeout-based heartbeat timers.
Setting ProcessType to Interactive tells launchd the process needs timely execution.
Fixes#58061; refs #62294 and #66992.