sensorium-mcp 3.1.3-board.8 → 3.1.3-board.9

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 (128) hide show
  1. package/Install-Sensorium.ps1 +6 -4
  2. package/dist/config/settings-store.d.ts.map +1 -1
  3. package/dist/config/settings-store.js +2 -24
  4. package/dist/config/settings-store.js.map +1 -1
  5. package/dist/data/board/card.repository.d.ts +44 -0
  6. package/dist/data/board/card.repository.d.ts.map +1 -1
  7. package/dist/data/board/card.repository.js +67 -8
  8. package/dist/data/board/card.repository.js.map +1 -1
  9. package/dist/data/memory/migration-runner.d.ts +1 -1
  10. package/dist/data/memory/migration-runner.d.ts.map +1 -1
  11. package/dist/data/memory/migration-runner.js +11 -5
  12. package/dist/data/memory/migration-runner.js.map +1 -1
  13. package/dist/data/memory/process-exits.repository.d.ts +51 -0
  14. package/dist/data/memory/process-exits.repository.d.ts.map +1 -0
  15. package/dist/data/memory/process-exits.repository.js +76 -0
  16. package/dist/data/memory/process-exits.repository.js.map +1 -0
  17. package/dist/data/memory/schema-ddl.d.ts +33 -3
  18. package/dist/data/memory/schema-ddl.d.ts.map +1 -1
  19. package/dist/data/memory/schema-ddl.js +46 -3
  20. package/dist/data/memory/schema-ddl.js.map +1 -1
  21. package/dist/data/memory/thread-registry.d.ts +10 -1
  22. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  23. package/dist/data/memory/thread-registry.js +15 -1
  24. package/dist/data/memory/thread-registry.js.map +1 -1
  25. package/dist/data/memory/worker-lifecycle.repository.d.ts +1 -2
  26. package/dist/data/memory/worker-lifecycle.repository.d.ts.map +1 -1
  27. package/dist/data/memory/worker-lifecycle.repository.js +1 -2
  28. package/dist/data/memory/worker-lifecycle.repository.js.map +1 -1
  29. package/dist/index.js +59 -43
  30. package/dist/index.js.map +1 -1
  31. package/dist/lib/atomic-file.d.ts +13 -0
  32. package/dist/lib/atomic-file.d.ts.map +1 -0
  33. package/dist/lib/atomic-file.js +43 -0
  34. package/dist/lib/atomic-file.js.map +1 -0
  35. package/dist/lib/mcp-http-port.d.ts +12 -0
  36. package/dist/lib/mcp-http-port.d.ts.map +1 -0
  37. package/dist/lib/mcp-http-port.js +19 -0
  38. package/dist/lib/mcp-http-port.js.map +1 -0
  39. package/dist/server/http-server.d.ts +6 -1
  40. package/dist/server/http-server.d.ts.map +1 -1
  41. package/dist/server/http-server.js +21 -10
  42. package/dist/server/http-server.js.map +1 -1
  43. package/dist/server/port-holder.d.ts +94 -0
  44. package/dist/server/port-holder.d.ts.map +1 -0
  45. package/dist/server/port-holder.js +122 -0
  46. package/dist/server/port-holder.js.map +1 -0
  47. package/dist/services/agent-spawn.service.d.ts.map +1 -1
  48. package/dist/services/agent-spawn.service.js +9 -34
  49. package/dist/services/agent-spawn.service.js.map +1 -1
  50. package/dist/services/background-runner.d.ts.map +1 -1
  51. package/dist/services/background-runner.js +17 -32
  52. package/dist/services/background-runner.js.map +1 -1
  53. package/dist/services/board/board-signals.d.ts +4 -2
  54. package/dist/services/board/board-signals.d.ts.map +1 -1
  55. package/dist/services/board/board-signals.js +11 -6
  56. package/dist/services/board/board-signals.js.map +1 -1
  57. package/dist/services/board/card-briefing.d.ts +6 -0
  58. package/dist/services/board/card-briefing.d.ts.map +1 -1
  59. package/dist/services/board/card-briefing.js +9 -0
  60. package/dist/services/board/card-briefing.js.map +1 -1
  61. package/dist/services/board/orchestrator.service.d.ts +10 -2
  62. package/dist/services/board/orchestrator.service.d.ts.map +1 -1
  63. package/dist/services/board/orchestrator.service.js +26 -7
  64. package/dist/services/board/orchestrator.service.js.map +1 -1
  65. package/dist/services/board/report-capture.d.ts +38 -9
  66. package/dist/services/board/report-capture.d.ts.map +1 -1
  67. package/dist/services/board/report-capture.js +134 -109
  68. package/dist/services/board/report-capture.js.map +1 -1
  69. package/dist/services/broker-client.d.ts +13 -0
  70. package/dist/services/broker-client.d.ts.map +1 -1
  71. package/dist/services/broker-client.js +35 -4
  72. package/dist/services/broker-client.js.map +1 -1
  73. package/dist/services/claude-spawn.service.js +1 -1
  74. package/dist/services/claude-spawn.service.js.map +1 -1
  75. package/dist/services/codex-spawn.service.js +1 -1
  76. package/dist/services/codex-spawn.service.js.map +1 -1
  77. package/dist/services/copilot-spawn.service.js +1 -1
  78. package/dist/services/copilot-spawn.service.js.map +1 -1
  79. package/dist/services/daily-session.d.ts.map +1 -1
  80. package/dist/services/daily-session.js +3 -1
  81. package/dist/services/daily-session.js.map +1 -1
  82. package/dist/services/process.service.d.ts +23 -19
  83. package/dist/services/process.service.d.ts.map +1 -1
  84. package/dist/services/process.service.js +78 -217
  85. package/dist/services/process.service.js.map +1 -1
  86. package/dist/services/spawn-common.d.ts +36 -41
  87. package/dist/services/spawn-common.d.ts.map +1 -1
  88. package/dist/services/spawn-common.js +161 -114
  89. package/dist/services/spawn-common.js.map +1 -1
  90. package/dist/services/spawn-exit-watcher.d.ts +54 -37
  91. package/dist/services/spawn-exit-watcher.d.ts.map +1 -1
  92. package/dist/services/spawn-exit-watcher.js +131 -177
  93. package/dist/services/spawn-exit-watcher.js.map +1 -1
  94. package/dist/services/thread-health.service.d.ts.map +1 -1
  95. package/dist/services/thread-health.service.js +4 -9
  96. package/dist/services/thread-health.service.js.map +1 -1
  97. package/dist/services/thread-purge.service.d.ts.map +1 -1
  98. package/dist/services/thread-purge.service.js +7 -12
  99. package/dist/services/thread-purge.service.js.map +1 -1
  100. package/dist/services/worker-birth.d.ts.map +1 -1
  101. package/dist/services/worker-birth.js +3 -4
  102. package/dist/services/worker-birth.js.map +1 -1
  103. package/dist/services/worker-cleanup.service.d.ts +6 -7
  104. package/dist/services/worker-cleanup.service.d.ts.map +1 -1
  105. package/dist/services/worker-cleanup.service.js +61 -41
  106. package/dist/services/worker-cleanup.service.js.map +1 -1
  107. package/dist/services/worker-lifecycle-executor.d.ts +2 -1
  108. package/dist/services/worker-lifecycle-executor.d.ts.map +1 -1
  109. package/dist/services/worker-lifecycle-executor.js +2 -1
  110. package/dist/services/worker-lifecycle-executor.js.map +1 -1
  111. package/dist/test-bootstrap.d.ts +19 -12
  112. package/dist/test-bootstrap.d.ts.map +1 -1
  113. package/dist/test-bootstrap.js +65 -22
  114. package/dist/test-bootstrap.js.map +1 -1
  115. package/dist/test-tripwire.test-support.d.ts +75 -0
  116. package/dist/test-tripwire.test-support.d.ts.map +1 -0
  117. package/dist/test-tripwire.test-support.js +353 -0
  118. package/dist/test-tripwire.test-support.js.map +1 -0
  119. package/dist/tools/delegate-tool.d.ts +11 -1
  120. package/dist/tools/delegate-tool.d.ts.map +1 -1
  121. package/dist/tools/delegate-tool.js +46 -24
  122. package/dist/tools/delegate-tool.js.map +1 -1
  123. package/dist/tools/response-builders.d.ts.map +1 -1
  124. package/dist/tools/response-builders.js +12 -8
  125. package/dist/tools/response-builders.js.map +1 -1
  126. package/dist/tools/wait/poll-loop.js +2 -2
  127. package/dist/tools/wait/poll-loop.js.map +1 -1
  128. package/package.json +2 -2
@@ -9,7 +9,8 @@
9
9
 
10
10
  The release channel follows the SAME switch as the MCP server: the tag in
11
11
  MCPStartCommand ("npx -y sensorium-mcp@<tag>"). @latest -> supervisor-latest
12
- (stable, built from main); @refactor -> supervisor-refactor (built from the
12
+ (stable, built from main); @board -> supervisor-board (built from
13
+ feature/agent-task-board); @refactor -> supervisor-refactor (built from the
13
14
  refactor branch). One edit to install.config.json flips both node + supervisor.
14
15
 
15
16
  All configuration is read from ~/.remote-copilot-mcp/install.config.json.
@@ -95,12 +96,13 @@ $EffectiveMCPStartCommand = $Config["MCPStartCommand"]
95
96
  $IsolateMcpRuntime = $Config["IsolateMcpRuntime"] -eq "true"
96
97
 
97
98
  # Resolve the supervisor release channel from the same tag the node server
98
- # follows: the "@<tag>" in MCPStartCommand. Only @refactor uses the branch
99
- # build; everything else (incl. @latest, a bare version pin, or no tag) stays
99
+ # follows: the "@<tag>" in MCPStartCommand. Only @board (supervisor-board, built
100
+ # from feature/agent-task-board) and @refactor (supervisor-refactor) use branch
101
+ # builds; everything else (incl. @latest, a bare version pin, or no tag) stays
100
102
  # on the stable supervisor-latest release. This keeps the stable rollback path
101
103
  # intact — pointing the config back at @latest restores the main supervisor.
102
104
  $mcpTag = if ($EffectiveMCPStartCommand -match 'sensorium-mcp@([A-Za-z0-9._-]+)') { $Matches[1] } else { "latest" }
103
- $ReleaseTag = if ($mcpTag -eq "refactor") { "supervisor-refactor" } else { "supervisor-latest" }
105
+ $ReleaseTag = if ($mcpTag -eq "board") { "supervisor-board" } elseif ($mcpTag -eq "refactor") { "supervisor-refactor" } else { "supervisor-latest" }
104
106
  Write-Host "Supervisor channel: $ReleaseTag (from MCP tag '$mcpTag')" -ForegroundColor Cyan
105
107
 
106
108
  # Validate config values
@@ -1 +1 @@
1
- {"version":3,"file":"settings-store.d.ts","sourceRoot":"","sources":["../../src/config/settings-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAiFH;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA+CtD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAoBnD;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,IAAI,CAIlF"}
1
+ {"version":3,"file":"settings-store.d.ts","sourceRoot":"","sources":["../../src/config/settings-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA6DH;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA+CtD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAoBnD;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,IAAI,CAIlF"}
@@ -10,7 +10,8 @@
10
10
  * in-memory last-known-good copy, and only throw when no trusted source
11
11
  * exists at all.
12
12
  */
13
- import { chmodSync, readFileSync, renameSync, writeFileSync } from "node:fs";
13
+ import { chmodSync, readFileSync, writeFileSync } from "node:fs";
14
+ import { renameSyncRetry } from "../lib/atomic-file.js";
14
15
  import { log } from "../lib/logger.js";
15
16
  import { dataPath } from "../lib/paths.js";
16
17
  const SETTINGS_PATH = dataPath("settings.json");
@@ -22,29 +23,6 @@ const SETTINGS_BAK_PATH = SETTINGS_PATH + ".bak";
22
23
  * as the base of an explicit updateSettings mutation.
23
24
  */
24
25
  let lastGoodSettings = null;
25
- /**
26
- * Rename with a short bounded retry. On Windows, antivirus/indexer services
27
- * transiently lock the destination, making renameSync throw EPERM/EACCES even
28
- * though the operation would succeed milliseconds later (same issue graceful-fs
29
- * works around). Retry for up to ~1s before giving up.
30
- */
31
- function renameSyncRetry(from, to) {
32
- const deadline = Date.now() + 1_000;
33
- for (;;) {
34
- try {
35
- renameSync(from, to);
36
- return;
37
- }
38
- catch (err) {
39
- const code = err?.code;
40
- if ((code !== "EPERM" && code !== "EACCES") || Date.now() >= deadline)
41
- throw err;
42
- const until = Date.now() + 10;
43
- while (Date.now() < until)
44
- ; // sync context — brief busy-wait between attempts
45
- }
46
- }
47
- }
48
26
  function restrictToOwner(path) {
49
27
  // settings.json holds MCP auth headers/tokens — restrict to owner (no-op on
50
28
  // Windows NTFS, effective on POSIX where the server may also run).
@@ -1 +1 @@
1
- {"version":3,"file":"settings-store.js","sourceRoot":"","sources":["../../src/config/settings-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-store.js","sourceRoot":"","sources":["../../src/config/settings-store.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,50 @@ export declare function markOperatorReleaseForWorker(db: Database, workerThreadI
70
70
  export declare function rateLimitBoundWorkerCard(db: Database, cardId: number, workerThreadId: number, provider: AgentType, retryAt: Optional<string>): Optional<BoardCard>;
71
71
  /** CAS transition for a worker awaiting an operator decision. The card keeps its slot. */
72
72
  export declare function decisionNeededBoundWorkerCard(db: Database, cardId: number, workerThreadId: number, ask: CardAsk): Optional<BoardCard>;
73
+ /** A bound worker's report its card did not take as a status move. */
74
+ export type UnmovedReportOutcome =
75
+ /** An operator release owns the card: the report is a worker comment, the status is untouched. */
76
+ {
77
+ kind: "kept-on-released-card";
78
+ }
79
+ /** The worker no longer owns an in_progress card: nothing was written. */
80
+ | {
81
+ kind: "not-owned";
82
+ };
83
+ /** What a bound worker's terminal report did to its card. */
84
+ export type WorkerReportOutcome =
85
+ /** The report's transition moved the card. */
86
+ {
87
+ kind: "transitioned";
88
+ card: BoardCard;
89
+ } | UnmovedReportOutcome;
90
+ /** What a bound worker's progress update (no STATUS line) did to its card. */
91
+ export type WorkerProgressOutcome =
92
+ /** The worker still owns the card and no release holds it: the update is a worker comment. */
93
+ {
94
+ kind: "commented";
95
+ } | UnmovedReportOutcome;
96
+ /**
97
+ * Settle a bound worker's terminal report in ONE write transaction. `transition`
98
+ * must be one of the bound-worker CASes above (OWNED_BY_WORKER AND
99
+ * operator_releasing = 0). When it changes no row, the conditional INSERT asks
100
+ * the remaining question in the same transaction: is the card still owned by
101
+ * this worker, held by an operator release? Then the report body is kept as a
102
+ * worker comment and the status stays with the release. Otherwise the worker
103
+ * lost the card to another writer and nothing is written. IMMEDIATE (or the
104
+ * caller's IMMEDIATE transaction, which this joins as a savepoint) holds the write
105
+ * lock before the CAS runs, so no other connection can change the card between the
106
+ * CAS and the INSERT: the outcome is the statements' own row counts, not a re-read.
107
+ */
108
+ export declare function settleWorkerReport(db: Database, cardId: number, workerThreadId: number, report: string, transition: () => Optional<BoardCard>): WorkerReportOutcome;
109
+ /**
110
+ * Settle a bound worker's progress update in ONE IMMEDIATE write transaction. It
111
+ * moves no status, so the only question is who holds the card: the worker with no
112
+ * release → its comment; an operator release → the comment is kept exactly like a
113
+ * terminal report's; nobody it is told about → nothing is written. The capture's
114
+ * card lookup ran before this transaction, so it cannot answer that question.
115
+ */
116
+ export declare function settleWorkerProgress(db: Database, cardId: number, workerThreadId: number, report: string): WorkerProgressOutcome;
73
117
  /**
74
118
  * CAS block for a claimed-but-unbound card (dispatch died between claim and
75
119
  * bind, leaving it in_progress with NO worker). Blocks ONLY while it is still
@@ -1 +1 @@
1
- {"version":3,"file":"card.repository.d.ts","sourceRoot":"","sources":["../../../src/data/board/card.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card.repository.d.ts","sourceRoot":"","sources":["../../../src/data/board/card.repository.ts"],"names":[],"mappings":"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"}
@@ -270,6 +270,10 @@ export function bindWorkerToCard(db, cardId, workerThreadId) {
270
270
  .run(workerThreadId, nowISO(), cardId);
271
271
  return result.changes === 1;
272
272
  }
273
+ /** The card is still running for this worker: in_progress and bound to it. Binds
274
+ * (cardId, workerThreadId). The bound-worker CASes below add operator_releasing = 0:
275
+ * an operator release owns the card's status. */
276
+ const OWNED_BY_WORKER = `card_id = ? AND status = 'in_progress' AND worker_thread_id = ?`;
273
277
  /**
274
278
  * CAS block for a card still bound to a specific worker (exit safety net).
275
279
  * Blocks ONLY when the card is in_progress AND its worker is still this exact
@@ -282,8 +286,7 @@ export function blockBoundWorkerCard(db, cardId, workerThreadId, reason) {
282
286
  const result = db
283
287
  .prepare(`UPDATE board_cards
284
288
  SET status = 'blocked', blocked_reason = ?, worker_thread_id = NULL, updated_at = ?
285
- WHERE card_id = ? AND status = 'in_progress' AND worker_thread_id = ?
286
- AND operator_releasing = 0`)
289
+ WHERE ${OWNED_BY_WORKER} AND operator_releasing = 0`)
287
290
  .run(reason, nowISO(), cardId, workerThreadId);
288
291
  return result.changes === 1 ? getCard(db, cardId).orElse(undefined) : undefined;
289
292
  }
@@ -297,8 +300,7 @@ export function completeBoundWorkerCard(db, cardId, workerThreadId, patch) {
297
300
  SET status = 'done', worker_thread_id = NULL, blocked_reason = NULL, ask_json = NULL,
298
301
  rate_limit_provider = NULL, retry_at = NULL,
299
302
  next_spawn_at = ?, finished_at = ?, updated_at = ?
300
- WHERE card_id = ? AND status = 'in_progress' AND worker_thread_id = ?
301
- AND operator_releasing = 0`)
303
+ WHERE ${OWNED_BY_WORKER} AND operator_releasing = 0`)
302
304
  // eslint-disable-next-line no-restricted-syntax -- better-sqlite3 requires null to clear an absent recurrence schedule
303
305
  .run(patch.nextSpawnAt ?? null, patch.finishedAt ?? nowISO(), nowISO(), cardId, workerThreadId);
304
306
  return result.changes === 1 ? getCard(db, cardId) : Optional.empty();
@@ -325,8 +327,7 @@ export function rateLimitBoundWorkerCard(db, cardId, workerThreadId, provider, r
325
327
  .prepare(`UPDATE board_cards
326
328
  SET status = 'rate_limited', rate_limit_provider = ?, retry_at = ?,
327
329
  blocked_reason = NULL, worker_thread_id = NULL, updated_at = ?
328
- WHERE card_id = ? AND status = 'in_progress' AND worker_thread_id = ?
329
- AND operator_releasing = 0`)
330
+ WHERE ${OWNED_BY_WORKER} AND operator_releasing = 0`)
330
331
  // eslint-disable-next-line no-restricted-syntax -- better-sqlite3 requires null to persist an absent retry_at
331
332
  .run(provider, retryAt.orElse(null), nowISO(), cardId, workerThreadId);
332
333
  return result.changes === 1 ? getCard(db, cardId) : Optional.empty();
@@ -336,11 +337,69 @@ export function decisionNeededBoundWorkerCard(db, cardId, workerThreadId, ask) {
336
337
  const result = db
337
338
  .prepare(`UPDATE board_cards
338
339
  SET status = 'decision_needed', worker_thread_id = NULL, ask_json = ?, updated_at = ?
339
- WHERE card_id = ? AND status = 'in_progress' AND worker_thread_id = ?
340
- AND operator_releasing = 0`)
340
+ WHERE ${OWNED_BY_WORKER} AND operator_releasing = 0`)
341
341
  .run(JSON.stringify(ask), nowISO(), cardId, workerThreadId);
342
342
  return result.changes === 1 ? getCard(db, cardId) : Optional.empty();
343
343
  }
344
+ /**
345
+ * Write `report` as a worker comment only while `workerThreadId` owns the card
346
+ * in_progress AND the card's operator release is in the asked state, in one
347
+ * conditional INSERT: the ownership read and the write are one statement.
348
+ * Returns whether the comment was written.
349
+ */
350
+ function commentIfOwned(db, cardId, workerThreadId, report, operatorReleasing) {
351
+ const written = db
352
+ .prepare(`INSERT INTO board_comments (card_id, author, content, created_at)
353
+ SELECT card_id, 'worker', ?, ? FROM board_cards
354
+ WHERE ${OWNED_BY_WORKER} AND operator_releasing = ?`)
355
+ .run(report, nowISO(), cardId, workerThreadId, operatorReleasing ? 1 : 0);
356
+ return written.changes === 1;
357
+ }
358
+ /** A report the card did not take: kept as a comment on a card an operator
359
+ * release holds, otherwise lost with nothing written. */
360
+ function keepOnReleasedCard(db, cardId, workerThreadId, report) {
361
+ return commentIfOwned(db, cardId, workerThreadId, report, true)
362
+ ? { kind: "kept-on-released-card" }
363
+ : { kind: "not-owned" };
364
+ }
365
+ /**
366
+ * Settle a bound worker's terminal report in ONE write transaction. `transition`
367
+ * must be one of the bound-worker CASes above (OWNED_BY_WORKER AND
368
+ * operator_releasing = 0). When it changes no row, the conditional INSERT asks
369
+ * the remaining question in the same transaction: is the card still owned by
370
+ * this worker, held by an operator release? Then the report body is kept as a
371
+ * worker comment and the status stays with the release. Otherwise the worker
372
+ * lost the card to another writer and nothing is written. IMMEDIATE (or the
373
+ * caller's IMMEDIATE transaction, which this joins as a savepoint) holds the write
374
+ * lock before the CAS runs, so no other connection can change the card between the
375
+ * CAS and the INSERT: the outcome is the statements' own row counts, not a re-read.
376
+ */
377
+ export function settleWorkerReport(db, cardId, workerThreadId, report, transition) {
378
+ return db
379
+ .transaction(() => {
380
+ const moved = transition();
381
+ if (moved.has())
382
+ return { kind: "transitioned", card: moved.get() };
383
+ return keepOnReleasedCard(db, cardId, workerThreadId, report);
384
+ })
385
+ .immediate();
386
+ }
387
+ /**
388
+ * Settle a bound worker's progress update in ONE IMMEDIATE write transaction. It
389
+ * moves no status, so the only question is who holds the card: the worker with no
390
+ * release → its comment; an operator release → the comment is kept exactly like a
391
+ * terminal report's; nobody it is told about → nothing is written. The capture's
392
+ * card lookup ran before this transaction, so it cannot answer that question.
393
+ */
394
+ export function settleWorkerProgress(db, cardId, workerThreadId, report) {
395
+ return db
396
+ .transaction(() => {
397
+ if (commentIfOwned(db, cardId, workerThreadId, report, false))
398
+ return { kind: "commented" };
399
+ return keepOnReleasedCard(db, cardId, workerThreadId, report);
400
+ })
401
+ .immediate();
402
+ }
344
403
  /**
345
404
  * CAS block for a claimed-but-unbound card (dispatch died between claim and
346
405
  * bind, leaving it in_progress with NO worker). Blocks ONLY while it is still
@@ -1 +1 @@
1
- {"version":3,"file":"card.repository.js","sourceRoot":"","sources":["../../../src/data/board/card.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card.repository.js","sourceRoot":"","sources":["../../../src/data/board/card.repository.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Database } from "./db-types.js";
2
- export declare const SCHEMA_VERSION = 40;
2
+ export declare const SCHEMA_VERSION = 41;
3
3
  export declare function rebuildThreadRegistryWithExitedStatus(db: Database, existingColumns: string[]): void;
4
4
  /**
5
5
  * Label pre-column tombstones (valid_to set, expiry_reason NULL) with the most
@@ -1 +1 @@
1
- {"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,eAAO,MAAM,cAAc,KAAK,CAAC;AAkBjC,wBAAgB,qCAAqC,CACnD,EAAE,EAAE,QAAQ,EACZ,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,CA0DN;AAg1BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA+DxD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAsBhD"}
1
+ {"version":3,"file":"migration-runner.d.ts","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,eAAO,MAAM,cAAc,KAAK,CAAC;AAkBjC,wBAAgB,qCAAqC,CACnD,EAAE,EAAE,QAAQ,EACZ,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,CA0DN;AAs1BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA+DxD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAsBhD"}
@@ -3,8 +3,8 @@ import { log } from "../../lib/logger.js";
3
3
  import { dataPath } from "../../lib/paths.js";
4
4
  import { errorMessage } from "../../lib/utils.js";
5
5
  import { nowISO } from "./utils.js";
6
- import { MINTED_THREAD_ID_FLOOR, PASSIVE_NOTICES_DDL, THREAD_ID_SEQUENCE_DDL, WORKER_LIFECYCLE_DDL, } from "./schema-ddl.js";
7
- export const SCHEMA_VERSION = 40;
6
+ import { MINTED_THREAD_ID_FLOOR, PASSIVE_NOTICES_DDL, PROCESS_EXITS_DDL, THREAD_ID_SEQUENCE_DDL, WORKER_LIFECYCLE_DDL, } from "./schema-ddl.js";
7
+ export const SCHEMA_VERSION = 41;
8
8
  function isDuplicateColumnError(err, columnName) {
9
9
  const message = errorMessage(err).toLowerCase();
10
10
  return message.includes(`duplicate column name: ${columnName}`.toLowerCase());
@@ -712,9 +712,8 @@ const MIGRATIONS = {
712
712
  //
713
713
  // `task_consumed_at` records that a thread READ its pre-queued task. That fact was
714
714
  // an in-process Set, and the comment above it justified a Set with "workers are
715
- // never resumed across a server restart" — which `rearmExitWatchForRestoredThread`
716
- // had already falsified: it re-arms exit observation for a worker that OUTLIVED the
717
- // restart, so the born-dead net fires in a process whose Set is empty and relaunches
715
+ // never resumed across a server restart" — which the exit watcher had already
716
+ // falsified: it observes the exit of a worker that OUTLIVED the restart, so the born-dead net fires in a process whose Set is empty and relaunches
718
717
  // a worker that had already done its work. The column is the same fact, durable.
719
718
  //
720
719
  // The table is rebuilt the way migrations 33 and 34 rebuilt it; the phase enum is a
@@ -902,6 +901,13 @@ const MIGRATIONS = {
902
901
  .run(nowISO()).changes;
903
902
  log.info(`[migration-40] Added purging_at; stamped ${anchored} unanchored archived thread(s)`);
904
903
  },
904
+ 41: (db) => {
905
+ // Inc G2: the durable, incarnation-keyed exit claim (see PROCESS_EXITS_DDL). It
906
+ // replaces the PID-file unlink that used to be the claim. The table starts EMPTY:
907
+ // a death already resolved left no PID file to resolve again.
908
+ db.exec(PROCESS_EXITS_DDL);
909
+ log.info("[migration-41] Added the process_exits table");
910
+ },
905
911
  // NOTE: the Agent Task Board deliberately does NOT take a number here — its
906
912
  // DDL is versioned in board_schema_version (data/board/board-schema.ts,
907
913
  // ensureBoardSchema) so a feature line can never collide with main's next
@@ -1 +1 @@
1
- {"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * The durable exit claim (process_exits, PROCESS_EXITS_DDL): which observer of a
3
+ * process's death runs its exit path, keyed by the process's incarnation.
4
+ */
5
+ import type { Database } from "./db-types.js";
6
+ import { Optional } from "../optional.js";
7
+ /** One spawn of a thread: its id, the `startedAt` its PID file carries and its pid. */
8
+ export interface ProcessIncarnation {
9
+ threadId: number;
10
+ startedAt: number;
11
+ pid: number;
12
+ }
13
+ /** The MCP server process that holds an exit claim: its pid and its start, in
14
+ * Unix ms — the identity the broker's liveness answer is checked against. */
15
+ export interface ExitHolder {
16
+ pid: number;
17
+ startedAt: number;
18
+ }
19
+ /**
20
+ * Take the claim on this incarnation's death for `holder`. One statement, so two
21
+ * observers in two processes cannot both win: it inserts the row, or takes over one
22
+ * whose claim no live process holds — never claimed (only sighted), or held by
23
+ * `deadHolder`, the holder the caller has confirmed gone. The takeover is
24
+ * conditional on that very identity, so two observers racing one dead holder still
25
+ * yield one winner. A completed row is never taken again.
26
+ *
27
+ * Won: the exit code to run the exit with — this observer's own, or, when it knows
28
+ * none, the one an earlier holder recorded. Empty: someone else owns this death.
29
+ */
30
+ export declare function claimExit(db: Database, incarnation: ProcessIncarnation, exitCode: Optional<number>, holder: ExitHolder, deadHolder: Optional<ExitHolder>): Optional<{
31
+ exitCode: Optional<number>;
32
+ }>;
33
+ /** The holder of this incarnation's claim while its exit is still open. Empty when
34
+ * nobody holds it (no row, only sighted) or the exit is complete. */
35
+ export declare function readExitHolder(db: Database, incarnation: ProcessIncarnation): Optional<ExitHolder>;
36
+ /**
37
+ * This incarnation's exit has run to its end — recorded only by the holder whose
38
+ * claim it is. False: the claim is another holder's now, and so are the exit, its
39
+ * record and its completion. A live holder is never taken over, so this is the
40
+ * claim's invariant rather than a path production takes.
41
+ */
42
+ export declare function completeExit(db: Database, incarnation: ProcessIncarnation, holder: ExitHolder, now?: number): boolean;
43
+ /**
44
+ * Record the first sight of an unclaimed death. True when it had already been
45
+ * sighted (or claimed) before this call — the deferral is over; false on the first
46
+ * sight, which is now recorded.
47
+ */
48
+ export declare function sightExit(db: Database, incarnation: ProcessIncarnation, now?: number): boolean;
49
+ /** True once this incarnation's exit has run to its end. */
50
+ export declare function isExitComplete(db: Database, incarnation: ProcessIncarnation): boolean;
51
+ //# sourceMappingURL=process-exits.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-exits.repository.d.ts","sourceRoot":"","sources":["../../../src/data/memory/process-exits.repository.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;8EAC8E;AAC9E,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,kBAAkB,EAC/B,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC1B,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC/B,QAAQ,CAAC;IAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC,CA2B1C;AAED;sEACsE;AACtE,wBAAgB,cAAc,CAC5B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,kBAAkB,GAC9B,QAAQ,CAAC,UAAU,CAAC,CAYtB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,kBAAkB,EAC/B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,MAAmB,GACvB,OAAO,CAUT;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,kBAAkB,EAC/B,GAAG,GAAE,MAAmB,GACvB,OAAO,CAST;AAED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,GAAG,OAAO,CASrF"}
@@ -0,0 +1,76 @@
1
+ import { Optional } from "../optional.js";
2
+ /**
3
+ * Take the claim on this incarnation's death for `holder`. One statement, so two
4
+ * observers in two processes cannot both win: it inserts the row, or takes over one
5
+ * whose claim no live process holds — never claimed (only sighted), or held by
6
+ * `deadHolder`, the holder the caller has confirmed gone. The takeover is
7
+ * conditional on that very identity, so two observers racing one dead holder still
8
+ * yield one winner. A completed row is never taken again.
9
+ *
10
+ * Won: the exit code to run the exit with — this observer's own, or, when it knows
11
+ * none, the one an earlier holder recorded. Empty: someone else owns this death.
12
+ */
13
+ export function claimExit(db, incarnation, exitCode, holder, deadHolder) {
14
+ const won = db
15
+ .prepare(`INSERT INTO process_exits (thread_id, started_at, pid, exit_code, holder_pid, holder_started_at)
16
+ VALUES (?, ?, ?, ?, ?, ?)
17
+ ON CONFLICT (thread_id, started_at) DO UPDATE SET
18
+ holder_pid = excluded.holder_pid,
19
+ holder_started_at = excluded.holder_started_at,
20
+ exit_code = COALESCE(excluded.exit_code, process_exits.exit_code)
21
+ WHERE process_exits.completed_at IS NULL
22
+ AND (process_exits.holder_pid IS NULL
23
+ OR (process_exits.holder_pid = ? AND process_exits.holder_started_at = ?))
24
+ RETURNING exit_code`)
25
+ .get(incarnation.threadId, incarnation.startedAt, incarnation.pid, exitCode.orElse(null), // eslint-disable-line no-restricted-syntax -- nullable DB column: no code known
26
+ holder.pid, holder.startedAt, deadHolder.map((dead) => dead.pid).orElse(null), // eslint-disable-line no-restricted-syntax -- NULL matches no holder: nothing may be taken over
27
+ deadHolder.map((dead) => dead.startedAt).orElse(null)); // eslint-disable-line no-restricted-syntax -- nullable DB column at the row boundary
28
+ return Optional.fromNullable(won).map((row) => ({
29
+ exitCode: Optional.fromNullable(row.exit_code),
30
+ }));
31
+ }
32
+ /** The holder of this incarnation's claim while its exit is still open. Empty when
33
+ * nobody holds it (no row, only sighted) or the exit is complete. */
34
+ export function readExitHolder(db, incarnation) {
35
+ const row = db
36
+ .prepare(`SELECT holder_pid, holder_started_at FROM process_exits
37
+ WHERE thread_id = ? AND started_at = ? AND completed_at IS NULL AND holder_pid IS NOT NULL`)
38
+ .get(incarnation.threadId, incarnation.startedAt); // eslint-disable-line no-restricted-syntax -- absent row at the row boundary
39
+ return Optional.fromNullable(row).map((r) => ({
40
+ pid: r.holder_pid,
41
+ startedAt: r.holder_started_at,
42
+ }));
43
+ }
44
+ /**
45
+ * This incarnation's exit has run to its end — recorded only by the holder whose
46
+ * claim it is. False: the claim is another holder's now, and so are the exit, its
47
+ * record and its completion. A live holder is never taken over, so this is the
48
+ * claim's invariant rather than a path production takes.
49
+ */
50
+ export function completeExit(db, incarnation, holder, now = Date.now()) {
51
+ return (db
52
+ .prepare(`UPDATE process_exits SET completed_at = ?
53
+ WHERE thread_id = ? AND started_at = ? AND holder_pid = ? AND holder_started_at = ?`)
54
+ .run(now, incarnation.threadId, incarnation.startedAt, holder.pid, holder.startedAt)
55
+ .changes === 1);
56
+ }
57
+ /**
58
+ * Record the first sight of an unclaimed death. True when it had already been
59
+ * sighted (or claimed) before this call — the deferral is over; false on the first
60
+ * sight, which is now recorded.
61
+ */
62
+ export function sightExit(db, incarnation, now = Date.now()) {
63
+ const firstSight = db
64
+ .prepare(`INSERT INTO process_exits (thread_id, started_at, pid, sighted_at) VALUES (?, ?, ?, ?)
65
+ ON CONFLICT (thread_id, started_at) DO NOTHING`)
66
+ .run(incarnation.threadId, incarnation.startedAt, incarnation.pid, now).changes === 1;
67
+ return !firstSight;
68
+ }
69
+ /** True once this incarnation's exit has run to its end. */
70
+ export function isExitComplete(db, incarnation) {
71
+ return (db
72
+ .prepare(`SELECT 1 FROM process_exits
73
+ WHERE thread_id = ? AND started_at = ? AND completed_at IS NOT NULL`)
74
+ .get(incarnation.threadId, incarnation.startedAt) !== undefined);
75
+ }
76
+ //# sourceMappingURL=process-exits.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-exits.repository.js","sourceRoot":"","sources":["../../../src/data/memory/process-exits.repository.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAgB1C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CACvB,EAAY,EACZ,WAA+B,EAC/B,QAA0B,EAC1B,MAAkB,EAClB,UAAgC;IAEhC,MAAM,GAAG,GAAG,EAAE;SACX,OAAO,CACN;;;;;;;;;2BASqB,CACtB;SACA,GAAG,CACF,WAAW,CAAC,QAAQ,EACpB,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,GAAG,EACf,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,gFAAgF;IACvG,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,SAAS,EAChB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,gGAAgG;IACjJ,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CACV,CAAC,CAAC,qFAAqF;IACtI,OAAO,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC9C,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;KAC/C,CAAC,CAAC,CAAC;AACN,CAAC;AAED;sEACsE;AACtE,MAAM,UAAU,cAAc,CAC5B,EAAY,EACZ,WAA+B;IAE/B,MAAM,GAAG,GAAG,EAAE;SACX,OAAO,CACN;kGAC4F,CAC7F;SACA,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,CACa,CAAC,CAAC,6EAA6E;IAC9I,OAAO,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5C,GAAG,EAAE,CAAC,CAAC,UAAU;QACjB,SAAS,EAAE,CAAC,CAAC,iBAAiB;KAC/B,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC1B,EAAY,EACZ,WAA+B,EAC/B,MAAkB,EAClB,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,OAAO,CACL,EAAE;SACC,OAAO,CACN;6FACqF,CACtF;SACA,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC;SACnF,OAAO,KAAK,CAAC,CACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CACvB,EAAY,EACZ,WAA+B,EAC/B,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,MAAM,UAAU,GACd,EAAE;SACC,OAAO,CACN;wDACgD,CACjD;SACA,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC;IAC1F,OAAO,CAAC,UAAU,CAAC;AACrB,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,cAAc,CAAC,EAAY,EAAE,WAA+B;IAC1E,OAAO,CACL,EAAE;SACC,OAAO,CACN;6EACqE,CACtE;SACA,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,KAAK,SAAS,CAClE,CAAC;AACJ,CAAC"}