fix(mac): scope restart process cleanup

This commit is contained in:
Vincent Koc
2026-06-06 19:31:15 +02:00
parent 96c5d33d2b
commit 4d142b185e
2 changed files with 16 additions and 3 deletions

View File

@@ -133,12 +133,10 @@ kill_all_openclaw() {
pkill -f "${DEBUG_PROCESS_PATTERN}" 2>/dev/null || true
pkill -f "${LOCAL_PROCESS_PATTERN}" 2>/dev/null || true
pkill -f "${RELEASE_PROCESS_PATTERN}" 2>/dev/null || true
pkill -x "OpenClaw" 2>/dev/null || true
if ! pgrep -f "${APP_PROCESS_PATTERN}" >/dev/null 2>&1 \
&& ! pgrep -f "${DEBUG_PROCESS_PATTERN}" >/dev/null 2>&1 \
&& ! pgrep -f "${LOCAL_PROCESS_PATTERN}" >/dev/null 2>&1 \
&& ! pgrep -f "${RELEASE_PROCESS_PATTERN}" >/dev/null 2>&1 \
&& ! pgrep -x "OpenClaw" >/dev/null 2>&1; then
&& ! pgrep -f "${RELEASE_PROCESS_PATTERN}" >/dev/null 2>&1; then
return 0
fi
sleep 0.3

View File

@@ -98,4 +98,19 @@ describe("scripts/restart-mac.sh", () => {
chooseBlock.indexOf("/Applications/OpenClaw.app"),
);
});
it("keeps restart cleanup scoped to known OpenClaw app and build paths", () => {
const script = readFileSync(restartScriptPath, "utf8");
const cleanupBlock = script.slice(
script.indexOf("kill_all_openclaw()"),
script.indexOf("stop_launch_agent()"),
);
expect(cleanupBlock).toContain('pkill -f "${APP_PROCESS_PATTERN}"');
expect(cleanupBlock).toContain('pkill -f "${DEBUG_PROCESS_PATTERN}"');
expect(cleanupBlock).toContain('pkill -f "${LOCAL_PROCESS_PATTERN}"');
expect(cleanupBlock).toContain('pkill -f "${RELEASE_PROCESS_PATTERN}"');
expect(cleanupBlock).not.toContain('pkill -x "OpenClaw"');
expect(cleanupBlock).not.toContain('pgrep -x "OpenClaw"');
});
});