runpane 2.4.162 → 2.4.164

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.
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.PaneDaemonClientError = void 0;
7
7
  exports.resolvePaneDirectory = resolvePaneDirectory;
8
8
  exports.getPaneDaemonEndpoint = getPaneDaemonEndpoint;
9
+ exports.routeDaemonCallsTo = routeDaemonCallsTo;
10
+ exports.invokeRemoteDaemon = invokeRemoteDaemon;
9
11
  exports.invokeDaemon = invokeDaemon;
10
12
  const node_crypto_1 = require("node:crypto");
11
13
  const node_net_1 = __importDefault(require("node:net"));
@@ -65,7 +67,46 @@ function getPaneDaemonEndpoint(appDirectory, platform = process.platform) {
65
67
  path: node_path_1.default.posix.join(getUnixSocketDirectoryName(resolvedAppDirectory), DAEMON_SOCKET_FILENAME),
66
68
  };
67
69
  }
70
+ const remoteInvokeResponseSchema = boundaryDecoder_1.boundary.union(boundaryDecoder_1.boundary.object({ ok: boundaryDecoder_1.boundary.literal(true), result: boundaryDecoder_1.boundary.optional(boundaryDecoder_1.boundary.json) }), boundaryDecoder_1.boundary.object({ ok: boundaryDecoder_1.boundary.literal(false), error: boundaryDecoder_1.boundary.object({ message: boundaryDecoder_1.boundary.string, code: boundaryDecoder_1.boundary.optional(boundaryDecoder_1.boundary.string) }) }));
71
+ let routedTarget = null;
72
+ /** Sends every later daemon call in this process to another machine (`runpane workspace <machine> <command>`). */
73
+ function routeDaemonCallsTo(target) {
74
+ routedTarget = target;
75
+ }
76
+ async function invokeRemoteDaemon(target, channel, args, resultSchema, timeoutMs = DEFAULT_TIMEOUT_MS) {
77
+ const unreachable = (detail) => new PaneDaemonClientError(`Could not reach Pane on ${target.machine} (${target.baseUrl}): ${detail}. Pane must be running there with workspaces on; check with "runpane workspace list".`, 'ERR_WORKSPACE_UNREACHABLE');
78
+ let response;
79
+ try {
80
+ response = await fetch(`${target.baseUrl}/invoke`, {
81
+ method: 'POST',
82
+ headers: { 'Content-Type': 'application/json' },
83
+ body: JSON.stringify({ channel, args }),
84
+ signal: AbortSignal.timeout(timeoutMs),
85
+ });
86
+ }
87
+ catch (error) {
88
+ if (error instanceof Error && error.name === 'TimeoutError') {
89
+ throw new PaneDaemonClientError(`${target.machine} did not answer within ${timeoutMs} ms.`, 'ERR_WORKSPACE_TIMEOUT');
90
+ }
91
+ const cause = error instanceof Error && error.cause instanceof Error ? error.cause.message : String(error);
92
+ throw unreachable(cause);
93
+ }
94
+ const text = await response.text();
95
+ let payload;
96
+ try {
97
+ payload = (0, boundaryDecoder_1.decodeBoundary)(JSON.parse(text), remoteInvokeResponseSchema);
98
+ }
99
+ catch {
100
+ throw unreachable(response.status === 502 ? 'Pane is not running there' : `HTTP ${response.status}`);
101
+ }
102
+ if (!payload.ok)
103
+ throw new PaneDaemonClientError(`${target.machine}: ${payload.error.message}`, payload.error.code);
104
+ return (0, boundaryDecoder_1.decodeBoundary)(payload.result, resultSchema);
105
+ }
68
106
  async function invokeDaemon(channel, args = [], resultSchema, options = {}) {
107
+ if (routedTarget) {
108
+ return invokeRemoteDaemon(routedTarget, channel, args, resultSchema, options.timeoutMs);
109
+ }
69
110
  const endpoint = getPaneDaemonEndpoint(resolvePaneDirectory(options.paneDir));
70
111
  const request = {
71
112
  type: 'request',
@@ -1 +1 @@
1
- {"version":3,"file":"daemonClient.js","sourceRoot":"","sources":["../src/daemonClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemonClient.js","sourceRoot":"","sources":["../src/daemonClient.ts"],"names":[],"mappings":"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"}