@privateclaw/privateclaw-relay 0.1.5 → 0.1.7

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/.env.example CHANGED
@@ -2,6 +2,9 @@ PRIVATECLAW_RELAY_HOST=127.0.0.1
2
2
  PRIVATECLAW_RELAY_PORT=8787
3
3
  PRIVATECLAW_SESSION_TTL_MS=900000
4
4
  PRIVATECLAW_FRAME_CACHE_SIZE=25
5
+ # PRIVATECLAW_MAX_MESSAGE_BYTES=25165824
6
+ # PRIVATECLAW_APP_MESSAGES_PER_MINUTE=120
7
+ # PRIVATECLAW_PROVIDER_MESSAGES_PER_MINUTE=600
5
8
  # Optional: enable background wake through Firebase Cloud Messaging.
6
9
  # Use either the full service-account JSON...
7
10
  # PRIVATECLAW_FCM_SERVICE_ACCOUNT_JSON={"type":"service_account","project_id":"your-project","client_email":"...","private_key":"-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n"}
package/README.md CHANGED
@@ -64,7 +64,7 @@ privateclaw-relay --web --public tailscale
64
64
  ```
65
65
 
66
66
  If the required `tailscale` or `cloudflared` CLI is missing, `privateclaw-relay` prints platform-aware install commands. In an interactive terminal it can also offer to run the supported install/setup commands for you before retrying the tunnel startup.
67
- After the relay gets a public URL, it also prints the exact `openclaw` commands needed to point PrivateClaw at that relay. If `openclaw` is installed locally, the CLI can offer to run the local provider install/enable/config flow, restart the OpenClaw gateway, verify that `privateclaw` is now registered, and then optionally start a new group pairing. When `--web` is enabled, it can open the bundled web chat with the fresh invite prefilled.
67
+ After the relay gets a public URL, it also prints the exact `openclaw` commands needed to point PrivateClaw at that relay. If `openclaw` is installed locally, the CLI can offer to run the local provider install-or-update/enable/config flow, restart the OpenClaw gateway, verify that `privateclaw` is now registered, and then optionally start a new group pairing. When `--web` is enabled, it can open the bundled web chat with the fresh invite prefilled.
68
68
 
69
69
  ## Tunnel notes
70
70
 
package/dist/config.d.ts CHANGED
@@ -3,6 +3,9 @@ export interface RelayServerConfig {
3
3
  port: number;
4
4
  sessionTtlMs: number;
5
5
  frameCacheSize: number;
6
+ maxMessageBytes?: number;
7
+ appMessagesPerMinute?: number;
8
+ providerMessagesPerMinute?: number;
6
9
  webRootDir?: string;
7
10
  instanceId?: string;
8
11
  redisUrl?: string;
package/dist/config.js CHANGED
@@ -13,6 +13,9 @@ export function loadRelayConfig(env = process.env) {
13
13
  const port = parsePositiveInteger(env.PRIVATECLAW_RELAY_PORT?.trim() || env.PORT?.trim(), 8787, "PRIVATECLAW_RELAY_PORT");
14
14
  const sessionTtlMs = parsePositiveInteger(env.PRIVATECLAW_SESSION_TTL_MS, 15 * 60 * 1000, "PRIVATECLAW_SESSION_TTL_MS");
15
15
  const frameCacheSize = parsePositiveInteger(env.PRIVATECLAW_FRAME_CACHE_SIZE, 25, "PRIVATECLAW_FRAME_CACHE_SIZE");
16
+ const maxMessageBytes = parsePositiveInteger(env.PRIVATECLAW_MAX_MESSAGE_BYTES, 24 * 1024 * 1024, "PRIVATECLAW_MAX_MESSAGE_BYTES");
17
+ const appMessagesPerMinute = parsePositiveInteger(env.PRIVATECLAW_APP_MESSAGES_PER_MINUTE, 120, "PRIVATECLAW_APP_MESSAGES_PER_MINUTE");
18
+ const providerMessagesPerMinute = parsePositiveInteger(env.PRIVATECLAW_PROVIDER_MESSAGES_PER_MINUTE, 600, "PRIVATECLAW_PROVIDER_MESSAGES_PER_MINUTE");
16
19
  const instanceId = env.PRIVATECLAW_RELAY_INSTANCE_ID?.trim() ||
17
20
  env.RAILWAY_REPLICA_ID?.trim();
18
21
  const redisUrl = env.PRIVATECLAW_REDIS_URL?.trim() || env.REDIS_URL?.trim();
@@ -25,6 +28,9 @@ export function loadRelayConfig(env = process.env) {
25
28
  port,
26
29
  sessionTtlMs,
27
30
  frameCacheSize,
31
+ maxMessageBytes,
32
+ appMessagesPerMinute,
33
+ providerMessagesPerMinute,
28
34
  ...(instanceId ? { instanceId } : {}),
29
35
  ...(redisUrl ? { redisUrl } : {}),
30
36
  ...(fcmServiceAccountJson ? { fcmServiceAccountJson } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAcA,SAAS,oBAAoB,CAC3B,KAAyB,EACzB,QAAgB,EAChB,KAAa;IAEb,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAClC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,8BAA8B,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,MAAM,IAAI,GAAG,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC;IAC/D,MAAM,IAAI,GAAG,oBAAoB,CAC/B,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EACtD,IAAI,EACJ,wBAAwB,CACzB,CAAC;IACF,MAAM,YAAY,GAAG,oBAAoB,CACvC,GAAG,CAAC,0BAA0B,EAC9B,EAAE,GAAG,EAAE,GAAG,IAAI,EACd,4BAA4B,CAC7B,CAAC;IACF,MAAM,cAAc,GAAG,oBAAoB,CACzC,GAAG,CAAC,4BAA4B,EAChC,EAAE,EACF,8BAA8B,CAC/B,CAAC;IACF,MAAM,UAAU,GACd,GAAG,CAAC,6BAA6B,EAAE,IAAI,EAAE;QACzC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;IAC5E,MAAM,qBAAqB,GACzB,GAAG,CAAC,oCAAoC,EAAE,IAAI,EAAE,CAAC;IACnD,MAAM,YAAY,GAAG,GAAG,CAAC,0BAA0B,EAAE,IAAI,EAAE,CAAC;IAC5D,MAAM,cAAc,GAAG,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAChE,MAAM,aAAa,GAAG,GAAG,CAAC,2BAA2B,EAAE,IAAI,EAAE,CAAC;IAE9D,OAAO;QACL,IAAI;QACJ,IAAI;QACJ,YAAY;QACZ,cAAc;QACd,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export interface RelayProviderSetupStep {
7
7
  export interface LocalOpenClawStatus {
8
8
  openClawAvailable: boolean;
9
9
  privateClawCommandAvailable: boolean;
10
+ privateClawPluginPresent?: boolean;
10
11
  }
11
12
  export interface RelayProviderSetupPlan {
12
13
  relayBaseUrl: string;
@@ -18,6 +19,7 @@ export interface RelayProviderSetupPlan {
18
19
  verificationNotes: string[];
19
20
  pairingCommand: RelayProviderSetupStep;
20
21
  }
22
+ type OneShotCommandRunner = (command: string, args: string[]) => Promise<RunOneShotCommandResult>;
21
23
  interface OfferRelayProviderSetupOptions {
22
24
  relayBaseUrl: string;
23
25
  webChatUrl?: string;
@@ -37,7 +39,7 @@ interface RunOneShotCommandResult {
37
39
  combined: string;
38
40
  }
39
41
  export declare function openBrowserTarget(target: string): Promise<void>;
40
- export declare function detectLocalOpenClawStatus(): Promise<LocalOpenClawStatus>;
42
+ export declare function detectLocalOpenClawStatus(runCommand?: OneShotCommandRunner): Promise<LocalOpenClawStatus>;
41
43
  export declare function buildRelayProviderSetupPlan(params: {
42
44
  relayBaseUrl: string;
43
45
  status: LocalOpenClawStatus;
@@ -3,6 +3,7 @@ import { once } from "node:events";
3
3
  import { createInterface } from "node:readline/promises";
4
4
  import { stdin, stdout } from "node:process";
5
5
  import { RelayCliUserError } from "./cli-error.js";
6
+ const PRIVATECLAW_VERIFICATION_COMMAND = "openclaw privateclaw pair --help";
6
7
  function createStep(title, command, args, display) {
7
8
  return {
8
9
  title,
@@ -63,6 +64,9 @@ async function runOneShotCommand(command, args) {
63
64
  throw error;
64
65
  }
65
66
  }
67
+ function outputMentionsPrivateClawCommand(output) {
68
+ return /\/?privateclaw\b/iu.test(output);
69
+ }
66
70
  async function runStreamingCommand(command, args) {
67
71
  const child = spawn(command, args, {
68
72
  stdio: ["ignore", "pipe", "pipe"],
@@ -105,15 +109,42 @@ async function runStreamingCommand(command, args) {
105
109
  throw error;
106
110
  }
107
111
  }
108
- async function commandExists(command) {
112
+ async function commandExists(command, runCommand = runOneShotCommand) {
109
113
  try {
110
- await runOneShotCommand(command, ["--version"]);
114
+ await runCommand(command, ["--version"]);
111
115
  return true;
112
116
  }
113
117
  catch (error) {
114
118
  return !isUnavailableCommandError(error);
115
119
  }
116
120
  }
121
+ async function detectPrivateClawCommandAvailability(runCommand) {
122
+ try {
123
+ const commands = await runCommand("openclaw", ["commands", "list"]);
124
+ if (outputMentionsPrivateClawCommand(commands.combined)) {
125
+ return true;
126
+ }
127
+ }
128
+ catch {
129
+ // Newer OpenClaw builds may not expose `openclaw commands list`.
130
+ }
131
+ try {
132
+ await runCommand("openclaw", ["privateclaw", "pair", "--help"]);
133
+ return true;
134
+ }
135
+ catch {
136
+ return false;
137
+ }
138
+ }
139
+ async function detectPrivateClawPluginPresence(runCommand) {
140
+ try {
141
+ await runCommand("openclaw", ["plugins", "info", "privateclaw"]);
142
+ return true;
143
+ }
144
+ catch {
145
+ return false;
146
+ }
147
+ }
117
148
  export async function openBrowserTarget(target) {
118
149
  const command = process.platform === "win32"
119
150
  ? {
@@ -125,29 +156,26 @@ export async function openBrowserTarget(target) {
125
156
  : { file: "xdg-open", args: [target] };
126
157
  await runOneShotCommand(command.file, command.args);
127
158
  }
128
- export async function detectLocalOpenClawStatus() {
129
- if (!(await commandExists("openclaw"))) {
159
+ export async function detectLocalOpenClawStatus(runCommand = runOneShotCommand) {
160
+ if (!(await commandExists("openclaw", runCommand))) {
130
161
  return {
131
162
  openClawAvailable: false,
132
163
  privateClawCommandAvailable: false,
133
164
  };
134
165
  }
135
- try {
136
- const commands = await runOneShotCommand("openclaw", ["commands", "list"]);
137
- return {
138
- openClawAvailable: true,
139
- privateClawCommandAvailable: /\bprivateclaw\b/u.test(commands.combined),
140
- };
141
- }
142
- catch {
143
- return {
144
- openClawAvailable: true,
145
- privateClawCommandAvailable: false,
146
- };
147
- }
166
+ const [privateClawCommandAvailable, privateClawPluginPresent] = await Promise.all([
167
+ detectPrivateClawCommandAvailability(runCommand),
168
+ detectPrivateClawPluginPresence(runCommand),
169
+ ]);
170
+ return {
171
+ openClawAvailable: true,
172
+ privateClawCommandAvailable,
173
+ privateClawPluginPresent,
174
+ };
148
175
  }
149
176
  export function buildRelayProviderSetupPlan(params) {
150
177
  const installStep = createStep("Install the PrivateClaw OpenClaw plugin", "openclaw", ["plugins", "install", "@privateclaw/privateclaw@latest"], "openclaw plugins install @privateclaw/privateclaw@latest");
178
+ const updateStep = createStep("Update the existing PrivateClaw OpenClaw plugin", "openclaw", ["plugins", "update", "privateclaw"], "openclaw plugins update privateclaw");
151
179
  const enableStep = createStep("Enable the PrivateClaw OpenClaw plugin", "openclaw", ["plugins", "enable", "privateclaw"], "openclaw plugins enable privateclaw");
152
180
  const configStep = createStep("Point PrivateClaw at the public relay URL", "openclaw", [
153
181
  "config",
@@ -158,7 +186,7 @@ export function buildRelayProviderSetupPlan(params) {
158
186
  const restartStep = createStep("Restart the OpenClaw gateway so the plugin + relay config are reloaded", "openclaw", ["gateway", "restart"], "openclaw gateway restart");
159
187
  const pairingCommand = createStep("Start a group pairing request", "openclaw", ["privateclaw", "pair", "--group", "--relay", params.relayBaseUrl], `openclaw privateclaw pair --group --relay ${params.relayBaseUrl}`);
160
188
  const verificationNotes = [
161
- "[privateclaw-relay] After restart, verify the command registration with: openclaw commands list",
189
+ `[privateclaw-relay] After restart, verify the command registration with: ${PRIVATECLAW_VERIFICATION_COMMAND}`,
162
190
  `[privateclaw-relay] When the provider is ready, start a group pairing with: ${pairingCommand.display}`,
163
191
  ];
164
192
  if (!params.status.openClawAvailable) {
@@ -189,9 +217,21 @@ export function buildRelayProviderSetupPlan(params) {
189
217
  relayBaseUrl: params.relayBaseUrl,
190
218
  localOpenClaw: true,
191
219
  privateClawCommandAvailable: false,
192
- introduction: "[privateclaw-relay] OpenClaw is available locally, but PrivateClaw is not active yet. Configure it with:",
193
- automaticSteps: [installStep, enableStep, configStep, restartStep],
194
- manualSteps: [installStep, enableStep, configStep, restartStep],
220
+ introduction: params.status.privateClawPluginPresent
221
+ ? "[privateclaw-relay] OpenClaw can already see a local PrivateClaw plugin, but the command is not active yet. Refresh/configure it with:"
222
+ : "[privateclaw-relay] OpenClaw is available locally, but PrivateClaw is not active yet. Configure it with:",
223
+ automaticSteps: [
224
+ ...(params.status.privateClawPluginPresent ? [updateStep] : [installStep]),
225
+ enableStep,
226
+ configStep,
227
+ restartStep,
228
+ ],
229
+ manualSteps: [
230
+ ...(params.status.privateClawPluginPresent ? [updateStep] : [installStep]),
231
+ enableStep,
232
+ configStep,
233
+ restartStep,
234
+ ],
195
235
  verificationNotes,
196
236
  pairingCommand,
197
237
  };
@@ -287,7 +327,9 @@ export async function offerRelayProviderSetup(options) {
287
327
  const verificationPollMs = options.verificationPollMs ?? 1_000;
288
328
  const configureNow = await promptToContinue(plan.privateClawCommandAvailable
289
329
  ? `OpenClaw is available locally. Configure the local PrivateClaw provider to use ${options.relayBaseUrl} now?`
290
- : `OpenClaw is available locally. Install/configure the local PrivateClaw provider for ${options.relayBaseUrl} now?`);
330
+ : status.privateClawPluginPresent
331
+ ? `OpenClaw is available locally. Update/configure the local PrivateClaw provider for ${options.relayBaseUrl} now?`
332
+ : `OpenClaw is available locally. Install/configure the local PrivateClaw provider for ${options.relayBaseUrl} now?`);
291
333
  if (!configureNow) {
292
334
  options.onLog?.("[privateclaw-relay] Skipping automatic OpenClaw configuration for now.");
293
335
  return;
@@ -299,9 +341,9 @@ export async function offerRelayProviderSetup(options) {
299
341
  options.onLog?.("[privateclaw-relay] Local OpenClaw configuration commands completed.");
300
342
  const refreshedStatus = await waitForPrivateClawCommandAvailability(detectStatus, verificationTimeoutMs, verificationPollMs);
301
343
  if (!refreshedStatus.privateClawCommandAvailable) {
302
- throw new RelayCliUserError("OpenClaw restarted, but `privateclaw` still does not appear in `openclaw commands list`. Confirm the gateway finished restarting cleanly, then rerun `privateclaw-relay`.");
344
+ throw new RelayCliUserError(`OpenClaw restarted, but \`privateclaw\` still does not respond to \`${PRIVATECLAW_VERIFICATION_COMMAND}\`. Confirm the gateway finished restarting cleanly, then rerun \`privateclaw-relay\`.`);
303
345
  }
304
- options.onLog?.("[privateclaw-relay] Verified `privateclaw` is now available via `openclaw commands list`.");
346
+ options.onLog?.(`[privateclaw-relay] Verified \`privateclaw\` is now available via \`${PRIVATECLAW_VERIFICATION_COMMAND}\`.`);
305
347
  for (const line of plan.verificationNotes) {
306
348
  options.onLog?.(line);
307
349
  }
@@ -1 +1 @@
1
- {"version":3,"file":"provider-setup.js","sourceRoot":"","sources":["../src/provider-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-setup.js","sourceRoot":"","sources":["../src/provider-setup.ts"],"names":[],"mappings":"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"}
@@ -29,8 +29,104 @@ function occupantKey(sessionId) {
29
29
  function occupantValue(nodeId, appId) {
30
30
  return JSON.stringify({ nodeId, appId });
31
31
  }
32
+ function isObject(value) {
33
+ return typeof value === "object" && value !== null;
34
+ }
35
+ function isEncryptedEnvelope(value) {
36
+ if (!isObject(value)) {
37
+ return false;
38
+ }
39
+ return (value.version === 1 &&
40
+ typeof value.messageId === "string" &&
41
+ typeof value.iv === "string" &&
42
+ typeof value.ciphertext === "string" &&
43
+ typeof value.tag === "string" &&
44
+ typeof value.sentAt === "string");
45
+ }
46
+ function parseJsonObject(raw, label) {
47
+ let parsed;
48
+ try {
49
+ parsed = JSON.parse(raw);
50
+ }
51
+ catch {
52
+ throw new Error(`${label} must be valid JSON.`);
53
+ }
54
+ if (!isObject(parsed)) {
55
+ throw new Error(`${label} must be a JSON object.`);
56
+ }
57
+ return parsed;
58
+ }
59
+ function parseRequiredString(value, field, label) {
60
+ if (typeof value !== "string" || value.trim() === "") {
61
+ throw new Error(`${label} is missing a valid ${field}.`);
62
+ }
63
+ return value;
64
+ }
32
65
  function parseOccupant(raw) {
33
- return JSON.parse(raw);
66
+ const parsed = parseJsonObject(raw, "Relay cluster occupant payload");
67
+ return {
68
+ nodeId: parseRequiredString(parsed.nodeId, "nodeId", "Relay cluster occupant payload"),
69
+ appId: parseRequiredString(parsed.appId, "appId", "Relay cluster occupant payload"),
70
+ };
71
+ }
72
+ function parseFrameMessage(raw, label) {
73
+ const parsed = parseJsonObject(raw, label);
74
+ if (!isEncryptedEnvelope(parsed.envelope)) {
75
+ throw new Error(`${label} is missing a valid encrypted envelope.`);
76
+ }
77
+ return {
78
+ originNodeId: parseRequiredString(parsed.originNodeId, "originNodeId", label),
79
+ sessionId: parseRequiredString(parsed.sessionId, "sessionId", label),
80
+ envelope: parsed.envelope,
81
+ };
82
+ }
83
+ function parseProviderReconnectMessage(raw) {
84
+ const label = "Relay provider reconnect payload";
85
+ const parsed = parseJsonObject(raw, label);
86
+ const kind = parseRequiredString(parsed.kind, "kind", label);
87
+ if (kind !== "provider_reconnected") {
88
+ throw new Error(`${label} has unsupported kind ${kind}.`);
89
+ }
90
+ return {
91
+ kind,
92
+ originNodeId: parseRequiredString(parsed.originNodeId, "originNodeId", label),
93
+ targetNodeId: parseRequiredString(parsed.targetNodeId, "targetNodeId", label),
94
+ providerId: parseRequiredString(parsed.providerId, "providerId", label),
95
+ };
96
+ }
97
+ function parseSessionControlMessage(raw) {
98
+ const label = "Relay session control payload";
99
+ const parsed = parseJsonObject(raw, label);
100
+ const kind = parseRequiredString(parsed.kind, "kind", label);
101
+ const originNodeId = parseRequiredString(parsed.originNodeId, "originNodeId", label);
102
+ const sessionId = parseRequiredString(parsed.sessionId, "sessionId", label);
103
+ if (kind === "session_closed") {
104
+ return {
105
+ kind,
106
+ originNodeId,
107
+ sessionId,
108
+ reason: parseRequiredString(parsed.reason, "reason", label),
109
+ };
110
+ }
111
+ if (kind === "app_closed") {
112
+ return {
113
+ kind,
114
+ originNodeId,
115
+ sessionId,
116
+ appId: parseRequiredString(parsed.appId, "appId", label),
117
+ reason: parseRequiredString(parsed.reason, "reason", label),
118
+ };
119
+ }
120
+ if (kind === "app_reconnected") {
121
+ return {
122
+ kind,
123
+ originNodeId,
124
+ sessionId,
125
+ appId: parseRequiredString(parsed.appId, "appId", label),
126
+ targetNodeId: parseRequiredString(parsed.targetNodeId, "targetNodeId", label),
127
+ };
128
+ }
129
+ throw new Error(`${label} has unsupported kind ${kind}.`);
34
130
  }
35
131
  async function compareAndDelete(redis, key, expectedValue) {
36
132
  await redis.eval(`
@@ -131,7 +227,7 @@ class BaseRelayClusterClient {
131
227
  if (!providerMatch) {
132
228
  return;
133
229
  }
134
- const message = JSON.parse(payload);
230
+ const message = parseProviderReconnectMessage(payload);
135
231
  if (message.originNodeId === this.nodeId ||
136
232
  message.targetNodeId !== this.nodeId) {
137
233
  return;
@@ -141,7 +237,7 @@ class BaseRelayClusterClient {
141
237
  }
142
238
  const broadcastMatch = channel.match(/^privateclaw:bus:v1:session:([^:]+):app:broadcast$/);
143
239
  if (broadcastMatch) {
144
- const message = JSON.parse(payload);
240
+ const message = parseFrameMessage(payload, "Relay app broadcast payload");
145
241
  if (message.originNodeId === this.nodeId) {
146
242
  return;
147
243
  }
@@ -150,7 +246,7 @@ class BaseRelayClusterClient {
150
246
  }
151
247
  const targetedAppMatch = channel.match(/^privateclaw:bus:v1:session:([^:]+):app:([^:]+)$/);
152
248
  if (targetedAppMatch) {
153
- const message = JSON.parse(payload);
249
+ const message = parseFrameMessage(payload, "Relay targeted app payload");
154
250
  if (message.originNodeId === this.nodeId) {
155
251
  return;
156
252
  }
@@ -159,7 +255,7 @@ class BaseRelayClusterClient {
159
255
  }
160
256
  const providerFrameMatch = channel.match(/^privateclaw:bus:v1:session:([^:]+):provider$/);
161
257
  if (providerFrameMatch) {
162
- const message = JSON.parse(payload);
258
+ const message = parseFrameMessage(payload, "Relay provider frame payload");
163
259
  if (message.originNodeId === this.nodeId) {
164
260
  return;
165
261
  }
@@ -170,7 +266,7 @@ class BaseRelayClusterClient {
170
266
  if (!controlMatch) {
171
267
  return;
172
268
  }
173
- const message = JSON.parse(payload);
269
+ const message = parseSessionControlMessage(payload);
174
270
  if (message.originNodeId === this.nodeId) {
175
271
  return;
176
272
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relay-cluster.js","sourceRoot":"","sources":["../src/relay-cluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,MAAM,UAAU,GAAG,oBAAoB,CAAC;AACxC,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAClD,MAAM,QAAQ,GAAG,MAAM,CAAC;AA2CxB,SAAS,mBAAmB,CAAC,SAAiB;IAC5C,OAAO,GAAG,UAAU,YAAY,SAAS,gBAAgB,CAAC;AAC5D,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB,EAAE,KAAa;IACxD,OAAO,GAAG,UAAU,YAAY,SAAS,QAAQ,KAAK,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,OAAO,GAAG,UAAU,YAAY,SAAS,WAAW,CAAC;AACvD,CAAC;AAED,SAAS,qBAAqB,CAAC,SAAiB;IAC9C,OAAO,GAAG,UAAU,YAAY,SAAS,UAAU,CAAC;AACtD,CAAC;AAED,SAAS,sBAAsB,CAAC,UAAkB;IAChD,OAAO,GAAG,UAAU,aAAa,UAAU,UAAU,CAAC;AACxD,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,OAAO,GAAG,eAAe,aAAa,UAAU,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB,EAAE,KAAa;IACtD,OAAO,GAAG,eAAe,YAAY,SAAS,QAAQ,KAAK,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB;IACpC,OAAO,GAAG,eAAe,YAAY,SAAS,WAAW,CAAC;AAC5D,CAAC;AAED,SAAS,aAAa,CAAC,MAAc,EAAE,KAAa;IAClD,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,aAAa,CACpB,GAAW;IAKX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAGpB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,KAAY,EACZ,GAAW,EACX,aAAqB;IAErB,MAAM,KAAK,CAAC,IAAI,CACd;;;;;KAKC,EACD,CAAC,EACD,GAAG,EACH,aAAa,CACd,CAAC;AACJ,CAAC;AA+ED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAe,sBAAsB;IAKd;IACA;IALZ,UAAU,GAAG,IAAI,CAAC;IACV,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEzD,YACqB,MAAc,EACd,SAAgC;QADhC,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAuB;IAClD,CAAC;IAEJ,KAAK,CAAC,iBAAiB,CACrB,UAAkB,EAClB,SAAiB;QAEjB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,UAAkB,EAClB,SAAiB;QAEjB,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB,EAAE,KAAa;QACjD,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,KAAa;QACnD,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,SAAiB,EACjB,QAA2B,EAC3B,WAAoB;QAEpB,OAAO,IAAI,CAAC,OAAO,CACjB,WAAW;YACT,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC;YAC1C,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAClC,IAAI,CAAC,SAAS,CAAC;YACb,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,SAAS;YACT,QAAQ;SACsB,CAAC,CAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,SAAiB,EACjB,QAA2B;QAE3B,OAAO,IAAI,CAAC,OAAO,CACjB,eAAe,CAAC,SAAS,CAAC,EAC1B,IAAI,CAAC,SAAS,CAAC;YACb,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,SAAS;YACT,QAAQ;SACsB,CAAC,CAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB,EAAE,MAAc;QAC1D,MAAM,IAAI,CAAC,OAAO,CAChB,qBAAqB,CAAC,SAAS,CAAC,EAChC,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,gBAAgB;YACtB,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,SAAS;YACT,MAAM;SACgC,CAAC,CAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,KAAa,EACb,MAAc;QAEd,MAAM,IAAI,CAAC,OAAO,CAChB,qBAAqB,CAAC,SAAS,CAAC,EAChC,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,SAAS;YACT,KAAK;YACL,MAAM;SAC4B,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,SAAiB,EACjB,KAAa,EACb,YAAoB;QAEpB,MAAM,IAAI,CAAC,OAAO,CAChB,qBAAqB,CAAC,SAAS,CAAC,EAChC,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,YAAY;YACZ,SAAS;YACT,KAAK;SACgC,CAAC,CACzC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,UAAkB,EAClB,YAAoB;QAEpB,MAAM,IAAI,CAAC,OAAO,CAChB,sBAAsB,CAAC,UAAU,CAAC,EAClC,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,sBAAsB;YAC5B,YAAY,EAAE,IAAI,CAAC,MAAM;YACzB,YAAY;YACZ,UAAU;SACgC,CAAC,CAC9C,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,oBAAoB,CAClC,OAAe,EACf,OAAe;QAEf,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,YAAY,CAAC,EAAE,CAAC;YAClD,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CACjC,+CAA+C,CAChD,CAAC;YACF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAqC,CAAC;YACxE,IACE,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM;gBACpC,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EACpC,CAAC;gBACD,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAClC,oDAAoD,CACrD,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC;YAC5D,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzC,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC3E,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAK,CACpC,kDAAkD,CACnD,CAAC;QACF,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC;YAC5D,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzC,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CACnC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,QAAQ,EAChB,gBAAgB,CAAC,CAAC,CAAC,CACpB,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,CAAC,KAAK,CACtC,+CAA+C,CAChD,CAAC;QACF,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC;YAC5D,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzC,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CACxC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,QAAQ,CACjB,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAChC,8CAA8C,CAC/C,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAkC,CAAC;QACrE,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CACpC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,MAAM,CACf,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAChF,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAe;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAe;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CAkBF;AASD,MAAM,UAAU,qCAAqC;IACnD,OAAO;QACL,kBAAkB,EAAE,IAAI,GAAG,EAA2C;QACtE,gBAAgB,EAAE,IAAI,GAAG,EAAkB;QAC3C,WAAW,EAAE,IAAI,GAAG,EAAkB;QACtC,sBAAsB,EAAE,IAAI,GAAG,EAAkB;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,0BAA2B,SAAQ,sBAAsB;IAEjD;IADnB,YACmB,MAAuC,EACxD,MAA4D;QAE5D,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAHtB,WAAM,GAAN,MAAM,CAAiC;IAI1D,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,UAAkB;QAElB,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM;YACrD,CAAC,CAAC,EAAE,cAAc,EAAE;YACpB,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAA+B;QAE/B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClF,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,OAAO,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC/C,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;oBACpC,MAAM,IAAI,uBAAuB,CAC/B,8DAA8D,CAC/D,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CACpC,OAAO,CAAC,SAAS,EACjB,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACpD,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM;YACrD,CAAC,CAAC,EAAE,cAAc,EAAE;YACpB,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA+B;QAC9C,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClF,IAAI,eAAe,KAAK,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAmC;QACvD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAClF,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CACpC,OAAO,CAAC,SAAS,EACjB,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAC1C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAC9C,MAAM,WAAW,GACf,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC;YAC3C,IAAI,GAAG,EAA8B,CAAC;QACxC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,OAAe;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAe;QACtD,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAC,GAAG,CACf,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC7B,UAAU,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAClD,CACF,CAAC;QACF,OAAO,WAAW,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9E,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,SAAS;YACX,CAAC;YACD,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,KAAa;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,SAAiB;QAClD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACzF,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,sBAAsB;IAChD,KAAK,CAAQ;IACb,UAAU,CAAQ;IAEnC,YACE,QAAgB,EAChB,MAA4D;QAE5D,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE;YAC/B,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,CAAC;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YACrC,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,CAAC;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/B,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACpC,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;YACjD,KAAK,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC/D,OAAO,CAAC,KAAK,CAAC,uDAAuD,EAAE,KAAK,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,UAAkB;QAElB,MAAM,GAAG,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM;YACrD,CAAC,CAAC,EAAE,cAAc,EAAE;YACpB,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB;QACtC,MAAM,gBAAgB,CACpB,IAAI,CAAC,KAAK,EACV,mBAAmB,CAAC,UAAU,CAAC,EAC/B,IAAI,CAAC,MAAM,CACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAA+B;QAE/B,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACpD,MAAM,qBAAqB,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACxE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBAChD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAClC,YAAY,EACZ,qBAAqB,EACrB,IAAI,EACJ,QAAQ,EACR,IAAI,CACL,CAAC;gBACF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,MAAM;gBACR,CAAC;gBAED,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC3D,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC9C,IAAI,MAAM,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnC,MAAM,IAAI,uBAAuB,CAC/B,8DAA8D,CAC/D,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAClB,YAAY,EACZ,qBAAqB,EACrB,IAAI,EACJ,QAAQ,EACR,IAAI,CACL,CAAC;gBACF,MAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/D,OAAO,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM;YACrD,CAAC,CAAC,EAAE,cAAc,EAAE;YACpB,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA+B;QAC9C,MAAM,gBAAgB,CACpB,IAAI,CAAC,KAAK,EACV,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,EAChD,IAAI,CAAC,MAAM,CACZ,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,gBAAgB,CACpB,IAAI,CAAC,KAAK,EACV,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,EAC9B,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAmC;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACpC,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7E,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACzC,QAAQ,CAAC,GAAG,CACV,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,EAChD,IAAI,CAAC,MAAM,EACX,IAAI,EACJ,QAAQ,CACT,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACvB,QAAQ,CAAC,GAAG,CACV,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,EAC9B,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,EACzC,IAAI,EACJ,QAAQ,CACT,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAC9C,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,OAAe;QAChD,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAe;QACtD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,KAAa;QAClD,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,SAAiB;QAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAClC,QAAQ,EACR,QAAQ,EACR,eAAe,CAAC,SAAS,CAAC,CAC3B,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,eAAe,GAAG,CAAC,CAAC;IACjE,CAAC;CACF;AAED,MAAM,UAAU,6BAA6B,CAAC,MAI7C;IACC,OAAO,IAAI,uBAAuB,CAAC,MAAM,CAAC,QAAQ,EAAE;QAClD,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,MAIhD;IACC,OAAO,IAAI,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE;QACnD,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"relay-cluster.js","sourceRoot":"","sources":["../src/relay-cluster.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,21 @@ import { type RelayPushRegistrationStore } from "./push-registration-store.js";
4
4
  import { type RelayPushNotifier } from "./push-notifier.js";
5
5
  import { type RelayClusterCallbacks, type RelayClusterClient } from "./relay-cluster.js";
6
6
  import { type RelaySessionStore } from "./session-store.js";
7
+ export declare class WakeCooldownTracker {
8
+ private readonly params;
9
+ private readonly entries;
10
+ constructor(params: {
11
+ cooldownMs: number;
12
+ now?: () => number;
13
+ pruneAfterMs?: number;
14
+ });
15
+ private now;
16
+ private prune;
17
+ getLastSentAt(key: string): number | undefined;
18
+ recordSent(key: string): void;
19
+ clearSession(sessionId: string, appId?: string): void;
20
+ entryCount(): number;
21
+ }
7
22
  export interface RelayServerInstance {
8
23
  readonly port: number;
9
24
  readonly url: string;