instar 1.3.1302 → 1.3.1304

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.
Files changed (44) hide show
  1. package/dist/cli.js +37 -18
  2. package/dist/cli.js.map +1 -1
  3. package/dist/core/SessionManager.d.ts +9 -0
  4. package/dist/core/SessionManager.d.ts.map +1 -1
  5. package/dist/core/SessionManager.js +34 -2
  6. package/dist/core/SessionManager.js.map +1 -1
  7. package/dist/core/processIdentity.d.ts +39 -0
  8. package/dist/core/processIdentity.d.ts.map +1 -0
  9. package/dist/core/processIdentity.js +72 -0
  10. package/dist/core/processIdentity.js.map +1 -0
  11. package/dist/data/standards-guard-index.json +1 -1
  12. package/dist/data/standards-guard-index.meta.json +2 -2
  13. package/dist/data/standards-registry.meta.json +1 -1
  14. package/dist/feedback-factory/drain/FeedbackDrainStore.d.ts +6 -0
  15. package/dist/feedback-factory/drain/FeedbackDrainStore.d.ts.map +1 -1
  16. package/dist/feedback-factory/drain/FeedbackDrainStore.js +18 -5
  17. package/dist/feedback-factory/drain/FeedbackDrainStore.js.map +1 -1
  18. package/dist/lifeline/TelegramLifeline.d.ts.map +1 -1
  19. package/dist/lifeline/TelegramLifeline.js +1 -119
  20. package/dist/lifeline/TelegramLifeline.js.map +1 -1
  21. package/dist/lifeline/lifelineLock.d.ts +38 -0
  22. package/dist/lifeline/lifelineLock.d.ts.map +1 -0
  23. package/dist/lifeline/lifelineLock.js +153 -0
  24. package/dist/lifeline/lifelineLock.js.map +1 -0
  25. package/dist/lifeline/startupMarker.d.ts +3 -0
  26. package/dist/lifeline/startupMarker.d.ts.map +1 -1
  27. package/dist/lifeline/startupMarker.js +2 -0
  28. package/dist/lifeline/startupMarker.js.map +1 -1
  29. package/dist/monitoring/OrphanProcessReaper.d.ts +21 -1
  30. package/dist/monitoring/OrphanProcessReaper.d.ts.map +1 -1
  31. package/dist/monitoring/OrphanProcessReaper.js +59 -12
  32. package/dist/monitoring/OrphanProcessReaper.js.map +1 -1
  33. package/dist/threadline/PipeSessionSpawner.d.ts.map +1 -1
  34. package/dist/threadline/PipeSessionSpawner.js +66 -45
  35. package/dist/threadline/PipeSessionSpawner.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/data/builtin-manifest.json +37 -37
  38. package/src/data/standards-guard-index.json +1 -1
  39. package/src/data/standards-guard-index.meta.json +2 -2
  40. package/src/data/standards-registry.meta.json +1 -1
  41. package/upgrades/{1.3.1302.md → 1.3.1303.md} +26 -0
  42. package/upgrades/1.3.1304.md +89 -0
  43. package/upgrades/side-effects/feedback-drain-identity.md +78 -0
  44. package/upgrades/side-effects/test-instance-foreign-kills.md +261 -0
@@ -0,0 +1,153 @@
1
+ /**
2
+ * The lifeline's single-instance lock (`state/lifeline.lock`).
3
+ *
4
+ * The lock records `{ pid, startedAt, procStart }`. `procStart` (the holder's
5
+ * process start time, see core/processIdentity) is what lets a later lifeline
6
+ * prove the live process at `pid` is still the holder before signalling it —
7
+ * a pid on its own may by then belong to any unrelated process.
8
+ */
9
+ import { spawnSync } from 'node:child_process';
10
+ import fs from 'node:fs';
11
+ import { checkRecordedProcess, ownProcessIdentity } from '../core/processIdentity.js';
12
+ /**
13
+ * Acquire an exclusive lock file to prevent multiple lifeline instances.
14
+ * Returns true if lock acquired, false if another instance holds it.
15
+ *
16
+ * Cases:
17
+ * 1. No lock file → acquire immediately
18
+ * 2. Lock holder dead, or its pid now belongs to a process that started after
19
+ * the lock was written (pid reuse) → take over WITHOUT signalling anything
20
+ * 3. Lock holder alive and PROVEN to be the recorded holder (same start time)
21
+ * → check age. If it has held the lock >5 minutes and is zombie/stopped or
22
+ * wedged sleeping (post-sleep/wake), terminate it and take over. This
23
+ * prevents permanently stuck lifelines from blocking new instances.
24
+ * 4. Holder alive but identity unproven (legacy lock without `procStart`) →
25
+ * respect the lock and never signal: that pid may be someone else's process.
26
+ */
27
+ export function acquireLockFile(lockPath) {
28
+ try {
29
+ // Check if lock file exists and if the PID is still alive
30
+ if (fs.existsSync(lockPath)) {
31
+ const raw = fs.readFileSync(lockPath, 'utf-8');
32
+ const data = JSON.parse(raw);
33
+ if (data.pid && typeof data.pid === 'number') {
34
+ const identity = checkRecordedProcess(data);
35
+ if (identity === 'gone') {
36
+ console.log(`[Lifeline] Removing stale lock (PID ${data.pid} is dead)`);
37
+ }
38
+ else if (identity === 'reused') {
39
+ console.log(`[Lifeline] Removing stale lock (PID ${data.pid} now belongs to a process started after the lock was written — not signalling it)`);
40
+ }
41
+ else if (identity === 'unproven') {
42
+ // Alive, but nothing proves it is the process that wrote this lock.
43
+ console.log(`[Lifeline] Lock PID ${data.pid} is alive but its identity is unproven — respecting the lock, not signalling`);
44
+ return false;
45
+ }
46
+ else {
47
+ // Proven to be the recorded holder — but is it actually functional?
48
+ // We have three "stuck" states to detect:
49
+ // 1. Zombie (Z) or stopped (T) — clearly dead-but-not-reaped.
50
+ // 2. Sleeping (S) for >5 min without responding to SIGTERM —
51
+ // observed in the 2026-05-20 b2lead-insights incident: the
52
+ // previous lifeline received SIGTERM via the CLI's pkill
53
+ // fallback path and went to 'S' state but never exited,
54
+ // holding the lock for >5 min until manual SIGKILL.
55
+ // 3. A live, healthy lifeline (R/S < 5 min) — DON'T touch it.
56
+ if (!data.startedAt)
57
+ return false;
58
+ const lockAge = Date.now() - new Date(data.startedAt).getTime();
59
+ const fiveMinutes = 5 * 60_000;
60
+ if (lockAge <= fiveMinutes) {
61
+ // Lock is fresh — another lifeline is running
62
+ return false;
63
+ }
64
+ const procInfo = spawnSync('/bin/ps', ['-p', String(data.pid), '-o', 'stat='], {
65
+ encoding: 'utf-8', timeout: 3000,
66
+ }).stdout?.trim() ?? '';
67
+ // Z (zombie) / T (stopped) — always recoverable.
68
+ const isZombieOrStopped = procInfo.includes('Z') || procInfo.includes('T');
69
+ // Sustained 'S' for 5+ min after the lock write with no progress is
70
+ // the wedged state we observed: a healthy lifeline writes the lock
71
+ // and starts running tasks within seconds, leaving 'R' or short 'S'
72
+ // bursts.
73
+ const isWedgedSleeping = /^S/i.test(procInfo);
74
+ if (isZombieOrStopped) {
75
+ console.log(`[Lifeline] Lock holder PID ${data.pid} is zombie/stopped (state: ${procInfo}) — taking over`);
76
+ try {
77
+ process.kill(data.pid, 'SIGKILL');
78
+ }
79
+ catch { /* ignore */ }
80
+ }
81
+ else if (isWedgedSleeping) {
82
+ // Try SIGTERM with a short grace window, then SIGKILL.
83
+ console.log(`[Lifeline] Lock holder PID ${data.pid} sleeping >5min after lock write (state: ${procInfo}) — sending SIGTERM`);
84
+ try {
85
+ process.kill(data.pid, 'SIGTERM');
86
+ }
87
+ catch { /* ignore */ }
88
+ // Synchronously poll for exit up to 3s, then SIGKILL.
89
+ const killDeadline = Date.now() + 3000;
90
+ while (Date.now() < killDeadline && checkRecordedProcess(data) === 'same') {
91
+ spawnSync('/bin/sleep', ['0.25'], { timeout: 500 });
92
+ }
93
+ // Re-prove identity before escalating: the holder may have exited
94
+ // during the grace window and its pid been reused.
95
+ const afterGrace = checkRecordedProcess(data);
96
+ if (afterGrace === 'same') {
97
+ console.log(`[Lifeline] PID ${data.pid} survived SIGTERM grace — SIGKILL`);
98
+ try {
99
+ process.kill(data.pid, 'SIGKILL');
100
+ }
101
+ catch { /* ignore */ }
102
+ }
103
+ else if (afterGrace === 'unproven') {
104
+ // Identity became unreadable while the pid is still there: the
105
+ // holder may be alive — neither escalate nor take its lock.
106
+ console.log(`[Lifeline] PID ${data.pid} identity unreadable after SIGTERM grace — respecting the lock, not signalling`);
107
+ return false;
108
+ }
109
+ }
110
+ else {
111
+ // Process is alive and not a zombie — another lifeline is truly running
112
+ return false;
113
+ }
114
+ }
115
+ }
116
+ }
117
+ // Write our PID and start time
118
+ const tmpPath = `${lockPath}.${process.pid}.tmp`;
119
+ fs.writeFileSync(tmpPath, JSON.stringify({ ...ownProcessIdentity(), startedAt: new Date().toISOString() }));
120
+ fs.renameSync(tmpPath, lockPath);
121
+ return true;
122
+ }
123
+ catch (err) {
124
+ console.error(`[Lifeline] Lock acquisition failed: ${err}`);
125
+ return false;
126
+ }
127
+ }
128
+ /**
129
+ * The lifeline processes `lifeline restart` may signal: the lock holder (the
130
+ * process actually wedging the respawn) and the startup-marker pid, each kept
131
+ * ONLY while the live process at that pid is proven to be the one that wrote
132
+ * the record (same start time). Legacy records without a start time, dead
133
+ * pids and reused pids are dropped — they are never signalled.
134
+ */
135
+ export function provenLifelineRecords(lockPath, marker) {
136
+ const records = [];
137
+ try {
138
+ const lock = JSON.parse(fs.readFileSync(lockPath, 'utf-8'));
139
+ if (typeof lock?.pid === 'number')
140
+ records.push(lock);
141
+ }
142
+ catch { /* no lock file — nothing holds it */ }
143
+ if (marker && typeof marker.pid === 'number')
144
+ records.push(marker);
145
+ const seen = new Set();
146
+ return records.filter((r) => {
147
+ if (r.pid === process.pid || seen.has(r.pid))
148
+ return false;
149
+ seen.add(r.pid);
150
+ return checkRecordedProcess(r) === 'same';
151
+ });
152
+ }
153
+ //# sourceMappingURL=lifelineLock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifelineLock.js","sourceRoot":"","sources":["../../src/lifeline/lifelineLock.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@ export interface StartupMarker {
13
13
  startedAt: string;
14
14
  pid: number;
15
15
  version: string;
16
+ /** Process start time of `pid` (core/processIdentity) — lets a restart prove
17
+ * the pid is still this lifeline before signalling it. Absent on old markers. */
18
+ procStart?: number | null;
16
19
  }
17
20
  export declare function markerPath(stateDir: string): string;
18
21
  export declare function writeStartupMarker(stateDir: string, version: string): StartupMarker;
@@ -1 +1 @@
1
- {"version":3,"file":"startupMarker.d.ts","sourceRoot":"","sources":["../../src/lifeline/startupMarker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAgBnF;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAiBxE"}
1
+ {"version":3,"file":"startupMarker.d.ts","sourceRoot":"","sources":["../../src/lifeline/startupMarker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB;sFACkF;IAClF,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAiBnF;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAiBxE"}
@@ -11,6 +11,7 @@
11
11
  */
12
12
  import fs from 'node:fs';
13
13
  import path from 'node:path';
14
+ import { processStartMs } from '../core/processIdentity.js';
14
15
  export function markerPath(stateDir) {
15
16
  return path.join(stateDir, 'lifeline-started-at.json');
16
17
  }
@@ -19,6 +20,7 @@ export function writeStartupMarker(stateDir, version) {
19
20
  startedAt: new Date().toISOString(),
20
21
  pid: process.pid,
21
22
  version,
23
+ procStart: processStartMs(process.pid),
22
24
  };
23
25
  const p = markerPath(stateDir);
24
26
  const tmp = `${p}.${process.pid}.tmp`;
@@ -1 +1 @@
1
- {"version":3,"file":"startupMarker.js","sourceRoot":"","sources":["../../src/lifeline/startupMarker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAQ7B,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,OAAe;IAClE,MAAM,MAAM,GAAkB;QAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO;KACR,CAAC;IACF,MAAM,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IACtC,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IACE,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;YACpC,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAClC,CAAC;YACD,OAAO,MAAuB,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"startupMarker.js","sourceRoot":"","sources":["../../src/lifeline/startupMarker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAW5D,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,OAAe;IAClE,MAAM,MAAM,GAAkB;QAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO;QACP,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;KACvC,CAAC;IACF,MAAM,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IACtC,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACxE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IACE,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;YACpC,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAClC,CAAC;YACD,OAAO,MAAuB,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -40,6 +40,12 @@ export type ProcessClassification = 'tracked' | 'instar-orphan' | 'external';
40
40
  export interface ClassifiedProcess extends FrameworkProcess {
41
41
  classification: ProcessClassification;
42
42
  reason: string;
43
+ /**
44
+ * For an `instar-orphan`: the process start time (epoch ms) read when its
45
+ * ownership was established. The automatic kill signals only while the pid
46
+ * still has this start time; null (unreadable) never authorizes a signal.
47
+ */
48
+ procStart?: number | null;
43
49
  }
44
50
  export interface ReaperReport {
45
51
  timestamp: string;
@@ -110,7 +116,12 @@ export declare class OrphanProcessReaper extends EventEmitter {
110
116
  */
111
117
  private isClaudeCodeProcess;
112
118
  /**
113
- * List all tmux sessions and map pane PIDs to session names.
119
+ * List all tmux sessions and map LIVE pane PIDs to session names.
120
+ *
121
+ * A dead pane retained by remain-on-exit keeps reporting its old pane_pid,
122
+ * which the kernel may already have handed to an unrelated process — so only
123
+ * panes tmux reports as live (pane_dead=0) are mapped; dead or indeterminate
124
+ * panes map nothing.
114
125
  */
115
126
  private listAllTmuxSessions;
116
127
  /**
@@ -126,6 +137,15 @@ export declare class OrphanProcessReaper extends EventEmitter {
126
137
  private classifyProcesses;
127
138
  private getParentPid;
128
139
  private getProcessCommand;
140
+ /**
141
+ * SIGTERM `pid`, then SIGKILL after 5 s if the same process is still there.
142
+ *
143
+ * `expectedStart` is the start time observed when ownership was established
144
+ * (automatic orphan reaping): the SIGTERM is sent only if the live process
145
+ * still has exactly that start time — null or a mismatch sends nothing.
146
+ * `'operator-requested'` is the explicit user-command path
147
+ * (killExternalProcess), where the user named the pid.
148
+ */
129
149
  private killProcess;
130
150
  /**
131
151
  * §P0 #6 work-check: does the process have at least one active child? Used as
@@ -1 +1 @@
1
- {"version":3,"file":"OrphanProcessReaper.d.ts","sourceRoot":"","sources":["../../src/monitoring/OrphanProcessReaper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OrphanProcessReaper.d.ts","sourceRoot":"","sources":["../../src/monitoring/OrphanProcessReaper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAapF,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,6EAA6E;IAC7E,SAAS,EAAE,qBAAqB,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAE7C,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;AAE7E,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,cAAc,EAAE,qBAAqB,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yFAAyF;IACzF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,4EAA4E;IAC5E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+EAA+E;IAC/E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,2FAA2F;IAC3F,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,+CAA+C;IAC/C,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;AAOD,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,MAAM,CAAC,0BAA0B,CAAoB;gBAG3D,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,cAAc,EAC9B,YAAY,GAAE,kBAAuB;IAUvC,KAAK,IAAI,IAAI;IASb,IAAI,IAAI,IAAI;IAOZ,aAAa,IAAI,YAAY,GAAG,IAAI;IAIpC;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;YAMrB,IAAI;IA4JlB;;;;;;;;OAQG;IACH,OAAO,CAAC,yBAAyB;IAwDjC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAwHzB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,iBAAiB;IASzB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IA6BnB;;;;;;;;;OASG;IACH,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAwBvE;;OAEG;IACH,eAAe,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IA6BzE,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,cAAc;CAUvB"}
@@ -20,6 +20,7 @@
20
20
  import { spawnSync } from 'node:child_process';
21
21
  import { EventEmitter } from 'node:events';
22
22
  import { listProcessSignals, matchProcessSignal, } from './frameworkProcessSignals.js';
23
+ import { processStartMs } from '../core/processIdentity.js';
23
24
  /** Drop-in replacement for execSync that avoids its security concerns. */
24
25
  function shellExec(cmd, timeout = 5000) {
25
26
  return spawnSync('/bin/sh', ['-c', cmd], { encoding: 'utf-8', timeout }).stdout ?? '';
@@ -111,7 +112,15 @@ export class OrphanProcessReaper extends EventEmitter {
111
112
  console.log(`[OrphanReaper] ${msg}`);
112
113
  continue;
113
114
  }
114
- this.killProcess(orphan.pid);
115
+ // Signal only the process whose ownership this scan established: same
116
+ // pid AND same start time. Unreadable or changed identity → no signal,
117
+ // and the tmux session is left alone too.
118
+ if (!this.killProcess(orphan.pid, orphan.procStart ?? null)) {
119
+ const msg = `Skipped orphan PID ${orphan.pid} (tmux: ${orphan.tmuxSession || 'none'}) — process identity unreadable or changed since ownership was established, not signalling`;
120
+ report.actionsPerformed.push(msg);
121
+ console.log(`[OrphanReaper] ${msg}`);
122
+ continue;
123
+ }
115
124
  // Also kill the tmux session if it exists — but NEVER the server session.
116
125
  // §P0 #6 route through ReapAuthority when the orphan's tmuxSession
117
126
  // matches a CURRENTLY-tracked session (a race between this scan and a
@@ -128,7 +137,9 @@ export class OrphanProcessReaper extends EventEmitter {
128
137
  finalStatus: 'killed',
129
138
  });
130
139
  }
131
- else {
140
+ else if (this.sessionManager.ownsLiveTmuxSession(orphan.tmuxSession)) {
141
+ // Re-proven just now: the session under this name is still the
142
+ // incarnation this agent spawned (not a replacement under the name).
132
143
  this.killTmuxSession(orphan.tmuxSession);
133
144
  }
134
145
  }
@@ -283,17 +294,22 @@ export class OrphanProcessReaper extends EventEmitter {
283
294
  return matchProcessSignal(command)?.framework === 'claude-code';
284
295
  }
285
296
  /**
286
- * List all tmux sessions and map pane PIDs to session names.
297
+ * List all tmux sessions and map LIVE pane PIDs to session names.
298
+ *
299
+ * A dead pane retained by remain-on-exit keeps reporting its old pane_pid,
300
+ * which the kernel may already have handed to an unrelated process — so only
301
+ * panes tmux reports as live (pane_dead=0) are mapped; dead or indeterminate
302
+ * panes map nothing.
287
303
  */
288
304
  listAllTmuxSessions() {
289
305
  const pidToSession = new Map();
290
306
  try {
291
- const output = shellExec(`${this.config.sessions.tmuxPath} list-panes -a -F "#{session_name}||#{pane_pid}" 2>/dev/null`).trim();
307
+ const output = shellExec(`${this.config.sessions.tmuxPath} list-panes -a -F "#{session_name}||#{pane_pid}||#{pane_dead}" 2>/dev/null`).trim();
292
308
  if (!output)
293
309
  return pidToSession;
294
310
  for (const line of output.split('\n')) {
295
- const [sessionName, pidStr] = line.split('||');
296
- if (sessionName && pidStr) {
311
+ const [sessionName, pidStr, paneDead] = line.split('||');
312
+ if (sessionName && pidStr && paneDead === '0') {
297
313
  const pid = parseInt(pidStr, 10);
298
314
  if (!isNaN(pid)) {
299
315
  pidToSession.set(pid, sessionName);
@@ -345,11 +361,25 @@ export class OrphanProcessReaper extends EventEmitter {
345
361
  // This replaces the old prefix-startsWith match per
346
362
  // UNIFIED-SESSION-LIFECYCLE §P0 #6 — a user-created session that happens
347
363
  // to share the project prefix is NOT classified as orphan.
364
+ //
365
+ // A historical NAME match is still not ownership: another agent, a test
366
+ // instance or a user can create a session under a name this agent once
367
+ // used. Only a live session carrying the INSTAR_SESSION_ID of this
368
+ // agent's own record for that name is the incarnation this agent
369
+ // spawned; anything else is reported, never auto-killed.
348
370
  if (knownInstarSessions.has(tmuxSession)) {
371
+ if (this.sessionManager.ownsLiveTmuxSession(tmuxSession)) {
372
+ return {
373
+ ...proc,
374
+ classification: 'instar-orphan',
375
+ reason: `In instar-owned tmux "${tmuxSession}" but not currently tracked by SessionManager`,
376
+ procStart: processStartMs(proc.pid),
377
+ };
378
+ }
349
379
  return {
350
380
  ...proc,
351
- classification: 'instar-orphan',
352
- reason: `In instar-known tmux "${tmuxSession}" but not currently tracked by SessionManager`,
381
+ classification: 'external',
382
+ reason: `In tmux "${tmuxSession}", a name instar once used, but the session carries no matching INSTAR_SESSION_ID — ownership unproven, report only`,
353
383
  };
354
384
  }
355
385
  // In some other tmux session — likely user's own
@@ -425,13 +455,30 @@ export class OrphanProcessReaper extends EventEmitter {
425
455
  return null;
426
456
  }
427
457
  }
428
- killProcess(pid) {
458
+ /**
459
+ * SIGTERM `pid`, then SIGKILL after 5 s if the same process is still there.
460
+ *
461
+ * `expectedStart` is the start time observed when ownership was established
462
+ * (automatic orphan reaping): the SIGTERM is sent only if the live process
463
+ * still has exactly that start time — null or a mismatch sends nothing.
464
+ * `'operator-requested'` is the explicit user-command path
465
+ * (killExternalProcess), where the user named the pid.
466
+ */
467
+ killProcess(pid, expectedStart) {
429
468
  try {
469
+ // Record which process this is before signalling: the SIGKILL below is
470
+ // sent only if the pid still has the same start time — once the target
471
+ // exits, its pid can be handed to an unrelated process within the grace.
472
+ const startedAt = processStartMs(pid);
473
+ if (expectedStart !== 'operator-requested' && (expectedStart === null || startedAt !== expectedStart)) {
474
+ return false;
475
+ }
430
476
  process.kill(pid, 'SIGTERM');
431
477
  // Give it 5 seconds, then SIGKILL if needed
432
478
  setTimeout(() => {
433
479
  try {
434
- process.kill(pid, 0); // Check if still alive
480
+ if (startedAt === null || processStartMs(pid) !== startedAt)
481
+ return; // exited (or pid reused)
435
482
  process.kill(pid, 'SIGKILL');
436
483
  console.log(`[OrphanReaper] SIGKILL sent to PID ${pid} (SIGTERM wasn't enough)`);
437
484
  }
@@ -490,7 +537,7 @@ export class OrphanProcessReaper extends EventEmitter {
490
537
  if (!process) {
491
538
  return { success: false, message: `PID ${pid} is not in the external process list.` };
492
539
  }
493
- const killed = this.killProcess(pid);
540
+ const killed = this.killProcess(pid, 'operator-requested');
494
541
  if (process.tmuxSession) {
495
542
  this.killTmuxSession(process.tmuxSession);
496
543
  }
@@ -512,7 +559,7 @@ export class OrphanProcessReaper extends EventEmitter {
512
559
  const details = [];
513
560
  let freedKB = 0;
514
561
  for (const proc of report.external) {
515
- const killed = this.killProcess(proc.pid);
562
+ const killed = this.killProcess(proc.pid, 'operator-requested');
516
563
  if (proc.tmuxSession) {
517
564
  this.killTmuxSession(proc.tmuxSession);
518
565
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OrphanProcessReaper.js","sourceRoot":"","sources":["../../src/monitoring/OrphanProcessReaper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OrphanProcessReaper.js","sourceRoot":"","sources":["../../src/monitoring/OrphanProcessReaper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PipeSessionSpawner.d.ts","sourceRoot":"","sources":["../../src/threadline/PipeSessionSpawner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAgDpF,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,+DAA+D;IAC/D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,EAAE,qBAAqB,CAAC;IACjC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACzD;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,EAAE,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IACzD;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA4BD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,oBAAoB,CAAA;CAAE,GAClE,OAAO,CAAC,MAAM,GAAG,aAAa,CAAC,CA6BjC;AAID;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CA0B7F;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,oBAAoB,CAAA;CAAE,GAChD,OAAO,CAAC,MAAM,CAAC,CA8BjB;AAID,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAAK;gBAEd,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAYrE;;;OAGG;IACH,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAwBpF;;;OAGG;IACH,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAOpD;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAuL5F;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB;;OAEG;IACH,OAAO,CAAC,eAAe;IA+BvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,UAAU,IAAI;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACxE;IAeD;;OAEG;IACH,OAAO,IAAI,IAAI;CAKhB"}
1
+ {"version":3,"file":"PipeSessionSpawner.d.ts","sourceRoot":"","sources":["../../src/threadline/PipeSessionSpawner.ts"],"names":[],"mappings":"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"}