sensorium-mcp 3.1.0-refactor.17 → 3.1.0-refactor.18

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 (109) hide show
  1. package/dist/config/agent-settings.d.ts +0 -6
  2. package/dist/config/agent-settings.d.ts.map +1 -1
  3. package/dist/config/agent-settings.js +0 -22
  4. package/dist/config/agent-settings.js.map +1 -1
  5. package/dist/config/index.d.ts +0 -1
  6. package/dist/config/index.d.ts.map +1 -1
  7. package/dist/config/index.js +0 -1
  8. package/dist/config/index.js.map +1 -1
  9. package/dist/dashboard/routes/copilot.d.ts.map +1 -1
  10. package/dist/dashboard/routes/copilot.js +1 -17
  11. package/dist/dashboard/routes/copilot.js.map +1 -1
  12. package/dist/dashboard/routes/threads-read.d.ts.map +1 -1
  13. package/dist/dashboard/routes/threads-read.js +2 -9
  14. package/dist/dashboard/routes/threads-read.js.map +1 -1
  15. package/dist/dashboard/routes/threads.js +3 -3
  16. package/dist/dashboard/routes/threads.js.map +1 -1
  17. package/dist/dashboard/routes.d.ts.map +1 -1
  18. package/dist/dashboard/routes.js +4 -11
  19. package/dist/dashboard/routes.js.map +1 -1
  20. package/dist/dashboard/spa.html +11 -11
  21. package/dist/index.js +13 -48
  22. package/dist/index.js.map +1 -1
  23. package/dist/lib/logger.d.ts.map +1 -1
  24. package/dist/lib/logger.js +2 -21
  25. package/dist/lib/logger.js.map +1 -1
  26. package/dist/server/factory.js +6 -16
  27. package/dist/server/factory.js.map +1 -1
  28. package/dist/server/http-server.d.ts.map +1 -1
  29. package/dist/server/http-server.js +7 -10
  30. package/dist/server/http-server.js.map +1 -1
  31. package/dist/services/agent-spawn.service.d.ts +3 -3
  32. package/dist/services/agent-spawn.service.d.ts.map +1 -1
  33. package/dist/services/agent-spawn.service.js +8 -14
  34. package/dist/services/agent-spawn.service.js.map +1 -1
  35. package/dist/services/background-runner.d.ts.map +1 -1
  36. package/dist/services/background-runner.js +12 -6
  37. package/dist/services/background-runner.js.map +1 -1
  38. package/dist/services/claude-spawn.service.d.ts +1 -1
  39. package/dist/services/claude-spawn.service.d.ts.map +1 -1
  40. package/dist/services/claude-spawn.service.js +25 -25
  41. package/dist/services/claude-spawn.service.js.map +1 -1
  42. package/dist/services/codex-spawn.service.d.ts +1 -1
  43. package/dist/services/codex-spawn.service.d.ts.map +1 -1
  44. package/dist/services/codex-spawn.service.js +24 -19
  45. package/dist/services/codex-spawn.service.js.map +1 -1
  46. package/dist/services/copilot-spawn.service.d.ts +1 -1
  47. package/dist/services/copilot-spawn.service.d.ts.map +1 -1
  48. package/dist/services/copilot-spawn.service.js +36 -45
  49. package/dist/services/copilot-spawn.service.js.map +1 -1
  50. package/dist/services/dispatcher/poller.d.ts.map +1 -1
  51. package/dist/services/dispatcher/poller.js +5 -24
  52. package/dist/services/dispatcher/poller.js.map +1 -1
  53. package/dist/services/flight-recorder.service.d.ts.map +1 -1
  54. package/dist/services/flight-recorder.service.js +2 -41
  55. package/dist/services/flight-recorder.service.js.map +1 -1
  56. package/dist/services/keeper.service.d.ts +0 -9
  57. package/dist/services/keeper.service.d.ts.map +1 -1
  58. package/dist/services/keeper.service.js +31 -147
  59. package/dist/services/keeper.service.js.map +1 -1
  60. package/dist/services/process.service.d.ts +62 -40
  61. package/dist/services/process.service.d.ts.map +1 -1
  62. package/dist/services/process.service.js +613 -118
  63. package/dist/services/process.service.js.map +1 -1
  64. package/dist/services/scheduler.d.ts +0 -1
  65. package/dist/services/scheduler.d.ts.map +1 -1
  66. package/dist/services/scheduler.js +11 -58
  67. package/dist/services/scheduler.js.map +1 -1
  68. package/dist/services/self-update.service.d.ts +3 -14
  69. package/dist/services/self-update.service.d.ts.map +1 -1
  70. package/dist/services/self-update.service.js +72 -141
  71. package/dist/services/self-update.service.js.map +1 -1
  72. package/dist/services/spawn-common.d.ts +23 -49
  73. package/dist/services/spawn-common.d.ts.map +1 -1
  74. package/dist/services/spawn-common.js +47 -262
  75. package/dist/services/spawn-common.js.map +1 -1
  76. package/dist/services/thread-health.service.d.ts +1 -1
  77. package/dist/services/thread-health.service.d.ts.map +1 -1
  78. package/dist/services/thread-health.service.js +6 -6
  79. package/dist/services/thread-health.service.js.map +1 -1
  80. package/dist/services/worker-cleanup.service.d.ts.map +1 -1
  81. package/dist/services/worker-cleanup.service.js +92 -9
  82. package/dist/services/worker-cleanup.service.js.map +1 -1
  83. package/dist/tools/defs/session-defs.js +1 -1
  84. package/dist/tools/defs/session-defs.js.map +1 -1
  85. package/dist/tools/defs/utility-defs.d.ts.map +1 -1
  86. package/dist/tools/defs/utility-defs.js +3 -4
  87. package/dist/tools/defs/utility-defs.js.map +1 -1
  88. package/dist/tools/delegate-tool.d.ts +1 -1
  89. package/dist/tools/delegate-tool.d.ts.map +1 -1
  90. package/dist/tools/delegate-tool.js +5 -5
  91. package/dist/tools/delegate-tool.js.map +1 -1
  92. package/dist/tools/session-tools.d.ts.map +1 -1
  93. package/dist/tools/session-tools.js +9 -26
  94. package/dist/tools/session-tools.js.map +1 -1
  95. package/dist/tools/utility-tools.js +1 -1
  96. package/dist/tools/utility-tools.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/config/detail-grant.d.ts +0 -39
  99. package/dist/config/detail-grant.d.ts.map +0 -1
  100. package/dist/config/detail-grant.js +0 -61
  101. package/dist/config/detail-grant.js.map +0 -1
  102. package/dist/services/broker-client.d.ts +0 -181
  103. package/dist/services/broker-client.d.ts.map +0 -1
  104. package/dist/services/broker-client.js +0 -323
  105. package/dist/services/broker-client.js.map +0 -1
  106. package/dist/services/spawn-exit-watcher.d.ts +0 -32
  107. package/dist/services/spawn-exit-watcher.d.ts.map +0 -1
  108. package/dist/services/spawn-exit-watcher.js +0 -102
  109. package/dist/services/spawn-exit-watcher.js.map +0 -1
@@ -9,7 +9,6 @@ import { saveAgentEpisodeSafe } from "../data/memory/index.js";
9
9
  import { isSessionSuperseded, reconcileThreadOwnership } from "../sessions/mcp-registry.js";
10
10
  import { errorMessage } from "../lib/utils.js";
11
11
  import { getThread } from "../data/memory/thread-registry.js";
12
- import { isDetailGrantActive, consumeDetailGrant } from "../config/detail-grant.js";
13
12
  import { getReplyMaxChars } from "../config/misc-settings.js";
14
13
  import { appendFileSync, mkdirSync } from "node:fs";
15
14
  import { join } from "node:path";
@@ -61,20 +60,12 @@ async function handleReportProgress(args, ctx) {
61
60
  if (!rawMessage) {
62
61
  return errorResult("Error: 'message' argument is required for report_progress.");
63
62
  }
64
- // Verbosity is operator-gated. `detailed:true` is the agent's *request* to send
65
- // long; it is honored ONLY while the operator has an active `/detail` grant the
66
- // server can see. Captured once here (non-consuming) so the HARD and WARN gates
67
- // agree on this message, even though the HARD branch consumes the grant below.
68
- const detailRequested = args?.detailed === true;
69
- const grantActive = isDetailGrantActive(effectiveThreadId);
70
63
  const hardChars = getReplyMaxChars();
71
- const overHard = rawMessage.length > hardChars;
72
64
  // Hard length gate — reject BEFORE sending so the agent is forced to comply.
73
- // The ONLY bypass is detailed:true backed by a live operator grant; an
74
- // ungranted detailed:true is ignored (the length check simply applies).
75
- if (overHard && !(detailRequested && grantActive)) {
65
+ // detailed:true (operator explicitly asked for a full report) is the escape.
66
+ if (args?.detailed !== true && rawMessage.length > hardChars) {
76
67
  return errorResult(`Message not sent — ${rawMessage.length} chars exceeds the ${hardChars}-char limit for a mobile-bubble update. ` +
77
- "Shorten it to a couple of sentences, use send_voice for long-form, or ask the operator to send /detail to allow one long message.");
68
+ "Shorten it to a couple of sentences, use send_voice for long-form, or re-call with detailed:true only if the operator explicitly asked for a full report.");
78
69
  }
79
70
  // Normalize literal \n sequences to actual newlines.
80
71
  // Some MCP clients pass escape sequences as literal text (e.g. "foo\\nbar"
@@ -121,13 +112,6 @@ async function handleReportProgress(args, ctx) {
121
112
  "Check the Telegram configuration and try again.");
122
113
  }
123
114
  }
124
- // The over-cap bypass was honored AND the long message actually reached the
125
- // operator → consume the one-shot grant so it can't waive a second long bubble.
126
- // Placed after a confirmed send (never in the warn branch): if the send had
127
- // failed above we returned early, leaving the grant intact for the retry.
128
- if (overHard) {
129
- consumeDetailGrant(effectiveThreadId);
130
- }
131
115
  // Peek at any messages the operator sent while the agent was working.
132
116
  // Tracks previewed update_ids to prevent duplicate previews across calls.
133
117
  // After building the steering preview, we consume messages to prevent
@@ -190,14 +174,13 @@ async function handleReportProgress(args, ctx) {
190
174
  log.debug(`[report_progress] Failed to peek/consume pending messages: ${err instanceof Error ? err.message : String(err)}`);
191
175
  }
192
176
  // Soft length guard: nudge toward short mobile-bubble replies. Not blocking —
193
- // the message was already sent. Suppressed only when detailed:true is backed by
194
- // a live operator grant (`grantActive`, the entry-time peek — an ungranted
195
- // detailed:true no longer silences the warning). Measured on the raw text, not
196
- // the Markdown-converted form, so escape characters don't inflate the count.
197
- const detailAllowed = detailRequested && grantActive;
198
- const lengthWarning = !detailAllowed && rawMessage.length > reportProgressWarnChars()
177
+ // the message was already sent. `detailed: true` (operator asked for a long
178
+ // report) suppresses it. Measured on the raw text, not the Markdown-converted
179
+ // form, so escape characters don't inflate the count.
180
+ const detailed = args?.detailed === true;
181
+ const lengthWarning = !detailed && rawMessage.length > reportProgressWarnChars()
199
182
  ? ` ⚠️ That message was ${rawMessage.length} chars — long for a mobile bubble. ` +
200
- `Keep replies short; for long-form use send_voice, or ask the operator to send /detail if they want a full report.`
183
+ `Keep replies short; for long-form use send_voice, or pass detailed:true if the operator asked for a full report.`
201
184
  : "";
202
185
  const baseStatus = (sentAsPlainText
203
186
  ? "Progress reported successfully (as plain text — formatting could not be applied)."
@@ -1 +1 @@
1
- {"version":3,"file":"session-tools.js","sourceRoot":"","sources":["../../src/tools/session-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-tools.js","sourceRoot":"","sources":["../../src/tools/session-tools.ts"],"names":[],"mappings":"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"}
@@ -222,7 +222,7 @@ async function handleScheduleWakeUp(args, ctx) {
222
222
  const afterIdleMinutes = typeof args.afterIdleMinutes === "number" ? args.afterIdleMinutes : undefined;
223
223
  if (cron && cron.trim().split(/\s+/).length !== 5) {
224
224
  return errorResult("Error: Invalid cron expression. Must be exactly 5 space-separated fields: minute hour day-of-month month day-of-week. " +
225
- "Example: '0 9 * * *' (daily at 9am). Supports *, numbers, comma lists, ranges (1-5), and steps (*/3, 10-19/3).");
225
+ "Example: '0 9 * * *' (daily at 9am). Only *, numbers, and comma-separated lists are supported.");
226
226
  }
227
227
  if (!runAt && !cron && afterIdleMinutes == null) {
228
228
  return errorResult("Error: Specify at least one trigger: 'runAt' (ISO timestamp), 'cron' (5-field), or 'afterIdleMinutes' (number).");
@@ -1 +1 @@
1
- {"version":3,"file":"utility-tools.js","sourceRoot":"","sources":["../../src/tools/utility-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utility-tools.js","sourceRoot":"","sources":["../../src/tools/utility-tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sensorium-mcp",
3
- "version": "3.1.0-refactor.17",
3
+ "version": "3.1.0-refactor.18",
4
4
  "description": "MCP server for remote control of AI assistants via Telegram",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -1,39 +0,0 @@
1
- /**
2
- * Ephemeral, per-thread "detail grant" — an operator-side opt-in that lets the
3
- * agent's next long report_progress bubble bypass the hard length cap.
4
- *
5
- * This is the ONE trustworthy verbosity signal: it is set by an operator
6
- * `/detail` command that the SERVER sees (poller.ts), never by a flag the agent
7
- * sets on itself. A bare `detailed:true` is now ignored — the length check only
8
- * relaxes while a grant is live. Semantics: "next long message OR N minutes,
9
- * whichever comes first" — consumed when the first over-cap message passes, else
10
- * it expires.
11
- *
12
- * Deliberately in-memory only: a ~30-minute grant surviving a server restart has
13
- * no value, so it is never persisted to settings.json.
14
- */
15
- /** Length of a granted window, in minutes. Configurable via DETAIL_GRANT_MINUTES. */
16
- export declare const DETAIL_GRANT_MINUTES: number;
17
- /**
18
- * Open a detail window for a thread: valid until the next long message or
19
- * DETAIL_GRANT_MINUTES from now, whichever comes first. Overwrites any existing
20
- * grant (a fresh `/detail` restarts the clock).
21
- */
22
- export declare function grantDetailWindow(threadId: number, nowMs?: number): void;
23
- /** Drop a thread's grant immediately (operator `/detail off`). Idempotent. */
24
- export declare function revokeDetailGrant(threadId: number): void;
25
- /**
26
- * Non-consuming peek: is there a live (unexpired) grant for this thread? Lazily
27
- * evicts an expired entry so the Map never accumulates stale grants.
28
- *
29
- * `nowMs` defaults to `Date.now()`; it is injectable purely so the window's
30
- * expiry is testable without stubbing the clock.
31
- */
32
- export declare function isDetailGrantActive(threadId: number, nowMs?: number): boolean;
33
- /**
34
- * Consume the grant: if active, delete it and return true (one long message is
35
- * allowed through). If inactive or expired, return false and leave nothing
36
- * behind. One-shot — a second long message needs a fresh `/detail`.
37
- */
38
- export declare function consumeDetailGrant(threadId: number, nowMs?: number): boolean;
39
- //# sourceMappingURL=detail-grant.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detail-grant.d.ts","sourceRoot":"","sources":["../../src/config/detail-grant.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,qFAAqF;AACrF,eAAO,MAAM,oBAAoB,QACkE,CAAC;AAUpG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAAmB,GAAG,IAAI,CAEpF;AAED,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAAmB,GAAG,OAAO,CAQzF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAAmB,GAAG,OAAO,CAIxF"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Ephemeral, per-thread "detail grant" — an operator-side opt-in that lets the
3
- * agent's next long report_progress bubble bypass the hard length cap.
4
- *
5
- * This is the ONE trustworthy verbosity signal: it is set by an operator
6
- * `/detail` command that the SERVER sees (poller.ts), never by a flag the agent
7
- * sets on itself. A bare `detailed:true` is now ignored — the length check only
8
- * relaxes while a grant is live. Semantics: "next long message OR N minutes,
9
- * whichever comes first" — consumed when the first over-cap message passes, else
10
- * it expires.
11
- *
12
- * Deliberately in-memory only: a ~30-minute grant surviving a server restart has
13
- * no value, so it is never persisted to settings.json.
14
- */
15
- const DEFAULT_GRANT_MINUTES = 30;
16
- const rawGrantMinutes = parseFloat(process.env.DETAIL_GRANT_MINUTES ?? "");
17
- /** Length of a granted window, in minutes. Configurable via DETAIL_GRANT_MINUTES. */
18
- export const DETAIL_GRANT_MINUTES = Number.isFinite(rawGrantMinutes) && rawGrantMinutes > 0 ? rawGrantMinutes : DEFAULT_GRANT_MINUTES;
19
- /** threadId → active grant. Absent key = no grant. */
20
- const grants = new Map();
21
- /**
22
- * Open a detail window for a thread: valid until the next long message or
23
- * DETAIL_GRANT_MINUTES from now, whichever comes first. Overwrites any existing
24
- * grant (a fresh `/detail` restarts the clock).
25
- */
26
- export function grantDetailWindow(threadId, nowMs = Date.now()) {
27
- grants.set(threadId, { expiresAt: nowMs + DETAIL_GRANT_MINUTES * 60_000 });
28
- }
29
- /** Drop a thread's grant immediately (operator `/detail off`). Idempotent. */
30
- export function revokeDetailGrant(threadId) {
31
- grants.delete(threadId);
32
- }
33
- /**
34
- * Non-consuming peek: is there a live (unexpired) grant for this thread? Lazily
35
- * evicts an expired entry so the Map never accumulates stale grants.
36
- *
37
- * `nowMs` defaults to `Date.now()`; it is injectable purely so the window's
38
- * expiry is testable without stubbing the clock.
39
- */
40
- export function isDetailGrantActive(threadId, nowMs = Date.now()) {
41
- const grant = grants.get(threadId);
42
- if (!grant)
43
- return false;
44
- if (grant.expiresAt <= nowMs) {
45
- grants.delete(threadId);
46
- return false;
47
- }
48
- return true;
49
- }
50
- /**
51
- * Consume the grant: if active, delete it and return true (one long message is
52
- * allowed through). If inactive or expired, return false and leave nothing
53
- * behind. One-shot — a second long message needs a fresh `/detail`.
54
- */
55
- export function consumeDetailGrant(threadId, nowMs = Date.now()) {
56
- if (!isDetailGrantActive(threadId, nowMs))
57
- return false;
58
- grants.delete(threadId);
59
- return true;
60
- }
61
- //# sourceMappingURL=detail-grant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detail-grant.js","sourceRoot":"","sources":["../../src/config/detail-grant.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;AAC3E,qFAAqF;AACrF,MAAM,CAAC,MAAM,oBAAoB,GAC/B,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,qBAAqB,CAAC;AAOpG,sDAAsD;AACtD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,QAAgB,IAAI,CAAC,GAAG,EAAE;IAC5E,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,GAAG,oBAAoB,GAAG,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,QAAgB,IAAI,CAAC,GAAG,EAAE;IAC9E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,QAAgB,IAAI,CAAC,GAAG,EAAE;IAC7E,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,181 +0,0 @@
1
- /**
2
- * Thin HTTP client for the supervisor's process broker (plan §4.1, Phase 2).
3
- *
4
- * Liveness, identity and kill move OFF the Node event loop and OUT of child
5
- * processes: the supervisor answers from one native NtQuerySystemInformation
6
- * snapshot and kills via native TerminateProcess/TerminateJobObject. Nothing
7
- * here ever spawns a process — the EDR-gated tasklist/powershell/taskkill
8
- * machinery this replaces was itself the leading event-loop stall generator.
9
- *
10
- * Degradation contract (the audited-safe direction, same as the old breakers):
11
- * every function returns `null` when the broker cannot answer (unreachable,
12
- * auth-rejected, timeout) and the caller MUST treat null as "cannot confirm
13
- * → assume alive / kill not performed". Communication is strictly one-way
14
- * MCP → supervisor.
15
- */
16
- /**
17
- * How a failed broker call failed — the distinction the spawn contract pivots on:
18
- * "no-connection" the TCP connection was never established (refused, host
19
- * unreachable, connect timeout). The request CANNOT have
20
- * reached the broker, so no process can have been created —
21
- * a legacy local spawn is safe.
22
- * "uncertain" the request may have been received and processed (read
23
- * timeout, connection dropped mid-flight, unknown error).
24
- * A process MAY exist broker-side — a blind local spawn
25
- * could create a duplicate and is forbidden.
26
- */
27
- export type BrokerFetchFailure = "no-connection" | "uncertain";
28
- export interface BrokerAliveResult {
29
- alive: boolean;
30
- pidFound: boolean;
31
- identityChecked: boolean;
32
- identityMismatch: boolean;
33
- startTimeMs?: number;
34
- /** Exit code from the broker's ledger once the process is gone (spawn-side
35
- * handle-wait recorded it). Undefined while alive / never managed. */
36
- exitCode?: number | null;
37
- /** Ledger state of the pid's latest row ("running"/"exited"/"killed"/…). */
38
- registryState?: string | null;
39
- }
40
- /**
41
- * Ask the broker whether `pid` is alive AND (when `startedAtMs` is given) still
42
- * the same process we spawned (creation-time identity, ±60s tolerance — the
43
- * same rule the deleted tasklist/Get-Process snapshots enforced).
44
- * `startTimeTicks` (native creation FILETIME from a broker spawn) upgrades the
45
- * check to exact identity. Returns null when the broker cannot answer.
46
- */
47
- export declare function brokerCheckAlive(pid: number, startedAtMs?: number, startTimeTicks?: number): Promise<BrokerAliveResult | null>;
48
- export interface BrokerKillResult {
49
- killed: boolean;
50
- alive: boolean;
51
- alreadyDead: boolean;
52
- identityMismatch: boolean;
53
- refused: boolean;
54
- error?: string;
55
- }
56
- /**
57
- * Ask the broker to kill the process tree rooted at `pid` (native, identity-
58
- * checked when `startedAtMs` is given; the broker records the outcome in its
59
- * on-disk registry). Returns null when the broker cannot answer — the caller
60
- * must then fall back / re-verify, never assume the kill happened.
61
- */
62
- export declare function brokerKillTree(pid: number, opts?: {
63
- threadId?: number;
64
- killedBy?: string;
65
- reason?: string;
66
- startedAtMs?: number;
67
- }): Promise<BrokerKillResult | null>;
68
- export interface BrokerSpawnSpec {
69
- threadId: number;
70
- role: string;
71
- exe: string;
72
- args: string[];
73
- env: Record<string, string>;
74
- cwd?: string;
75
- logFilePath: string;
76
- /** Prompt-sized stdin payload for CLIs that read their prompt from stdin
77
- * (Codex). Omitted → the child gets NUL stdin (Node's "ignore"). */
78
- stdinData?: string;
79
- }
80
- export interface BrokerSpawnSuccess {
81
- pid: number;
82
- /** Native creation FILETIME — exact process identity for later checks/kills. */
83
- startTimeTicks: number;
84
- startTimeMs: number;
85
- jobName: string | null;
86
- /** Launched but job containment failed (Avecto downgrade §4.2) — managed via
87
- * registry identity only. Already logged loudly broker-side. */
88
- jobAssignFailed: boolean;
89
- /** Idempotent hit: the thread ALREADY had a live managed process and pid
90
- * describes that process — nothing new was spawned. */
91
- existing: boolean;
92
- }
93
- /**
94
- * The four spawn outcomes the caller MUST keep apart:
95
- * success → a process is running and registered (existing=true when it
96
- * was already there — the idempotency contract);
97
- * { error } → the broker answered and the spawn FAILED. No process was
98
- * created (the broker's idempotency check also found none);
99
- * { unavailable } → the request DEFINITIVELY never spawned anything: the
100
- * connection was never established, or the broker answered
101
- * 404/401 (endpoint absent on an old binary / bad secret).
102
- * A legacy local spawn cannot duplicate anything;
103
- * { uncertain } → timeout or connection lost mid-flight: the broker MAY
104
- * have created a process. A blind local spawn could
105
- * duplicate the agent — the caller must reconcile via
106
- * brokerListThread / an idempotent spawn retry instead.
107
- */
108
- export type BrokerSpawnResult = BrokerSpawnSuccess | {
109
- error: string;
110
- } | {
111
- unavailable: string;
112
- } | {
113
- uncertain: string;
114
- };
115
- /**
116
- * Ask the supervisor to spawn an agent process: CreateProcess(CREATE_SUSPENDED)
117
- * → assign to the thread's named job → resume. The supervisor is the process
118
- * owner; children (hooks, grandchildren) land in the job automatically.
119
- * Spawn is idempotent by threadId server-side (create-or-return), which is what
120
- * makes retrying after an uncertain outcome safe.
121
- */
122
- export declare function brokerSpawn(spec: BrokerSpawnSpec): Promise<BrokerSpawnResult>;
123
- export interface BrokerProcEntry {
124
- pid: number;
125
- startTimeTicks: number;
126
- startTimeMs: number;
127
- name: string;
128
- }
129
- /**
130
- * The broker's live process list for a thread (job members, falling back to the
131
- * registry root's tree). This is the reconcile source of truth after an
132
- * uncertain spawn: a live entry here means the thread HAS its process — adopt
133
- * it, never spawn another. `known:false` → the broker answered and has no
134
- * record of the thread. Null → broker could not answer.
135
- */
136
- export declare function brokerListThread(threadId: number): Promise<{
137
- known: boolean;
138
- processes: BrokerProcEntry[];
139
- } | null>;
140
- /**
141
- * Ask the broker to adopt an already-running process (spawned before the broker
142
- * owned spawning, or during a broker outage) into the thread's job + registry.
143
- * Idempotent server-side. Best-effort: null when the broker cannot answer.
144
- */
145
- export declare function brokerAdopt(threadId: number, pid: number, startedAtMs?: number, role?: string): Promise<{
146
- adopted: boolean;
147
- alreadyManaged: boolean;
148
- } | null>;
149
- export type BrokerRestartVerdict = "accepted" | "in-progress";
150
- /**
151
- * Ask the supervisor — the single process-lifecycle owner — to tear down and
152
- * respawn THIS server (self-update path). The supervisor answers 202 before
153
- * doing anything: the requester is the process about to be killed, so it can
154
- * never observe completion. 409 means a restart is already in progress, which
155
- * delivers exactly what the caller wants — treat it as success.
156
- *
157
- * Returns null when the supervisor cannot answer (unreachable, or an old
158
- * binary without /restart → 404/401). The caller decides between the flagged
159
- * legacy self-spawn fallback and a loud abort — same contract as brokerSpawn.
160
- */
161
- export declare function brokerRequestRestart(reason: string): Promise<BrokerRestartVerdict | null>;
162
- export interface BrokerKeeperState {
163
- threadId: number;
164
- retryCount: number;
165
- fastExitCount: number;
166
- fastExitEscalation: number;
167
- cooldownUntilMs: number | null;
168
- survivedKillCount: number;
169
- lastStartAtMs: number | null;
170
- }
171
- /** Load a thread's persisted keeper counters. Null → broker unreachable OR no
172
- * state saved yet (both mean "start from defaults"). */
173
- export declare function brokerGetKeeperState(threadId: number): Promise<BrokerKeeperState | null>;
174
- /** Persist a thread's keeper counters (fire-and-forget from the keeper; a lost
175
- * write degrades to today's in-memory behavior, already logged at WARN by the
176
- * unreachable path). */
177
- export declare function brokerSaveKeeperState(state: BrokerKeeperState): Promise<void>;
178
- /** Test hook: reset the unreachable-cooldown state. */
179
- export declare function resetBrokerClientState(): void;
180
- export declare function brokerSpawnTimeoutForTest(ms: number | null): void;
181
- //# sourceMappingURL=broker-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"broker-client.d.ts","sourceRoot":"","sources":["../../src/services/broker-client.ts"],"names":[],"mappings":"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"}