rivetkit 2.3.0-rc.11 → 2.3.0-rc.13

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 (123) hide show
  1. package/dist/browser/client.d.ts +407 -20
  2. package/dist/browser/client.js +101 -86
  3. package/dist/browser/client.js.map +1 -1
  4. package/dist/browser/inspector/client.js +12 -2
  5. package/dist/browser/inspector/client.js.map +1 -1
  6. package/dist/tsup/actor/errors.d.cts +1 -1
  7. package/dist/tsup/actor/errors.d.ts +1 -1
  8. package/dist/tsup/agent-os/index.cjs +66 -3
  9. package/dist/tsup/agent-os/index.cjs.map +1 -1
  10. package/dist/tsup/agent-os/index.d.cts +404 -17
  11. package/dist/tsup/agent-os/index.d.ts +404 -17
  12. package/dist/tsup/agent-os/index.js +66 -3
  13. package/dist/tsup/agent-os/index.js.map +1 -1
  14. package/dist/tsup/{chunk-WXYWDLJY.js → chunk-33YE6XCI.js} +4 -4
  15. package/dist/tsup/{chunk-2NXFKPRB.cjs → chunk-7OR3CHD5.cjs} +10 -10
  16. package/dist/tsup/{chunk-2NXFKPRB.cjs.map → chunk-7OR3CHD5.cjs.map} +1 -1
  17. package/dist/tsup/{chunk-LW5HNCWD.cjs → chunk-7XQCARVY.cjs} +3 -3
  18. package/dist/tsup/{chunk-LW5HNCWD.cjs.map → chunk-7XQCARVY.cjs.map} +1 -1
  19. package/dist/tsup/{chunk-GX6W4MW3.cjs → chunk-BSPS6NSN.cjs} +5 -5
  20. package/dist/tsup/{chunk-GX6W4MW3.cjs.map → chunk-BSPS6NSN.cjs.map} +1 -1
  21. package/dist/tsup/{chunk-T3VCJ4PV.js → chunk-DPIMKYNB.js} +61 -2
  22. package/dist/tsup/chunk-DPIMKYNB.js.map +1 -0
  23. package/dist/tsup/{chunk-XG25CGSW.cjs → chunk-E5CLYAUZ.cjs} +146 -143
  24. package/dist/tsup/chunk-E5CLYAUZ.cjs.map +1 -0
  25. package/dist/tsup/{chunk-RDBGKI66.cjs → chunk-EBWOJRCC.cjs} +22 -5
  26. package/dist/tsup/chunk-EBWOJRCC.cjs.map +1 -0
  27. package/dist/tsup/{chunk-YRQ4F5CD.js → chunk-HHNYEQD3.js} +6 -6
  28. package/dist/tsup/chunk-HHNYEQD3.js.map +1 -0
  29. package/dist/tsup/{chunk-4FP4FFB5.js → chunk-IOUSQVXI.js} +21 -4
  30. package/dist/tsup/chunk-IOUSQVXI.js.map +1 -0
  31. package/dist/tsup/{chunk-LNP7Q6I6.cjs → chunk-ISDKSSYR.cjs} +4 -4
  32. package/dist/tsup/{chunk-LNP7Q6I6.cjs.map → chunk-ISDKSSYR.cjs.map} +1 -1
  33. package/dist/tsup/{chunk-TTLUIDVH.js → chunk-J72WHUBC.js} +12 -9
  34. package/dist/tsup/chunk-J72WHUBC.js.map +1 -0
  35. package/dist/tsup/{chunk-Y3JBOFBG.cjs → chunk-KWABEUUA.cjs} +10 -10
  36. package/dist/tsup/chunk-KWABEUUA.cjs.map +1 -0
  37. package/dist/tsup/{chunk-XCDCURZ4.cjs → chunk-NIY3RSPX.cjs} +62 -3
  38. package/dist/tsup/chunk-NIY3RSPX.cjs.map +1 -0
  39. package/dist/tsup/{chunk-3P2JUHWJ.js → chunk-T44AVAGW.js} +2 -2
  40. package/dist/tsup/{chunk-GRFBV2U7.js → chunk-TCXEM6PA.js} +2 -2
  41. package/dist/tsup/{chunk-KRC4L3YB.js → chunk-ZI5CNA2Z.js} +2 -2
  42. package/dist/tsup/client/mod.cjs +7 -7
  43. package/dist/tsup/client/mod.cjs.map +1 -1
  44. package/dist/tsup/client/mod.d.cts +3 -3
  45. package/dist/tsup/client/mod.d.ts +3 -3
  46. package/dist/tsup/client/mod.js +6 -6
  47. package/dist/tsup/common/log.cjs +2 -2
  48. package/dist/tsup/common/log.js +1 -1
  49. package/dist/tsup/common/websocket.cjs +3 -3
  50. package/dist/tsup/common/websocket.js +2 -2
  51. package/dist/tsup/{config-De5UVu0V.d.ts → config-BxWAw3iH.d.ts} +476 -20
  52. package/dist/tsup/{config-CTwe3WwC.d.cts → config-CZQQ-mso.d.cts} +476 -20
  53. package/dist/tsup/{context-Dmj477Uh.d.cts → context-Bw7xq8w3.d.cts} +1 -1
  54. package/dist/tsup/{context-DPHISlUi.d.ts → context-D8QA76sV.d.ts} +1 -1
  55. package/dist/tsup/dynamic/mod.cjs +2 -2
  56. package/dist/tsup/dynamic/mod.d.cts +2 -2
  57. package/dist/tsup/dynamic/mod.d.ts +2 -2
  58. package/dist/tsup/dynamic/mod.js +1 -1
  59. package/dist/tsup/inspector/mod.cjs +5 -5
  60. package/dist/tsup/inspector/mod.js +4 -4
  61. package/dist/tsup/inspector-tab/mod.cjs +173 -0
  62. package/dist/tsup/inspector-tab/mod.cjs.map +1 -0
  63. package/dist/tsup/inspector-tab/mod.d.cts +250 -0
  64. package/dist/tsup/inspector-tab/mod.d.ts +250 -0
  65. package/dist/tsup/inspector-tab/mod.js +173 -0
  66. package/dist/tsup/inspector-tab/mod.js.map +1 -0
  67. package/dist/tsup/mod.cjs +341 -138
  68. package/dist/tsup/mod.cjs.map +1 -1
  69. package/dist/tsup/mod.d.cts +4 -4
  70. package/dist/tsup/mod.d.ts +4 -4
  71. package/dist/tsup/mod.js +277 -74
  72. package/dist/tsup/mod.js.map +1 -1
  73. package/dist/tsup/test/mod.cjs +10 -10
  74. package/dist/tsup/test/mod.d.cts +2 -2
  75. package/dist/tsup/test/mod.d.ts +2 -2
  76. package/dist/tsup/test/mod.js +6 -6
  77. package/dist/tsup/{utils-DVekpm4I.d.ts → utils-DQosb24I.d.cts} +1 -1
  78. package/dist/tsup/{utils-DVekpm4I.d.cts → utils-DQosb24I.d.ts} +1 -1
  79. package/dist/tsup/utils.cjs +2 -2
  80. package/dist/tsup/utils.d.cts +1 -1
  81. package/dist/tsup/utils.d.ts +1 -1
  82. package/dist/tsup/utils.js +1 -1
  83. package/dist/tsup/workflow/mod.cjs +11 -11
  84. package/dist/tsup/workflow/mod.cjs.map +1 -1
  85. package/dist/tsup/workflow/mod.d.cts +4 -4
  86. package/dist/tsup/workflow/mod.d.ts +4 -4
  87. package/dist/tsup/workflow/mod.js +5 -5
  88. package/package.json +19 -9
  89. package/src/actor/config.ts +111 -10
  90. package/src/actor/definition.ts +6 -5
  91. package/src/actor/instance/mod.ts +4 -4
  92. package/src/actor/mod.ts +2 -0
  93. package/src/client/actor-common.ts +24 -27
  94. package/src/client/actor-handle.ts +2 -1
  95. package/src/common/engine.ts +28 -1
  96. package/src/common/utils.ts +1 -1
  97. package/src/devtools-loader/index.ts +4 -7
  98. package/src/devtools-loader/serve-devtools.ts +26 -0
  99. package/src/drivers/engine/actor-driver.ts +16 -5
  100. package/src/engine-client/actor-http-client.ts +2 -2
  101. package/src/engine-client/api-endpoints.ts +5 -1
  102. package/src/engine-client/ws-proxy.ts +5 -0
  103. package/src/inspector-tab/mod.ts +315 -0
  104. package/src/registry/config/index.ts +40 -16
  105. package/src/registry/index.ts +143 -62
  106. package/src/registry/napi-runtime.ts +6 -0
  107. package/src/registry/native.ts +170 -27
  108. package/src/registry/process-metrics.ts +16 -4
  109. package/src/registry/runtime.ts +26 -0
  110. package/src/registry/wasm-runtime.ts +16 -1
  111. package/src/utils/env-vars.ts +6 -0
  112. package/dist/tsup/chunk-4FP4FFB5.js.map +0 -1
  113. package/dist/tsup/chunk-RDBGKI66.cjs.map +0 -1
  114. package/dist/tsup/chunk-T3VCJ4PV.js.map +0 -1
  115. package/dist/tsup/chunk-TTLUIDVH.js.map +0 -1
  116. package/dist/tsup/chunk-XCDCURZ4.cjs.map +0 -1
  117. package/dist/tsup/chunk-XG25CGSW.cjs.map +0 -1
  118. package/dist/tsup/chunk-Y3JBOFBG.cjs.map +0 -1
  119. package/dist/tsup/chunk-YRQ4F5CD.js.map +0 -1
  120. /package/dist/tsup/{chunk-WXYWDLJY.js.map → chunk-33YE6XCI.js.map} +0 -0
  121. /package/dist/tsup/{chunk-3P2JUHWJ.js.map → chunk-T44AVAGW.js.map} +0 -0
  122. /package/dist/tsup/{chunk-GRFBV2U7.js.map → chunk-TCXEM6PA.js.map} +0 -0
  123. /package/dist/tsup/{chunk-KRC4L3YB.js.map → chunk-ZI5CNA2Z.js.map} +0 -0
@@ -1,3 +1,10 @@
1
+ // src/common/log.ts
2
+ import {
3
+ pino,
4
+ stdTimeFunctions
5
+ } from "pino";
6
+ import { z } from "zod/v4";
7
+
1
8
  // src/actor/errors.ts
2
9
  var INTERNAL_ERROR_CODE = "internal_error";
3
10
  var INTERNAL_ERROR_DESCRIPTION = "An internal error occurred";
@@ -75,19 +82,6 @@ function actorNotFound(identifier) {
75
82
  );
76
83
  }
77
84
 
78
- // src/utils/env-vars.ts
79
- var getRivetEngine = () => getEnvUniversal("RIVET_ENGINE");
80
- var getRivetEndpoint = () => getEnvUniversal("RIVET_ENDPOINT");
81
- var getRivetToken = () => getEnvUniversal("RIVET_TOKEN");
82
- var getRivetNamespace = () => getEnvUniversal("RIVET_NAMESPACE");
83
- var getRivetPool = () => getEnvUniversal("RIVET_POOL");
84
- var getLogLevel = () => getEnvUniversal("RIVET_LOG_LEVEL") ?? getEnvUniversal("LOG_LEVEL");
85
- var getLogTarget = () => getEnvUniversal("RIVET_LOG_TARGET") === "1";
86
- var getLogTimestamp = () => getEnvUniversal("RIVET_LOG_TIMESTAMP") === "1";
87
- var getLogMessage = () => getEnvUniversal("RIVET_LOG_MESSAGE") === "1";
88
- var getLogErrorStack = () => getEnvUniversal("RIVET_LOG_ERROR_STACK") === "1";
89
- var getNextPhase = () => getEnvUniversal("NEXT_PHASE");
90
-
91
85
  // src/common/utils.ts
92
86
  function assertUnreachable(x) {
93
87
  throw new Error(`Unreachable case: ${x}`);
@@ -145,7 +139,7 @@ function deconstructError(error, exposeInternalError = false) {
145
139
  actor = error.actor;
146
140
  }
147
141
  metadata = {
148
- //url: `https://hub.rivet.dev/projects/${actorMetadata.project.slug}/environments/${actorMetadata.environment.slug}/actors?actorId=${actorMetadata.actor.id}`,
142
+ //url: `https://dashboard.rivet.dev/projects/${actorMetadata.project.slug}/environments/${actorMetadata.environment.slug}/actors?actorId=${actorMetadata.actor.id}`,
149
143
  };
150
144
  }
151
145
  return {
@@ -200,7 +194,7 @@ function noopNext() {
200
194
  // package.json
201
195
  var package_default = {
202
196
  name: "rivetkit",
203
- version: "2.3.0-rc.11",
197
+ version: "2.3.0-rc.13",
204
198
  description: "Lightweight libraries for building stateful actors on edge platforms",
205
199
  license: "Apache-2.0",
206
200
  keywords: [
@@ -326,6 +320,16 @@ var package_default = {
326
320
  default: "./dist/tsup/inspector/mod.cjs"
327
321
  }
328
322
  },
323
+ "./inspector-tab": {
324
+ import: {
325
+ types: "./dist/tsup/inspector-tab/mod.d.ts",
326
+ default: "./dist/tsup/inspector-tab/mod.js"
327
+ },
328
+ require: {
329
+ types: "./dist/tsup/inspector-tab/mod.d.cts",
330
+ default: "./dist/tsup/inspector-tab/mod.cjs"
331
+ }
332
+ },
329
333
  "./inspector/client": {
330
334
  import: {
331
335
  types: "./dist/browser/inspector/client.d.ts",
@@ -361,7 +365,7 @@ var package_default = {
361
365
  "./dist/tsup/chunk-*.cjs"
362
366
  ],
363
367
  scripts: {
364
- build: "tsup src/mod.ts src/client/mod.ts src/common/log.ts src/common/websocket.ts src/actor/errors.ts src/utils.ts src/workflow/mod.ts src/test/mod.ts src/inspector/mod.ts src/db/mod.ts src/db/drizzle.ts src/dynamic/mod.ts && tsup src/agent-os/index.ts --no-clean --out-dir dist/tsup/agent-os",
368
+ build: "tsup src/mod.ts src/client/mod.ts src/common/log.ts src/common/websocket.ts src/actor/errors.ts src/utils.ts src/workflow/mod.ts src/test/mod.ts src/inspector/mod.ts src/inspector-tab/mod.ts src/db/mod.ts src/db/drizzle.ts src/dynamic/mod.ts && tsup src/agent-os/index.ts --no-clean --out-dir dist/tsup/agent-os",
365
369
  "build:browser": "tsup --config tsup.browser.config.ts",
366
370
  "check-types": "tsc --noEmit",
367
371
  lint: "biome check . && pnpm run check:test-skips && pnpm run check:wait-for-comments",
@@ -437,12 +441,81 @@ var package_default = {
437
441
  stableVersion: "0.8.0"
438
442
  };
439
443
 
444
+ // src/utils.ts
445
+ var VERSION = package_default.version;
446
+ var _userAgent;
447
+ function httpUserAgent() {
448
+ if (_userAgent !== void 0) {
449
+ return _userAgent;
450
+ }
451
+ let userAgent = `RivetKit/${VERSION}`;
452
+ const navigatorObj = typeof navigator !== "undefined" ? navigator : void 0;
453
+ if (navigatorObj?.userAgent) userAgent += ` ${navigatorObj.userAgent}`;
454
+ _userAgent = userAgent;
455
+ return userAgent;
456
+ }
457
+ function getEnvUniversal(key) {
458
+ if (typeof Deno !== "undefined") {
459
+ return Deno.env.get(key);
460
+ } else if (typeof process !== "undefined") {
461
+ return process.env[key];
462
+ }
463
+ }
464
+ function promiseWithResolvers(onReject) {
465
+ let resolve;
466
+ let reject;
467
+ const promise = new Promise((res, rej) => {
468
+ resolve = res;
469
+ reject = rej;
470
+ });
471
+ promise.catch(onReject);
472
+ return { promise, resolve, reject };
473
+ }
474
+ function bufferToArrayBuffer(buf) {
475
+ return buf.buffer.slice(
476
+ buf.byteOffset,
477
+ buf.byteOffset + buf.byteLength
478
+ );
479
+ }
480
+ function combineUrlPath(endpoint, path, queryParams) {
481
+ const baseUrl = new URL(endpoint);
482
+ const pathParts = path.split("?");
483
+ const pathOnly = pathParts[0];
484
+ const existingQuery = pathParts[1] || "";
485
+ const basePath = baseUrl.pathname.replace(/\/$/, "");
486
+ const cleanPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
487
+ const fullPath = (basePath + cleanPath).replace(/\/\//g, "/");
488
+ const queryParts = [];
489
+ if (existingQuery) {
490
+ queryParts.push(existingQuery);
491
+ }
492
+ if (queryParams) {
493
+ for (const [key, value] of Object.entries(queryParams)) {
494
+ if (value !== void 0) {
495
+ queryParts.push(
496
+ `${encodeURIComponent(key)}=${encodeURIComponent(value)}`
497
+ );
498
+ }
499
+ }
500
+ }
501
+ const fullQuery = queryParts.length > 0 ? `?${queryParts.join("&")}` : "";
502
+ return `${baseUrl.protocol}//${baseUrl.host}${fullPath}${fullQuery}`;
503
+ }
504
+
505
+ // src/utils/env-vars.ts
506
+ var getRivetEngine = () => getEnvUniversal("RIVET_ENGINE");
507
+ var getRivetEndpoint = () => getEnvUniversal("RIVET_ENDPOINT");
508
+ var getRivetToken = () => getEnvUniversal("RIVET_TOKEN");
509
+ var getRivetNamespace = () => getEnvUniversal("RIVET_NAMESPACE");
510
+ var getRivetPool = () => getEnvUniversal("RIVET_POOL");
511
+ var getLogLevel = () => getEnvUniversal("RIVET_LOG_LEVEL") ?? getEnvUniversal("LOG_LEVEL");
512
+ var getLogTarget = () => getEnvUniversal("RIVET_LOG_TARGET") === "1";
513
+ var getLogTimestamp = () => getEnvUniversal("RIVET_LOG_TIMESTAMP") === "1";
514
+ var getLogMessage = () => getEnvUniversal("RIVET_LOG_MESSAGE") === "1";
515
+ var getLogErrorStack = () => getEnvUniversal("RIVET_LOG_ERROR_STACK") === "1";
516
+ var getNextPhase = () => getEnvUniversal("NEXT_PHASE");
517
+
440
518
  // src/common/log.ts
441
- import {
442
- pino,
443
- stdTimeFunctions
444
- } from "pino";
445
- import { z } from "zod/v4";
446
519
  var baseLogger;
447
520
  var configuredLogLevel;
448
521
  var loggerCache = /* @__PURE__ */ new Map();
@@ -587,74 +660,12 @@ function quoteLogfmtString(value) {
587
660
  return `"${value.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\n")}"`;
588
661
  }
589
662
 
590
- // src/utils.ts
591
- var VERSION = package_default.version;
592
- var _userAgent;
593
- function httpUserAgent() {
594
- if (_userAgent !== void 0) {
595
- return _userAgent;
596
- }
597
- let userAgent = `RivetKit/${VERSION}`;
598
- const navigatorObj = typeof navigator !== "undefined" ? navigator : void 0;
599
- if (navigatorObj?.userAgent) userAgent += ` ${navigatorObj.userAgent}`;
600
- _userAgent = userAgent;
601
- return userAgent;
602
- }
603
- function getEnvUniversal(key) {
604
- if (typeof Deno !== "undefined") {
605
- return Deno.env.get(key);
606
- } else if (typeof process !== "undefined") {
607
- return process.env[key];
608
- }
609
- }
610
- function promiseWithResolvers(onReject) {
611
- let resolve;
612
- let reject;
613
- const promise = new Promise((res, rej) => {
614
- resolve = res;
615
- reject = rej;
616
- });
617
- promise.catch(onReject);
618
- return { promise, resolve, reject };
619
- }
620
- function bufferToArrayBuffer(buf) {
621
- return buf.buffer.slice(
622
- buf.byteOffset,
623
- buf.byteOffset + buf.byteLength
624
- );
625
- }
626
- function combineUrlPath(endpoint, path, queryParams) {
627
- const baseUrl = new URL(endpoint);
628
- const pathParts = path.split("?");
629
- const pathOnly = pathParts[0];
630
- const existingQuery = pathParts[1] || "";
631
- const basePath = baseUrl.pathname.replace(/\/$/, "");
632
- const cleanPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
633
- const fullPath = (basePath + cleanPath).replace(/\/\//g, "/");
634
- const queryParts = [];
635
- if (existingQuery) {
636
- queryParts.push(existingQuery);
637
- }
638
- if (queryParams) {
639
- for (const [key, value] of Object.entries(queryParams)) {
640
- if (value !== void 0) {
641
- queryParts.push(
642
- `${encodeURIComponent(key)}=${encodeURIComponent(value)}`
643
- );
644
- }
645
- }
646
- }
647
- const fullQuery = queryParts.length > 0 ? `?${queryParts.join("&")}` : "";
648
- return `${baseUrl.protocol}//${baseUrl.host}${fullPath}${fullQuery}`;
649
- }
650
-
651
663
  // src/devtools-loader/log.ts
652
664
  function logger() {
653
665
  return getLogger("devtools");
654
666
  }
655
667
 
656
668
  // src/devtools-loader/index.ts
657
- var DEFAULT_DEVTOOLS_URL = (version = VERSION) => `https://releases.rivet.dev/rivet/latest/devtools/mod.js?v=${version}`;
658
669
  var scriptId = "rivetkit-devtools-script";
659
670
  function injectDevtools(config) {
660
671
  if (!window) {
@@ -662,9 +673,10 @@ function injectDevtools(config) {
662
673
  return;
663
674
  }
664
675
  if (!document.getElementById(scriptId)) {
676
+ const src = `${config.endpoint?.replace(/\/$/, "")}/devtools/mod.js`;
665
677
  const script = document.createElement("script");
666
678
  script.id = scriptId;
667
- script.src = DEFAULT_DEVTOOLS_URL();
679
+ script.src = src;
668
680
  script.async = true;
669
681
  document.head.appendChild(script);
670
682
  }
@@ -1110,7 +1122,7 @@ async function sendHttpRequestToGateway(runConfig, gatewayUrl, actorRequest, opt
1110
1122
  if (reqBody.byteLength !== 0) {
1111
1123
  bodyToSend = reqBody;
1112
1124
  guardHeaders.delete("transfer-encoding");
1113
- guardHeaders.set("content-length", String(bodyToSend.byteLength));
1125
+ guardHeaders.delete("content-length");
1114
1126
  }
1115
1127
  }
1116
1128
  const guardRequest = new Request(gatewayUrl, {
@@ -4004,6 +4016,8 @@ async function createWebSocketProxy(_c, targetUrl, protocols) {
4004
4016
  reject(error);
4005
4017
  });
4006
4018
  });
4019
+ state.connectPromise.catch(() => {
4020
+ });
4007
4021
  state.targetWs.addEventListener("message", (event) => {
4008
4022
  if (typeof event.data === "string" || event.data instanceof ArrayBuffer) {
4009
4023
  clientWs.send(event.data);
@@ -6537,8 +6551,9 @@ var ActorHandleRaw = class {
6537
6551
  this.#gatewayOptions,
6538
6552
  options
6539
6553
  );
6554
+ const useQueryTarget = isDynamicActorQuery(this.#actorResolutionState);
6540
6555
  const target = await this.#resolveGatewayRequestTarget(
6541
- false,
6556
+ useQueryTarget,
6542
6557
  gatewayOptions
6543
6558
  );
6544
6559
  return await rawWebSocket(