Enhance Beryl Agent detail and report views
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
import { spawn } from "node:child_process";
|
||||
const children = [
|
||||
spawn(process.execPath, ["--import", "./apps/server/node_modules/tsx/dist/loader.mjs", "apps/server/src/index.ts"], { stdio: "inherit" }),
|
||||
spawn(process.execPath, ["sandbox/web.mjs"], { stdio: "inherit" }),
|
||||
];
|
||||
let stopping = false;
|
||||
function stop(code) {
|
||||
if (stopping) return;
|
||||
stopping = true;
|
||||
children.forEach(child => child.kill("SIGTERM"));
|
||||
setTimeout(() => { children.forEach(child => child.kill("SIGKILL")); process.exit(code); }, 5000);
|
||||
}
|
||||
children.forEach(child => { child.on("error", () => stop(1)); child.on("exit", () => stop(stopping ? 0 : 1)); });
|
||||
process.on("SIGTERM", () => stop(0));
|
||||
process.on("SIGINT", () => stop(0));
|
||||
const ttl = Number(process.env.SANDBOX_TTL_SECONDS ?? 3600);
|
||||
if (!Number.isInteger(ttl) || ttl < 30 || ttl > 86400) stop(1);
|
||||
else setTimeout(() => stop(0), ttl * 1000);
|
||||
Reference in New Issue
Block a user