fix(gateway): shorten manual reinstall/restart delays

LaunchAgent plist hardcodes ThrottleInterval to 60 in src/daemon/launchd-plist.ts

That means every restart/install path that terminates the launchd-managed gateway gets delayed by launchd’s one-minute relaunch throttle. The CLI restart path in src/daemon/launchd.ts is doing the expected supervisor actions, but the plist policy makes those actions look hung.

In src/daemon/launchd-plist.ts:
- added LAUNCH_AGENT_THROTTLE_INTERVAL_SECONDS
- reduced the LaunchAgent ThrottleInterval from 60 to 1
This commit is contained in:
Gustavo Madeira Santana
2026-02-28 20:46:11 -05:00
parent 39e09273ca
commit c0ce125512
2 changed files with 8 additions and 2 deletions

View File

@@ -1,5 +1,6 @@
import { PassThrough } from "node:stream";
import { beforeEach, describe, expect, it, vi } from "vitest";
import { LAUNCH_AGENT_THROTTLE_INTERVAL_SECONDS } from "./launchd-plist.js";
import {
installLaunchAgent,
isLaunchAgentListed,
@@ -199,7 +200,7 @@ describe("launchd install", () => {
expect(plist).toContain("<true/>");
expect(plist).not.toContain("<key>SuccessfulExit</key>");
expect(plist).toContain("<key>ThrottleInterval</key>");
expect(plist).toContain("<integer>60</integer>");
expect(plist).toContain(`<integer>${LAUNCH_AGENT_THROTTLE_INTERVAL_SECONDS}</integer>`);
});
it("restarts LaunchAgent with bootout-bootstrap-kickstart order", async () => {