@trusty-squire/mcp 1.1.18 → 1.1.19-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.js +7 -12
- package/dist/bin.js.map +1 -1
- package/dist/bot/broker/authority.d.ts +6 -2
- package/dist/bot/broker/authority.d.ts.map +1 -1
- package/dist/bot/broker/authority.js +25 -5
- package/dist/bot/broker/authority.js.map +1 -1
- package/dist/bot/broker/discovery.d.ts +15 -0
- package/dist/bot/broker/discovery.d.ts.map +1 -1
- package/dist/bot/broker/discovery.js +142 -7
- package/dist/bot/broker/discovery.js.map +1 -1
- package/dist/bot/broker/forwarder.d.ts.map +1 -1
- package/dist/bot/broker/forwarder.js +9 -3
- package/dist/bot/broker/forwarder.js.map +1 -1
- package/dist/bot/broker/mcp-principal.js +2 -2
- package/dist/bot/broker/mcp-principal.js.map +1 -1
- package/dist/bot/broker/mcp-socket.js +1 -1
- package/dist/bot/broker/mcp-socket.js.map +1 -1
- package/dist/bot/broker/protocol.d.ts.map +1 -1
- package/dist/bot/broker/protocol.js +2 -1
- package/dist/bot/broker/protocol.js.map +1 -1
- package/dist/bot/broker/transport.d.ts.map +1 -1
- package/dist/bot/broker/transport.js +4 -5
- package/dist/bot/broker/transport.js.map +1 -1
- package/dist/bot/session/lifecycle.d.ts.map +1 -1
- package/dist/bot/session/lifecycle.js +3 -30
- package/dist/bot/session/lifecycle.js.map +1 -1
- package/dist/bot/session/model.d.ts.map +1 -1
- package/dist/bot/session/model.js.map +1 -1
- package/dist/relay.d.ts.map +1 -1
- package/dist/relay.js +26 -3
- package/dist/relay.js.map +1 -1
- package/dist/server.d.ts +1 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +11 -239
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
- package/dist/bot/broker/agent-identity.d.ts +0 -4
- package/dist/bot/broker/agent-identity.d.ts.map +0 -1
- package/dist/bot/broker/agent-identity.js +0 -12
- package/dist/bot/broker/agent-identity.js.map +0 -1
- package/dist/server-instance-registry.d.ts +0 -115
- package/dist/server-instance-registry.d.ts.map +0 -1
- package/dist/server-instance-registry.js +0 -405
- package/dist/server-instance-registry.js.map +0 -1
package/dist/server.js
CHANGED
|
@@ -2,45 +2,24 @@ import { resolveBrokerSocket } from "./bot/broker/discovery.js";
|
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import { BrokerRefusal } from "./bot/broker/refusal.js";
|
|
4
4
|
import { ForwardedResultError, OperatorForwarder } from "./bot/broker/forwarder.js";
|
|
5
|
-
// MCP server
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
9
|
-
// `runServer()` is invoked by bin.ts for the `server` subcommand. This
|
|
10
|
-
// file is a pure module — no shebang, no entrypoint guard, no top-level
|
|
11
|
-
// execution. The host agent launches `mcp server`; bin.ts dispatches.
|
|
12
|
-
//
|
|
13
|
-
// Single-tier auth (post-Tier-0 collapse): every session is account-
|
|
14
|
-
// bound. Sessions that pre-date the single-tier change (only a
|
|
15
|
-
// machine_token, no agent_session_token) fail loud at tool-call time
|
|
16
|
-
// with a re-install instruction. There is no anonymous mode.
|
|
5
|
+
// MCP tool server used by the broker's shared socket. Agent-facing
|
|
6
|
+
// `mcp server` is a relay onto that socket (`relay.ts`); this module
|
|
7
|
+
// is not a process entrypoint.
|
|
17
8
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
18
|
-
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
19
9
|
import { CallToolRequestSchema, ListToolsRequestSchema } from "@modelcontextprotocol/sdk/types.js";
|
|
20
10
|
import { ApiClient } from "./api-client.js";
|
|
21
11
|
import { awaitOperatorSettlement, composeOperatorSignals, withOperatorRequestContext, } from "./bot/request-cancellation.js";
|
|
22
|
-
import { heartbeatIntervalMs, idleCheckIntervalMs, idleTimeoutMs, idleTimeoutWithSessionMs, reapStaleServerInstances, registerServerInstance, serverLauncherLineage, shutdownDeadlineMs, } from "./server-instance-registry.js";
|
|
23
12
|
import { buildToolRegistry, findTool } from "./tools/index.js";
|
|
24
|
-
import { createSessionGuard,
|
|
13
|
+
import { createSessionGuard, withServingAccountId, } from "./session-guard.js";
|
|
25
14
|
import { VERSION } from "./version.js";
|
|
26
15
|
const SERVER_NAME = "trusty-squire";
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
// host that accepts closing a quiet stdio connection.
|
|
35
|
-
//
|
|
36
|
-
// A live host can stay quiet between turns for longer than either historical
|
|
37
|
-
// bound. The idle backstop is opt-in; the bounds live in
|
|
38
|
-
// server-instance-registry.ts.
|
|
39
|
-
// Exported for unit testing; kept pure so the branches (recent activity,
|
|
40
|
-
// no-session idle, session-open idle) don't need a live process/interval.
|
|
41
|
-
export function shouldIdleExit(now, lastActivityAt, sessionCount, timeoutMs, timeoutWithSessionMs) {
|
|
42
|
-
const threshold = sessionCount === 0 ? timeoutMs : timeoutWithSessionMs;
|
|
43
|
-
return threshold > 0 && now - lastActivityAt >= threshold;
|
|
16
|
+
const DEFAULT_SHUTDOWN_DEADLINE_MS = 30_000;
|
|
17
|
+
export function shutdownDeadlineMs() {
|
|
18
|
+
const raw = process.env.TRUSTY_SQUIRE_SERVER_SHUTDOWN_DEADLINE_MS;
|
|
19
|
+
if (raw === undefined)
|
|
20
|
+
return DEFAULT_SHUTDOWN_DEADLINE_MS;
|
|
21
|
+
const parsed = Number(raw);
|
|
22
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : DEFAULT_SHUTDOWN_DEADLINE_MS;
|
|
44
23
|
}
|
|
45
24
|
// Injected into the model's system prompt every turn (≤2KB). Teaches
|
|
46
25
|
// the routing between store / use / request so the agent reaches for
|
|
@@ -312,211 +291,4 @@ function errorContent(code, message, guidance) {
|
|
|
312
291
|
],
|
|
313
292
|
};
|
|
314
293
|
}
|
|
315
|
-
// Process-level backstop for the stdio server. Every tool handler is already
|
|
316
|
-
// wrapped in try/catch, but an async error can still escape that boundary —
|
|
317
|
-
// e.g. a Playwright event waiter whose rejection fires while another await is
|
|
318
|
-
// pending (the uploadFile filechooser race that took the server down mid-run).
|
|
319
|
-
// Node's default response to an unhandledRejection/uncaughtException is to
|
|
320
|
-
// kill the process, which turns one bad operate_* call into "MCP server
|
|
321
|
-
// unreachable" for the host agent. Log the escape and keep serving: the
|
|
322
|
-
// in-flight call fails on its own (its awaited promise threw or timed out),
|
|
323
|
-
// session/browser state is self-contained and bounded by its watchdog and
|
|
324
|
-
// terminal teardown, and no security gate depends on process death — a crash
|
|
325
|
-
// leaves any half-done page action in exactly the same state, minus the
|
|
326
|
-
// transport. Installed only for `mcp server`; the CLI keeps fail-fast.
|
|
327
|
-
export function installServerProcessGuards(onOutputFailure = () => process.exit(0)) {
|
|
328
|
-
const describe = (reason) => reason instanceof Error ? (reason.stack ?? reason.message) : String(reason);
|
|
329
|
-
const outputFailed = () => {
|
|
330
|
-
onOutputFailure();
|
|
331
|
-
};
|
|
332
|
-
// A dead stdio peer closes the read ends of stdout/stderr. Without explicit
|
|
333
|
-
// listeners, Node promotes the resulting EPIPE to uncaughtException; the
|
|
334
|
-
// handler below then writes that exception to the same broken stderr and
|
|
335
|
-
// enters a tight EPIPE loop. Treat output failure as transport loss instead.
|
|
336
|
-
process.stdout.on("error", outputFailed);
|
|
337
|
-
process.stderr.on("error", outputFailed);
|
|
338
|
-
process.on("unhandledRejection", (reason) => {
|
|
339
|
-
process.stderr.write(`[trusty-squire] unhandled rejection (server kept alive): ${describe(reason)}\n`);
|
|
340
|
-
});
|
|
341
|
-
process.on("uncaughtException", (err) => {
|
|
342
|
-
process.stderr.write(`[trusty-squire] uncaught exception (server kept alive): ${describe(err)}\n`);
|
|
343
|
-
});
|
|
344
|
-
}
|
|
345
|
-
// Start the MCP stdio server. Throws on a fatal startup failure; bin.ts
|
|
346
|
-
// owns the process-level error handling.
|
|
347
|
-
export async function runServer() {
|
|
348
|
-
let outputFailed = false;
|
|
349
|
-
let shutdownAfterOutputFailure;
|
|
350
|
-
installServerProcessGuards(() => {
|
|
351
|
-
outputFailed = true;
|
|
352
|
-
shutdownAfterOutputFailure?.();
|
|
353
|
-
});
|
|
354
|
-
// Startup breadcrumb on stderr (which lands in the host agent's MCP
|
|
355
|
-
// log). A silent no-op was the worst part of the entrypoint-guard
|
|
356
|
-
// bug — this line makes "did the server actually start?" answerable
|
|
357
|
-
// at a glance.
|
|
358
|
-
process.stderr.write(`[trusty-squire] server v${VERSION} starting\n`);
|
|
359
|
-
// Owns this server's answer to "which account am I serving?".
|
|
360
|
-
const sessionGuard = createSessionGuard();
|
|
361
|
-
const loadPublishedAccountSession = async () => {
|
|
362
|
-
try {
|
|
363
|
-
const session = await sessionGuard.bind();
|
|
364
|
-
setServingAccountId(sessionGuard.boundAccountId());
|
|
365
|
-
// Single-tier: every session is account-bound. A session with just a
|
|
366
|
-
// machine_token (pre-collapse install) yields api=null, and every
|
|
367
|
-
// tool call returns the re-install instruction.
|
|
368
|
-
if (session === null || session.agent_session_token === undefined)
|
|
369
|
-
return null;
|
|
370
|
-
return new ApiClient({
|
|
371
|
-
apiBaseUrl: session.api_base_url,
|
|
372
|
-
registryBaseUrl: DEFAULT_REGISTRY_BASE,
|
|
373
|
-
agentSessionToken: session.agent_session_token,
|
|
374
|
-
agentIdentity: process.env.TRUSTY_SQUIRE_AGENT_IDENTITY ?? "unknown",
|
|
375
|
-
...(session.account_id !== undefined ? { accountId: session.account_id } : {}),
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
catch {
|
|
379
|
-
// A failed session read must remain fail-closed; the next tool call can
|
|
380
|
-
// retry after a transient session-storage problem clears.
|
|
381
|
-
return null;
|
|
382
|
-
}
|
|
383
|
-
};
|
|
384
|
-
const api = await loadPublishedAccountSession();
|
|
385
|
-
const instanceLineage = serverLauncherLineage();
|
|
386
|
-
try {
|
|
387
|
-
await reapStaleServerInstances({ launcherLineage: instanceLineage });
|
|
388
|
-
}
|
|
389
|
-
catch (err) {
|
|
390
|
-
process.stderr.write(`[trusty-squire] stale server reap failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
391
|
-
}
|
|
392
|
-
const callAdmission = createServerCallAdmission();
|
|
393
|
-
const brokerFrontend = Boolean(process.env.TRUSTY_SQUIRE_BROKER_SOCKET?.trim());
|
|
394
|
-
const forwarder = new OperatorForwarder(resolveBrokerSocket(), sessionGuard);
|
|
395
|
-
const server = await buildServer(api, callAdmission, loadPublishedAccountSession, sessionGuard, forwarder);
|
|
396
|
-
const transport = new StdioServerTransport();
|
|
397
|
-
// Publishes what a later launch of this identity needs to tell "still
|
|
398
|
-
// serving a client" from "wedged": last inbound message, open sessions,
|
|
399
|
-
// in-flight calls. Without it every prior instance looks equally idle.
|
|
400
|
-
const instance = registerServerInstance({ launcherLineage: instanceLineage });
|
|
401
|
-
// A stdio client can disappear without sending a signal (for example when
|
|
402
|
-
// its parent agent exits). Chrome keeps Node's event loop alive in that
|
|
403
|
-
// case, so close every active provisioning browser and explicitly exit.
|
|
404
|
-
// Keep the single promise so EOF, transport closure, a signal, and the
|
|
405
|
-
// idle backstop below racing together cannot run teardown twice.
|
|
406
|
-
let shutdown;
|
|
407
|
-
let idleTimer;
|
|
408
|
-
let heartbeatTimer;
|
|
409
|
-
let staleInstanceSweepTimer;
|
|
410
|
-
let staleInstanceSweepRunning = false;
|
|
411
|
-
const sweepStaleInstances = () => {
|
|
412
|
-
if (shutdown !== undefined || staleInstanceSweepRunning)
|
|
413
|
-
return;
|
|
414
|
-
staleInstanceSweepRunning = true;
|
|
415
|
-
void reapStaleServerInstances({ launcherLineage: instanceLineage })
|
|
416
|
-
.catch((err) => {
|
|
417
|
-
process.stderr.write(`[trusty-squire] stale server reap failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
418
|
-
})
|
|
419
|
-
.finally(() => {
|
|
420
|
-
staleInstanceSweepRunning = false;
|
|
421
|
-
});
|
|
422
|
-
};
|
|
423
|
-
const requestShutdown = () => {
|
|
424
|
-
if (shutdown !== undefined)
|
|
425
|
-
return;
|
|
426
|
-
const admittedCallsDrained = callAdmission.closeAndDrain();
|
|
427
|
-
const deadlineMs = shutdownDeadlineMs();
|
|
428
|
-
const shutdownDeadlineAt = Date.now() + deadlineMs;
|
|
429
|
-
instance?.markDraining(shutdownDeadlineAt, {
|
|
430
|
-
lastActivityAt,
|
|
431
|
-
activeSessions: forwarder.sessionCount(),
|
|
432
|
-
inFlightCalls: callAdmission.inFlightCount(),
|
|
433
|
-
});
|
|
434
|
-
shutdown = (async () => {
|
|
435
|
-
process.stdin.removeListener("end", requestShutdown);
|
|
436
|
-
process.stdin.removeListener("close", requestShutdown);
|
|
437
|
-
process.removeListener("SIGHUP", requestShutdown);
|
|
438
|
-
process.removeListener("SIGTERM", requestShutdown);
|
|
439
|
-
process.removeListener("SIGINT", requestShutdown);
|
|
440
|
-
if (idleTimer !== undefined)
|
|
441
|
-
clearInterval(idleTimer);
|
|
442
|
-
if (heartbeatTimer !== undefined)
|
|
443
|
-
clearInterval(heartbeatTimer);
|
|
444
|
-
if (staleInstanceSweepTimer !== undefined)
|
|
445
|
-
clearInterval(staleInstanceSweepTimer);
|
|
446
|
-
try {
|
|
447
|
-
const outcome = await runBoundedServerCleanup(admittedCallsDrained, async () => {
|
|
448
|
-
await forwarder.close();
|
|
449
|
-
await server.close();
|
|
450
|
-
}, deadlineMs);
|
|
451
|
-
if (outcome === "deadline")
|
|
452
|
-
process.stderr.write(`[trusty-squire] server shutdown deadline reached after ${deadlineMs}ms; forcing exit\n`);
|
|
453
|
-
}
|
|
454
|
-
catch (err) {
|
|
455
|
-
// Teardown is best-effort: the host is gone, so leave a breadcrumb but
|
|
456
|
-
// never let a failed browser close turn into an orphaned MCP process.
|
|
457
|
-
process.stderr.write(`[trusty-squire] server shutdown cleanup failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
458
|
-
}
|
|
459
|
-
// Browser/Chrome child processes can keep the event loop alive briefly
|
|
460
|
-
// even after their teardown. This mirrors bin.ts's forced CLI exit and
|
|
461
|
-
// makes disconnect a reliable process-lifecycle boundary.
|
|
462
|
-
// Keep the draining record discoverable for the entire terminal cleanup.
|
|
463
|
-
// The owner reaper remains armed until process.exit; only now is the
|
|
464
|
-
// instance record no longer needed by a same-lineage replacement.
|
|
465
|
-
instance?.release();
|
|
466
|
-
process.exit(0);
|
|
467
|
-
})();
|
|
468
|
-
};
|
|
469
|
-
// Protocol.connect preserves a transport callback installed before it takes
|
|
470
|
-
// ownership, so this also covers an explicit transport close.
|
|
471
|
-
transport.onclose = requestShutdown;
|
|
472
|
-
process.stdin.once("end", requestShutdown);
|
|
473
|
-
process.stdin.once("close", requestShutdown);
|
|
474
|
-
process.once("SIGHUP", requestShutdown);
|
|
475
|
-
process.once("SIGTERM", requestShutdown);
|
|
476
|
-
process.once("SIGINT", requestShutdown);
|
|
477
|
-
// Protocol.connect chains transport.onmessage the same way it chains
|
|
478
|
-
// onclose (see the comment above), so this sees every inbound message —
|
|
479
|
-
// requests, notifications, pings — not just tool calls, without having to
|
|
480
|
-
// reach into buildServer's request handlers.
|
|
481
|
-
let lastActivityAt = Date.now();
|
|
482
|
-
transport.onmessage = () => {
|
|
483
|
-
lastActivityAt = Date.now();
|
|
484
|
-
};
|
|
485
|
-
// A broker front end owns no browser. Keep its stdio transport available
|
|
486
|
-
// until the host closes it; the broker owns browser lifetime and cleanup.
|
|
487
|
-
if (!brokerFrontend) {
|
|
488
|
-
idleTimer = setInterval(() => {
|
|
489
|
-
if (shutdown !== undefined)
|
|
490
|
-
return;
|
|
491
|
-
if (forwarder.connected())
|
|
492
|
-
return;
|
|
493
|
-
const sessionCount = forwarder.sessionCount();
|
|
494
|
-
if (!shouldIdleExit(Date.now(), lastActivityAt, sessionCount, idleTimeoutMs(), idleTimeoutWithSessionMs())) {
|
|
495
|
-
return;
|
|
496
|
-
}
|
|
497
|
-
process.stderr.write(`[trusty-squire] server idle with ${sessionCount} open session(s) and no client ` +
|
|
498
|
-
`activity past the bound; exiting (this tears down any open session's browser)\n`);
|
|
499
|
-
requestShutdown();
|
|
500
|
-
}, idleCheckIntervalMs());
|
|
501
|
-
idleTimer.unref();
|
|
502
|
-
}
|
|
503
|
-
if (instance !== null) {
|
|
504
|
-
heartbeatTimer = setInterval(() => {
|
|
505
|
-
if (shutdown !== undefined)
|
|
506
|
-
return;
|
|
507
|
-
instance.heartbeat({
|
|
508
|
-
lastActivityAt: forwarder.connected() ? Date.now() : lastActivityAt,
|
|
509
|
-
activeSessions: forwarder.sessionCount(),
|
|
510
|
-
inFlightCalls: callAdmission.inFlightCount(),
|
|
511
|
-
});
|
|
512
|
-
}, heartbeatIntervalMs());
|
|
513
|
-
heartbeatTimer.unref();
|
|
514
|
-
}
|
|
515
|
-
staleInstanceSweepTimer = setInterval(sweepStaleInstances, heartbeatIntervalMs());
|
|
516
|
-
staleInstanceSweepTimer.unref();
|
|
517
|
-
shutdownAfterOutputFailure = requestShutdown;
|
|
518
|
-
if (outputFailed)
|
|
519
|
-
requestShutdown();
|
|
520
|
-
await server.connect(transport);
|
|
521
|
-
}
|
|
522
294
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/** A Beeline room gives every agent a stable private HOME across MCP process
|
|
2
|
-
* restarts. Other callers without an explicit identity stay process-scoped. */
|
|
3
|
-
export declare function brokerAgentIdentity(env?: NodeJS.ProcessEnv, pid?: number): string;
|
|
4
|
-
//# sourceMappingURL=agent-identity.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-identity.d.ts","sourceRoot":"","sources":["../../../src/bot/broker/agent-identity.ts"],"names":[],"mappings":"AAAA;+EAC+E;AAC/E,wBAAgB,mBAAmB,CACjC,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,GAAG,SAAc,GAChB,MAAM,CAQR"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/** A Beeline room gives every agent a stable private HOME across MCP process
|
|
2
|
-
* restarts. Other callers without an explicit identity stay process-scoped. */
|
|
3
|
-
export function brokerAgentIdentity(env = process.env, pid = process.pid) {
|
|
4
|
-
const configured = env.TRUSTY_SQUIRE_AGENT_IDENTITY?.trim();
|
|
5
|
-
if (configured)
|
|
6
|
-
return configured;
|
|
7
|
-
const room = env.HOME?.match(/(?:^|\/)\.local\/state\/beeline\/agents\/([a-f0-9]+)\/rooms\/([a-f0-9-]+)\/agent-home\/user\/?$/);
|
|
8
|
-
if (room)
|
|
9
|
-
return `beeline:${room[1]}:${room[2]}`;
|
|
10
|
-
return `local-process:${pid}`;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=agent-identity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-identity.js","sourceRoot":"","sources":["../../../src/bot/broker/agent-identity.ts"],"names":[],"mappings":"AAAA;+EAC+E;AAC/E,MAAM,UAAU,mBAAmB,CACjC,MAAyB,OAAO,CAAC,GAAG,EACpC,GAAG,GAAG,OAAO,CAAC,GAAG;IAEjB,MAAM,UAAU,GAAG,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAC5D,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAClC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAC1B,iGAAiG,CAClG,CAAC;IACF,IAAI,IAAI;QAAE,OAAO,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,OAAO,iBAAiB,GAAG,EAAE,CAAC;AAChC,CAAC"}
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { type ProcessIdentityState } from "./bot/profile.js";
|
|
2
|
-
export declare function idleTimeoutMs(): number;
|
|
3
|
-
export declare function idleTimeoutWithSessionMs(): number;
|
|
4
|
-
export declare function idleCheckIntervalMs(): number;
|
|
5
|
-
export declare function heartbeatIntervalMs(): number;
|
|
6
|
-
export declare function shutdownDeadlineMs(): number;
|
|
7
|
-
export interface ServerBirthIdentity {
|
|
8
|
-
pid: number;
|
|
9
|
-
start_time: string;
|
|
10
|
-
}
|
|
11
|
-
/** The activity a live instance publishes so a later launch can judge it. */
|
|
12
|
-
export interface ServerInstanceActivity {
|
|
13
|
-
lastActivityAt: number;
|
|
14
|
-
activeSessions: number;
|
|
15
|
-
inFlightCalls: number;
|
|
16
|
-
}
|
|
17
|
-
export interface ServerInstanceRecord extends ServerBirthIdentity {
|
|
18
|
-
version: 1;
|
|
19
|
-
agent_identity: string;
|
|
20
|
-
/** Hash of a stable per-launcher/lane secret. Never a human-readable label. */
|
|
21
|
-
launcher_lineage?: string;
|
|
22
|
-
state?: "serving" | "draining";
|
|
23
|
-
shutdown_deadline_at?: number;
|
|
24
|
-
/** PPid at registration, so a host that IS init isn't read as an orphan. */
|
|
25
|
-
parent_pid: number;
|
|
26
|
-
started_at: number;
|
|
27
|
-
/** Last heartbeat write — proves the instance's event loop still runs. */
|
|
28
|
-
heartbeat_at: number;
|
|
29
|
-
/** Last inbound client message — proves a client is still talking to it. */
|
|
30
|
-
last_activity_at: number;
|
|
31
|
-
active_sessions: number;
|
|
32
|
-
in_flight_calls: number;
|
|
33
|
-
server_version: string;
|
|
34
|
-
}
|
|
35
|
-
export interface ServerReapBounds {
|
|
36
|
-
graceMs: number;
|
|
37
|
-
}
|
|
38
|
-
export declare function serverReapBounds(): ServerReapBounds;
|
|
39
|
-
export declare function serverLauncherLineage(options?: {
|
|
40
|
-
accountId?: string;
|
|
41
|
-
identity?: string;
|
|
42
|
-
env?: NodeJS.ProcessEnv;
|
|
43
|
-
profileDir?: string;
|
|
44
|
-
}): string;
|
|
45
|
-
export declare function readServerInstanceRecord(path: string): ServerInstanceRecord | null;
|
|
46
|
-
export type ParentPidRead = number | "stale" | "unknown";
|
|
47
|
-
/**
|
|
48
|
-
* Descendants by PPid chain — never by process group. A stdio server shares
|
|
49
|
-
* its parent's process group, so `kill(-pgid)` would take the host agent
|
|
50
|
-
* down with it.
|
|
51
|
-
*/
|
|
52
|
-
export declare function processDescendantIdentities(pid: number, readers?: {
|
|
53
|
-
readProcessIds?: () => number[];
|
|
54
|
-
readParentPid?: (pid: number) => ParentPidRead;
|
|
55
|
-
readBirthIdentity?: (pid: number) => ServerBirthIdentity | null;
|
|
56
|
-
}): ServerBirthIdentity[];
|
|
57
|
-
export type ServerInstanceReapDecision = "keep" | "reap" | "forget";
|
|
58
|
-
/**
|
|
59
|
-
* The whole safety contract, as one pure function. `forget` means the record
|
|
60
|
-
* names no live process — delete the file, signal nothing.
|
|
61
|
-
*/
|
|
62
|
-
export declare function serverInstanceReapDecision(record: ServerInstanceRecord, self: {
|
|
63
|
-
agent_identity: string;
|
|
64
|
-
launcher_lineage?: string;
|
|
65
|
-
pid: number;
|
|
66
|
-
start_time: string;
|
|
67
|
-
}, liveness: ProcessIdentityState, parentPid: ParentPidRead, now: number, _bounds: ServerReapBounds): ServerInstanceReapDecision;
|
|
68
|
-
export interface ServerInstanceHandle {
|
|
69
|
-
readonly path: string;
|
|
70
|
-
heartbeat(activity: ServerInstanceActivity): void;
|
|
71
|
-
markDraining(deadlineAt: number, activity: ServerInstanceActivity): void;
|
|
72
|
-
release(): void;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Publish this instance's heartbeat so a later launch of the same identity can
|
|
76
|
-
* tell "still serving a client" from "wedged". Returns null when there is
|
|
77
|
-
* nothing to publish (non-Linux, no agent identity, unreadable birth identity).
|
|
78
|
-
*/
|
|
79
|
-
export declare function registerServerInstance(options?: {
|
|
80
|
-
rootDir?: string;
|
|
81
|
-
identity?: string;
|
|
82
|
-
accountId?: string;
|
|
83
|
-
launcherLineage?: string;
|
|
84
|
-
now?: () => number;
|
|
85
|
-
}): ServerInstanceHandle | null;
|
|
86
|
-
export interface ServerInstanceReapSummary {
|
|
87
|
-
reaped: number;
|
|
88
|
-
forgotten: number;
|
|
89
|
-
kept: number;
|
|
90
|
-
signalled: number[];
|
|
91
|
-
}
|
|
92
|
-
export interface ServerInstanceReapRuntime {
|
|
93
|
-
rootDir?: string;
|
|
94
|
-
self?: {
|
|
95
|
-
agent_identity: string;
|
|
96
|
-
launcher_lineage?: string;
|
|
97
|
-
pid: number;
|
|
98
|
-
start_time: string;
|
|
99
|
-
};
|
|
100
|
-
launcherLineage?: string;
|
|
101
|
-
bounds?: ServerReapBounds;
|
|
102
|
-
now?: () => number;
|
|
103
|
-
readBirthState?: (identity: ServerBirthIdentity) => ProcessIdentityState;
|
|
104
|
-
readParentPid?: (pid: number) => ParentPidRead;
|
|
105
|
-
readDescendants?: (pid: number) => ServerBirthIdentity[];
|
|
106
|
-
kill?: (pid: number, signal: NodeJS.Signals) => void;
|
|
107
|
-
wait?: (ms: number) => Promise<void>;
|
|
108
|
-
sweep?: () => Promise<number>;
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Reap stale prior instances of OUR agent identity. Never throws: a startup
|
|
112
|
-
* housekeeping pass must not be able to stop the server from serving.
|
|
113
|
-
*/
|
|
114
|
-
export declare function reapStaleServerInstances(runtime?: ServerInstanceReapRuntime): Promise<ServerInstanceReapSummary>;
|
|
115
|
-
//# sourceMappingURL=server-instance-registry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-instance-registry.d.ts","sourceRoot":"","sources":["../src/server-instance-registry.ts"],"names":[],"mappings":"AA8BA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAwB1B,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAKjD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,6EAA6E;AAC7E,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,OAAO,EAAE,CAAC,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,gBAAgB,IAAI,gBAAgB,CAInD;AAaD,wBAAgB,qBAAqB,CACnC,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CAChB,GACL,MAAM,CASR;AA6BD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAOlF;AAYD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AA+BzD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,aAAa,CAAC;IAC/C,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,mBAAmB,GAAG,IAAI,CAAC;CAC5D,GACL,mBAAmB,EAAE,CA0BvB;AAED,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,oBAAoB,EAC5B,IAAI,EAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAC5F,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,aAAa,EACxB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GACxB,0BAA0B,CA0B5B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAClD,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACzE,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACf,GACL,oBAAoB,GAAG,IAAI,CAyE7B;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,oBAAoB,CAAC;IACzE,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,aAAa,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,mBAAmB,EAAE,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;IACrD,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/B;AA2CD;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,yBAAyB,CAAC,CAyDpC"}
|