nightshift-mcp 2.1.1 → 2.1.3

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.
@@ -56,4 +56,22 @@ export declare function ensureDaemonRunning(projectPath: string, options?: Omit<
56
56
  wasStarted: boolean;
57
57
  error?: string;
58
58
  }>;
59
+ /**
60
+ * Install a watchdog cron job that monitors the daemon and restarts it if the heartbeat goes stale.
61
+ * - Linux/Mac: adds a crontab entry (every 2 minutes)
62
+ * - Windows: creates a scheduled task (every 2 minutes)
63
+ *
64
+ * The watchdog is tagged with the project path so it can be identified and removed later.
65
+ */
66
+ export declare function installWatchdog(projectPath: string): {
67
+ success: boolean;
68
+ error?: string;
69
+ };
70
+ /**
71
+ * Remove the watchdog cron job for a project.
72
+ */
73
+ export declare function removeWatchdog(projectPath: string): {
74
+ success: boolean;
75
+ error?: string;
76
+ };
59
77
  //# sourceMappingURL=daemon-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-manager.d.ts","sourceRoot":"","sources":["../src/daemon-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAgDjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAY7D;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA2LzF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA4CpF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAM,GACpD,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAgCD"}
1
+ {"version":3,"file":"daemon-manager.d.ts","sourceRoot":"","sources":["../src/daemon-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAgDjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAY7D;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA+LzF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA6CpF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAM,GACpD,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAgCD;AAqDD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAsDzF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAoCxF"}
@@ -6,8 +6,9 @@
6
6
  */
7
7
  import * as fs from "fs";
8
8
  import * as path from "path";
9
- import { spawnSync } from "child_process";
10
- import { isProcessRunning, killProcess } from "./platform.js";
9
+ import { spawnSync, execSync } from "child_process";
10
+ import { fileURLToPath } from "url";
11
+ import { isProcessRunning, isWindows, killProcess } from "./platform.js";
11
12
  /**
12
13
  * Get the daemon lock file path for a project
13
14
  */
@@ -115,6 +116,8 @@ export async function startDaemon(options) {
115
116
  const timestamp = Date.now();
116
117
  const logFile = path.join(robotChatDir, `daemon-${timestamp}.log`);
117
118
  const wrapperFile = path.join(robotChatDir, `daemon-starter-${timestamp}.mjs`);
119
+ const ownDistDir = path.dirname(fileURLToPath(import.meta.url));
120
+ const ownDaemonPath = path.join(ownDistDir, "daemon.js");
118
121
  // Find the daemon entry point
119
122
  // It could be installed globally or locally
120
123
  const daemonScript = `
@@ -129,6 +132,8 @@ const args = ${JSON.stringify(args)};
129
132
  // Try to find the daemon module
130
133
  // First check if nightshift-mcp is installed globally or locally
131
134
  const possiblePaths = [
135
+ // Package's own dist/ directory (most reliable)
136
+ ${JSON.stringify(ownDaemonPath)},
132
137
  // Local node_modules
133
138
  path.join(projectPath, "node_modules", "nightshift-mcp", "dist", "daemon.js"),
134
139
  // If we're running from within the nightshift-mcp package itself
@@ -287,8 +292,9 @@ export function stopDaemon(projectPath) {
287
292
  if (isProcessRunning(status.pid)) {
288
293
  killProcess(status.pid, true);
289
294
  }
290
- // Clean up lock file
295
+ // Clean up lock file and watchdog
291
296
  cleanupStaleLock(projectPath);
297
+ removeWatchdog(projectPath);
292
298
  return { success: true };
293
299
  }
294
300
  catch (err) {
@@ -330,4 +336,146 @@ export async function ensureDaemonRunning(projectPath, options = {}) {
330
336
  error: finalResult.error,
331
337
  };
332
338
  }
339
+ // ============================================
340
+ // Watchdog Cron
341
+ // ============================================
342
+ const WATCHDOG_TAG = "nightshift-watchdog";
343
+ /**
344
+ * Get a unique cron tag for this project (used to identify and clean up the entry)
345
+ */
346
+ function getWatchdogTag(projectPath) {
347
+ // Use a hash-like suffix from the project path to avoid collisions
348
+ const hash = projectPath.replace(/[^a-zA-Z0-9]/g, "").slice(-20);
349
+ return `${WATCHDOG_TAG}-${hash}`;
350
+ }
351
+ /**
352
+ * Build the watchdog shell command that checks heartbeat and restarts daemon if stale.
353
+ * This is a self-contained one-liner that runs via cron/schtasks.
354
+ */
355
+ function buildWatchdogCommand(projectPath) {
356
+ const heartbeatFile = path.join(projectPath, ".robot-chat", "daemon-heartbeat").replace(/\\/g, "/");
357
+ const lockFile = path.join(projectPath, ".robot-chat", "daemon.lock").replace(/\\/g, "/");
358
+ const ownDistDir = path.dirname(fileURLToPath(import.meta.url)).replace(/\\/g, "/");
359
+ const daemonJs = path.join(ownDistDir, "daemon.js").replace(/\\/g, "/");
360
+ if (isWindows) {
361
+ // PowerShell script for Windows schtasks
362
+ // Checks heartbeat age, restarts daemon if stale (>5 min) or missing
363
+ return `powershell -NoProfile -Command "` +
364
+ `$hb='${heartbeatFile}'; $lock='${lockFile}'; ` +
365
+ `if (Test-Path $lock) { ` +
366
+ `if (Test-Path $hb) { ` +
367
+ `$age=(New-TimeSpan (Get-Item $hb).LastWriteTime).TotalMinutes; ` +
368
+ `if ($age -gt 5) { node '${daemonJs}' --verbose } ` +
369
+ `} else { node '${daemonJs}' --verbose } ` +
370
+ `}"`;
371
+ }
372
+ // Unix: check heartbeat file age, restart daemon if stale (>300s) or lock exists without heartbeat
373
+ return `if [ -f "${lockFile}" ]; then ` +
374
+ `if [ -f "${heartbeatFile}" ]; then ` +
375
+ `age=$(( $(date +%s) - $(stat -c %Y "${heartbeatFile}" 2>/dev/null || stat -f %m "${heartbeatFile}" 2>/dev/null) )); ` +
376
+ `if [ "$age" -gt 300 ]; then ` +
377
+ `ROBOT_CHAT_PROJECT_PATH="${projectPath}" node "${daemonJs}" --verbose & ` +
378
+ `fi; ` +
379
+ `else ` +
380
+ `ROBOT_CHAT_PROJECT_PATH="${projectPath}" node "${daemonJs}" --verbose & ` +
381
+ `fi; ` +
382
+ `fi`;
383
+ }
384
+ /**
385
+ * Install a watchdog cron job that monitors the daemon and restarts it if the heartbeat goes stale.
386
+ * - Linux/Mac: adds a crontab entry (every 2 minutes)
387
+ * - Windows: creates a scheduled task (every 2 minutes)
388
+ *
389
+ * The watchdog is tagged with the project path so it can be identified and removed later.
390
+ */
391
+ export function installWatchdog(projectPath) {
392
+ const tag = getWatchdogTag(projectPath);
393
+ const command = buildWatchdogCommand(projectPath);
394
+ try {
395
+ if (isWindows) {
396
+ // Windows: use schtasks
397
+ const taskName = tag;
398
+ // Remove existing task if present (ignore errors)
399
+ try {
400
+ execSync(`schtasks /Delete /TN "${taskName}" /F`, {
401
+ stdio: "ignore",
402
+ windowsHide: true,
403
+ });
404
+ }
405
+ catch {
406
+ // Task didn't exist, that's fine
407
+ }
408
+ // Create scheduled task that runs every 2 minutes
409
+ execSync(`schtasks /Create /TN "${taskName}" /SC MINUTE /MO 2 /TR "${command}" /F`, { stdio: "ignore", windowsHide: true });
410
+ }
411
+ else {
412
+ // Unix: add crontab entry
413
+ let existingCrontab = "";
414
+ try {
415
+ existingCrontab = execSync("crontab -l 2>/dev/null", { encoding: "utf-8" });
416
+ }
417
+ catch {
418
+ // No existing crontab
419
+ }
420
+ // Remove any existing watchdog entry for this project
421
+ const lines = existingCrontab.split("\n").filter(line => !line.includes(tag));
422
+ // Add new entry (every 2 minutes)
423
+ lines.push(`*/2 * * * * ${command} # ${tag}`);
424
+ // Write back
425
+ const newCrontab = lines.filter(l => l.trim()).join("\n") + "\n";
426
+ execSync(`echo "${newCrontab.replace(/"/g, '\\"')}" | crontab -`, {
427
+ encoding: "utf-8",
428
+ stdio: ["pipe", "ignore", "ignore"],
429
+ });
430
+ }
431
+ return { success: true };
432
+ }
433
+ catch (err) {
434
+ return {
435
+ success: false,
436
+ error: `Failed to install watchdog: ${err instanceof Error ? err.message : String(err)}`,
437
+ };
438
+ }
439
+ }
440
+ /**
441
+ * Remove the watchdog cron job for a project.
442
+ */
443
+ export function removeWatchdog(projectPath) {
444
+ const tag = getWatchdogTag(projectPath);
445
+ try {
446
+ if (isWindows) {
447
+ try {
448
+ execSync(`schtasks /Delete /TN "${tag}" /F`, {
449
+ stdio: "ignore",
450
+ windowsHide: true,
451
+ });
452
+ }
453
+ catch {
454
+ // Task didn't exist
455
+ }
456
+ }
457
+ else {
458
+ let existingCrontab = "";
459
+ try {
460
+ existingCrontab = execSync("crontab -l 2>/dev/null", { encoding: "utf-8" });
461
+ }
462
+ catch {
463
+ return { success: true }; // No crontab at all
464
+ }
465
+ const lines = existingCrontab.split("\n").filter(line => !line.includes(tag));
466
+ const newCrontab = lines.filter(l => l.trim()).join("\n") + "\n";
467
+ execSync(`echo "${newCrontab.replace(/"/g, '\\"')}" | crontab -`, {
468
+ encoding: "utf-8",
469
+ stdio: ["pipe", "ignore", "ignore"],
470
+ });
471
+ }
472
+ return { success: true };
473
+ }
474
+ catch (err) {
475
+ return {
476
+ success: false,
477
+ error: `Failed to remove watchdog: ${err instanceof Error ? err.message : String(err)}`,
478
+ };
479
+ }
480
+ }
333
481
  //# sourceMappingURL=daemon-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-manager.js","sourceRoot":"","sources":["../src/daemon-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAa,WAAW,EAAE,MAAM,eAAe,CAAC;AAUzE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEhD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAElC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,KAAK,EAAE,0BAA0B;aAClC,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAEtC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,oCAAoC;YACpC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,GAAG;gBACH,QAAQ;gBACR,KAAK,EAAE,uCAAuC;aAC/C,CAAC;QACJ,CAAC;QAED,kDAAkD;QAClD,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;QAE/D,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG;YACH,QAAQ;YACR,MAAM;SACP,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ;YACR,KAAK,EAAE,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACtF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAAmB;IAClD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEhD,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAgBD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA2B;IAC3D,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,KAAK,EAAE,SAAS,GAAG,CAAC,EAAE,mBAAmB,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE5F,2BAA2B;IAC3B,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,cAAc,EAAE,IAAI;SACrB,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IAED,sCAAsC;IACtC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,yBAAyB;IACzB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,mBAAmB,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;IACnD,CAAC;IAED,iDAAiD;IACjD,kDAAkD;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,SAAS,MAAM,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,SAAS,MAAM,CAAC,CAAC;IAE/E,8BAA8B;IAC9B,4CAA4C;IAC5C,MAAM,YAAY,GAAG;;;;;sBAKD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;kBAC/B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;eAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DlC,CAAC;IAEA,IAAI,CAAC;QACH,2BAA2B;QAC3B,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAErD,0CAA0C;QAC1C,oFAAoF;QACpF,oFAAoF;QACpF,2FAA2F;QAC3F,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE;YAC9C,GAAG,EAAE,WAAW;YAChB,GAAG,EAAE;gBACH,GAAG,OAAO,CAAC,GAAG;gBACd,uBAAuB,EAAE,WAAW;aACrC;YACD,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;aACzD,CAAC;QACJ,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;YACrC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;oBACjC,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,GAAG,EAAE,MAAM,CAAC,GAAG;qBAChB,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;QAC/D,CAAC;QAED,kEAAkE;QAClE,6DAA6D;QAC7D,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;YAC7C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YAC/C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,GAAG,EAAE,SAAS,CAAC,GAAG;iBACnB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,wDAAwD;SAChE,CAAC;IAEJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACpF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,WAAmB;IAC5C,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,iCAAiC;QACjC,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IACnD,CAAC;IAED,IAAI,CAAC;QACH,wEAAwE;QACxE,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAE/B,qCAAqC;QACrC,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,OAAO,QAAQ,GAAG,EAAE,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,kCAAkC;YAClC,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9B,QAAQ,EAAE,CAAC;QACb,CAAC;QAED,8BAA8B;QAC9B,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,CAAC;QAED,qBAAqB;QACrB,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAE9B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACpF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,UAAmD,EAAE;IAOrD,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,UAAU,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IAED,mBAAmB;IACnB,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,EAAE,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAEnE,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,UAAU,EAAE,CAAC,WAAW,CAAC,cAAc;SACxC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,WAAW,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"daemon-manager.js","sourceRoot":"","sources":["../src/daemon-manager.ts"],"names":[],"mappings":"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"}
package/dist/daemon.d.ts CHANGED
@@ -45,6 +45,7 @@ export declare class NightShiftDaemon {
45
45
  private log;
46
46
  private acquireLock;
47
47
  private releaseLock;
48
+ private writeHeartbeat;
48
49
  private startWatchers;
49
50
  private stopWatchers;
50
51
  private restartWatchers;
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AASH,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAS5B,UAAU,YAAY;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAmBD,KAAK,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAiBnD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,EAAE,CAAe;IAGzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,WAAW,CAA+C;IAClE,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,UAAU,CAAK;IAGvB,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAQ;IAG/B,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,cAAc,CAA0C;IAGhE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;IA0BnE,OAAO,CAAC,GAAG;IAwBX,OAAO,CAAC,WAAW;IAmCnB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,QAAQ;YAkBF,YAAY;YAKZ,aAAa;YAwBb,cAAc;IA2B5B,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,kBAAkB;IAsC1B,OAAO,CAAC,kBAAkB;IAyB1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAexB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC;YAiB9G,SAAS;IA6CvB,OAAO,CAAC,YAAY;YAQN,kBAAkB;IA4BhC;;;;OAIG;YACW,mBAAmB;IA+JjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+B/B;;OAEG;YACW,wBAAwB;IAkEtC,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,YAAY;YAaN,WAAW;IA2CzB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,eAAe;YAOT,WAAW;IAgDnB,KAAK;IA0CL,QAAQ;CAuBf"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AASH,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAS5B,UAAU,YAAY;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAmBD,KAAK,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAiBnD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,EAAE,CAAe;IAGzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,WAAW,CAA+C;IAClE,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,UAAU,CAAK;IAGvB,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAQ;IAG/B,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,cAAc,CAA0C;IAGhE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;IA0BnE,OAAO,CAAC,GAAG;IAwBX,OAAO,CAAC,WAAW;IAmCnB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,QAAQ;YAkBF,YAAY;YAKZ,aAAa;YAwBb,cAAc;IA2B5B,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,kBAAkB;IAsC1B,OAAO,CAAC,kBAAkB;IAyB1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IAexB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC;YAiB9G,SAAS;IAkDvB,OAAO,CAAC,YAAY;YAQN,kBAAkB;IA4BhC;;;;OAIG;YACW,mBAAmB;IA+JjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+B/B;;OAEG;YACW,wBAAwB;IAkEtC,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,YAAY;YAaN,WAAW;IA2CzB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,eAAe;YAOT,WAAW;IAiDnB,KAAK;IAoDL,QAAQ;CAyBf"}
package/dist/daemon.js CHANGED
@@ -132,6 +132,22 @@ export class NightShiftDaemon {
132
132
  // Ignore cleanup errors
133
133
  }
134
134
  }
135
+ writeHeartbeat(status = "alive") {
136
+ try {
137
+ const heartbeatFile = path.join(this.config.projectPath, ".robot-chat", "daemon-heartbeat");
138
+ const data = JSON.stringify({
139
+ pid: process.pid,
140
+ timestamp: new Date().toISOString(),
141
+ status,
142
+ activeAgents: this.activeAgents.size,
143
+ availableAgents: this.availableAgents,
144
+ });
145
+ fs.writeFileSync(heartbeatFile, data, "utf-8");
146
+ }
147
+ catch {
148
+ // Ignore heartbeat write errors
149
+ }
150
+ }
135
151
  // ============================================
136
152
  // File Watchers
137
153
  // ============================================
@@ -409,7 +425,12 @@ export class NightShiftDaemon {
409
425
  const activeCount = this.activeAgents.size;
410
426
  // Check if all complete
411
427
  if (incomplete.length === 0) {
412
- this.log("info", "🎉 All stories complete!");
428
+ this.log("info", "All stories complete!");
429
+ this.chat.writeMessage({
430
+ agent: "NightShift",
431
+ type: "READY_TO_TEST",
432
+ content: "All stories complete. Daemon shutting down.",
433
+ });
413
434
  await this.shutdown();
414
435
  return;
415
436
  }
@@ -826,6 +847,7 @@ ${progress ? progress.substring(0, 2000) : "No progress file yet."}
826
847
  }
827
848
  // 4. Reconcile state
828
849
  await this.reconcile();
850
+ this.writeHeartbeat();
829
851
  }
830
852
  // ============================================
831
853
  // Lifecycle
@@ -837,11 +859,21 @@ ${progress ? progress.substring(0, 2000) : "No progress file yet."}
837
859
  this.log("error", "Could not acquire lock - another daemon may be running");
838
860
  process.exit(1);
839
861
  }
840
- // Check available agents
841
- this.availableAgents = await getAvailableAgents();
842
- const configuredAgents = this.config.agents.filter(a => this.availableAgents.includes(a));
862
+ // Check available agents (retry for detached process context where PATH may propagate slowly)
863
+ let configuredAgents = [];
864
+ for (let attempt = 1; attempt <= 3; attempt++) {
865
+ this.availableAgents = await getAvailableAgents();
866
+ configuredAgents = this.config.agents.filter(a => this.availableAgents.includes(a));
867
+ if (configuredAgents.length > 0)
868
+ break;
869
+ this.log("warn", `No agents found on attempt ${attempt}/3, retrying in 5s...`);
870
+ if (attempt < 3) {
871
+ await new Promise(resolve => setTimeout(resolve, 5000));
872
+ }
873
+ }
843
874
  if (configuredAgents.length === 0) {
844
- this.log("error", "No configured agents are available");
875
+ this.log("error", "No configured agents are available after 3 attempts");
876
+ this.releaseLock();
845
877
  process.exit(1);
846
878
  }
847
879
  this.availableAgents = configuredAgents;
@@ -854,6 +886,7 @@ ${progress ? progress.substring(0, 2000) : "No progress file yet."}
854
886
  // Start health check (fallback)
855
887
  this.startHealthCheck();
856
888
  this.log("info", "Daemon started successfully");
889
+ this.writeHeartbeat();
857
890
  this.log("info", `Health check interval: ${this.config.healthCheckInterval / 1000}s`);
858
891
  this.log("info", `Max concurrent agents: ${this.config.maxConcurrentAgents}`);
859
892
  // Initial reconciliation
@@ -870,6 +903,7 @@ ${progress ? progress.substring(0, 2000) : "No progress file yet."}
870
903
  this.debounceTimers.clear();
871
904
  // Stop watchers
872
905
  this.stopWatchers();
906
+ this.writeHeartbeat("shutdown");
873
907
  // Release lock
874
908
  this.releaseLock();
875
909
  // Close database
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAaxD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,QAAQ,EAAE,YAAY,GAAG,UAAU,GAAG,UAAU,CAAC;IACjD,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,iEAAiE;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,eAAe,EAAE,OAAO,CAAC;CAC1B;AAoBD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,iBAAiB,CAA0C;IACnE,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAK;IAExB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAK;gBAG/B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,eAAe,EACzB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAgB3C;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC;IA8JzC;;OAEG;YACW,gBAAgB;IA6D9B;;OAEG;YACW,eAAe;IAmC7B;;;OAGG;YACW,UAAU;IA6IxB;;OAEG;YACW,qBAAqB;IAyCnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgE1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAyB1B;;OAEG;IACH,OAAO,CAAC,eAAe;IA+DvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8E/B;;;OAGG;YACW,iBAAiB;IA6G/B;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAaxD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,QAAQ,EAAE,YAAY,GAAG,UAAU,GAAG,UAAU,CAAC;IACjD,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,iEAAiE;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,eAAe,EAAE,OAAO,CAAC;CAC1B;AAoBD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,iBAAiB,CAA0C;IACnE,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,WAAW,CAAK;IAExB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAK;gBAG/B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,eAAe,EACzB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAgB3C;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAgKzC;;OAEG;YACW,gBAAgB;IA6D9B;;OAEG;YACW,eAAe;IAmC7B;;;OAGG;YACW,UAAU;IA6IxB;;OAEG;YACW,qBAAqB;IAyCnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgE1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAyB1B;;OAEG;IACH,OAAO,CAAC,eAAe;IA+DvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA8E/B;;;OAGG;YACW,iBAAiB;IA6G/B;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
@@ -38,7 +38,7 @@ export class ProjectOrchestrator {
38
38
  strategy: config.strategy ?? "adaptive",
39
39
  dryRun: config.dryRun ?? false,
40
40
  maxIterations: config.maxIterations ?? 20,
41
- includeResearch: config.includeResearch ?? true,
41
+ includeResearch: config.includeResearch ?? false,
42
42
  };
43
43
  }
44
44
  /**
@@ -120,15 +120,17 @@ export class ProjectOrchestrator {
120
120
  content: `Iteration ${iterations}/${this.config.maxIterations}: slots=${availableSlots}, active=${this.activeAssignments.size}, stories=${incompleteStories.length}, bugs=${unfixedBugs.length}, quarantined=${this.quarantinedTasks.size}`,
121
121
  });
122
122
  if (availableSlots <= 0) {
123
- // Wait for current tasks to complete
123
+ // Wait for current tasks to complete — don't count waiting as an iteration
124
124
  await this.waitForCompletion();
125
+ iterations--;
125
126
  continue;
126
127
  }
127
128
  // Nothing left to assign
128
129
  if (incompleteStories.length === 0 && unfixedBugs.length === 0) {
129
130
  if (this.activeAssignments.size > 0) {
130
- // Wait for active assignments
131
+ // Wait for active assignments — don't count waiting as an iteration
131
132
  await this.waitForCompletion();
133
+ iterations--;
132
134
  continue;
133
135
  }
134
136
  else {