autodev-cli 1.4.64 → 1.4.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/commands/start.js +30 -0
- package/out/commands/start.js.map +1 -1
- package/package.json +1 -1
package/out/commands/start.js
CHANGED
|
@@ -51,6 +51,36 @@ function startCommand(program) {
|
|
|
51
51
|
.action(async (workspacePath, opts) => {
|
|
52
52
|
const cwd = workspacePath ? path.resolve(workspacePath) : process.cwd();
|
|
53
53
|
const todoFile = path.resolve(cwd, opts.todo);
|
|
54
|
+
// Parent-death watchdog: when a manager spawns this loop and sets
|
|
55
|
+
// AUTODEV_EXIT_WITH_PARENT=1 (the desktop app does), exit if that parent
|
|
56
|
+
// process disappears — so closing, crashing, or force-quitting the app never
|
|
57
|
+
// leaves an orphaned loop (and its provider subprocess) running as a stale
|
|
58
|
+
// session. SIGINT first for a graceful provider-cleanup shutdown, hard-exit
|
|
59
|
+
// as a fallback. Not armed for a plain terminal `autodev start`.
|
|
60
|
+
if (process.env.AUTODEV_EXIT_WITH_PARENT) {
|
|
61
|
+
const parentPid = process.ppid;
|
|
62
|
+
const wd = setInterval(() => {
|
|
63
|
+
let gone = process.ppid !== parentPid; // reparented ⇒ parent died
|
|
64
|
+
if (!gone && parentPid > 1) {
|
|
65
|
+
try {
|
|
66
|
+
process.kill(parentPid, 0);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
gone = true;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (gone) {
|
|
73
|
+
clearInterval(wd);
|
|
74
|
+
process.stderr.write('\n[autodev] parent (app) exited — shutting the loop down to avoid a stale session.\n');
|
|
75
|
+
try {
|
|
76
|
+
process.kill(process.pid, 'SIGINT');
|
|
77
|
+
}
|
|
78
|
+
catch { /* ignore */ }
|
|
79
|
+
setTimeout(() => process.exit(0), 8000).unref?.();
|
|
80
|
+
}
|
|
81
|
+
}, 4000);
|
|
82
|
+
wd.unref?.();
|
|
83
|
+
}
|
|
54
84
|
// Persist the session display name to .autodev/settings.json so the
|
|
55
85
|
// dispatcher + providers pick it up (opencode --title / copilot --name)
|
|
56
86
|
// and the loop injects it as _session_name for pixel-office.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|