teamshare-bridge 0.22.1 → 0.22.2

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.
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.runDaemon = exports.CRASH_BACKOFF_MS = exports.AUTOSTART_TASK_NAME = exports.LAUNCH_LOG_PATH = exports.LOG_PATH = void 0;
3
+ exports.runDaemon = exports.SINGLETON_SWEEP_EVERY_TICKS = exports.CRASH_BACKOFF_MS = exports.pidInfo = exports.listOurDaemonPids = exports.isOurDaemonProcess = exports.AUTOSTART_TASK_NAME = exports.LAUNCH_LOG_PATH = exports.LOG_PATH = void 0;
4
4
  exports.runningPid = runningPid;
5
5
  exports.isPortAnswering = isPortAnswering;
6
- exports.listOurDaemonPids = listOurDaemonPids;
7
6
  exports.stopAllDaemons = stopAllDaemons;
8
7
  exports.verifyRunningPid = verifyRunningPid;
9
8
  exports.startDaemon = startDaemon;
@@ -79,13 +78,7 @@ function runningPid() {
79
78
  }
80
79
  /** True when a TeamShare daemon answers /ping with ok:true on `port` (sync probe). */
81
80
  function probeHealthy(port) {
82
- const res = (0, node_child_process_1.spawnSync)(process.execPath, [
83
- '-e',
84
- `fetch('http://127.0.0.1:${port}/ping',{signal:AbortSignal.timeout(2000)})` +
85
- '.then(async r=>{try{const b=await r.json();process.exit(b&&b.ok===true?0:1)}catch{process.exit(1)}})' +
86
- '.catch(()=>process.exit(1))',
87
- ], { stdio: 'ignore', timeout: 5000, windowsHide: true });
88
- return res.status === 0;
81
+ return (0, daemon_instance_1.probePortAnswering)(port);
89
82
  }
90
83
  /**
91
84
  * True when a TeamShare daemon answers /ping on `port` (for honest status).
@@ -101,6 +94,10 @@ function probeHealthy(port) {
101
94
  * fallback port), so a healthy daemon is never mistaken for a zombie - and
102
95
  * because it is exclusive, "some daemon is healthy" and "the daemon I asked
103
96
  * about is healthy" cannot disagree.
97
+ *
98
+ * It is NOT, however, proof that no SECOND daemon is running: that question is
99
+ * answered by process enumeration in `startDaemon`/`stopDaemon`, which is the
100
+ * only place that can see a daemon whose lock was lost.
104
101
  */
105
102
  function daemonHealthy() {
106
103
  return (0, daemon_instance_1.resolveDaemonInstanceSync)() !== null;
@@ -109,70 +106,26 @@ function daemonHealthy() {
109
106
  function isPortAnswering(port) {
110
107
  return probeHealthy(port);
111
108
  }
112
- function pidInfo(pid) {
113
- try {
114
- if (process.platform === 'win32') {
115
- const res = (0, node_child_process_1.spawnSync)('powershell.exe', [
116
- '-NoProfile',
117
- '-NonInteractive',
118
- '-Command',
119
- '$n=(Get-Process -Id ' +
120
- pid +
121
- ' -ErrorAction SilentlyContinue).ProcessName; ' +
122
- '$c=(Get-CimInstance Win32_Process -Filter "ProcessId=' +
123
- pid +
124
- '" -ErrorAction SilentlyContinue).CommandLine; ' +
125
- '"$n`t$c"',
126
- ], { stdio: 'pipe', encoding: 'utf8', timeout: 5_000, windowsHide: true });
127
- const out = (res.stdout ?? '').trim();
128
- if (!out)
129
- return null;
130
- const tab = out.indexOf('\t');
131
- const name = (tab >= 0 ? out.slice(0, tab) : out).trim();
132
- const cmdline = tab >= 0 ? out.slice(tab + 1).trim() : '';
133
- return { name: name || null, cmdline: cmdline || null };
134
- }
135
- const res = (0, node_child_process_1.spawnSync)('ps', ['-p', String(pid), '-o', 'args='], {
136
- stdio: 'pipe',
137
- encoding: 'utf8',
138
- timeout: 5_000,
139
- });
140
- const out = (res.stdout ?? '').trim();
141
- if (!out || out === 'args=')
142
- return null;
143
- return { name: null, cmdline: out };
144
- }
145
- catch {
146
- return null;
147
- }
148
- }
149
109
  /**
150
- * True only when the pid is verifiably a TeamShare daemon process.
151
- * `node …/index.js daemon` (or a teamshare path containing `daemon`).
152
- * false = foreign process (PID reuse) — NEVER kill it, just clear the pid file.
153
- * null = unqueryable/gone — treated as not-ours for killing purposes.
110
+ * Best-effort identity of a pid: image name + command line. null = process
111
+ * gone or unqueryable - never treat as "ours to kill".
112
+ *
113
+ * Re-exported from `daemon-instance`, which owns process identity for the whole
114
+ * daemon lifecycle: `listOurDaemonPids` and the boot guard must agree with
115
+ * `stopDaemon` about what "our daemon" means, and two copies of that test is
116
+ * how they drift apart.
154
117
  */
155
- function isOurDaemonProcess(pid) {
156
- const info = pidInfo(pid);
157
- if (!info)
158
- return null;
159
- // Name first: a recycled pid held by a foreign process (GameInputSvc,
160
- // services, …) is NEVER ours, even when its command line is unqueryable.
161
- if (info.name && !/^node(?:\.exe)?$/i.test(info.name))
162
- return false;
163
- if (info.cmdline) {
164
- return /(index\.js|teamshare)/i.test(info.cmdline) && /\bdaemon\b/i.test(info.cmdline);
165
- }
166
- // node-ish but cmdline denied — caller falls back to runtime.json.
167
- return null;
168
- }
118
+ var daemon_instance_2 = require("./daemon-instance");
119
+ Object.defineProperty(exports, "isOurDaemonProcess", { enumerable: true, get: function () { return daemon_instance_2.isOurDaemonProcess; } });
120
+ Object.defineProperty(exports, "listOurDaemonPids", { enumerable: true, get: function () { return daemon_instance_2.listOurDaemonPids; } });
121
+ Object.defineProperty(exports, "pidInfo", { enumerable: true, get: function () { return daemon_instance_2.pidInfo; } });
169
122
  /**
170
123
  * Identity decision before killing a pid from the pid file:
171
124
  * ours (cmdline match, or runtime.json agrees while cmdline is unqueryable)
172
125
  * → kill allowed; anything else → clear the stale file, kill nothing.
173
126
  */
174
127
  function pidIsOurDaemon(pid) {
175
- const identity = isOurDaemonProcess(pid);
128
+ const identity = (0, daemon_instance_1.isOurDaemonProcess)(pid);
176
129
  if (identity === true)
177
130
  return true;
178
131
  if (identity === false)
@@ -201,125 +154,41 @@ function clearForeignPidFile(pid) {
201
154
  /* best-effort */
202
155
  }
203
156
  }
204
- /**
205
- * Every pid on this machine that is VERIFIABLY a TeamShare daemon (2026-10).
206
- *
207
- * `daemon.lock` is NOT good enough on its own, and that is the whole reason this
208
- * exists. During the incident that motivated it, `daemon.lock` held pid 24148
209
- * (already dead) while THREE real daemons ran on three different ports. Anything
210
- * that trusts the lock alone — `stopDaemon`, and therefore the auto-upgrade —
211
- * concludes "daemon is not running", skips the stop, and runs `npm i -g` over a
212
- * directory that live processes still have open. On Windows that aborts the
213
- * install with EBUSY on a mapped native DLL and leaves the install HALF-WRITTEN:
214
- * `socket.io-client/build/cjs/index.js` never gets created, and every subsequent
215
- * daemon boot dies at require.
216
- *
217
- * A pid is returned only when its command line matches `isOurDaemonProcess`, so a
218
- * recycled pid held by an unrelated program is never returned and can never be
219
- * killed. The supervisor is excluded by the same test (its argv says `supervisor`,
220
- * not `daemon`) — an upgrade stops daemons, never the watchdog that restarts them.
221
- *
222
- * Unqueryable processes (access denied) are simply absent from the list; callers
223
- * treat "cannot enumerate" as "cannot confirm", which is the safe direction.
224
- */
225
- function listOurDaemonPids() {
226
- const out = (() => {
227
- if (process.platform === 'win32') {
228
- const res = (0, node_child_process_1.spawnSync)('powershell.exe', [
229
- '-NoProfile',
230
- '-NonInteractive',
231
- '-Command',
232
- 'Get-CimInstance Win32_Process -Filter "Name=\'node.exe\'" | ' +
233
- 'ForEach-Object { "$($_.ProcessId)`t$($_.CommandLine)" }',
234
- ], { stdio: 'pipe', encoding: 'utf8', timeout: 10_000, windowsHide: true });
235
- return res.stdout ?? '';
236
- }
237
- const res = (0, node_child_process_1.spawnSync)('ps', ['-eo', 'pid=,args='], {
238
- stdio: 'pipe',
239
- encoding: 'utf8',
240
- timeout: 10_000,
241
- });
242
- return res.stdout ?? '';
243
- })();
244
- const pids = [];
245
- for (const line of out.split(/\r?\n/)) {
246
- const tab = line.indexOf('\t');
247
- const pid = Number(tab >= 0 ? line.slice(0, tab) : line.slice(0, line.indexOf(' ')).trim());
248
- if (!Number.isInteger(pid) || pid <= 0)
249
- continue;
250
- // Re-use the single-process identity test so "verified" means exactly the same
251
- // thing here as it does everywhere else a pid is about to be killed.
252
- if (isOurDaemonProcess(pid) === true)
253
- pids.push(pid);
254
- }
255
- return pids;
256
- }
257
- /** Terminate one verified daemon pid: SIGTERM, then force on Windows. */
258
- function killDaemonPid(pid, timeoutMs) {
259
- try {
260
- process.kill(pid);
261
- }
262
- catch {
263
- /* already gone */
264
- }
265
- const deadline = Date.now() + timeoutMs;
266
- while (pidAlive(pid) && Date.now() < deadline) {
267
- /* brief wait for a clean exit */
268
- }
269
- if (!pidAlive(pid))
270
- return true;
271
- if (process.platform === 'win32') {
272
- // Windows: a detached console node.exe has no window to close politely, so
273
- // WM_CLOSE is not an option and /F is the only way.
274
- (0, node_child_process_1.spawnSync)('taskkill', ['/pid', String(pid), '/f'], {
275
- stdio: 'ignore',
276
- windowsHide: true,
277
- });
278
- }
279
- else {
280
- try {
281
- process.kill(pid, 'SIGKILL');
282
- }
283
- catch {
284
- /* best-effort */
285
- }
286
- }
287
- const hard = Date.now() + 3000;
288
- while (pidAlive(pid) && Date.now() < hard) {
289
- /* wait for the kill to land */
290
- }
291
- return !pidAlive(pid);
292
- }
293
157
  /**
294
158
  * Stop EVERY verified daemon on this machine, not just the one in the lock.
295
159
  *
296
- * Exists for the auto-upgrade, which must not write over a directory a live
297
- * process still has mapped (see `listOurDaemonPids`). Returns the pids it could
298
- * NOT kill, so the caller can ABORT rather than proceed — a half-installed bridge
299
- * is strictly worse than an out-of-date one.
160
+ * The auto-upgrade needs this (it must not write over a directory a live process
161
+ * still has mapped), and so does plain `stop`: a lock-only `stop` is what let
162
+ * three daemons survive a "daemon is not running" and then break the next
163
+ * `npm i -g` with EBUSY. Returns the pids it could NOT kill so callers can
164
+ * ABORT rather than proceed — a half-installed bridge is strictly worse than an
165
+ * out-of-date one.
300
166
  */
301
167
  function stopAllDaemons() {
302
168
  const stopped = [];
303
169
  const survivors = [];
304
- for (const pid of listOurDaemonPids()) {
305
- if (killDaemonPid(pid, 5000))
170
+ for (const pid of (0, daemon_instance_1.listOurDaemonPids)()) {
171
+ if ((0, daemon_instance_1.killDaemonPid)(pid, 5000))
306
172
  stopped.push(pid);
307
173
  else
308
174
  survivors.push(pid);
309
175
  }
310
- // The lock/runtime files describe a daemon that no longer exists either way;
311
- // leaving a stale one behind is what made the next `stopDaemon` a no-op.
312
- try {
313
- (0, node_fs_1.rmSync)(PID_PATH, { force: true });
314
- }
315
- catch {
316
- /* already gone */
317
- }
318
- try {
319
- (0, daemon_instance_1.clearDaemonLock)();
320
- }
321
- catch {
322
- /* already gone */
176
+ // Only clear the files when the machine is genuinely free. Clearing them while
177
+ // a survivor is still running is precisely how a live daemon becomes invisible
178
+ // and the next start piles a second one on top of it.
179
+ if (survivors.length === 0) {
180
+ try {
181
+ (0, node_fs_1.rmSync)(PID_PATH, { force: true });
182
+ }
183
+ catch {
184
+ /* already gone */
185
+ }
186
+ try {
187
+ (0, daemon_instance_1.clearDaemonLock)();
188
+ }
189
+ catch {
190
+ /* already gone */
191
+ }
323
192
  }
324
193
  const message = survivors.length > 0
325
194
  ? `${stopped.length} stopped, ${survivors.length} could not be stopped (${survivors.join(', ')})`
@@ -345,48 +214,51 @@ function verifyRunningPid() {
345
214
  * `start`: spawns the daemon detached (stdio -> ~/.teamshare/daemon.log) and
346
215
  * records the pid. `daemon` stays the foreground alias for debugging.
347
216
  *
348
- * IMP-9xx zombie takeover: a pid-file hit alone no longer refuses to start -
349
- * the instance must also answer /ping. Alive-but-wedged daemons (network
350
- * stack wedged, event loop stuck) are killed and replaced so `start` always
351
- * yields a WORKING daemon.
217
+ * ONE DAEMON, ALWAYS (2026-10). The old version asked the pid file one question
218
+ * — "is the pid in the file healthy?" — and that is not the question that keeps
219
+ * a machine clean. A daemon holding no lock (lock expired after 24h, cleared by
220
+ * a half-written install, unreadable) is invisible to it, so every 30s the
221
+ * watchdog answered "no daemon" and spawned another: three were alive at once,
222
+ * and `npm i -g` over their still-mapped native DLL failed with EBUSY and left
223
+ * the bridge unusable.
224
+ *
225
+ * So the question is now "which verified daemon processes exist, and does one of
226
+ * them answer?" (`reconcileSingleton`), and its three answers are the only
227
+ * outcomes:
228
+ * - a healthy daemon is already there -> adopt it and return it
229
+ * - processes exist but nothing answers -> stop them all, spawn one
230
+ * - nothing at all -> spawn one
352
231
  */
353
232
  function startDaemon(port) {
354
- const existing = runningPid();
355
- if (existing !== null) {
356
- // The lock already records the BOUND port, so a fallback-bound daemon is
357
- // recognised as healthy even when config.port is busy.
358
- if (daemonHealthy()) {
359
- return { started: false, pid: existing, message: `daemon already running (pid ${existing})` };
360
- }
361
- // Identity guard: only kill a pid we can VERIFY is our daemon — a
362
- // recycled pid pointing at an innocent process must never be taskkill'd.
363
- if (!pidIsOurDaemon(existing)) {
364
- clearForeignPidFile(existing);
365
- // Fall through: spawn a fresh daemon (the foreign pid does not own our probe port).
233
+ const recon = (0, daemon_instance_1.reconcileSingleton)();
234
+ if (recon.decision.action === 'keep' && recon.decision.keep !== null) {
235
+ return {
236
+ started: false,
237
+ pid: recon.decision.keep,
238
+ message: `daemon already running (pid ${recon.decision.keep})${recon.stopped.length > 0 ? ` - stopped ${recon.stopped.length} duplicate(s): ${recon.stopped.join(', ')}` : ''}`,
239
+ };
240
+ }
241
+ if (recon.decision.action === 'blocked') {
242
+ return { started: false, message: recon.message };
243
+ }
244
+ if (recon.stopped.length > 0 || recon.decision.action === 'replace') {
245
+ // Logged, not swallowed: a machine that had to be reconciled is exactly the
246
+ // machine whose next `npm i -g` needs looking at.
247
+ try {
248
+ (0, node_fs_1.appendFileSync)(exports.LOG_PATH, `[${new Date().toISOString()}] [service] singleton reconcile: ${recon.message}\n`, 'utf8');
366
249
  }
367
- else {
368
- // Wedged zombie - replace it.
369
- try {
370
- process.kill(existing);
371
- }
372
- catch {
373
- /* already gone */
374
- }
375
- const deadline = Date.now() + 3000;
376
- while (pidAlive(existing) && Date.now() < deadline) {
377
- /* brief wait */
378
- }
379
- if (pidAlive(existing)) {
380
- (0, node_child_process_1.spawnSync)('taskkill', ['/pid', String(existing), '/f'], { stdio: 'ignore', windowsHide: true });
381
- }
382
- try {
383
- (0, node_fs_1.rmSync)(PID_PATH);
384
- }
385
- catch {
386
- /* best-effort */
387
- }
250
+ catch {
251
+ /* best-effort */
388
252
  }
389
253
  }
254
+ if (recon.survivors.length > 0) {
255
+ return {
256
+ started: false,
257
+ message: `refusing to start: ${recon.survivors.length} TeamShare daemon process(es) ` +
258
+ `(${recon.survivors.join(', ')}) could not be stopped. Installing/starting over a ` +
259
+ `live tree is what produces an unusable bridge - retry once they are gone.`,
260
+ };
261
+ }
390
262
  const args = [(0, node_path_1.join)(__dirname, 'index.js'), 'daemon'];
391
263
  if (port)
392
264
  args.push('--port', String(port));
@@ -500,6 +372,15 @@ const CRASH_LOOP_THRESHOLD = 3;
500
372
  * bridge back within one cycle instead of needing a reboot.
501
373
  */
502
374
  exports.CRASH_BACKOFF_MS = [0, 30_000, 60_000, 120_000, 300_000];
375
+ /**
376
+ * Healthy watchdog ticks between duplicate sweeps (~5 min at the 30s cadence).
377
+ *
378
+ * Exported for the unit test. Enumerating processes is not free (one PowerShell
379
+ * call), so it must not run every tick — but it must run periodically, because
380
+ * "one healthy lock" and "one daemon" are different facts and only the second
381
+ * one is the invariant.
382
+ */
383
+ exports.SINGLETON_SWEEP_EVERY_TICKS = 10;
503
384
  /** The wait before attempt `streak + 1`, clamped to the table. */
504
385
  function crashBackoffMs(streak) {
505
386
  if (streak <= 0)
@@ -515,6 +396,8 @@ function runSupervisor(intervalMs = 30_000) {
515
396
  let lastAttemptAt = 0;
516
397
  /** One diagnostic per crash-loop episode, not one per attempt. */
517
398
  let crashLoopReported = false;
399
+ /** Healthy ticks since the last duplicate sweep. */
400
+ let ticksSinceSweep = 0;
518
401
  const appendWatchdogLog = (line) => {
519
402
  try {
520
403
  (0, node_fs_1.appendFileSync)(exports.LOG_PATH, `[${new Date().toISOString()}] [watchdog] ${line}\n`, 'utf8');
@@ -555,6 +438,32 @@ function runSupervisor(intervalMs = 30_000) {
555
438
  }
556
439
  process.exit(1);
557
440
  });
441
+ /**
442
+ * A healthy lock does NOT mean the machine holds one daemon — only that one of
443
+ * them owns the lock. This is the sweep that makes "exactly one" true over
444
+ * time instead of only at the moment someone runs `start`.
445
+ *
446
+ * Cost matters: it runs on the 30s tick, so the steady state is ONE process
447
+ * enumeration every `SWEEP_EVERY_HEALTHY_TICKS` ticks (~5 min), and the
448
+ * expensive part (port probes + kills) only runs when a duplicate is actually
449
+ * found. Without it, a lockless second daemon — the exact state this machine
450
+ * sat in for hours — survives every tick, because a healthy lock makes the
451
+ * watchdog return early.
452
+ */
453
+ const sweepDuplicates = () => {
454
+ try {
455
+ const live = (0, daemon_instance_1.listOurDaemonPids)();
456
+ if (live.length <= 1)
457
+ return;
458
+ const recon = (0, daemon_instance_1.reconcileSingleton)();
459
+ appendWatchdogLog(recon.stopped.length > 0 || recon.decision.action !== 'keep'
460
+ ? `singleton sweep: ${recon.message}`
461
+ : `singleton sweep found ${live.length} daemons but kept ${recon.decision.keep} - ${recon.message}`);
462
+ }
463
+ catch {
464
+ /* never die */
465
+ }
466
+ };
558
467
  const tick = () => {
559
468
  try {
560
469
  // A silent auto-upgrade helper owns the machine while it runs
@@ -571,8 +480,17 @@ function runSupervisor(intervalMs = 30_000) {
571
480
  crashStreak = 0;
572
481
  crashLoopReported = false;
573
482
  }
483
+ // Periodic duplicate sweep: a healthy lock says nothing about a SECOND,
484
+ // lockless daemon, and this machine ran three for hours because every
485
+ // tick returned early on that healthy lock.
486
+ ticksSinceSweep += 1;
487
+ if (ticksSinceSweep >= exports.SINGLETON_SWEEP_EVERY_TICKS) {
488
+ ticksSinceSweep = 0;
489
+ sweepDuplicates();
490
+ }
574
491
  return;
575
492
  }
493
+ ticksSinceSweep = 0;
576
494
  // ── CRASH-LOOP DETECTION (2026-10) ───────────────────────────────────
577
495
  // A daemon that dies within seconds of starting is not a daemon to keep
578
496
  // respawning — it is a broken INSTALL. Observed: 262 restarts at an exact
@@ -628,53 +546,38 @@ function runSupervisor(intervalMs = 30_000) {
628
546
  tick();
629
547
  setInterval(tick, intervalMs);
630
548
  }
631
- /** `stop`: terminates the live daemon and clears the pid file. */
549
+ /**
550
+ * `stop`: terminates EVERY verified daemon on this machine and clears the files.
551
+ *
552
+ * It used to signal exactly one pid — the one in `daemon.lock` — and report
553
+ * `daemon is not running` whenever that file was stale. That is precisely how
554
+ * three daemons survived a `stop` on this machine: the human ran it, saw
555
+ * "daemon is not running", and the three survivors kept their native DLLs
556
+ * mapped, so the next `npm i -g` aborted with EBUSY and left the install
557
+ * half-written (every later boot died on a missing
558
+ * `socket.io-client/build/cjs/index.js`).
559
+ *
560
+ * `stop` now asks the OS, not the file. `restart` inherits that, which is why a
561
+ * restart can no longer leave the old daemon behind to collide with the new one.
562
+ */
632
563
  function stopDaemon() {
633
- const pid = runningPid();
634
- if (pid === null) {
635
- try {
636
- (0, node_fs_1.rmSync)(PID_PATH);
637
- }
638
- catch {
639
- /* already gone */
640
- }
564
+ const claimed = runningPid();
565
+ if (claimed !== null && !pidIsOurDaemon(claimed)) {
566
+ // Identity guard: never signal a pid that is not verifiably our daemon. The
567
+ // stale file is cleared, and we still go on to enumerate - the real daemon
568
+ // may be a different, lockless pid.
569
+ clearForeignPidFile(claimed);
570
+ }
571
+ const result = stopAllDaemons();
572
+ if (result.stopped.length === 0 && result.survivors.length === 0) {
641
573
  return { stopped: false, message: 'daemon is not running' };
642
574
  }
643
- // Identity guard: never signal a pid that is not verifiably our daemon.
644
- if (!pidIsOurDaemon(pid)) {
645
- clearForeignPidFile(pid);
646
- return { stopped: false, message: `pid ${pid} is not a TeamShare daemon (PID reuse) - pid file cleared, nothing killed` };
647
- }
648
- try {
649
- process.kill(pid);
650
- }
651
- catch {
652
- /* best-effort */
653
- }
654
- const deadline = Date.now() + 5000;
655
- while (pidAlive(pid) && Date.now() < deadline) {
656
- /* wait briefly for the daemon to exit */
657
- }
658
- if (pidAlive(pid)) {
659
- if (process.platform === 'win32') {
660
- // Windows: force kill via taskkill.
661
- (0, node_child_process_1.spawnSync)('taskkill', ['/pid', String(pid), '/f'], { stdio: 'ignore', windowsHide: true });
662
- }
663
- else {
664
- // POSIX: SIGKILL if SIGTERM didn't work.
665
- try {
666
- process.kill(pid, 'SIGKILL');
667
- }
668
- catch { /* best-effort */ }
669
- }
670
- }
671
- try {
672
- (0, node_fs_1.rmSync)(PID_PATH);
673
- }
674
- catch {
675
- /* already gone */
676
- }
677
- return { stopped: true, message: `daemon stopped (pid ${pid})` };
575
+ return {
576
+ stopped: result.survivors.length === 0,
577
+ message: result.survivors.length > 0
578
+ ? `${result.message} - the machine is NOT clean; do not run npm install -g teamshare-bridge until they are gone`
579
+ : `daemon stopped (${result.stopped.length} process(es): ${result.stopped.join(', ')})`,
580
+ };
678
581
  }
679
582
  /** `restart`: stop + start. */
680
583
  function restartDaemon(port) {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/bridge/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/bridge/service.ts"],"names":[],"mappings":"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"}