rivetkit 2.3.18 → 2.3.19

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 (136) hide show
  1. package/dist/browser/client.d.ts +723 -616
  2. package/dist/browser/client.js +184 -28
  3. package/dist/browser/client.js.map +1 -1
  4. package/dist/browser/inspector/client.js +3 -1
  5. package/dist/browser/inspector/client.js.map +1 -1
  6. package/dist/tsup/actor/errors.cjs +6 -2
  7. package/dist/tsup/actor/errors.cjs.map +1 -1
  8. package/dist/tsup/actor/errors.d.cts +1 -1
  9. package/dist/tsup/actor/errors.d.ts +1 -1
  10. package/dist/tsup/actor/errors.js +5 -1
  11. package/dist/tsup/agent-os/index.cjs +3 -1
  12. package/dist/tsup/agent-os/index.cjs.map +1 -1
  13. package/dist/tsup/agent-os/index.d.cts +110 -3
  14. package/dist/tsup/agent-os/index.d.ts +110 -3
  15. package/dist/tsup/agent-os/index.js +3 -1
  16. package/dist/tsup/agent-os/index.js.map +1 -1
  17. package/dist/tsup/{chunk-4XECVATQ.js → chunk-464WE4RF.js} +2 -2
  18. package/dist/tsup/{chunk-QIFZELUQ.js → chunk-4SC2NSAV.js} +2 -2
  19. package/dist/tsup/{chunk-ZRTESY7V.cjs → chunk-7A5EIXJJ.cjs} +7 -7
  20. package/dist/tsup/{chunk-ZRTESY7V.cjs.map → chunk-7A5EIXJJ.cjs.map} +1 -1
  21. package/dist/tsup/{chunk-O7RSU3UC.cjs → chunk-7BRRGBRY.cjs} +10 -10
  22. package/dist/tsup/{chunk-O7RSU3UC.cjs.map → chunk-7BRRGBRY.cjs.map} +1 -1
  23. package/dist/tsup/{chunk-IPXIZSE7.js → chunk-7HTST3NX.js} +3 -3
  24. package/dist/tsup/{chunk-PXKNBNVU.js → chunk-BKX7UDTA.js} +188 -31
  25. package/dist/tsup/chunk-BKX7UDTA.js.map +1 -0
  26. package/dist/tsup/{chunk-2MK75JFR.js → chunk-DK3L22R6.js} +4 -4
  27. package/dist/tsup/{chunk-7EPLADKM.js → chunk-DN6MD3KK.js} +7 -7
  28. package/dist/tsup/chunk-DN6MD3KK.js.map +1 -0
  29. package/dist/tsup/{chunk-6W5VGLFT.js → chunk-EB77NZL4.js} +1 -1
  30. package/dist/tsup/chunk-EB77NZL4.js.map +1 -0
  31. package/dist/tsup/{chunk-4KGXFC6M.cjs → chunk-EO5UOXXY.cjs} +1 -1
  32. package/dist/tsup/chunk-EO5UOXXY.cjs.map +1 -0
  33. package/dist/tsup/{chunk-25Z2RK7C.cjs → chunk-G4U5L6AX.cjs} +3 -3
  34. package/dist/tsup/{chunk-25Z2RK7C.cjs.map → chunk-G4U5L6AX.cjs.map} +1 -1
  35. package/dist/tsup/{chunk-NRIRV3Z2.cjs → chunk-IJUXBWH4.cjs} +352 -195
  36. package/dist/tsup/chunk-IJUXBWH4.cjs.map +1 -0
  37. package/dist/tsup/{chunk-2JSYYH6P.cjs → chunk-JX2ITWAV.cjs} +13 -2
  38. package/dist/tsup/chunk-JX2ITWAV.cjs.map +1 -0
  39. package/dist/tsup/{chunk-OKVVWOC3.cjs → chunk-OGPFN6BT.cjs} +3 -3
  40. package/dist/tsup/{chunk-OKVVWOC3.cjs.map → chunk-OGPFN6BT.cjs.map} +1 -1
  41. package/dist/tsup/{chunk-OUQUIBVW.js → chunk-P2OFXH4G.js} +12 -1
  42. package/dist/tsup/chunk-P2OFXH4G.js.map +1 -0
  43. package/dist/tsup/{chunk-IKZ6DJMP.cjs → chunk-PPEIPCW4.cjs} +4 -4
  44. package/dist/tsup/{chunk-IKZ6DJMP.cjs.map → chunk-PPEIPCW4.cjs.map} +1 -1
  45. package/dist/tsup/{chunk-2IDK6NX3.cjs → chunk-RJC5O2SD.cjs} +13 -13
  46. package/dist/tsup/chunk-RJC5O2SD.cjs.map +1 -0
  47. package/dist/tsup/{chunk-TNSLNSQH.js → chunk-WME6KOXW.js} +2 -2
  48. package/dist/tsup/{chunk-LAITPJRA.js → chunk-X7RMJQGY.js} +2 -2
  49. package/dist/tsup/{chunk-T6JUXRNI.cjs → chunk-Z4RAXFSD.cjs} +3 -3
  50. package/dist/tsup/{chunk-T6JUXRNI.cjs.map → chunk-Z4RAXFSD.cjs.map} +1 -1
  51. package/dist/tsup/client/mod.cjs +6 -6
  52. package/dist/tsup/client/mod.d.cts +5 -5
  53. package/dist/tsup/client/mod.d.ts +5 -5
  54. package/dist/tsup/client/mod.js +5 -5
  55. package/dist/tsup/common/log.cjs +3 -3
  56. package/dist/tsup/common/log.js +2 -2
  57. package/dist/tsup/common/websocket.cjs +4 -4
  58. package/dist/tsup/common/websocket.js +3 -3
  59. package/dist/tsup/{config-gvHwMas-.d.cts → config-8n2AOhXK.d.cts} +114 -10
  60. package/dist/tsup/{config-Ug5M2MOr.d.ts → config-DEm0yIVV.d.ts} +114 -10
  61. package/dist/tsup/{context-DererUCI.d.ts → context-DGg2-IOm.d.ts} +1 -1
  62. package/dist/tsup/{context-BSCBvbfM.d.cts → context-DwjOVvlE.d.cts} +1 -1
  63. package/dist/tsup/db/drizzle.cjs +3 -3
  64. package/dist/tsup/db/drizzle.js +2 -2
  65. package/dist/tsup/db/mod.cjs +4 -4
  66. package/dist/tsup/db/mod.js +3 -3
  67. package/dist/tsup/dynamic/mod.cjs +2 -2
  68. package/dist/tsup/dynamic/mod.d.cts +3 -3
  69. package/dist/tsup/dynamic/mod.d.ts +3 -3
  70. package/dist/tsup/dynamic/mod.js +1 -1
  71. package/dist/tsup/inspector/mod.cjs +6 -6
  72. package/dist/tsup/inspector/mod.js +5 -5
  73. package/dist/tsup/inspector/workflow.cjs +5 -5
  74. package/dist/tsup/inspector/workflow.js +4 -4
  75. package/dist/tsup/inspector-tab/mod.cjs +2 -2
  76. package/dist/tsup/inspector-tab/mod.d.cts +4 -4
  77. package/dist/tsup/inspector-tab/mod.d.ts +4 -4
  78. package/dist/tsup/inspector-tab/mod.js +1 -1
  79. package/dist/tsup/mod.cjs +492 -319
  80. package/dist/tsup/mod.cjs.map +1 -1
  81. package/dist/tsup/mod.d.cts +5 -5
  82. package/dist/tsup/mod.d.ts +5 -5
  83. package/dist/tsup/mod.js +367 -194
  84. package/dist/tsup/mod.js.map +1 -1
  85. package/dist/tsup/test/mod.cjs +7 -7
  86. package/dist/tsup/test/mod.d.cts +3 -3
  87. package/dist/tsup/test/mod.d.ts +3 -3
  88. package/dist/tsup/test/mod.js +5 -5
  89. package/dist/tsup/{utils-Bbz-3411.d.cts → utils-CNFeS-Dk.d.cts} +1 -1
  90. package/dist/tsup/{utils-vvJQyygr.d.ts → utils-DsoDinPz.d.cts} +9 -1
  91. package/dist/tsup/{utils-vvJQyygr.d.cts → utils-DsoDinPz.d.ts} +9 -1
  92. package/dist/tsup/{utils-BqdWVlzm.d.ts → utils-OQHBjfcM.d.ts} +1 -1
  93. package/dist/tsup/utils.cjs +3 -3
  94. package/dist/tsup/utils.d.cts +2 -2
  95. package/dist/tsup/utils.d.ts +2 -2
  96. package/dist/tsup/utils.js +2 -2
  97. package/dist/tsup/workflow/mod.cjs +33 -27
  98. package/dist/tsup/workflow/mod.cjs.map +1 -1
  99. package/dist/tsup/workflow/mod.d.cts +5 -5
  100. package/dist/tsup/workflow/mod.d.ts +5 -5
  101. package/dist/tsup/workflow/mod.js +25 -19
  102. package/dist/tsup/workflow/mod.js.map +1 -1
  103. package/package.json +10 -8
  104. package/src/actor/config.ts +38 -0
  105. package/src/actor/errors.ts +31 -0
  106. package/src/client/actor-conn.ts +7 -0
  107. package/src/client/actor-handle.ts +57 -17
  108. package/src/client/client.ts +26 -6
  109. package/src/client/outbound-telemetry.ts +66 -0
  110. package/src/client/queue.ts +3 -0
  111. package/src/client/raw-utils.ts +3 -0
  112. package/src/common/actor-router-consts.ts +3 -0
  113. package/src/common/actor-telemetry-context.ts +19 -0
  114. package/src/common/otel-context.ts +99 -0
  115. package/src/common/utils.ts +1 -19
  116. package/src/engine-client/actor-http-client.ts +15 -0
  117. package/src/registry/index.ts +6 -0
  118. package/src/registry/napi-runtime.ts +155 -35
  119. package/src/registry/native.ts +277 -191
  120. package/src/registry/runtime.ts +66 -0
  121. package/src/registry/wasm-runtime.ts +40 -0
  122. package/src/workflow/driver.ts +20 -12
  123. package/dist/tsup/chunk-2IDK6NX3.cjs.map +0 -1
  124. package/dist/tsup/chunk-2JSYYH6P.cjs.map +0 -1
  125. package/dist/tsup/chunk-4KGXFC6M.cjs.map +0 -1
  126. package/dist/tsup/chunk-6W5VGLFT.js.map +0 -1
  127. package/dist/tsup/chunk-7EPLADKM.js.map +0 -1
  128. package/dist/tsup/chunk-NRIRV3Z2.cjs.map +0 -1
  129. package/dist/tsup/chunk-OUQUIBVW.js.map +0 -1
  130. package/dist/tsup/chunk-PXKNBNVU.js.map +0 -1
  131. /package/dist/tsup/{chunk-4XECVATQ.js.map → chunk-464WE4RF.js.map} +0 -0
  132. /package/dist/tsup/{chunk-QIFZELUQ.js.map → chunk-4SC2NSAV.js.map} +0 -0
  133. /package/dist/tsup/{chunk-IPXIZSE7.js.map → chunk-7HTST3NX.js.map} +0 -0
  134. /package/dist/tsup/{chunk-2MK75JFR.js.map → chunk-DK3L22R6.js.map} +0 -0
  135. /package/dist/tsup/{chunk-TNSLNSQH.js.map → chunk-WME6KOXW.js.map} +0 -0
  136. /package/dist/tsup/{chunk-LAITPJRA.js.map → chunk-X7RMJQGY.js.map} +0 -0
@@ -4,11 +4,12 @@
4
4
  var _chunkMYWZCDMLcjs = require('./chunk-MYWZCDML.cjs');
5
5
 
6
6
 
7
- var _chunkKVFIONKQcjs = require('./chunk-KVFIONKQ.cjs');
7
+
8
+ var _chunkOGPFN6BTcjs = require('./chunk-OGPFN6BT.cjs');
8
9
 
9
10
 
11
+ var _chunkKVFIONKQcjs = require('./chunk-KVFIONKQ.cjs');
10
12
 
11
- var _chunkOKVVWOC3cjs = require('./chunk-OKVVWOC3.cjs');
12
13
 
13
14
 
14
15
 
@@ -34,14 +35,14 @@ var _chunkOKVVWOC3cjs = require('./chunk-OKVVWOC3.cjs');
34
35
 
35
36
 
36
37
 
38
+ var _chunkRJC5O2SDcjs = require('./chunk-RJC5O2SD.cjs');
37
39
 
38
- var _chunk2IDK6NX3cjs = require('./chunk-2IDK6NX3.cjs');
39
40
 
40
41
 
41
42
 
42
43
 
43
44
 
44
- var _chunk2JSYYH6Pcjs = require('./chunk-2JSYYH6P.cjs');
45
+ var _chunkJX2ITWAVcjs = require('./chunk-JX2ITWAV.cjs');
45
46
 
46
47
  // src/common/actor-router-consts.ts
47
48
  var PATH_CONNECT = "/connect";
@@ -55,6 +56,9 @@ var HEADER_ACTOR_ID = "x-rivet-actor";
55
56
  var HEADER_ACTOR_GENERATION = "x-rivet-actor-generation";
56
57
  var HEADER_ACTOR_KEY = "x-rivet-actor-key";
57
58
  var HEADER_RIVET_TOKEN = "x-rivet-token";
59
+ var HEADER_RIVET_RAY_ID = "x-rivet-ray-id";
60
+ var HEADER_TRACEPARENT = "traceparent";
61
+ var HEADER_TRACESTATE = "tracestate";
58
62
  var HEADER_RIVET_TARGET = "x-rivet-target";
59
63
  var HEADER_RIVET_ACTOR = "x-rivet-actor";
60
64
  var HEADER_RIVET_NAMESPACE = "x-rivet-namespace";
@@ -110,7 +114,7 @@ function isSchedulingError(group, code) {
110
114
  return group === "guard" && (code === "actor_ready_timeout" || code === "actor_runner_failed");
111
115
  }
112
116
  function actorSchedulingError(group, code, actorId, details, rayId) {
113
- return new (0, _chunk2JSYYH6Pcjs.RivetError)(
117
+ return new (0, _chunkJX2ITWAVcjs.RivetError)(
114
118
  group,
115
119
  code,
116
120
  `Actor failed to start (${actorId}): ${JSON.stringify(details)}`,
@@ -118,7 +122,7 @@ function actorSchedulingError(group, code, actorId, details, rayId) {
118
122
  );
119
123
  }
120
124
  function internalClientError(message, opts) {
121
- return new (0, _chunk2JSYYH6Pcjs.RivetError)("rivetkit", _chunk2JSYYH6Pcjs.INTERNAL_ERROR_CODE, message, {
125
+ return new (0, _chunkJX2ITWAVcjs.RivetError)("rivetkit", _chunkJX2ITWAVcjs.INTERNAL_ERROR_CODE, message, {
122
126
  cause: opts == null ? void 0 : opts.cause
123
127
  });
124
128
  }
@@ -2103,7 +2107,7 @@ function getActorNameFromQuery(query) {
2103
2107
  if ("getForKey" in query) return query.getForKey.name;
2104
2108
  if ("getOrCreateForKey" in query) return query.getOrCreateForKey.name;
2105
2109
  if ("create" in query) return query.create.name;
2106
- throw _chunk2JSYYH6Pcjs.invalidRequest.call(void 0, "Invalid query format");
2110
+ throw _chunkJX2ITWAVcjs.invalidRequest.call(void 0, "Invalid query format");
2107
2111
  }
2108
2112
  function isDynamicActorQuery(actorQuery) {
2109
2113
  return "getForKey" in actorQuery || "getOrCreateForKey" in actorQuery;
@@ -2113,7 +2117,7 @@ function getGatewayTarget(state) {
2113
2117
  return { directId: state.getForId.actorId };
2114
2118
  }
2115
2119
  if ("create" in state) {
2116
- throw _chunk2JSYYH6Pcjs.invalidRequest.call(void 0,
2120
+ throw _chunkJX2ITWAVcjs.invalidRequest.call(void 0,
2117
2121
  "create queries cannot be used as gateway targets. Resolve to an actor ID first."
2118
2122
  );
2119
2123
  }
@@ -2127,7 +2131,7 @@ async function checkForSchedulingError(group, code, actorId, query, driver, rayI
2127
2131
  try {
2128
2132
  const actor = await driver.getForId({ name, actorId });
2129
2133
  if (actor == null ? void 0 : actor.error) {
2130
- _chunkOKVVWOC3cjs.logger.call(void 0, ).info({
2134
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).info({
2131
2135
  msg: "found actor scheduling error",
2132
2136
  actorId,
2133
2137
  error: actor.error
@@ -2141,10 +2145,10 @@ async function checkForSchedulingError(group, code, actorId, query, driver, rayI
2141
2145
  );
2142
2146
  }
2143
2147
  } catch (err) {
2144
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
2148
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
2145
2149
  msg: "failed to fetch actor details for scheduling error check",
2146
2150
  actorId,
2147
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
2151
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
2148
2152
  });
2149
2153
  }
2150
2154
  return null;
@@ -2291,7 +2295,7 @@ function classifyTransportError(error) {
2291
2295
  }
2292
2296
  function classifyLifecycleBoundaryError(error) {
2293
2297
  for (const current of walkErrorChain(error)) {
2294
- if (current instanceof _chunk2JSYYH6Pcjs.RivetError) {
2298
+ if (current instanceof _chunkJX2ITWAVcjs.RivetError) {
2295
2299
  const classified = classifyActorError(current);
2296
2300
  if (classified) {
2297
2301
  return classified;
@@ -2362,13 +2366,97 @@ async function retryOnLifecycleBoundary(run, opts) {
2362
2366
  throw lastError;
2363
2367
  }
2364
2368
 
2369
+ // src/common/otel-context.ts
2370
+
2371
+
2372
+
2373
+
2374
+
2375
+
2376
+ var _api = require('@opentelemetry/api');
2377
+ function readActiveTraceHeaders() {
2378
+ return traceHeaders(_api.trace.getSpanContext(_api.context.active()));
2379
+ }
2380
+ var RAY_BAGGAGE_KEY = "rivet.ray.id";
2381
+ function readActiveRayId() {
2382
+ var _a, _b;
2383
+ const value = (_b = (_a = _api.propagation.getBaggage(_api.context.active())) == null ? void 0 : _a.getEntry(RAY_BAGGAGE_KEY)) == null ? void 0 : _b.value;
2384
+ if (value && value.length <= 30 && /^[A-Za-z0-9_-]+$/.test(value)) {
2385
+ return value;
2386
+ }
2387
+ return void 0;
2388
+ }
2389
+ function actorInvocationTraceHeaders(invocation) {
2390
+ const spanContext = invocationSpanContext(invocation);
2391
+ if (!spanContext) return void 0;
2392
+ return traceHeaders(spanContext);
2393
+ }
2394
+ function traceHeaders(spanContext) {
2395
+ var _a;
2396
+ if (!spanContext || !_api.isSpanContextValid.call(void 0, spanContext)) return void 0;
2397
+ const tracestate = (_a = spanContext.traceState) == null ? void 0 : _a.serialize();
2398
+ return {
2399
+ traceparent: `00-${spanContext.traceId}-${spanContext.spanId}-${spanContext.traceFlags.toString(16).padStart(2, "0")}`,
2400
+ ...tracestate ? { tracestate } : {}
2401
+ };
2402
+ }
2403
+ function runWithActorInvocationSpan(invocation, run) {
2404
+ if (!invocation) return run();
2405
+ const spanContext = invocationSpanContext(invocation);
2406
+ if (!spanContext) return run();
2407
+ const parent = _api.trace.setSpanContext(_api.context.active(), spanContext);
2408
+ return _api.context.with(parent, run);
2409
+ }
2410
+ function invocationSpanContext(invocation) {
2411
+ if (!invocation) return void 0;
2412
+ try {
2413
+ const spanContext = {
2414
+ traceId: invocation.traceId,
2415
+ spanId: invocation.spanId,
2416
+ traceFlags: invocation.traceFlags,
2417
+ traceState: invocation.tracestate ? _api.createTraceState.call(void 0, invocation.tracestate) : void 0,
2418
+ isRemote: false
2419
+ };
2420
+ return _api.isSpanContextValid.call(void 0, spanContext) ? spanContext : void 0;
2421
+ } catch (e) {
2422
+ return void 0;
2423
+ }
2424
+ }
2425
+
2426
+ // src/client/outbound-telemetry.ts
2427
+ function outboundTelemetryHeaders(invocation, callSpan) {
2428
+ const headers = {};
2429
+ const rayId = _nullishCoalesce((invocation == null ? void 0 : invocation.rayId), () => ( readActiveRayId()));
2430
+ if (rayId) {
2431
+ headers[HEADER_RIVET_RAY_ID] = rayId;
2432
+ }
2433
+ const traceHeaders2 = _nullishCoalesce(_nullishCoalesce(actorInvocationTraceHeaders(callSpan), () => ( readActiveTraceHeaders())), () => ( actorInvocationTraceHeaders(invocation == null ? void 0 : invocation.span)));
2434
+ if (traceHeaders2) {
2435
+ headers[HEADER_TRACEPARENT] = traceHeaders2.traceparent;
2436
+ if (traceHeaders2.tracestate) {
2437
+ headers[HEADER_TRACESTATE] = traceHeaders2.tracestate;
2438
+ }
2439
+ }
2440
+ return headers;
2441
+ }
2442
+ function addOutboundTelemetryHeaders(headers, telemetry) {
2443
+ const callerSetTraceContext = headers.has(HEADER_TRACEPARENT) || headers.has(HEADER_TRACESTATE);
2444
+ for (const [name, value] of Object.entries(telemetry)) {
2445
+ const isTraceContext = name === HEADER_TRACEPARENT || name === HEADER_TRACESTATE;
2446
+ if (isTraceContext ? callerSetTraceContext : headers.has(name)) {
2447
+ continue;
2448
+ }
2449
+ headers.set(name, value);
2450
+ }
2451
+ }
2452
+
2365
2453
  // src/client/utils.ts
2366
2454
 
2367
2455
  function parseWebSocketCloseReason(reason) {
2368
2456
  const [mainPart, rayId] = reason.split("#");
2369
2457
  const [group, code] = mainPart.split(".");
2370
2458
  if (!group || !code) {
2371
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({ msg: "failed to parse close reason", reason });
2459
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({ msg: "failed to parse close reason", reason });
2372
2460
  return void 0;
2373
2461
  }
2374
2462
  return {
@@ -2390,11 +2478,11 @@ function messageLength(message) {
2390
2478
  if (typeof message === "string") {
2391
2479
  return message.length;
2392
2480
  }
2393
- _chunk2IDK6NX3cjs.assertUnreachable.call(void 0, message);
2481
+ _chunkRJC5O2SDcjs.assertUnreachable.call(void 0, message);
2394
2482
  }
2395
2483
  async function sendHttpRequest(opts) {
2396
2484
  var _a, _b, _c;
2397
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
2485
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
2398
2486
  msg: "sending http request",
2399
2487
  url: opts.url,
2400
2488
  encoding: opts.encoding
@@ -2403,8 +2491,8 @@ async function sendHttpRequest(opts) {
2403
2491
  let bodyData;
2404
2492
  if (opts.method === "POST" || opts.method === "PUT") {
2405
2493
  _invariant2.default.call(void 0, opts.body !== void 0, "missing body");
2406
- contentType = _chunk2IDK6NX3cjs.contentTypeForEncoding.call(void 0, opts.encoding);
2407
- bodyData = _chunk2IDK6NX3cjs.serializeWithEncoding.call(void 0,
2494
+ contentType = _chunkRJC5O2SDcjs.contentTypeForEncoding.call(void 0, opts.encoding);
2495
+ bodyData = _chunkRJC5O2SDcjs.serializeWithEncoding.call(void 0,
2408
2496
  opts.encoding,
2409
2497
  opts.body,
2410
2498
  opts.requestVersionedDataHandler,
@@ -2424,7 +2512,7 @@ async function sendHttpRequest(opts) {
2424
2512
  ...contentType ? {
2425
2513
  "Content-Type": contentType
2426
2514
  } : {},
2427
- "User-Agent": _chunk2IDK6NX3cjs.httpUserAgent.call(void 0, )
2515
+ "User-Agent": _chunkRJC5O2SDcjs.httpUserAgent.call(void 0, )
2428
2516
  },
2429
2517
  body: bodyData,
2430
2518
  credentials: "include",
@@ -2442,7 +2530,7 @@ async function sendHttpRequest(opts) {
2442
2530
  const rayId = response.headers.get("x-rivet-ray-id");
2443
2531
  const encoding = (contentType2 == null ? void 0 : contentType2.includes("application/json")) ? "json" : opts.encoding;
2444
2532
  try {
2445
- const responseData = _chunk2IDK6NX3cjs.deserializeWithEncoding.call(void 0,
2533
+ const responseData = _chunkRJC5O2SDcjs.deserializeWithEncoding.call(void 0,
2446
2534
  encoding,
2447
2535
  new Uint8Array(bufferResponse),
2448
2536
  HTTP_RESPONSE_ERROR_VERSIONED,
@@ -2460,7 +2548,7 @@ async function sendHttpRequest(opts) {
2460
2548
  group: bare5.group,
2461
2549
  code: bare5.code,
2462
2550
  message: bare5.message,
2463
- metadata: bare5.metadata ? _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.metadata)) : void 0,
2551
+ metadata: bare5.metadata ? _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.metadata)) : void 0,
2464
2552
  actor: bare5.actor ? {
2465
2553
  actorId: bare5.actor.actorId,
2466
2554
  generation: Number(bare5.actor.generation),
@@ -2468,7 +2556,7 @@ async function sendHttpRequest(opts) {
2468
2556
  } : void 0
2469
2557
  })
2470
2558
  );
2471
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
2559
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
2472
2560
  msg: "http error response",
2473
2561
  group: responseData.group,
2474
2562
  code: responseData.code,
@@ -2479,7 +2567,7 @@ async function sendHttpRequest(opts) {
2479
2567
  generation: (_b = responseData.actor) == null ? void 0 : _b.generation,
2480
2568
  actorKey: (_c = responseData.actor) == null ? void 0 : _c.key
2481
2569
  });
2482
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(
2570
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(
2483
2571
  responseData.group,
2484
2572
  responseData.code,
2485
2573
  responseData.message,
@@ -2490,7 +2578,7 @@ async function sendHttpRequest(opts) {
2490
2578
  }
2491
2579
  );
2492
2580
  } catch (error) {
2493
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError) {
2581
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError) {
2494
2582
  throw error;
2495
2583
  }
2496
2584
  const textResponse = new TextDecoder("utf-8", {
@@ -2514,7 +2602,7 @@ ${textResponse}`
2514
2602
  }
2515
2603
  try {
2516
2604
  const buffer = new Uint8Array(await response.arrayBuffer());
2517
- return _chunk2IDK6NX3cjs.deserializeWithEncoding.call(void 0,
2605
+ return _chunkRJC5O2SDcjs.deserializeWithEncoding.call(void 0,
2518
2606
  opts.encoding,
2519
2607
  buffer,
2520
2608
  opts.responseVersionedDataHandler,
@@ -2539,6 +2627,7 @@ function createQueueSender(senderOptions) {
2539
2627
  method: "POST",
2540
2628
  headers: {
2541
2629
  [HEADER_ENCODING]: senderOptions.encoding,
2630
+ ...senderOptions.telemetryHeaders(),
2542
2631
  ...senderOptions.params !== void 0 ? {
2543
2632
  [HEADER_CONN_PARAMS]: JSON.stringify(
2544
2633
  senderOptions.params
@@ -2561,8 +2650,8 @@ function createQueueSender(senderOptions) {
2561
2650
  }),
2562
2651
  requestToBare: (value) => ({
2563
2652
  name: _nullishCoalesce(value.name, () => ( name)),
2564
- body: _chunk2IDK6NX3cjs.bufferToArrayBuffer.call(void 0,
2565
- _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0, value.body)
2653
+ body: _chunkRJC5O2SDcjs.bufferToArrayBuffer.call(void 0,
2654
+ _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0, value.body)
2566
2655
  ),
2567
2656
  wait: _nullishCoalesce(value.wait, () => ( false)),
2568
2657
  timeout: value.timeout !== void 0 ? BigInt(value.timeout) : null
@@ -2582,7 +2671,7 @@ function createQueueSender(senderOptions) {
2582
2671
  }
2583
2672
  return {
2584
2673
  status: bare5.status,
2585
- response: _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.response))
2674
+ response: _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.response))
2586
2675
  };
2587
2676
  }
2588
2677
  });
@@ -2606,7 +2695,7 @@ async function prepareRetryableInit(init) {
2606
2695
  }
2607
2696
  return init;
2608
2697
  }
2609
- async function rawHttpFetch(driver, target, params, input, init, options = {}) {
2698
+ async function rawHttpFetch(driver, target, params, input, init, options = {}, telemetryHeaders = {}) {
2610
2699
  let path;
2611
2700
  let originalUrl;
2612
2701
  let mergedInit = init || {};
@@ -2648,7 +2737,7 @@ async function rawHttpFetch(driver, target, params, input, init, options = {}) {
2648
2737
  throw new TypeError("Invalid input type for fetch");
2649
2738
  }
2650
2739
  try {
2651
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug(
2740
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug(
2652
2741
  "directId" in target ? {
2653
2742
  msg: "sending raw http request to actor",
2654
2743
  actorId: target.directId
@@ -2667,14 +2756,15 @@ async function rawHttpFetch(driver, target, params, input, init, options = {}) {
2667
2756
  if (params) {
2668
2757
  proxyRequestHeaders.set(HEADER_CONN_PARAMS, JSON.stringify(params));
2669
2758
  }
2759
+ addOutboundTelemetryHeaders(proxyRequestHeaders, telemetryHeaders);
2670
2760
  const proxyRequest = new Request(url, {
2671
2761
  ...mergedInit,
2672
2762
  headers: proxyRequestHeaders
2673
2763
  });
2674
2764
  return driver.sendRequest(target, proxyRequest, options);
2675
2765
  } catch (err) {
2676
- const { group, code, message, metadata, rayId, actor } = _chunk2IDK6NX3cjs.deconstructError.call(void 0, err, true);
2677
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, { metadata, rayId, actor });
2766
+ const { group, code, message, metadata, rayId, actor } = _chunkRJC5O2SDcjs.deconstructError.call(void 0, err, true);
2767
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, { metadata, rayId, actor });
2678
2768
  }
2679
2769
  }
2680
2770
  async function rawWebSocket(driver, target, params, path, _protocols, options = {}) {
@@ -2694,7 +2784,7 @@ async function rawWebSocket(driver, target, params, path, _protocols, options =
2694
2784
  }
2695
2785
  }
2696
2786
  const fullPath = `${PATH_WEBSOCKET_PREFIX}${pathPortion}${queryPortion}`;
2697
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
2787
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
2698
2788
  msg: "opening websocket",
2699
2789
  target,
2700
2790
  encoding,
@@ -2724,7 +2814,7 @@ async function resolveGatewayTarget(driver, target) {
2724
2814
  key: target.getForKey.key
2725
2815
  });
2726
2816
  if (!output) {
2727
- throw _chunk2JSYYH6Pcjs.actorNotFound.call(void 0,
2817
+ throw _chunkJX2ITWAVcjs.actorNotFound.call(void 0,
2728
2818
  `${target.getForKey.name}:${JSON.stringify(target.getForKey.key)}`
2729
2819
  );
2730
2820
  }
@@ -2750,7 +2840,7 @@ async function resolveGatewayTarget(driver, target) {
2750
2840
  });
2751
2841
  return output.actorId;
2752
2842
  }
2753
- throw _chunk2JSYYH6Pcjs.invalidRequest.call(void 0, "Invalid query format");
2843
+ throw _chunkJX2ITWAVcjs.invalidRequest.call(void 0, "Invalid query format");
2754
2844
  }
2755
2845
 
2756
2846
  // src/client/actor-handle.ts
@@ -2766,6 +2856,8 @@ var ActorHandleRaw = class {
2766
2856
  #resolvedActorId;
2767
2857
  #resolvingActorId;
2768
2858
  #queueSendMutex = new (0, _chunkKVFIONKQcjs.AsyncMutex)();
2859
+ #currentActorInvocation;
2860
+ #startCallSpan;
2769
2861
  /**
2770
2862
  * Do not call this directly.
2771
2863
  *
@@ -2773,7 +2865,7 @@ var ActorHandleRaw = class {
2773
2865
  *
2774
2866
  * @protected
2775
2867
  */
2776
- constructor(client, driver, params, getParams, encoding, actorResolutionState, gatewayOptions = {}, signal) {
2868
+ constructor(client, driver, params, getParams, encoding, actorResolutionState, gatewayOptions = {}, signal, currentActorInvocation, startCallSpan) {
2777
2869
  this.#client = client;
2778
2870
  this.#driver = driver;
2779
2871
  this.#encoding = encoding;
@@ -2782,6 +2874,8 @@ var ActorHandleRaw = class {
2782
2874
  this.#params = params;
2783
2875
  this.#getParams = getParams;
2784
2876
  this.#signal = signal;
2877
+ this.#currentActorInvocation = currentActorInvocation;
2878
+ this.#startCallSpan = startCallSpan;
2785
2879
  }
2786
2880
  async #resolveConnectionParams() {
2787
2881
  if (this.#getParams) {
@@ -2812,6 +2906,12 @@ var ActorHandleRaw = class {
2812
2906
  return await createQueueSender({
2813
2907
  encoding: this.#encoding,
2814
2908
  params: this.#params,
2909
+ telemetryHeaders: () => {
2910
+ var _a;
2911
+ return outboundTelemetryHeaders(
2912
+ (_a = this.#currentActorInvocation) == null ? void 0 : _a.call(this)
2913
+ );
2914
+ },
2815
2915
  customFetch: async (request) => {
2816
2916
  return await this.#driver.sendRequest(
2817
2917
  target,
@@ -2821,7 +2921,7 @@ var ActorHandleRaw = class {
2821
2921
  }
2822
2922
  }).send(name, body, options);
2823
2923
  } catch (err) {
2824
- const { group, code, message, metadata, rayId, actor } = _chunk2IDK6NX3cjs.deconstructError.call(void 0, err, true);
2924
+ const { group, code, message, metadata, rayId, actor } = _chunkRJC5O2SDcjs.deconstructError.call(void 0, err, true);
2825
2925
  if (this.#shouldRetryQueueDispatchOverload(
2826
2926
  group,
2827
2927
  code,
@@ -2867,7 +2967,7 @@ var ActorHandleRaw = class {
2867
2967
  }
2868
2968
  continue;
2869
2969
  }
2870
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
2970
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
2871
2971
  metadata,
2872
2972
  rayId,
2873
2973
  actor
@@ -2885,6 +2985,7 @@ var ActorHandleRaw = class {
2885
2985
  * @template Response - The type of the response returned by the action function.
2886
2986
  */
2887
2987
  async action(opts) {
2988
+ var _a;
2888
2989
  if (typeof opts === "string" || typeof opts !== "object" || opts === null || !("name" in opts)) {
2889
2990
  throw new Error(
2890
2991
  `Invalid action call: expected an options object { name, args }, got ${typeof opts}. Use handle.actionName(...args) for the shorthand API.`
@@ -2892,13 +2993,35 @@ var ActorHandleRaw = class {
2892
2993
  }
2893
2994
  const signal = _nullishCoalesce(opts.signal, () => ( this.#signal));
2894
2995
  const optsWithSignal = { ...opts, signal };
2895
- const run = async () => await this.#sendActionNow(optsWithSignal);
2896
- if (opts.name === "destroy") {
2897
- return await run();
2996
+ const call = (_a = this.#startCallSpan) == null ? void 0 : _a.call(
2997
+ this,
2998
+ getActorNameFromQuery(this.#actorResolutionState),
2999
+ opts.name
3000
+ );
3001
+ const run = async () => await this.#sendActionAttempts(
3002
+ optsWithSignal,
3003
+ call == null ? void 0 : call.span
3004
+ );
3005
+ const send = async () => {
3006
+ if (opts.name === "destroy") {
3007
+ return await run();
3008
+ }
3009
+ return await retryOnLifecycleBoundary(run, { signal });
3010
+ };
3011
+ if (!call) {
3012
+ return await send();
3013
+ }
3014
+ try {
3015
+ const output = await send();
3016
+ call.finish();
3017
+ return output;
3018
+ } catch (error) {
3019
+ call.finish(_chunkJX2ITWAVcjs.encodeErrorForBridge.call(void 0, error));
3020
+ throw error;
2898
3021
  }
2899
- return await retryOnLifecycleBoundary(run, { signal });
2900
3022
  }
2901
- async #sendActionNow(opts) {
3023
+ async #sendActionAttempts(opts, callSpan) {
3024
+ var _a;
2902
3025
  const maxAttempts = this.#getDynamicQueryMaxAttempts();
2903
3026
  let useQueryTarget = isDynamicActorQuery(this.#actorResolutionState);
2904
3027
  const gatewayOptions = resolveActorGatewayOptions(
@@ -2913,28 +3036,31 @@ var ActorHandleRaw = class {
2913
3036
  gatewayOptions
2914
3037
  );
2915
3038
  actorId = "directId" in target ? target.directId : void 0;
2916
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug(
3039
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug(
2917
3040
  actorId ? { msg: "using direct actor gateway target", actorId } : {
2918
3041
  msg: "using query gateway target for action",
2919
3042
  query: this.#actorResolutionState
2920
3043
  }
2921
3044
  );
2922
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3045
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
2923
3046
  msg: "handling action",
2924
3047
  name: opts.name,
2925
3048
  encoding: this.#encoding
2926
3049
  });
3050
+ const headers = {
3051
+ [HEADER_ENCODING]: this.#encoding,
3052
+ ...outboundTelemetryHeaders(
3053
+ (_a = this.#currentActorInvocation) == null ? void 0 : _a.call(this),
3054
+ callSpan
3055
+ )
3056
+ };
3057
+ if (this.#params !== void 0) {
3058
+ headers[HEADER_CONN_PARAMS] = JSON.stringify(this.#params);
3059
+ }
2927
3060
  const output = await sendHttpRequest({
2928
3061
  url: `http://actor/action/${encodeURIComponent(opts.name)}`,
2929
3062
  method: "POST",
2930
- headers: {
2931
- [HEADER_ENCODING]: this.#encoding,
2932
- ...this.#params !== void 0 ? {
2933
- [HEADER_CONN_PARAMS]: JSON.stringify(
2934
- this.#params
2935
- )
2936
- } : {}
2937
- },
3063
+ headers,
2938
3064
  body: opts.args,
2939
3065
  encoding: this.#encoding,
2940
3066
  customFetch: async (request) => await this.#driver.sendRequest(
@@ -2953,19 +3079,19 @@ var ActorHandleRaw = class {
2953
3079
  args
2954
3080
  }),
2955
3081
  requestToBare: (args) => ({
2956
- args: _chunk2IDK6NX3cjs.bufferToArrayBuffer.call(void 0,
2957
- _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0, args)
3082
+ args: _chunkRJC5O2SDcjs.bufferToArrayBuffer.call(void 0,
3083
+ _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0, args)
2958
3084
  )
2959
3085
  }),
2960
3086
  responseFromJson: (json) => json.output,
2961
- responseFromBare: (bare5) => _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.output))
3087
+ responseFromBare: (bare5) => _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.output))
2962
3088
  });
2963
3089
  if (opts.name === "destroy" && actorId) {
2964
3090
  await this.#waitForDestroyActionToSettle(actorId);
2965
3091
  }
2966
3092
  return output;
2967
3093
  } catch (err) {
2968
- const { group, code, message, metadata, rayId, actor } = _chunk2IDK6NX3cjs.deconstructError.call(void 0, err, true);
3094
+ const { group, code, message, metadata, rayId, actor } = _chunkRJC5O2SDcjs.deconstructError.call(void 0, err, true);
2969
3095
  if (await this.#shouldRetrySchedulingError(
2970
3096
  group,
2971
3097
  code,
@@ -2990,7 +3116,7 @@ var ActorHandleRaw = class {
2990
3116
  continue;
2991
3117
  }
2992
3118
  if (group === "actor" && code === "destroyed_while_waiting_for_ready" && "getForId" in this.#actorResolutionState) {
2993
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(
3119
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(
2994
3120
  "actor",
2995
3121
  "not_found",
2996
3122
  "The actor does not exist or was destroyed.",
@@ -3010,7 +3136,7 @@ var ActorHandleRaw = class {
3010
3136
  }
3011
3137
  continue;
3012
3138
  }
3013
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
3139
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
3014
3140
  metadata,
3015
3141
  rayId,
3016
3142
  actor
@@ -3121,7 +3247,7 @@ var ActorHandleRaw = class {
3121
3247
  * @returns {ActorConn<AD>} A connection to the actor.
3122
3248
  */
3123
3249
  connect(params, options = {}) {
3124
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3250
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3125
3251
  msg: "establishing connection from handle",
3126
3252
  query: this.#actorResolutionState
3127
3253
  });
@@ -3134,7 +3260,8 @@ var ActorHandleRaw = class {
3134
3260
  getParams,
3135
3261
  this.#encoding,
3136
3262
  this.#actorResolutionState,
3137
- resolveActorGatewayOptions(this.#gatewayOptions, options)
3263
+ resolveActorGatewayOptions(this.#gatewayOptions, options),
3264
+ this.#currentActorInvocation
3138
3265
  );
3139
3266
  return this.#client[CREATE_ACTOR_CONN_PROXY](
3140
3267
  conn
@@ -3148,6 +3275,7 @@ var ActorHandleRaw = class {
3148
3275
  return this.#fetchWithResolvedActor(input, init);
3149
3276
  }
3150
3277
  async #fetchWithResolvedActor(input, init) {
3278
+ var _a;
3151
3279
  const { skipReadyWait, ...restInit } = _nullishCoalesce(init, () => ( {}));
3152
3280
  const maxAttempts = this.#getDynamicQueryMaxAttempts();
3153
3281
  const requestInit = maxAttempts > 1 ? await prepareRetryableInit(restInit) : restInit;
@@ -3159,6 +3287,9 @@ var ActorHandleRaw = class {
3159
3287
  skipReadyWait
3160
3288
  }
3161
3289
  );
3290
+ const telemetryHeaders = outboundTelemetryHeaders(
3291
+ (_a = this.#currentActorInvocation) == null ? void 0 : _a.call(this)
3292
+ );
3162
3293
  for (let attempt = 0; attempt < maxAttempts; attempt++) {
3163
3294
  let actorId;
3164
3295
  try {
@@ -3175,7 +3306,8 @@ var ActorHandleRaw = class {
3175
3306
  // NOTE: This holds the body in memory until GC (unavoidable).
3176
3307
  clonesInputBody ? input.clone() : input,
3177
3308
  requestInit,
3178
- gatewayOptions
3309
+ gatewayOptions,
3310
+ telemetryHeaders
3179
3311
  );
3180
3312
  const retry = await this.#shouldRetryRawFetchResponse(
3181
3313
  response,
@@ -3192,7 +3324,7 @@ var ActorHandleRaw = class {
3192
3324
  }
3193
3325
  return response;
3194
3326
  } catch (err) {
3195
- const { group, code, message, metadata, rayId, actor } = _chunk2IDK6NX3cjs.deconstructError.call(void 0, err, true);
3327
+ const { group, code, message, metadata, rayId, actor } = _chunkRJC5O2SDcjs.deconstructError.call(void 0, err, true);
3196
3328
  if (await this.#shouldRetrySchedulingError(
3197
3329
  group,
3198
3330
  code,
@@ -3228,7 +3360,7 @@ var ActorHandleRaw = class {
3228
3360
  }
3229
3361
  continue;
3230
3362
  }
3231
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
3363
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
3232
3364
  metadata,
3233
3365
  rayId,
3234
3366
  actor
@@ -3288,7 +3420,7 @@ var ActorHandleRaw = class {
3288
3420
  const contentType = response.headers.get("content-type");
3289
3421
  const encoding = (contentType == null ? void 0 : contentType.includes("application/json")) ? "json" : this.#encoding;
3290
3422
  try {
3291
- const error = _chunk2IDK6NX3cjs.deserializeWithEncoding.call(void 0,
3423
+ const error = _chunkRJC5O2SDcjs.deserializeWithEncoding.call(void 0,
3292
3424
  encoding,
3293
3425
  new Uint8Array(await response.clone().arrayBuffer()),
3294
3426
  HTTP_RESPONSE_ERROR_VERSIONED,
@@ -3304,7 +3436,7 @@ var ActorHandleRaw = class {
3304
3436
  group: bare5.group,
3305
3437
  code: bare5.code,
3306
3438
  message: bare5.message,
3307
- metadata: bare5.metadata ? _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.metadata)) : void 0,
3439
+ metadata: bare5.metadata ? _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0, new Uint8Array(bare5.metadata)) : void 0,
3308
3440
  actor: bare5.actor ? {
3309
3441
  actorId: bare5.actor.actorId,
3310
3442
  generation: Number(bare5.actor.generation),
@@ -3316,7 +3448,7 @@ var ActorHandleRaw = class {
3316
3448
  ...error,
3317
3449
  rayId: _nullishCoalesce(response.headers.get("x-rivet-ray-id"), () => ( void 0))
3318
3450
  };
3319
- } catch (e) {
3451
+ } catch (e2) {
3320
3452
  return null;
3321
3453
  }
3322
3454
  }
@@ -3375,7 +3507,7 @@ var ActorHandleRaw = class {
3375
3507
  const response = await this.#driver.sendRequest(target, request);
3376
3508
  if (!response.ok) {
3377
3509
  const body = await response.text().catch(() => "");
3378
- throw new (0, _chunk2JSYYH6Pcjs.RivetError)(
3510
+ throw new (0, _chunkJX2ITWAVcjs.RivetError)(
3379
3511
  "actor",
3380
3512
  "reload_failed",
3381
3513
  `reload failed with status ${response.status}: ${body}`,
@@ -3396,13 +3528,17 @@ var ClientRaw = (_class = class {
3396
3528
  #driver;
3397
3529
  #encodingKind;
3398
3530
  #gatewayOptions;
3531
+ #currentActorInvocation;
3532
+ #startCallSpan;
3399
3533
  /**
3400
3534
  * Creates an instance of Client.
3401
3535
  */
3402
- constructor(driver, encoding, gatewayOptions = {}) {;_class.prototype.__init.call(this);
3536
+ constructor(driver, options = {}) {;_class.prototype.__init.call(this);
3403
3537
  this.#driver = driver;
3404
- this.#encodingKind = _nullishCoalesce(encoding, () => ( "bare"));
3405
- this.#gatewayOptions = gatewayOptions;
3538
+ this.#encodingKind = _nullishCoalesce(options.encoding, () => ( "bare"));
3539
+ this.#gatewayOptions = _nullishCoalesce(options.gateway, () => ( {}));
3540
+ this.#currentActorInvocation = options.currentActorInvocation;
3541
+ this.#startCallSpan = options.startCallSpan;
3406
3542
  }
3407
3543
  /**
3408
3544
  * Gets a stateless handle to a actor by its ID.
@@ -3414,7 +3550,7 @@ var ClientRaw = (_class = class {
3414
3550
  * @returns {ActorHandle<AD>} - A handle to the actor.
3415
3551
  */
3416
3552
  getForId(name, actorId, opts) {
3417
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3553
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3418
3554
  msg: "get handle to actor with id",
3419
3555
  name,
3420
3556
  actorId,
@@ -3445,7 +3581,7 @@ var ClientRaw = (_class = class {
3445
3581
  */
3446
3582
  get(name, key, opts) {
3447
3583
  const keyArray = typeof key === "string" ? [key] : key || [];
3448
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3584
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3449
3585
  msg: "get handle to actor",
3450
3586
  name,
3451
3587
  key: keyArray,
@@ -3476,7 +3612,7 @@ var ClientRaw = (_class = class {
3476
3612
  */
3477
3613
  getOrCreate(name, key, opts) {
3478
3614
  const keyArray = typeof key === "string" ? [key] : key || [];
3479
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3615
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3480
3616
  msg: "get or create handle to actor",
3481
3617
  name,
3482
3618
  key: keyArray,
@@ -3520,7 +3656,7 @@ var ClientRaw = (_class = class {
3520
3656
  key: keyArray
3521
3657
  }
3522
3658
  };
3523
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3659
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3524
3660
  msg: "create actor handle",
3525
3661
  name,
3526
3662
  key: keyArray,
@@ -3528,7 +3664,7 @@ var ClientRaw = (_class = class {
3528
3664
  create: createQuery.create
3529
3665
  });
3530
3666
  const actorId = await resolveGatewayTarget(this.#driver, createQuery);
3531
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3667
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3532
3668
  msg: "created actor with ID",
3533
3669
  name,
3534
3670
  key: keyArray,
@@ -3558,7 +3694,9 @@ var ClientRaw = (_class = class {
3558
3694
  this.#encodingKind,
3559
3695
  actorQuery,
3560
3696
  this.#gatewayOptions,
3561
- signal
3697
+ signal,
3698
+ this.#currentActorInvocation,
3699
+ this.#startCallSpan
3562
3700
  );
3563
3701
  }
3564
3702
  [CREATE_ACTOR_CONN_PROXY](conn) {
@@ -3573,11 +3711,11 @@ var ClientRaw = (_class = class {
3573
3711
  */
3574
3712
  async dispose() {
3575
3713
  if (this.#disposed) {
3576
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({ msg: "client already disconnected" });
3714
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({ msg: "client already disconnected" });
3577
3715
  return;
3578
3716
  }
3579
3717
  this.#disposed = true;
3580
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({ msg: "disposing client" });
3718
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({ msg: "disposing client" });
3581
3719
  const disposePromises = [];
3582
3720
  for (const conn of this[ACTOR_CONNS_SYMBOL].values()) {
3583
3721
  disposePromises.push(conn.dispose());
@@ -3585,8 +3723,8 @@ var ClientRaw = (_class = class {
3585
3723
  await Promise.all(disposePromises);
3586
3724
  }
3587
3725
  }, _class);
3588
- function createClientWithDriver(driver, config = {}) {
3589
- const client = new ClientRaw(driver, config.encoding, config.gateway);
3726
+ function createClientWithDriver(driver, options = {}) {
3727
+ const client = new ClientRaw(driver, options);
3590
3728
  return new Proxy(client, {
3591
3729
  get: (target, prop, receiver) => {
3592
3730
  if (typeof prop === "symbol" || prop in target) {
@@ -3720,6 +3858,7 @@ var ActorConnRaw = class {
3720
3858
  #websocket;
3721
3859
  #client;
3722
3860
  #driver;
3861
+ #currentActorInvocation;
3723
3862
  #params;
3724
3863
  #getParams;
3725
3864
  #encoding;
@@ -3733,8 +3872,9 @@ var ActorConnRaw = class {
3733
3872
  *
3734
3873
  * @protected
3735
3874
  */
3736
- constructor(client, driver, params, getParams, encoding, actorResolutionState, gatewayOptions = {}) {
3875
+ constructor(client, driver, params, getParams, encoding, actorResolutionState, gatewayOptions = {}, currentActorInvocation) {
3737
3876
  this.#client = client;
3877
+ this.#currentActorInvocation = currentActorInvocation;
3738
3878
  this.#driver = driver;
3739
3879
  this.#params = params;
3740
3880
  this.#getParams = getParams;
@@ -3744,8 +3884,8 @@ var ActorConnRaw = class {
3744
3884
  if ("getForId" in actorResolutionState) {
3745
3885
  this.#actorId = actorResolutionState.getForId.actorId;
3746
3886
  }
3747
- this.#readyPromise = _chunk2IDK6NX3cjs.promiseWithResolvers.call(void 0,
3748
- (reason) => _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
3887
+ this.#readyPromise = _chunkRJC5O2SDcjs.promiseWithResolvers.call(void 0,
3888
+ (reason) => _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
3749
3889
  msg: "unhandled ready promise rejection",
3750
3890
  reason
3751
3891
  })
@@ -3753,6 +3893,10 @@ var ActorConnRaw = class {
3753
3893
  this.#queueSender = createQueueSender({
3754
3894
  encoding: this.#encoding,
3755
3895
  params: this.#params,
3896
+ telemetryHeaders: () => {
3897
+ var _a;
3898
+ return outboundTelemetryHeaders((_a = this.#currentActorInvocation) == null ? void 0 : _a.call(this));
3899
+ },
3756
3900
  customFetch: async (request) => {
3757
3901
  return await this.#driver.sendRequest(
3758
3902
  getGatewayTarget(this.#actorResolutionState),
@@ -3808,11 +3952,11 @@ var ActorConnRaw = class {
3808
3952
  `Invalid action call: expected an options object { name, args }, got ${typeof opts}. Use conn.actionName(...args) for the shorthand API.`
3809
3953
  );
3810
3954
  }
3811
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({ msg: "action", name: opts.name, args: opts.args });
3955
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({ msg: "action", name: opts.name, args: opts.args });
3812
3956
  const actionId = this.#actionIdCounter;
3813
3957
  this.#actionIdCounter += 1;
3814
- const { promise, resolve, reject } = _chunk2IDK6NX3cjs.promiseWithResolvers.call(void 0,
3815
- (reason) => _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
3958
+ const { promise, resolve, reject } = _chunkRJC5O2SDcjs.promiseWithResolvers.call(void 0,
3959
+ (reason) => _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
3816
3960
  msg: "unhandled action promise rejection",
3817
3961
  reason
3818
3962
  })
@@ -3822,7 +3966,7 @@ var ActorConnRaw = class {
3822
3966
  resolve,
3823
3967
  reject
3824
3968
  });
3825
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
3969
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3826
3970
  msg: "added action to in-flight map",
3827
3971
  actionId,
3828
3972
  actionName: opts.name,
@@ -3862,9 +4006,9 @@ var ActorConnRaw = class {
3862
4006
  try {
3863
4007
  handler(status);
3864
4008
  } catch (err) {
3865
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4009
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
3866
4010
  msg: "error in status change handler",
3867
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4011
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
3868
4012
  });
3869
4013
  }
3870
4014
  }
@@ -3874,9 +4018,9 @@ var ActorConnRaw = class {
3874
4018
  try {
3875
4019
  handler();
3876
4020
  } catch (err) {
3877
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4021
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
3878
4022
  msg: "error in open handler",
3879
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4023
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
3880
4024
  });
3881
4025
  }
3882
4026
  }
@@ -3886,9 +4030,9 @@ var ActorConnRaw = class {
3886
4030
  try {
3887
4031
  handler();
3888
4032
  } catch (err) {
3889
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4033
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
3890
4034
  msg: "error in close handler",
3891
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4035
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
3892
4036
  });
3893
4037
  }
3894
4038
  }
@@ -3901,21 +4045,21 @@ var ActorConnRaw = class {
3901
4045
  minTimeout: 250,
3902
4046
  maxTimeout: 3e4,
3903
4047
  onFailedAttempt: (error) => {
3904
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4048
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
3905
4049
  msg: "failed to reconnect",
3906
4050
  attempt: error.attemptNumber,
3907
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, error)
4051
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, error)
3908
4052
  });
3909
4053
  },
3910
4054
  // Cancel retry if aborted
3911
4055
  signal: this.#abortController.signal
3912
4056
  }).catch((err) => {
3913
4057
  if (err instanceof _pretry.AbortError || err.name === "AbortError" || !this.#shouldRetryConnectionOpenError(err)) {
3914
- _chunkOKVVWOC3cjs.logger.call(void 0, ).info({ msg: "connection retry aborted" });
4058
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).info({ msg: "connection retry aborted" });
3915
4059
  } else {
3916
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4060
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
3917
4061
  msg: "unexpected error in connection retry",
3918
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4062
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
3919
4063
  });
3920
4064
  }
3921
4065
  });
@@ -3924,8 +4068,8 @@ var ActorConnRaw = class {
3924
4068
  try {
3925
4069
  if (this.#onOpenPromise)
3926
4070
  throw new Error("#onOpenPromise already defined");
3927
- this.#onOpenPromise = _chunk2IDK6NX3cjs.promiseWithResolvers.call(void 0,
3928
- (reason) => _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4071
+ this.#onOpenPromise = _chunkRJC5O2SDcjs.promiseWithResolvers.call(void 0,
4072
+ (reason) => _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
3929
4073
  msg: "unhandled open promise rejection",
3930
4074
  reason
3931
4075
  })
@@ -3936,18 +4080,18 @@ var ActorConnRaw = class {
3936
4080
  if (this.#shouldRetryConnectionOpenError(error)) {
3937
4081
  throw error;
3938
4082
  }
3939
- const actorError = error instanceof _chunk2JSYYH6Pcjs.RivetError ? error : new (0, _chunk2JSYYH6Pcjs.RivetError)(
4083
+ const actorError = error instanceof _chunkJX2ITWAVcjs.RivetError ? error : new (0, _chunkJX2ITWAVcjs.RivetError)(
3940
4084
  "client",
3941
4085
  "connection_open_failed",
3942
- `Failed to open connection: ${_chunk2IDK6NX3cjs.stringifyError.call(void 0, error)}`,
3943
- { error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, error) }
4086
+ `Failed to open connection: ${_chunkRJC5O2SDcjs.stringifyError.call(void 0, error)}`,
4087
+ { error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, error) }
3944
4088
  );
3945
4089
  this.#clearQueuedMessages();
3946
4090
  this.#rejectPendingPromises(actorError, false);
3947
4091
  this.#dispatchActorError(actorError);
3948
4092
  this.#setConnStatus("idle");
3949
4093
  throw new (0, _pretry.AbortError)(
3950
- error instanceof Error ? error : new Error(_chunk2IDK6NX3cjs.stringifyError.call(void 0, error))
4094
+ error instanceof Error ? error : new Error(_chunkRJC5O2SDcjs.stringifyError.call(void 0, error))
3951
4095
  );
3952
4096
  } finally {
3953
4097
  this.#onOpenPromise = void 0;
@@ -3957,17 +4101,17 @@ var ActorConnRaw = class {
3957
4101
  if (error instanceof ActorConnDisposed) {
3958
4102
  return false;
3959
4103
  }
3960
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError && this.#shouldReconnectForStaleActor(error.group, error.code)) {
4104
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError && this.#shouldReconnectForStaleActor(error.group, error.code)) {
3961
4105
  return true;
3962
4106
  }
3963
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError && error.group === "client" && error.code === "get_params_failed") {
4107
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError && error.group === "client" && error.code === "get_params_failed") {
3964
4108
  return true;
3965
4109
  }
3966
4110
  return isRetryableLifecycleReconnectSignal(error);
3967
4111
  }
3968
4112
  #clearQueuedMessages() {
3969
4113
  if (this.#messageQueue.length === 0) return;
3970
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4114
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
3971
4115
  msg: "clearing queued connection messages",
3972
4116
  queueLength: this.#messageQueue.length
3973
4117
  });
@@ -3980,8 +4124,8 @@ var ActorConnRaw = class {
3980
4124
  try {
3981
4125
  return await this.#getParams();
3982
4126
  } catch (err) {
3983
- const errorMessage = _chunk2IDK6NX3cjs.stringifyError.call(void 0, err);
3984
- const error = new (0, _chunk2JSYYH6Pcjs.RivetError)(
4127
+ const errorMessage = _chunkRJC5O2SDcjs.stringifyError.call(void 0, err);
4128
+ const error = new (0, _chunkJX2ITWAVcjs.RivetError)(
3985
4129
  "client",
3986
4130
  "get_params_failed",
3987
4131
  `Failed to resolve connection params: ${errorMessage}`,
@@ -4004,7 +4148,7 @@ var ActorConnRaw = class {
4004
4148
  this.#gatewayOptions
4005
4149
  );
4006
4150
  _invariant2.default.call(void 0, ws, "websocket should have been created");
4007
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4151
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4008
4152
  msg: "opened websocket",
4009
4153
  connId: this.#connId,
4010
4154
  readyState: ws.readyState,
@@ -4012,7 +4156,7 @@ var ActorConnRaw = class {
4012
4156
  });
4013
4157
  this.#websocket = ws;
4014
4158
  ws.addEventListener("open", () => {
4015
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4159
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4016
4160
  msg: "client websocket open",
4017
4161
  connId: this.#connId
4018
4162
  });
@@ -4021,9 +4165,9 @@ var ActorConnRaw = class {
4021
4165
  try {
4022
4166
  await this.#handleOnMessage(ev.data);
4023
4167
  } catch (err) {
4024
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4168
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4025
4169
  msg: "error in websocket message handler",
4026
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4170
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
4027
4171
  });
4028
4172
  }
4029
4173
  });
@@ -4031,9 +4175,9 @@ var ActorConnRaw = class {
4031
4175
  try {
4032
4176
  await this.#handleOnClose(ev);
4033
4177
  } catch (err) {
4034
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4178
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4035
4179
  msg: "error in websocket close handler",
4036
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4180
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
4037
4181
  });
4038
4182
  }
4039
4183
  });
@@ -4041,9 +4185,9 @@ var ActorConnRaw = class {
4041
4185
  try {
4042
4186
  this.#handleOnError();
4043
4187
  } catch (err) {
4044
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4188
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4045
4189
  msg: "error in websocket error handler",
4046
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4190
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
4047
4191
  });
4048
4192
  }
4049
4193
  });
@@ -4051,7 +4195,7 @@ var ActorConnRaw = class {
4051
4195
  /** Called by the onopen event from drivers. */
4052
4196
  #handleOnOpen() {
4053
4197
  if (this.#disposed) {
4054
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4198
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4055
4199
  msg: "handleOnOpen called after dispose, closing websocket"
4056
4200
  });
4057
4201
  if (this.#websocket) {
@@ -4067,7 +4211,7 @@ var ActorConnRaw = class {
4067
4211
  queueMicrotask(() => {
4068
4212
  this.#openScheduled = false;
4069
4213
  if (this.#disposed) {
4070
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4214
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4071
4215
  msg: "handleOnOpen scheduled after dispose, closing websocket"
4072
4216
  });
4073
4217
  if (this.#websocket) {
@@ -4076,7 +4220,7 @@ var ActorConnRaw = class {
4076
4220
  }
4077
4221
  return;
4078
4222
  }
4079
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4223
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4080
4224
  msg: "socket open",
4081
4225
  messageQueueLength: this.#messageQueue.length,
4082
4226
  connId: this.#connId
@@ -4085,14 +4229,14 @@ var ActorConnRaw = class {
4085
4229
  if (this.#onOpenPromise) {
4086
4230
  this.#onOpenPromise.resolve(void 0);
4087
4231
  } else {
4088
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({ msg: "#onOpenPromise is undefined" });
4232
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({ msg: "#onOpenPromise is undefined" });
4089
4233
  }
4090
4234
  for (const eventName of this.#eventSubscriptions.keys()) {
4091
4235
  this.#sendSubscription(eventName, true);
4092
4236
  }
4093
4237
  const queue = this.#messageQueue;
4094
4238
  this.#messageQueue = [];
4095
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4239
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4096
4240
  msg: "flushing message queue",
4097
4241
  queueLength: queue.length
4098
4242
  });
@@ -4104,23 +4248,23 @@ var ActorConnRaw = class {
4104
4248
  /** Called by the onmessage event from drivers. */
4105
4249
  async #handleOnMessage(data) {
4106
4250
  var _a;
4107
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace({
4251
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace({
4108
4252
  msg: "received message",
4109
4253
  dataType: typeof data,
4110
4254
  isBlob: data instanceof Blob,
4111
4255
  isArrayBuffer: data instanceof ArrayBuffer
4112
4256
  });
4113
4257
  const response = await this.#parseMessage(data);
4114
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace(
4115
- _chunk2IDK6NX3cjs.getLogMessage.call(void 0, ) ? {
4258
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace(
4259
+ _chunkRJC5O2SDcjs.getLogMessage.call(void 0, ) ? {
4116
4260
  msg: "parsed message",
4117
- message: _chunk2IDK6NX3cjs.jsonStringifyCompat.call(void 0, response).substring(0, 100) + "..."
4261
+ message: _chunkRJC5O2SDcjs.jsonStringifyCompat.call(void 0, response).substring(0, 100) + "..."
4118
4262
  } : { msg: "parsed message" }
4119
4263
  );
4120
4264
  if (response.body.tag === "Init") {
4121
4265
  this.#actorId = response.body.val.actorId;
4122
4266
  this.#connId = response.body.val.connectionId;
4123
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace({
4267
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace({
4124
4268
  msg: "received init message",
4125
4269
  actorId: this.#actorId,
4126
4270
  connId: this.#connId
@@ -4131,7 +4275,7 @@ var ActorConnRaw = class {
4131
4275
  if (actionId !== null) {
4132
4276
  const inFlight = this.#takeActionInFlight(Number(actionId));
4133
4277
  this.#invalidateActorIfStale(group, code);
4134
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4278
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
4135
4279
  msg: "action error",
4136
4280
  actionId,
4137
4281
  actionName: inFlight == null ? void 0 : inFlight.name,
@@ -4144,13 +4288,13 @@ var ActorConnRaw = class {
4144
4288
  actorKey: actor == null ? void 0 : actor.key
4145
4289
  });
4146
4290
  inFlight.reject(
4147
- new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
4291
+ new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
4148
4292
  metadata,
4149
4293
  actor
4150
4294
  })
4151
4295
  );
4152
4296
  } else {
4153
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4297
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
4154
4298
  msg: "connection error",
4155
4299
  group,
4156
4300
  code,
@@ -4163,14 +4307,14 @@ var ActorConnRaw = class {
4163
4307
  if (this.#shouldReconnectForStaleActor(group, code)) {
4164
4308
  this.#clearResolvedActorIdentity();
4165
4309
  (_a = this.#onOpenPromise) == null ? void 0 : _a.reject(
4166
- new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
4310
+ new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
4167
4311
  metadata,
4168
4312
  actor
4169
4313
  })
4170
4314
  );
4171
4315
  return;
4172
4316
  }
4173
- let errorToThrow = new (0, _chunk2JSYYH6Pcjs.RivetError)(group, code, message, {
4317
+ let errorToThrow = new (0, _chunkJX2ITWAVcjs.RivetError)(group, code, message, {
4174
4318
  metadata,
4175
4319
  actor
4176
4320
  });
@@ -4198,27 +4342,27 @@ var ActorConnRaw = class {
4198
4342
  }
4199
4343
  } else if (response.body.tag === "ActionResponse") {
4200
4344
  const { id: actionId } = response.body.val;
4201
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4345
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4202
4346
  msg: "received action response",
4203
4347
  actionId: Number(actionId),
4204
4348
  inFlightCount: this.#actionsInFlight.size,
4205
4349
  inFlightIds: Array.from(this.#actionsInFlight.keys())
4206
4350
  });
4207
4351
  const inFlight = this.#takeActionInFlight(Number(actionId));
4208
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace({
4352
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace({
4209
4353
  msg: "resolving action promise",
4210
4354
  actionId,
4211
4355
  actionName: inFlight == null ? void 0 : inFlight.name
4212
4356
  });
4213
4357
  inFlight.resolve(response.body.val);
4214
4358
  } else if (response.body.tag === "Event") {
4215
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace({
4359
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace({
4216
4360
  msg: "received event",
4217
4361
  name: response.body.val.name
4218
4362
  });
4219
4363
  this.#dispatchEvent(response.body.val);
4220
4364
  } else {
4221
- _chunk2IDK6NX3cjs.assertUnreachable.call(void 0, response.body);
4365
+ _chunkRJC5O2SDcjs.assertUnreachable.call(void 0, response.body);
4222
4366
  }
4223
4367
  }
4224
4368
  /** Called by the onclose event from drivers. */
@@ -4227,7 +4371,7 @@ var ActorConnRaw = class {
4227
4371
  const closeEvent = event;
4228
4372
  const wasClean = closeEvent.wasClean;
4229
4373
  const wasConnected = this.#connStatus === "connected";
4230
- _chunkOKVVWOC3cjs.logger.call(void 0, ).info({
4374
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).info({
4231
4375
  msg: "socket closed",
4232
4376
  code: closeEvent.code,
4233
4377
  reason: closeEvent.reason,
@@ -4248,7 +4392,7 @@ var ActorConnRaw = class {
4248
4392
  if (this.#shouldReconnectForStaleActor(group, code)) {
4249
4393
  this.#clearResolvedActorIdentity();
4250
4394
  (_a = this.#onOpenPromise) == null ? void 0 : _a.reject(
4251
- new (0, _chunk2JSYYH6Pcjs.RivetError)(
4395
+ new (0, _chunkJX2ITWAVcjs.RivetError)(
4252
4396
  group,
4253
4397
  code,
4254
4398
  `Connection closed: ${reason}`,
@@ -4269,7 +4413,7 @@ var ActorConnRaw = class {
4269
4413
  if (schedulingError) {
4270
4414
  error = schedulingError;
4271
4415
  } else {
4272
- error = new (0, _chunk2JSYYH6Pcjs.RivetError)(
4416
+ error = new (0, _chunkJX2ITWAVcjs.RivetError)(
4273
4417
  group,
4274
4418
  code,
4275
4419
  `Connection closed: ${reason}`,
@@ -4277,7 +4421,7 @@ var ActorConnRaw = class {
4277
4421
  );
4278
4422
  }
4279
4423
  } else {
4280
- error = new (0, _chunk2JSYYH6Pcjs.RivetError)(
4424
+ error = new (0, _chunkJX2ITWAVcjs.RivetError)(
4281
4425
  group,
4282
4426
  code,
4283
4427
  `Connection closed: ${reason}`,
@@ -4291,11 +4435,11 @@ var ActorConnRaw = class {
4291
4435
  );
4292
4436
  }
4293
4437
  this.#rejectPendingPromises(error, false);
4294
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError) {
4438
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError) {
4295
4439
  this.#dispatchActorError(error);
4296
4440
  }
4297
4441
  if (wasConnected) {
4298
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4442
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4299
4443
  msg: "triggering reconnect",
4300
4444
  connId: this.#connId
4301
4445
  });
@@ -4319,12 +4463,12 @@ var ActorConnRaw = class {
4319
4463
  /** Called by the onerror event from drivers. */
4320
4464
  #handleOnError() {
4321
4465
  if (this.#disposed) return;
4322
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn("socket error");
4466
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn("socket error");
4323
4467
  }
4324
4468
  #takeActionInFlight(id) {
4325
4469
  const inFlight = this.#actionsInFlight.get(id);
4326
4470
  if (!inFlight) {
4327
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4471
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4328
4472
  msg: "action not found in in-flight map",
4329
4473
  lookupId: id,
4330
4474
  inFlightCount: this.#actionsInFlight.size,
@@ -4339,7 +4483,7 @@ var ActorConnRaw = class {
4339
4483
  throw internalClientError(`No in flight response for ${id}`);
4340
4484
  }
4341
4485
  this.#actionsInFlight.delete(id);
4342
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4486
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4343
4487
  msg: "removed action from in-flight map",
4344
4488
  actionId: id,
4345
4489
  actionName: inFlight.name,
@@ -4366,9 +4510,9 @@ var ActorConnRaw = class {
4366
4510
  try {
4367
4511
  handler(error);
4368
4512
  } catch (err) {
4369
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4513
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4370
4514
  msg: "error in connection error handler",
4371
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4515
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
4372
4516
  });
4373
4517
  }
4374
4518
  }
@@ -4473,9 +4617,9 @@ var ActorConnRaw = class {
4473
4617
  try {
4474
4618
  callback();
4475
4619
  } catch (err) {
4476
- _chunkOKVVWOC3cjs.logger.call(void 0, ).error({
4620
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).error({
4477
4621
  msg: "error in open handler",
4478
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, err)
4622
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, err)
4479
4623
  });
4480
4624
  }
4481
4625
  });
@@ -4525,7 +4669,7 @@ var ActorConnRaw = class {
4525
4669
  let queueMessage = false;
4526
4670
  if (this.#websocket) {
4527
4671
  const readyState = this.#websocket.readyState;
4528
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4672
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4529
4673
  msg: "websocket send attempt",
4530
4674
  readyState,
4531
4675
  readyStateString: readyState === 0 ? "CONNECTING" : readyState === 1 ? "OPEN" : readyState === 2 ? "CLOSING" : "CLOSED",
@@ -4534,7 +4678,7 @@ var ActorConnRaw = class {
4534
4678
  actionName: (_a = message.body.val) == null ? void 0 : _a.name
4535
4679
  });
4536
4680
  if (this.#connStatus !== "connected") {
4537
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4681
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4538
4682
  msg: "websocket init pending, queueing message",
4539
4683
  connStatus: this.#connStatus,
4540
4684
  messageType: message.body.tag
@@ -4542,7 +4686,7 @@ var ActorConnRaw = class {
4542
4686
  queueMessage = true;
4543
4687
  } else if (readyState === 1) {
4544
4688
  try {
4545
- const messageSerialized = _chunk2IDK6NX3cjs.serializeWithEncoding.call(void 0,
4689
+ const messageSerialized = _chunkRJC5O2SDcjs.serializeWithEncoding.call(void 0,
4546
4690
  this.#encoding,
4547
4691
  message,
4548
4692
  CLIENT_PROTOCOL_TO_SERVER,
@@ -4559,8 +4703,8 @@ var ActorConnRaw = class {
4559
4703
  val: {
4560
4704
  id: msg.body.val.id,
4561
4705
  name: msg.body.val.name,
4562
- args: _chunk2IDK6NX3cjs.bufferToArrayBuffer.call(void 0,
4563
- _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0,
4706
+ args: _chunkRJC5O2SDcjs.bufferToArrayBuffer.call(void 0,
4707
+ _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0,
4564
4708
  msg.body.val.args
4565
4709
  )
4566
4710
  )
@@ -4574,12 +4718,12 @@ var ActorConnRaw = class {
4574
4718
  );
4575
4719
  this.#websocket.send(messageSerialized);
4576
4720
  const serializedLength = messageLength(messageSerialized);
4577
- _chunkOKVVWOC3cjs.logger.call(void 0, ).trace({
4721
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).trace({
4578
4722
  msg: "sent websocket message",
4579
4723
  len: serializedLength
4580
4724
  });
4581
4725
  } catch (error) {
4582
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4726
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
4583
4727
  msg: "failed to send message, added to queue",
4584
4728
  error,
4585
4729
  connId: this.#connId
@@ -4587,19 +4731,19 @@ var ActorConnRaw = class {
4587
4731
  queueMessage = true;
4588
4732
  }
4589
4733
  } else {
4590
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4734
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4591
4735
  msg: "websocket not open, queueing message",
4592
4736
  readyState
4593
4737
  });
4594
4738
  queueMessage = true;
4595
4739
  }
4596
4740
  } else {
4597
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({ msg: "no websocket, queueing message" });
4741
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({ msg: "no websocket, queueing message" });
4598
4742
  queueMessage = true;
4599
4743
  }
4600
4744
  if (!(opts == null ? void 0 : opts.ephemeral) && queueMessage) {
4601
4745
  this.#messageQueue.push(message);
4602
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({
4746
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({
4603
4747
  msg: "queued connection message",
4604
4748
  queueLength: this.#messageQueue.length,
4605
4749
  connId: this.#connId,
@@ -4610,8 +4754,8 @@ var ActorConnRaw = class {
4610
4754
  }
4611
4755
  async #parseMessage(data) {
4612
4756
  _invariant2.default.call(void 0, this.#websocket, "websocket must be defined");
4613
- const buffer = await _chunk2IDK6NX3cjs.inputDataToBuffer.call(void 0, data);
4614
- return _chunk2IDK6NX3cjs.deserializeWithEncoding.call(void 0,
4757
+ const buffer = await _chunkRJC5O2SDcjs.inputDataToBuffer.call(void 0, data);
4758
+ return _chunkRJC5O2SDcjs.deserializeWithEncoding.call(void 0,
4615
4759
  this.#encoding,
4616
4760
  buffer,
4617
4761
  CLIENT_PROTOCOL_TO_CLIENT,
@@ -4646,7 +4790,7 @@ var ActorConnRaw = class {
4646
4790
  group: msg.body.val.group,
4647
4791
  code: msg.body.val.code,
4648
4792
  message: msg.body.val.message,
4649
- metadata: msg.body.val.metadata ? _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0,
4793
+ metadata: msg.body.val.metadata ? _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0,
4650
4794
  new Uint8Array(
4651
4795
  msg.body.val.metadata
4652
4796
  )
@@ -4668,7 +4812,7 @@ var ActorConnRaw = class {
4668
4812
  tag: "ActionResponse",
4669
4813
  val: {
4670
4814
  id: msg.body.val.id,
4671
- output: _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0,
4815
+ output: _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0,
4672
4816
  new Uint8Array(msg.body.val.output)
4673
4817
  )
4674
4818
  }
@@ -4680,7 +4824,7 @@ var ActorConnRaw = class {
4680
4824
  tag: "Event",
4681
4825
  val: {
4682
4826
  name: msg.body.val.name,
4683
- args: _chunk2IDK6NX3cjs.decodeCborCompat.call(void 0,
4827
+ args: _chunkRJC5O2SDcjs.decodeCborCompat.call(void 0,
4684
4828
  new Uint8Array(msg.body.val.args)
4685
4829
  )
4686
4830
  }
@@ -4721,11 +4865,11 @@ var ActorConnRaw = class {
4721
4865
  */
4722
4866
  async dispose() {
4723
4867
  if (this.#disposed) {
4724
- _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({ msg: "connection already disconnected" });
4868
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({ msg: "connection already disconnected" });
4725
4869
  return;
4726
4870
  }
4727
4871
  this.#disposed = true;
4728
- _chunkOKVVWOC3cjs.logger.call(void 0, ).debug({ msg: "disposing actor conn" });
4872
+ _chunkOGPFN6BTcjs.logger.call(void 0, ).debug({ msg: "disposing actor conn" });
4729
4873
  this.#setConnStatus("idle");
4730
4874
  clearInterval(this.#keepNodeAliveInterval);
4731
4875
  this.#abortController.abort();
@@ -4733,8 +4877,8 @@ var ActorConnRaw = class {
4733
4877
  if (this.#websocket) {
4734
4878
  const ws = this.#websocket;
4735
4879
  if (ws.readyState !== 2 && ws.readyState !== 3) {
4736
- const { promise, resolve } = _chunk2IDK6NX3cjs.promiseWithResolvers.call(void 0,
4737
- (reason) => _chunkOKVVWOC3cjs.logger.call(void 0, ).warn({
4880
+ const { promise, resolve } = _chunkRJC5O2SDcjs.promiseWithResolvers.call(void 0,
4881
+ (reason) => _chunkOGPFN6BTcjs.logger.call(void 0, ).warn({
4738
4882
  msg: "unhandled websocket close promise rejection",
4739
4883
  reason
4740
4884
  })
@@ -4778,7 +4922,7 @@ function tryParseEndpoint(ctx, options) {
4778
4922
  let url;
4779
4923
  try {
4780
4924
  url = new URL(endpoint);
4781
- } catch (e2) {
4925
+ } catch (e3) {
4782
4926
  ctx.addIssue({
4783
4927
  code: "custom",
4784
4928
  message: `invalid URL: ${endpoint}`,
@@ -4853,7 +4997,7 @@ var ClientConfigSchemaBase = _v42.default.object({
4853
4997
  * Defaults to http://localhost:6420.
4854
4998
  */
4855
4999
  endpoint: _v42.default.string().optional().transform((val) => {
4856
- const resolved = _nullishCoalesce(_nullishCoalesce(val, () => ( _chunk2IDK6NX3cjs.getRivetEngine.call(void 0, ))), () => ( _chunk2IDK6NX3cjs.getRivetEndpoint.call(void 0, )));
5000
+ const resolved = _nullishCoalesce(_nullishCoalesce(val, () => ( _chunkRJC5O2SDcjs.getRivetEngine.call(void 0, ))), () => ( _chunkRJC5O2SDcjs.getRivetEndpoint.call(void 0, )));
4857
5001
  if (!resolved && !hasWarnedMissingEndpoint) {
4858
5002
  hasWarnedMissingEndpoint = true;
4859
5003
  console.warn(
@@ -4863,12 +5007,12 @@ var ClientConfigSchemaBase = _v42.default.object({
4863
5007
  return _nullishCoalesce(resolved, () => ( DEFAULT_ENDPOINT));
4864
5008
  }),
4865
5009
  /** Token to use to authenticate with the API. */
4866
- token: _v42.default.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunk2IDK6NX3cjs.getRivetToken.call(void 0, )))),
5010
+ token: _v42.default.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunkRJC5O2SDcjs.getRivetToken.call(void 0, )))),
4867
5011
  /** Namespace to connect to. */
4868
- namespace: _v42.default.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunk2IDK6NX3cjs.getRivetNamespace.call(void 0, )))),
5012
+ namespace: _v42.default.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunkRJC5O2SDcjs.getRivetNamespace.call(void 0, )))),
4869
5013
  /** Name of the envoy pool. This is used to group together envoys in to different pools. */
4870
- poolName: _v42.default.string().default(() => _nullishCoalesce(_chunk2IDK6NX3cjs.getRivetPool.call(void 0, ), () => ( "default"))),
4871
- encoding: _chunk2IDK6NX3cjs.EncodingSchema.default("bare"),
5014
+ poolName: _v42.default.string().default(() => _nullishCoalesce(_chunkRJC5O2SDcjs.getRivetPool.call(void 0, ), () => ( "default"))),
5015
+ encoding: _chunkRJC5O2SDcjs.EncodingSchema.default("bare"),
4872
5016
  headers: _v42.default.record(_v42.default.string(), _v42.default.string()).optional().default(() => ({})),
4873
5017
  gateway: _v42.default.object({
4874
5018
  skipReadyWait: _v42.default.boolean().optional().default(false)
@@ -4967,6 +5111,17 @@ function buildGuardHeaders(runConfig, actorRequest, options) {
4967
5111
  for (const [key, value] of Object.entries(runConfig.headers)) {
4968
5112
  headers.set(key, value);
4969
5113
  }
5114
+ for (const name of [HEADER_TRACEPARENT, HEADER_TRACESTATE]) {
5115
+ headers.delete(name);
5116
+ const value = actorRequest.headers.get(name);
5117
+ if (value !== null) {
5118
+ headers.set(name, value);
5119
+ }
5120
+ }
5121
+ const requestRayId = actorRequest.headers.get(HEADER_RIVET_RAY_ID);
5122
+ if (requestRayId !== null) {
5123
+ headers.set(HEADER_RIVET_RAY_ID, requestRayId);
5124
+ }
4970
5125
  if (runConfig.token) {
4971
5126
  headers.set(HEADER_RIVET_TOKEN, runConfig.token);
4972
5127
  }
@@ -5023,7 +5178,7 @@ function setRemoteHibernatableWebSocketAckTestHooks(websocket, token, enabled) {
5023
5178
 
5024
5179
  // src/engine-client/log.ts
5025
5180
  function logger2() {
5026
- return _chunk2IDK6NX3cjs.getLogger.call(void 0, "engine-client");
5181
+ return _chunkRJC5O2SDcjs.getLogger.call(void 0, "engine-client");
5027
5182
  }
5028
5183
 
5029
5184
  // src/engine-client/actor-websocket-client.ts
@@ -5156,7 +5311,7 @@ var BufferedRemoteWebSocket = (_class2 = class {
5156
5311
  function buildActorGatewayUrl(endpoint, actorId, token, path = "") {
5157
5312
  const tokenSegment = token !== void 0 ? `@${encodeURIComponent(token)}` : "";
5158
5313
  const gatewayPath = `/gateway/${encodeURIComponent(actorId)}${tokenSegment}${path}`;
5159
- return _chunk2IDK6NX3cjs.combineUrlPath.call(void 0, endpoint, gatewayPath);
5314
+ return _chunkRJC5O2SDcjs.combineUrlPath.call(void 0, endpoint, gatewayPath);
5160
5315
  }
5161
5316
  function buildActorQueryGatewayUrl(endpoint, namespace, query, token, path = "", maxInputSize = DEFAULT_MAX_QUERY_INPUT_SIZE, crashPolicy = void 0, runnerName, options = {}) {
5162
5317
  if (namespace.length === 0) {
@@ -5222,7 +5377,7 @@ function buildActorQueryGatewayUrl(endpoint, namespace, query, token, path = "",
5222
5377
  separator = "?";
5223
5378
  }
5224
5379
  const gatewayPath = `/gateway/${encodeURIComponent(name)}${path}${separator}${queryString}`;
5225
- return _chunk2IDK6NX3cjs.combineUrlPath.call(void 0, endpoint, gatewayPath);
5380
+ return _chunkRJC5O2SDcjs.combineUrlPath.call(void 0, endpoint, gatewayPath);
5226
5381
  }
5227
5382
  function pushKeyQueryParams(params, key) {
5228
5383
  if (key.length > 0) {
@@ -5233,7 +5388,7 @@ function pushInputQueryParam(params, input, maxInputSize) {
5233
5388
  if (input === void 0) {
5234
5389
  return;
5235
5390
  }
5236
- const encodedInput = _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0, input);
5391
+ const encodedInput = _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0, input);
5237
5392
  if (encodedInput.byteLength > maxInputSize) {
5238
5393
  throw new Error(
5239
5394
  `Actor query input exceeds maxInputSize (${encodedInput.byteLength} > ${maxInputSize} bytes). Increase client maxInputSize to allow larger query payloads.`
@@ -5242,10 +5397,10 @@ function pushInputQueryParam(params, input, maxInputSize) {
5242
5397
  params.append("rvt-input", uint8ArrayToBase64Url(encodedInput));
5243
5398
  }
5244
5399
  function uint8ArrayToBase64Url(value) {
5245
- return _chunk2IDK6NX3cjs.uint8ArrayToBase64.call(void 0, value).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/g, "");
5400
+ return _chunkRJC5O2SDcjs.uint8ArrayToBase64.call(void 0, value).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/g, "");
5246
5401
  }
5247
5402
  async function openWebSocketToGateway(runConfig, gatewayUrl, encoding, params, options = {}) {
5248
- const WebSocket2 = await _chunkOKVVWOC3cjs.importWebSocket.call(void 0, );
5403
+ const WebSocket2 = await _chunkOGPFN6BTcjs.importWebSocket.call(void 0, );
5249
5404
  const ackHookToken = typeof process !== "undefined" && process.env.VITEST ? crypto.randomUUID() : void 0;
5250
5405
  logger2().debug({
5251
5406
  msg: "opening websocket to actor via guard",
@@ -5312,7 +5467,7 @@ function getEndpoint(config) {
5312
5467
  }
5313
5468
  async function apiCall(config, method, path, body) {
5314
5469
  const endpoint = getEndpoint(config);
5315
- const url = _chunk2IDK6NX3cjs.combineUrlPath.call(void 0, endpoint, path, {
5470
+ const url = _chunkRJC5O2SDcjs.combineUrlPath.call(void 0, endpoint, path, {
5316
5471
  namespace: config.namespace
5317
5472
  });
5318
5473
  logger2().debug({ msg: "making api call", method, url });
@@ -5437,7 +5592,7 @@ async function lookupMetadataCached(config) {
5437
5592
  msg: "failed to fetch metadata, retrying",
5438
5593
  endpoint,
5439
5594
  attempt: error.attemptNumber,
5440
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, error)
5595
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, error)
5441
5596
  });
5442
5597
  }
5443
5598
  }
@@ -5449,7 +5604,7 @@ async function lookupMetadataCached(config) {
5449
5604
 
5450
5605
  // src/engine-client/ws-proxy.ts
5451
5606
  async function createWebSocketProxy(_c, targetUrl, protocols) {
5452
- const WebSocket2 = await _chunkOKVVWOC3cjs.importWebSocket.call(void 0, );
5607
+ const WebSocket2 = await _chunkOGPFN6BTcjs.importWebSocket.call(void 0, );
5453
5608
  const state = {};
5454
5609
  return {
5455
5610
  onOpen: async (_event, clientWs) => {
@@ -5514,7 +5669,7 @@ async function createWebSocketProxy(_c, targetUrl, protocols) {
5514
5669
  logger2().error({
5515
5670
  msg: "target websocket error",
5516
5671
  targetUrl,
5517
- error: _chunk2IDK6NX3cjs.stringifyError.call(void 0, error)
5672
+ error: _chunkRJC5O2SDcjs.stringifyError.call(void 0, error)
5518
5673
  });
5519
5674
  closeWebSocketIfOpen(clientWs, 1011, "Target WebSocket error");
5520
5675
  });
@@ -5593,7 +5748,7 @@ var RemoteEngineControlClient = class {
5593
5748
  #config;
5594
5749
  #metadataPromise;
5595
5750
  constructor(runConfig) {
5596
- if (_chunk2IDK6NX3cjs.getNextPhase.call(void 0, ) === "phase-production-build") {
5751
+ if (_chunkRJC5O2SDcjs.getNextPhase.call(void 0, ) === "phase-production-build") {
5597
5752
  logger2().info(
5598
5753
  "detected next.js build phase, disabling health check"
5599
5754
  );
@@ -5665,7 +5820,7 @@ var RemoteEngineControlClient = class {
5665
5820
  });
5666
5821
  return apiActorToOutput(actor);
5667
5822
  } catch (error) {
5668
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError && error.group === "actor" && error.code === "not_found") {
5823
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError && error.group === "actor" && error.code === "not_found") {
5669
5824
  return void 0;
5670
5825
  }
5671
5826
  throw error;
@@ -5692,8 +5847,8 @@ var RemoteEngineControlClient = class {
5692
5847
  name,
5693
5848
  key: _chunkMYWZCDMLcjs.serializeActorKey.call(void 0, key),
5694
5849
  runner_name_selector: _nullishCoalesce(poolName, () => ( this.#config.poolName)),
5695
- input: actorInput ? _chunk2IDK6NX3cjs.uint8ArrayToBase64.call(void 0,
5696
- _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0, actorInput)
5850
+ input: actorInput ? _chunkRJC5O2SDcjs.uint8ArrayToBase64.call(void 0,
5851
+ _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0, actorInput)
5697
5852
  ) : void 0,
5698
5853
  crash_policy: _nullishCoalesce(crashPolicy, () => ( "sleep"))
5699
5854
  });
@@ -5706,7 +5861,7 @@ var RemoteEngineControlClient = class {
5706
5861
  });
5707
5862
  return apiActorToOutput(actor);
5708
5863
  } catch (error) {
5709
- if (error instanceof _chunk2JSYYH6Pcjs.RivetError && error.group === "actor" && error.code === "key_reserved_in_different_datacenter") {
5864
+ if (error instanceof _chunkJX2ITWAVcjs.RivetError && error.group === "actor" && error.code === "key_reserved_in_different_datacenter") {
5710
5865
  logger2().warn({
5711
5866
  msg: "getOrCreateWithKey: key reserved in different datacenter, retrying as get",
5712
5867
  name,
@@ -5741,7 +5896,7 @@ var RemoteEngineControlClient = class {
5741
5896
  name,
5742
5897
  runner_name_selector: _nullishCoalesce(poolName, () => ( this.#config.poolName)),
5743
5898
  key: _chunkMYWZCDMLcjs.serializeActorKey.call(void 0, key),
5744
- input: input ? _chunk2IDK6NX3cjs.uint8ArrayToBase64.call(void 0, _chunk2IDK6NX3cjs.encodeCborCompat.call(void 0, input)) : void 0,
5899
+ input: input ? _chunkRJC5O2SDcjs.uint8ArrayToBase64.call(void 0, _chunkRJC5O2SDcjs.encodeCborCompat.call(void 0, input)) : void 0,
5745
5900
  crash_policy: _nullishCoalesce(crashPolicy, () => ( "sleep"))
5746
5901
  });
5747
5902
  logger2().info({
@@ -5819,7 +5974,7 @@ var RemoteEngineControlClient = class {
5819
5974
  const upgradeWebSocket = (_b = (_a = this.#config).getUpgradeWebSocket) == null ? void 0 : _b.call(_a);
5820
5975
  _invariant2.default.call(void 0, upgradeWebSocket, "missing getUpgradeWebSocket");
5821
5976
  const endpoint = getEndpoint(this.#config);
5822
- const guardUrl = _chunk2IDK6NX3cjs.combineUrlPath.call(void 0, endpoint, path);
5977
+ const guardUrl = _chunkRJC5O2SDcjs.combineUrlPath.call(void 0, endpoint, path);
5823
5978
  const wsGuardUrl = guardUrl.replace("http://", "ws://");
5824
5979
  logger2().debug({
5825
5980
  msg: "forwarding websocket to actor via guard",
@@ -5838,7 +5993,7 @@ var RemoteEngineControlClient = class {
5838
5993
  }
5839
5994
  );
5840
5995
  const args = await createWebSocketProxy(c, wsGuardUrl, protocols);
5841
- return await upgradeWebSocket(() => args)(c, _chunk2IDK6NX3cjs.noopNext.call(void 0, ));
5996
+ return await upgradeWebSocket(() => args)(c, _chunkRJC5O2SDcjs.noopNext.call(void 0, ));
5842
5997
  }
5843
5998
  displayInformation() {
5844
5999
  return { properties: {} };
@@ -5849,7 +6004,7 @@ var RemoteEngineControlClient = class {
5849
6004
  #buildGatewayUrlForTarget(target, path, options = {}) {
5850
6005
  const endpoint = getEndpoint(this.#config);
5851
6006
  if (shouldSkipReadyWait(options) && directActorIdFromTarget(target) && canUseDirectSkipReadyWaitPath(path)) {
5852
- return _chunk2IDK6NX3cjs.combineUrlPath.call(void 0, endpoint, path);
6007
+ return _chunkRJC5O2SDcjs.combineUrlPath.call(void 0, endpoint, path);
5853
6008
  }
5854
6009
  if ("directId" in target) {
5855
6010
  return buildActorGatewayUrl(
@@ -5943,5 +6098,7 @@ function apiActorToOutput(actor) {
5943
6098
 
5944
6099
 
5945
6100
 
5946
- exports.HEADER_CONN_PARAMS = HEADER_CONN_PARAMS; exports.HEADER_ORIGINAL_REQUEST_URL = HEADER_ORIGINAL_REQUEST_URL; exports.ALLOWED_PUBLIC_HEADERS = ALLOWED_PUBLIC_HEADERS; exports.ActorClientError = ActorClientError; exports.ManagerError = ManagerError; exports.MalformedResponseMessage = MalformedResponseMessage; exports.ActorConnDisposed = ActorConnDisposed; exports.ActorConnRaw = ActorConnRaw; exports.isResponseLike = isResponseLike; exports.ActorHandleRaw = ActorHandleRaw; exports.createClientWithDriver = createClientWithDriver; exports.tryParseEndpoint = tryParseEndpoint; exports.ClientConfigSchema = ClientConfigSchema; exports.convertRegistryConfigToClientConfig = convertRegistryConfigToClientConfig; exports.getDatacenters = getDatacenters; exports.updateRunnerConfig = updateRunnerConfig; exports.RemoteEngineControlClient = RemoteEngineControlClient;
5947
- //# sourceMappingURL=chunk-NRIRV3Z2.cjs.map
6101
+
6102
+
6103
+ exports.HEADER_CONN_PARAMS = HEADER_CONN_PARAMS; exports.HEADER_ORIGINAL_REQUEST_URL = HEADER_ORIGINAL_REQUEST_URL; exports.ALLOWED_PUBLIC_HEADERS = ALLOWED_PUBLIC_HEADERS; exports.ActorClientError = ActorClientError; exports.ManagerError = ManagerError; exports.MalformedResponseMessage = MalformedResponseMessage; exports.ActorConnDisposed = ActorConnDisposed; exports.readActiveTraceHeaders = readActiveTraceHeaders; exports.runWithActorInvocationSpan = runWithActorInvocationSpan; exports.ActorConnRaw = ActorConnRaw; exports.isResponseLike = isResponseLike; exports.ActorHandleRaw = ActorHandleRaw; exports.createClientWithDriver = createClientWithDriver; exports.tryParseEndpoint = tryParseEndpoint; exports.ClientConfigSchema = ClientConfigSchema; exports.convertRegistryConfigToClientConfig = convertRegistryConfigToClientConfig; exports.getDatacenters = getDatacenters; exports.updateRunnerConfig = updateRunnerConfig; exports.RemoteEngineControlClient = RemoteEngineControlClient;
6104
+ //# sourceMappingURL=chunk-IJUXBWH4.cjs.map