From e0e4f228eb2a3192e20b1846c1a8c82fd56b3b1f Mon Sep 17 00:00:00 2001 From: Mohamed Boudra Date: Mon, 30 Mar 2026 12:43:45 +0700 Subject: [PATCH] fix(server): guard paseo:ready IPC behind PASEO_SUPERVISED env var The process.send check alone was insufficient because vitest also runs workers with IPC channels. Now the supervisor sets PASEO_SUPERVISED=1 on the worker env, and bootstrap checks for it before sending. --- packages/server/scripts/supervisor-entrypoint.ts | 2 +- packages/server/src/server/bootstrap.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/server/scripts/supervisor-entrypoint.ts b/packages/server/scripts/supervisor-entrypoint.ts index 519efba9d..73934b0c2 100644 --- a/packages/server/scripts/supervisor-entrypoint.ts +++ b/packages/server/scripts/supervisor-entrypoint.ts @@ -76,7 +76,7 @@ async function main(): Promise { const config = parseConfig(process.argv.slice(2)); const workerEntry = config.devMode ? resolveDevWorkerEntry() : resolveWorkerEntry(); const workerExecArgv = resolveWorkerExecArgv(workerEntry); - const workerEnv: NodeJS.ProcessEnv = { ...process.env }; + const workerEnv: NodeJS.ProcessEnv = { ...process.env, PASEO_SUPERVISED: "1" }; const packagedNodeEntrypointRunner = process.env.ELECTRON_RUN_AS_NODE === "1" ? resolvePackagedNodeEntrypointRunnerPath(fileURLToPath(import.meta.url)) diff --git a/packages/server/src/server/bootstrap.ts b/packages/server/src/server/bootstrap.ts index 043af68a6..0451a6b36 100644 --- a/packages/server/src/server/bootstrap.ts +++ b/packages/server/src/server/bootstrap.ts @@ -691,7 +691,7 @@ export async function createPaseoDaemon( ); } - if (typeof process.send === "function") { + if (typeof process.send === "function" && process.env.PASEO_SUPERVISED === "1") { process.send({ type: "paseo:ready", listen: