rivetkit 2.0.35 → 2.0.37

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 (95) hide show
  1. package/dist/tsup/actor/errors.cjs +6 -2
  2. package/dist/tsup/actor/errors.cjs.map +1 -1
  3. package/dist/tsup/actor/errors.d.cts +7 -1
  4. package/dist/tsup/actor/errors.d.ts +7 -1
  5. package/dist/tsup/actor/errors.js +5 -1
  6. package/dist/tsup/{chunk-OAGIXNOC.cjs → chunk-22NKW7F5.cjs} +9 -9
  7. package/dist/tsup/{chunk-OAGIXNOC.cjs.map → chunk-22NKW7F5.cjs.map} +1 -1
  8. package/dist/tsup/{chunk-6KPMUCTX.js → chunk-2YHR67M4.js} +26 -2
  9. package/dist/tsup/{chunk-6KPMUCTX.js.map → chunk-2YHR67M4.js.map} +1 -1
  10. package/dist/tsup/{chunk-RLJYDDGJ.cjs → chunk-4V7MS7SO.cjs} +3 -3
  11. package/dist/tsup/{chunk-RLJYDDGJ.cjs.map → chunk-4V7MS7SO.cjs.map} +1 -1
  12. package/dist/tsup/{chunk-QY2XOK33.cjs → chunk-5VVIFC6M.cjs} +355 -265
  13. package/dist/tsup/chunk-5VVIFC6M.cjs.map +1 -0
  14. package/dist/tsup/{chunk-ESNM74WZ.js → chunk-5XGZXH74.js} +274 -320
  15. package/dist/tsup/chunk-5XGZXH74.js.map +1 -0
  16. package/dist/tsup/{chunk-SKOXACQD.cjs → chunk-B6BP74X3.cjs} +224 -270
  17. package/dist/tsup/chunk-B6BP74X3.cjs.map +1 -0
  18. package/dist/tsup/{chunk-W3X2CC5D.js → chunk-FIUSIG6J.js} +5 -5
  19. package/dist/tsup/{chunk-3BUVMAPG.cjs → chunk-G4N7FZMM.cjs} +151 -121
  20. package/dist/tsup/chunk-G4N7FZMM.cjs.map +1 -0
  21. package/dist/tsup/{chunk-UQPTBQYY.js → chunk-J6TX5EFW.js} +67 -37
  22. package/dist/tsup/chunk-J6TX5EFW.js.map +1 -0
  23. package/dist/tsup/{chunk-6N4L6DVT.cjs → chunk-LYYTV7DN.cjs} +49 -49
  24. package/dist/tsup/{chunk-6N4L6DVT.cjs.map → chunk-LYYTV7DN.cjs.map} +1 -1
  25. package/dist/tsup/{chunk-S4TG6JFA.js → chunk-RBA5AQTB.js} +5 -5
  26. package/dist/tsup/{chunk-2PH6FNGI.js → chunk-RXA3ZMCL.js} +2 -2
  27. package/dist/tsup/{chunk-FWT2BTVT.cjs → chunk-SNAUKDDK.cjs} +26 -2
  28. package/dist/tsup/chunk-SNAUKDDK.cjs.map +1 -0
  29. package/dist/tsup/{chunk-6KXKY3IE.cjs → chunk-X5IX3YPO.cjs} +13 -9
  30. package/dist/tsup/chunk-X5IX3YPO.cjs.map +1 -0
  31. package/dist/tsup/{chunk-UCUYH474.js → chunk-XI335ZED.js} +7 -3
  32. package/dist/tsup/chunk-XI335ZED.js.map +1 -0
  33. package/dist/tsup/{chunk-PSMT24GX.js → chunk-ZQBSQ6H3.js} +96 -6
  34. package/dist/tsup/chunk-ZQBSQ6H3.js.map +1 -0
  35. package/dist/tsup/client/mod.cjs +6 -6
  36. package/dist/tsup/client/mod.d.cts +8 -8
  37. package/dist/tsup/client/mod.d.ts +8 -8
  38. package/dist/tsup/client/mod.js +5 -5
  39. package/dist/tsup/common/log.cjs +3 -3
  40. package/dist/tsup/common/log.js +2 -2
  41. package/dist/tsup/common/websocket.cjs +4 -4
  42. package/dist/tsup/common/websocket.js +3 -3
  43. package/dist/tsup/{config-Qr8_jvK3.d.cts → config--NjwiYlS.d.cts} +24 -25
  44. package/dist/tsup/{config-DRt_4bDk.d.ts → config-CRuzI6n4.d.ts} +24 -25
  45. package/dist/tsup/{driver-zNEhBkiK.d.ts → driver-BcmckRaF.d.ts} +1 -1
  46. package/dist/tsup/driver-helpers/mod.cjs +4 -4
  47. package/dist/tsup/driver-helpers/mod.d.cts +2 -2
  48. package/dist/tsup/driver-helpers/mod.d.ts +2 -2
  49. package/dist/tsup/driver-helpers/mod.js +3 -3
  50. package/dist/tsup/driver-test-suite/mod.cjs +37 -37
  51. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
  52. package/dist/tsup/driver-test-suite/mod.d.cts +2 -2
  53. package/dist/tsup/driver-test-suite/mod.d.ts +2 -2
  54. package/dist/tsup/driver-test-suite/mod.js +9 -9
  55. package/dist/tsup/{driver-D6heoKxK.d.cts → driver-yKjYx9Yy.d.cts} +1 -1
  56. package/dist/tsup/mod.cjs +8 -8
  57. package/dist/tsup/mod.d.cts +4 -4
  58. package/dist/tsup/mod.d.ts +4 -4
  59. package/dist/tsup/mod.js +7 -7
  60. package/dist/tsup/test/mod.cjs +8 -8
  61. package/dist/tsup/test/mod.d.cts +1 -1
  62. package/dist/tsup/test/mod.d.ts +1 -1
  63. package/dist/tsup/test/mod.js +7 -7
  64. package/dist/tsup/utils.cjs +3 -3
  65. package/dist/tsup/utils.js +2 -2
  66. package/package.json +2 -2
  67. package/src/actor/errors.ts +24 -0
  68. package/src/client/config.ts +58 -50
  69. package/src/common/router.ts +12 -0
  70. package/src/drivers/engine/config.ts +6 -3
  71. package/src/engine-process/constants.ts +1 -1
  72. package/src/engine-process/mod.ts +1 -1
  73. package/src/globals.d.ts +1 -0
  74. package/src/inspector/utils.ts +1 -1
  75. package/src/manager/router.ts +8 -1
  76. package/src/registry/config/index.ts +98 -90
  77. package/src/registry/config/serverless.ts +34 -3
  78. package/src/remote-manager-driver/api-utils.ts +3 -0
  79. package/src/serverless/router.test.ts +133 -0
  80. package/src/serverless/router.ts +63 -2
  81. package/src/utils/endpoint-parser.test.ts +184 -171
  82. package/src/utils/endpoint-parser.ts +70 -65
  83. package/src/utils/env-vars.ts +6 -0
  84. package/dist/tsup/chunk-3BUVMAPG.cjs.map +0 -1
  85. package/dist/tsup/chunk-6KXKY3IE.cjs.map +0 -1
  86. package/dist/tsup/chunk-ESNM74WZ.js.map +0 -1
  87. package/dist/tsup/chunk-FWT2BTVT.cjs.map +0 -1
  88. package/dist/tsup/chunk-PSMT24GX.js.map +0 -1
  89. package/dist/tsup/chunk-QY2XOK33.cjs.map +0 -1
  90. package/dist/tsup/chunk-SKOXACQD.cjs.map +0 -1
  91. package/dist/tsup/chunk-UCUYH474.js.map +0 -1
  92. package/dist/tsup/chunk-UQPTBQYY.js.map +0 -1
  93. /package/dist/tsup/{chunk-W3X2CC5D.js.map → chunk-FIUSIG6J.js.map} +0 -0
  94. /package/dist/tsup/{chunk-S4TG6JFA.js.map → chunk-RBA5AQTB.js.map} +0 -0
  95. /package/dist/tsup/{chunk-2PH6FNGI.js.map → chunk-RXA3ZMCL.js.map} +0 -0
@@ -1,5 +1,5 @@
1
- import { E as Encoding, a7 as Registry } from '../config-Qr8_jvK3.cjs';
2
- import { D as DriverConfig } from '../driver-D6heoKxK.cjs';
1
+ import { E as Encoding, a7 as Registry } from '../config--NjwiYlS.cjs';
2
+ import { D as DriverConfig } from '../driver-yKjYx9Yy.cjs';
3
3
  import 'zod';
4
4
  import '@rivetkit/virtual-websocket';
5
5
  import 'hono';
@@ -1,5 +1,5 @@
1
- import { E as Encoding, a7 as Registry } from '../config-DRt_4bDk.js';
2
- import { D as DriverConfig } from '../driver-zNEhBkiK.js';
1
+ import { E as Encoding, a7 as Registry } from '../config-CRuzI6n4.js';
2
+ import { D as DriverConfig } from '../driver-BcmckRaF.js';
3
3
  import 'zod';
4
4
  import '@rivetkit/virtual-websocket';
5
5
  import 'hono';
@@ -1,20 +1,20 @@
1
1
  import {
2
2
  getPort
3
- } from "../chunk-S4TG6JFA.js";
3
+ } from "../chunk-RBA5AQTB.js";
4
4
  import {
5
5
  actor
6
- } from "../chunk-UQPTBQYY.js";
7
- import "../chunk-W3X2CC5D.js";
6
+ } from "../chunk-J6TX5EFW.js";
7
+ import "../chunk-FIUSIG6J.js";
8
8
  import {
9
9
  ActorError,
10
+ ClientConfigSchema,
10
11
  createClient,
11
12
  createClientWithDriver
12
- } from "../chunk-PSMT24GX.js";
13
+ } from "../chunk-ZQBSQ6H3.js";
13
14
  import {
14
15
  importWebSocket
15
- } from "../chunk-2PH6FNGI.js";
16
+ } from "../chunk-RXA3ZMCL.js";
16
17
  import {
17
- ClientConfigSchema,
18
18
  HEADER_ACTOR_ID,
19
19
  WS_PROTOCOL_ACTOR,
20
20
  WS_PROTOCOL_CONN_PARAMS,
@@ -24,17 +24,17 @@ import {
24
24
  WS_TEST_PROTOCOL_PATH,
25
25
  assertUnreachable,
26
26
  buildManagerRouter
27
- } from "../chunk-ESNM74WZ.js";
27
+ } from "../chunk-5XGZXH74.js";
28
28
  import "../chunk-E6ZE2YEA.js";
29
29
  import {
30
30
  getLogger,
31
31
  noopNext,
32
32
  promiseWithResolvers
33
- } from "../chunk-UCUYH474.js";
33
+ } from "../chunk-XI335ZED.js";
34
34
  import {
35
35
  INTERNAL_ERROR_CODE,
36
36
  INTERNAL_ERROR_DESCRIPTION
37
- } from "../chunk-6KPMUCTX.js";
37
+ } from "../chunk-2YHR67M4.js";
38
38
 
39
39
  // src/driver-test-suite/mod.ts
40
40
  import { serve as honoServe } from "@hono/node-server";
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import { aN as ManagerDriverBuilder, aO as ActorDriverBuilder } from './config-Qr8_jvK3.cjs';
2
+ import { aM as ManagerDriverBuilder, aN as ActorDriverBuilder } from './config--NjwiYlS.cjs';
3
3
 
4
4
  declare const DriverConfigSchema: z.ZodObject<{
5
5
  name: z.ZodString;
package/dist/tsup/mod.cjs CHANGED
@@ -3,18 +3,18 @@
3
3
 
4
4
 
5
5
 
6
- var _chunk3BUVMAPGcjs = require('./chunk-3BUVMAPG.cjs');
6
+ var _chunkG4N7FZMMcjs = require('./chunk-G4N7FZMM.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunk6N4L6DVTcjs = require('./chunk-6N4L6DVT.cjs');
12
+ var _chunkLYYTV7DNcjs = require('./chunk-LYYTV7DN.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkQY2XOK33cjs = require('./chunk-QY2XOK33.cjs');
17
- require('./chunk-RLJYDDGJ.cjs');
16
+ var _chunk5VVIFC6Mcjs = require('./chunk-5VVIFC6M.cjs');
17
+ require('./chunk-4V7MS7SO.cjs');
18
18
 
19
19
 
20
20
 
@@ -26,15 +26,15 @@ require('./chunk-RLJYDDGJ.cjs');
26
26
 
27
27
 
28
28
 
29
- var _chunkSKOXACQDcjs = require('./chunk-SKOXACQD.cjs');
29
+ var _chunkB6BP74X3cjs = require('./chunk-B6BP74X3.cjs');
30
30
  require('./chunk-KDFWJKMJ.cjs');
31
31
 
32
32
 
33
33
 
34
- var _chunk6KXKY3IEcjs = require('./chunk-6KXKY3IE.cjs');
34
+ var _chunkX5IX3YPOcjs = require('./chunk-X5IX3YPO.cjs');
35
35
 
36
36
 
37
- var _chunkFWT2BTVTcjs = require('./chunk-FWT2BTVT.cjs');
37
+ var _chunkSNAUKDDKcjs = require('./chunk-SNAUKDDK.cjs');
38
38
  require('./chunk-GBENOENJ.cjs');
39
39
 
40
40
 
@@ -60,5 +60,5 @@ require('./chunk-GBENOENJ.cjs');
60
60
 
61
61
 
62
62
 
63
- exports.ALLOWED_PUBLIC_HEADERS = _chunkSKOXACQDcjs.ALLOWED_PUBLIC_HEADERS; exports.ActorsSchema = _chunkSKOXACQDcjs.ActorsSchema; exports.DriverConfigSchema = _chunkSKOXACQDcjs.DriverConfigSchema; exports.InlineWebSocketAdapter = _chunk6N4L6DVTcjs.InlineWebSocketAdapter; exports.KV_KEYS = _chunkSKOXACQDcjs.KEYS; exports.PATH_CONNECT = _chunkSKOXACQDcjs.PATH_CONNECT; exports.PATH_WEBSOCKET_PREFIX = _chunkSKOXACQDcjs.PATH_WEBSOCKET_PREFIX; exports.Registry = _chunk3BUVMAPGcjs.Registry; exports.RegistryConfigSchema = _chunkSKOXACQDcjs.RegistryConfigSchema; exports.TestConfigSchema = _chunkSKOXACQDcjs.TestConfigSchema; exports.UserError = _chunkFWT2BTVTcjs.UserError; exports.actor = _chunk3BUVMAPGcjs.actor; exports.buildActorNames = _chunkSKOXACQDcjs.buildActorNames; exports.createActorRouter = _chunk6N4L6DVTcjs.createActorRouter; exports.createClientWithDriver = _chunkQY2XOK33cjs.createClientWithDriver; exports.createEngineDriver = _chunk3BUVMAPGcjs.createEngineDriver; exports.createFileSystemDriver = _chunk6N4L6DVTcjs.createFileSystemDriver; exports.createMemoryDriver = _chunk6N4L6DVTcjs.createMemoryDriver; exports.lookupInRegistry = _chunkQY2XOK33cjs.lookupInRegistry; exports.noopNext = _chunk6KXKY3IEcjs.noopNext; exports.routeWebSocket = _chunkSKOXACQDcjs.routeWebSocket; exports.setup = _chunk3BUVMAPGcjs.setup; exports.toUint8Array = _chunk6KXKY3IEcjs.toUint8Array;
63
+ exports.ALLOWED_PUBLIC_HEADERS = _chunkB6BP74X3cjs.ALLOWED_PUBLIC_HEADERS; exports.ActorsSchema = _chunkB6BP74X3cjs.ActorsSchema; exports.DriverConfigSchema = _chunkB6BP74X3cjs.DriverConfigSchema; exports.InlineWebSocketAdapter = _chunkLYYTV7DNcjs.InlineWebSocketAdapter; exports.KV_KEYS = _chunkB6BP74X3cjs.KEYS; exports.PATH_CONNECT = _chunkB6BP74X3cjs.PATH_CONNECT; exports.PATH_WEBSOCKET_PREFIX = _chunkB6BP74X3cjs.PATH_WEBSOCKET_PREFIX; exports.Registry = _chunkG4N7FZMMcjs.Registry; exports.RegistryConfigSchema = _chunkB6BP74X3cjs.RegistryConfigSchema; exports.TestConfigSchema = _chunkB6BP74X3cjs.TestConfigSchema; exports.UserError = _chunkSNAUKDDKcjs.UserError; exports.actor = _chunkG4N7FZMMcjs.actor; exports.buildActorNames = _chunkB6BP74X3cjs.buildActorNames; exports.createActorRouter = _chunkLYYTV7DNcjs.createActorRouter; exports.createClientWithDriver = _chunk5VVIFC6Mcjs.createClientWithDriver; exports.createEngineDriver = _chunkG4N7FZMMcjs.createEngineDriver; exports.createFileSystemDriver = _chunkLYYTV7DNcjs.createFileSystemDriver; exports.createMemoryDriver = _chunkLYYTV7DNcjs.createMemoryDriver; exports.lookupInRegistry = _chunk5VVIFC6Mcjs.lookupInRegistry; exports.noopNext = _chunkX5IX3YPOcjs.noopNext; exports.routeWebSocket = _chunkB6BP74X3cjs.routeWebSocket; exports.setup = _chunkG4N7FZMMcjs.setup; exports.toUint8Array = _chunkX5IX3YPOcjs.toUint8Array;
64
64
  //# sourceMappingURL=mod.cjs.map
@@ -1,11 +1,11 @@
1
- import { R as RegistryConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition } from './config-Qr8_jvK3.cjs';
2
- export { y as ActionContext, z as ActionContextOf, q as ActorConfig, o as ActorConfigSchema, r as ActorContext, s as ActorContextOf, j as ActorKey, i as ActorQuery, n as ActorTypes, a9 as ActorsSchema, l as AnyActorDefinition, g as AnyClient, p as AuthIntent, B as BeforeActionResponseContext, D as BeforeActionResponseContextOf, F as BeforeConnectContext, G as BeforeConnectContextOf, C as Client, k as Conn, u as ConnContext, v as ConnContextOf, w as ConnInitContext, x as ConnInitContextOf, H as ConnectContext, I as ConnectContextOf, L as CreateConnStateContext, M as CreateConnStateContextOf, J as CreateContext, K as CreateContextOf, N as CreateVarsContext, O as CreateVarsContextOf, P as DestroyContext, Q as DestroyContextOf, S as DisconnectContext, T as DisconnectContextOf, a4 as FetchHandler, a6 as LegacyStartServerOutput, a7 as Registry, a2 as RegistryActors, ac as RegistryConfigInput, a3 as RegistryConfigSchema, U as RequestContext, V as RequestContextOf, a5 as ServerlessHandler, W as SleepContext, X as SleepContextOf, Y as StateChangeContext, Z as StateChangeContextOf, ab as TestConfig, aa as TestConfigSchema, _ as WakeContext, $ as WakeContextOf, a0 as WebSocketContext, a1 as WebSocketContextOf, ad as buildActorNames, h as createClientWithDriver, m as lookupInRegistry, a8 as setup, t as test } from './config-Qr8_jvK3.cjs';
1
+ import { R as RegistryConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition } from './config--NjwiYlS.cjs';
2
+ export { y as ActionContext, z as ActionContextOf, q as ActorConfig, o as ActorConfigSchema, r as ActorContext, s as ActorContextOf, j as ActorKey, i as ActorQuery, n as ActorTypes, a9 as ActorsSchema, l as AnyActorDefinition, g as AnyClient, p as AuthIntent, B as BeforeActionResponseContext, D as BeforeActionResponseContextOf, F as BeforeConnectContext, G as BeforeConnectContextOf, C as Client, k as Conn, u as ConnContext, v as ConnContextOf, w as ConnInitContext, x as ConnInitContextOf, H as ConnectContext, I as ConnectContextOf, L as CreateConnStateContext, M as CreateConnStateContextOf, J as CreateContext, K as CreateContextOf, N as CreateVarsContext, O as CreateVarsContextOf, P as DestroyContext, Q as DestroyContextOf, S as DisconnectContext, T as DisconnectContextOf, a4 as FetchHandler, a6 as LegacyStartServerOutput, a7 as Registry, a2 as RegistryActors, ac as RegistryConfigInput, a3 as RegistryConfigSchema, U as RequestContext, V as RequestContextOf, a5 as ServerlessHandler, W as SleepContext, X as SleepContextOf, Y as StateChangeContext, Z as StateChangeContextOf, ab as TestConfig, aa as TestConfigSchema, _ as WakeContext, $ as WakeContextOf, a0 as WebSocketContext, a1 as WebSocketContextOf, ad as buildActorNames, h as createClientWithDriver, m as lookupInRegistry, a8 as setup, t as test } from './config--NjwiYlS.cjs';
3
3
  import { WSContext } from 'hono/ws';
4
4
  import { UniversalWebSocket } from '@rivetkit/virtual-websocket';
5
5
  export { RivetCloseEvent, RivetEvent, RivetMessageEvent, UniversalWebSocket } from '@rivetkit/virtual-websocket';
6
6
  export { n as noopNext } from './utils-fwx3o3K9.cjs';
7
- import { D as DriverConfig } from './driver-D6heoKxK.cjs';
8
- export { a as DriverConfigSchema } from './driver-D6heoKxK.cjs';
7
+ import { D as DriverConfig } from './driver-yKjYx9Yy.cjs';
8
+ export { a as DriverConfigSchema } from './driver-yKjYx9Yy.cjs';
9
9
  import { GetUpgradeWebSocket } from './utils.cjs';
10
10
  export { toUint8Array } from './utils.cjs';
11
11
  export { A as ALLOWED_PUBLIC_HEADERS, P as PATH_CONNECT, a as PATH_WEBSOCKET_PREFIX } from './actor-router-consts-DzI2szci.cjs';
@@ -1,11 +1,11 @@
1
- import { R as RegistryConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition } from './config-DRt_4bDk.js';
2
- export { y as ActionContext, z as ActionContextOf, q as ActorConfig, o as ActorConfigSchema, r as ActorContext, s as ActorContextOf, j as ActorKey, i as ActorQuery, n as ActorTypes, a9 as ActorsSchema, l as AnyActorDefinition, g as AnyClient, p as AuthIntent, B as BeforeActionResponseContext, D as BeforeActionResponseContextOf, F as BeforeConnectContext, G as BeforeConnectContextOf, C as Client, k as Conn, u as ConnContext, v as ConnContextOf, w as ConnInitContext, x as ConnInitContextOf, H as ConnectContext, I as ConnectContextOf, L as CreateConnStateContext, M as CreateConnStateContextOf, J as CreateContext, K as CreateContextOf, N as CreateVarsContext, O as CreateVarsContextOf, P as DestroyContext, Q as DestroyContextOf, S as DisconnectContext, T as DisconnectContextOf, a4 as FetchHandler, a6 as LegacyStartServerOutput, a7 as Registry, a2 as RegistryActors, ac as RegistryConfigInput, a3 as RegistryConfigSchema, U as RequestContext, V as RequestContextOf, a5 as ServerlessHandler, W as SleepContext, X as SleepContextOf, Y as StateChangeContext, Z as StateChangeContextOf, ab as TestConfig, aa as TestConfigSchema, _ as WakeContext, $ as WakeContextOf, a0 as WebSocketContext, a1 as WebSocketContextOf, ad as buildActorNames, h as createClientWithDriver, m as lookupInRegistry, a8 as setup, t as test } from './config-DRt_4bDk.js';
1
+ import { R as RegistryConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition } from './config-CRuzI6n4.js';
2
+ export { y as ActionContext, z as ActionContextOf, q as ActorConfig, o as ActorConfigSchema, r as ActorContext, s as ActorContextOf, j as ActorKey, i as ActorQuery, n as ActorTypes, a9 as ActorsSchema, l as AnyActorDefinition, g as AnyClient, p as AuthIntent, B as BeforeActionResponseContext, D as BeforeActionResponseContextOf, F as BeforeConnectContext, G as BeforeConnectContextOf, C as Client, k as Conn, u as ConnContext, v as ConnContextOf, w as ConnInitContext, x as ConnInitContextOf, H as ConnectContext, I as ConnectContextOf, L as CreateConnStateContext, M as CreateConnStateContextOf, J as CreateContext, K as CreateContextOf, N as CreateVarsContext, O as CreateVarsContextOf, P as DestroyContext, Q as DestroyContextOf, S as DisconnectContext, T as DisconnectContextOf, a4 as FetchHandler, a6 as LegacyStartServerOutput, a7 as Registry, a2 as RegistryActors, ac as RegistryConfigInput, a3 as RegistryConfigSchema, U as RequestContext, V as RequestContextOf, a5 as ServerlessHandler, W as SleepContext, X as SleepContextOf, Y as StateChangeContext, Z as StateChangeContextOf, ab as TestConfig, aa as TestConfigSchema, _ as WakeContext, $ as WakeContextOf, a0 as WebSocketContext, a1 as WebSocketContextOf, ad as buildActorNames, h as createClientWithDriver, m as lookupInRegistry, a8 as setup, t as test } from './config-CRuzI6n4.js';
3
3
  import { WSContext } from 'hono/ws';
4
4
  import { UniversalWebSocket } from '@rivetkit/virtual-websocket';
5
5
  export { RivetCloseEvent, RivetEvent, RivetMessageEvent, UniversalWebSocket } from '@rivetkit/virtual-websocket';
6
6
  export { n as noopNext } from './utils-fwx3o3K9.js';
7
- import { D as DriverConfig } from './driver-zNEhBkiK.js';
8
- export { a as DriverConfigSchema } from './driver-zNEhBkiK.js';
7
+ import { D as DriverConfig } from './driver-BcmckRaF.js';
8
+ export { a as DriverConfigSchema } from './driver-BcmckRaF.js';
9
9
  import { GetUpgradeWebSocket } from './utils.js';
10
10
  export { toUint8Array } from './utils.js';
11
11
  export { A as ALLOWED_PUBLIC_HEADERS, P as PATH_CONNECT, a as PATH_WEBSOCKET_PREFIX } from './actor-router-consts-DzI2szci.js';
package/dist/tsup/mod.js CHANGED
@@ -3,18 +3,18 @@ import {
3
3
  actor,
4
4
  createEngineDriver,
5
5
  setup
6
- } from "./chunk-UQPTBQYY.js";
6
+ } from "./chunk-J6TX5EFW.js";
7
7
  import {
8
8
  InlineWebSocketAdapter,
9
9
  createActorRouter,
10
10
  createFileSystemDriver,
11
11
  createMemoryDriver
12
- } from "./chunk-W3X2CC5D.js";
12
+ } from "./chunk-FIUSIG6J.js";
13
13
  import {
14
14
  createClientWithDriver,
15
15
  lookupInRegistry
16
- } from "./chunk-PSMT24GX.js";
17
- import "./chunk-2PH6FNGI.js";
16
+ } from "./chunk-ZQBSQ6H3.js";
17
+ import "./chunk-RXA3ZMCL.js";
18
18
  import {
19
19
  ALLOWED_PUBLIC_HEADERS,
20
20
  ActorsSchema,
@@ -26,15 +26,15 @@ import {
26
26
  TestConfigSchema,
27
27
  buildActorNames,
28
28
  routeWebSocket
29
- } from "./chunk-ESNM74WZ.js";
29
+ } from "./chunk-5XGZXH74.js";
30
30
  import "./chunk-E6ZE2YEA.js";
31
31
  import {
32
32
  noopNext,
33
33
  toUint8Array
34
- } from "./chunk-UCUYH474.js";
34
+ } from "./chunk-XI335ZED.js";
35
35
  import {
36
36
  UserError
37
- } from "./chunk-6KPMUCTX.js";
37
+ } from "./chunk-2YHR67M4.js";
38
38
  export {
39
39
  ALLOWED_PUBLIC_HEADERS,
40
40
  ActorsSchema,
@@ -1,17 +1,17 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkOAGIXNOCcjs = require('../chunk-OAGIXNOC.cjs');
5
- require('../chunk-6N4L6DVT.cjs');
6
- require('../chunk-QY2XOK33.cjs');
7
- require('../chunk-RLJYDDGJ.cjs');
8
- require('../chunk-SKOXACQD.cjs');
4
+ var _chunk22NKW7F5cjs = require('../chunk-22NKW7F5.cjs');
5
+ require('../chunk-LYYTV7DN.cjs');
6
+ require('../chunk-5VVIFC6M.cjs');
7
+ require('../chunk-4V7MS7SO.cjs');
8
+ require('../chunk-B6BP74X3.cjs');
9
9
  require('../chunk-KDFWJKMJ.cjs');
10
- require('../chunk-6KXKY3IE.cjs');
11
- require('../chunk-FWT2BTVT.cjs');
10
+ require('../chunk-X5IX3YPO.cjs');
11
+ require('../chunk-SNAUKDDK.cjs');
12
12
  require('../chunk-GBENOENJ.cjs');
13
13
 
14
14
 
15
15
 
16
- exports.getPort = _chunkOAGIXNOCcjs.getPort; exports.setupTest = _chunkOAGIXNOCcjs.setupTest;
16
+ exports.getPort = _chunk22NKW7F5cjs.getPort; exports.setupTest = _chunk22NKW7F5cjs.setupTest;
17
17
  //# sourceMappingURL=mod.cjs.map
@@ -1,5 +1,5 @@
1
1
  import { TestContext } from 'vitest';
2
- import { a7 as Registry, C as Client } from '../config-Qr8_jvK3.cjs';
2
+ import { a7 as Registry, C as Client } from '../config--NjwiYlS.cjs';
3
3
  import 'zod';
4
4
  import '@rivetkit/virtual-websocket';
5
5
  import 'hono';
@@ -1,5 +1,5 @@
1
1
  import { TestContext } from 'vitest';
2
- import { a7 as Registry, C as Client } from '../config-DRt_4bDk.js';
2
+ import { a7 as Registry, C as Client } from '../config-CRuzI6n4.js';
3
3
  import 'zod';
4
4
  import '@rivetkit/virtual-websocket';
5
5
  import 'hono';
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  getPort,
3
3
  setupTest
4
- } from "../chunk-S4TG6JFA.js";
5
- import "../chunk-W3X2CC5D.js";
6
- import "../chunk-PSMT24GX.js";
7
- import "../chunk-2PH6FNGI.js";
8
- import "../chunk-ESNM74WZ.js";
4
+ } from "../chunk-RBA5AQTB.js";
5
+ import "../chunk-FIUSIG6J.js";
6
+ import "../chunk-ZQBSQ6H3.js";
7
+ import "../chunk-RXA3ZMCL.js";
8
+ import "../chunk-5XGZXH74.js";
9
9
  import "../chunk-E6ZE2YEA.js";
10
- import "../chunk-UCUYH474.js";
11
- import "../chunk-6KPMUCTX.js";
10
+ import "../chunk-XI335ZED.js";
11
+ import "../chunk-2YHR67M4.js";
12
12
  export {
13
13
  getPort,
14
14
  setupTest
@@ -14,8 +14,8 @@
14
14
 
15
15
 
16
16
 
17
- var _chunk6KXKY3IEcjs = require('./chunk-6KXKY3IE.cjs');
18
- require('./chunk-FWT2BTVT.cjs');
17
+ var _chunkX5IX3YPOcjs = require('./chunk-X5IX3YPO.cjs');
18
+ require('./chunk-SNAUKDDK.cjs');
19
19
  require('./chunk-GBENOENJ.cjs');
20
20
 
21
21
 
@@ -33,5 +33,5 @@ require('./chunk-GBENOENJ.cjs');
33
33
 
34
34
 
35
35
 
36
- exports.EXTRA_ERROR_LOG = _chunk6KXKY3IEcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunk6KXKY3IEcjs.SinglePromiseQueue; exports.VERSION = _chunk6KXKY3IEcjs.VERSION; exports.arrayBuffersEqual = _chunk6KXKY3IEcjs.arrayBuffersEqual; exports.assertUnreachable = _chunk6KXKY3IEcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunk6KXKY3IEcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunk6KXKY3IEcjs.combineUrlPath; exports.dbg = _chunk6KXKY3IEcjs.dbg; exports.detectRuntime = _chunk6KXKY3IEcjs.detectRuntime; exports.getEnvUniversal = _chunk6KXKY3IEcjs.getEnvUniversal; exports.httpUserAgent = _chunk6KXKY3IEcjs.httpUserAgent; exports.promiseWithResolvers = _chunk6KXKY3IEcjs.promiseWithResolvers; exports.setLongTimeout = _chunk6KXKY3IEcjs.setLongTimeout; exports.stringifyError = _chunk6KXKY3IEcjs.stringifyError; exports.toUint8Array = _chunk6KXKY3IEcjs.toUint8Array;
36
+ exports.EXTRA_ERROR_LOG = _chunkX5IX3YPOcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunkX5IX3YPOcjs.SinglePromiseQueue; exports.VERSION = _chunkX5IX3YPOcjs.VERSION; exports.arrayBuffersEqual = _chunkX5IX3YPOcjs.arrayBuffersEqual; exports.assertUnreachable = _chunkX5IX3YPOcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkX5IX3YPOcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunkX5IX3YPOcjs.combineUrlPath; exports.dbg = _chunkX5IX3YPOcjs.dbg; exports.detectRuntime = _chunkX5IX3YPOcjs.detectRuntime; exports.getEnvUniversal = _chunkX5IX3YPOcjs.getEnvUniversal; exports.httpUserAgent = _chunkX5IX3YPOcjs.httpUserAgent; exports.promiseWithResolvers = _chunkX5IX3YPOcjs.promiseWithResolvers; exports.setLongTimeout = _chunkX5IX3YPOcjs.setLongTimeout; exports.stringifyError = _chunkX5IX3YPOcjs.stringifyError; exports.toUint8Array = _chunkX5IX3YPOcjs.toUint8Array;
37
37
  //# sourceMappingURL=utils.cjs.map
@@ -14,8 +14,8 @@ import {
14
14
  setLongTimeout,
15
15
  stringifyError,
16
16
  toUint8Array
17
- } from "./chunk-UCUYH474.js";
18
- import "./chunk-6KPMUCTX.js";
17
+ } from "./chunk-XI335ZED.js";
18
+ import "./chunk-2YHR67M4.js";
19
19
  export {
20
20
  EXTRA_ERROR_LOG,
21
21
  SinglePromiseQueue,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rivetkit",
3
- "version": "2.0.35",
3
+ "version": "2.0.37",
4
4
  "description": "Lightweight libraries for building stateful actors on edge platforms",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
@@ -167,7 +167,7 @@
167
167
  "uuid": "^12.0.0",
168
168
  "vbare": "^0.0.4",
169
169
  "zod": "^4.1.0",
170
- "@rivetkit/engine-runner": "2.0.35",
170
+ "@rivetkit/engine-runner": "2.0.37",
171
171
  "@rivetkit/virtual-websocket": "2.0.33"
172
172
  },
173
173
  "devDependencies": {
@@ -403,3 +403,27 @@ export class Forbidden extends ActorError {
403
403
  this.statusCode = 403;
404
404
  }
405
405
  }
406
+
407
+ export class EndpointMismatch extends ActorError {
408
+ constructor(expected: string, received: string) {
409
+ super(
410
+ "config",
411
+ "endpoint_mismatch",
412
+ `Endpoint mismatch: expected "${expected}", received "${received}"`,
413
+ { public: true, metadata: { expected, received } },
414
+ );
415
+ this.statusCode = 400;
416
+ }
417
+ }
418
+
419
+ export class NamespaceMismatch extends ActorError {
420
+ constructor(expected: string, received: string) {
421
+ super(
422
+ "config",
423
+ "namespace_mismatch",
424
+ `Namespace mismatch: expected "${expected}", received "${received}"`,
425
+ { public: true, metadata: { expected, received } },
426
+ );
427
+ this.statusCode = 400;
428
+ }
429
+ }
@@ -9,24 +9,59 @@ import {
9
9
  getRivetRunner,
10
10
  } from "@/utils/env-vars";
11
11
  import type { RegistryConfig } from "@/registry/config";
12
- import {
13
- EndpointSchema,
14
- type ParsedEndpoint,
15
- zodCheckDuplicateCredentials,
16
- } from "@/utils/endpoint-parser";
12
+ import { tryParseEndpoint } from "@/utils/endpoint-parser";
13
+
14
+ /**
15
+ * Gets the default endpoint for the client.
16
+ *
17
+ * In browser: uses current origin + /api/rivet
18
+ *
19
+ * Server-side: uses 127.0.0.1:6420
20
+ */
21
+ function getDefaultEndpoint(): string {
22
+ if (typeof window !== "undefined" && window.location?.origin) {
23
+ return `${window.location.origin}/api/rivet`;
24
+ }
25
+ return "http://127.0.0.1:6420";
26
+ }
17
27
 
18
28
  /**
19
29
  * Base client config schema without transforms so it can be merged in to other schemas.
20
30
  */
21
31
  export const ClientConfigSchemaBase = z.object({
22
- /** Endpoint to connect to for Rivet Engine or RivetKit manager API. */
23
- endpoint: EndpointSchema.optional(),
32
+ /**
33
+ * Endpoint to connect to for Rivet Engine or RivetKit manager API.
34
+ *
35
+ * Supports URL auth syntax for namespace and token:
36
+ * - `https://namespace:token@api.rivet.dev`
37
+ * - `https://namespace@api.rivet.dev`
38
+ *
39
+ * Can also be set via RIVET_ENDPOINT environment variables.
40
+ *
41
+ * Defaults to current origin + /api/rivet in browser, or 127.0.0.1:6420 server-side.
42
+ */
43
+ endpoint: z
44
+ .string()
45
+ .optional()
46
+ .transform(
47
+ (val) =>
48
+ val ??
49
+ getRivetEngine() ??
50
+ getRivetEndpoint() ??
51
+ getDefaultEndpoint(),
52
+ ),
24
53
 
25
54
  /** Token to use to authenticate with the API. */
26
- token: z.string().optional(),
55
+ token: z
56
+ .string()
57
+ .optional()
58
+ .transform((val) => val ?? getRivetToken()),
27
59
 
28
60
  /** Namespace to connect to. */
29
- namespace: z.string().optional(),
61
+ namespace: z
62
+ .string()
63
+ .optional()
64
+ .transform((val) => val ?? getRivetNamespace()),
30
65
 
31
66
  /** Name of the runner. This is used to group together runners in to different pools. */
32
67
  runnerName: z.string().default(() => getRivetRunner() ?? "default"),
@@ -53,7 +88,8 @@ export const ClientConfigSchemaBase = z.object({
53
88
  .default(
54
89
  () =>
55
90
  typeof window !== "undefined" &&
56
- window?.location?.hostname === "localhost",
91
+ (window?.location?.hostname === "127.0.0.1" ||
92
+ window.location?.hostname === "localhost"),
57
93
  ),
58
94
  });
59
95
 
@@ -65,51 +101,22 @@ export type ClientConfig = z.infer<typeof ClientConfigSchema>;
65
101
 
66
102
  export type ClientConfigInput = z.input<typeof ClientConfigSchema>;
67
103
 
68
- export function resolveEndpoint(
69
- parsedEndpoint: ParsedEndpoint | undefined,
70
- ): ParsedEndpoint | undefined {
71
- if (parsedEndpoint) {
72
- return parsedEndpoint;
73
- }
74
-
75
- const envEndpoint = getRivetEngine() ?? getRivetEndpoint();
76
- if (envEndpoint) {
77
- return EndpointSchema.parse(envEndpoint);
78
- }
79
-
80
- return undefined;
81
- }
82
-
83
- export function validateClientConfig(
84
- resolvedEndpoint: ParsedEndpoint | undefined,
85
- config: z.infer<typeof ClientConfigSchemaBase>,
86
- ctx: z.RefinementCtx,
87
- ) {
88
- if (resolvedEndpoint) {
89
- zodCheckDuplicateCredentials(resolvedEndpoint, config, ctx);
90
- }
91
- }
92
-
93
104
  export function transformClientConfig(
94
105
  config: z.infer<typeof ClientConfigSchemaBase>,
95
- ctx?: z.RefinementCtx,
106
+ ctx: z.RefinementCtx,
96
107
  ) {
97
- const resolvedEndpoint = resolveEndpoint(config.endpoint);
98
-
99
- // Validate if context is provided (when called from Zod transform)
100
- if (ctx) {
101
- validateClientConfig(resolvedEndpoint, config, ctx);
102
- }
108
+ const parsedEndpoint = tryParseEndpoint(ctx, {
109
+ endpoint: config.endpoint,
110
+ path: ["endpoint"],
111
+ namespace: config.namespace,
112
+ token: config.token,
113
+ });
103
114
 
104
115
  return {
105
116
  ...config,
106
- endpoint: resolvedEndpoint?.endpoint,
107
- namespace:
108
- resolvedEndpoint?.namespace ??
109
- config.namespace ??
110
- getRivetNamespace() ??
111
- "default",
112
- token: resolvedEndpoint?.token ?? config.token ?? getRivetToken(),
117
+ endpoint: parsedEndpoint?.endpoint,
118
+ namespace: parsedEndpoint?.namespace ?? config.namespace ?? "default",
119
+ token: parsedEndpoint?.token ?? config.token,
113
120
  };
114
121
  }
115
122
 
@@ -138,6 +145,7 @@ export function convertRegistryConfigToClientConfig(
138
145
  disableMetadataLookup: true,
139
146
  devtools:
140
147
  typeof window !== "undefined" &&
141
- window?.location?.hostname === "localhost",
148
+ (window?.location?.hostname === "127.0.0.1" ||
149
+ window?.location?.hostname === "localhost"),
142
150
  };
143
151
  }
@@ -130,6 +130,14 @@ export interface MetadataResponse {
130
130
  * This is also helpful for setting up clean redirects as needed.
131
131
  **/
132
132
  clientEndpoint?: string;
133
+ /**
134
+ * Namespace that the client should use when connecting.
135
+ **/
136
+ clientNamespace?: string;
137
+ /**
138
+ * Token that the client should use when connecting.
139
+ **/
140
+ clientToken?: string;
133
141
  }
134
142
 
135
143
  export function handleMetadataRequest(
@@ -137,6 +145,8 @@ export function handleMetadataRequest(
137
145
  config: RegistryConfig,
138
146
  runnerKind: MetadataRunnerKind,
139
147
  clientEndpoint: string | undefined,
148
+ clientNamespace: string | undefined,
149
+ clientToken: string | undefined,
140
150
  ) {
141
151
  const response: MetadataResponse = {
142
152
  runtime: "rivetkit",
@@ -146,6 +156,8 @@ export function handleMetadataRequest(
146
156
  },
147
157
  actorNames: buildActorNames(config),
148
158
  clientEndpoint,
159
+ clientNamespace,
160
+ clientToken,
149
161
  };
150
162
 
151
163
  return c.json(response);
@@ -12,7 +12,10 @@ import { getRivetRunnerKey } from "@/utils/env-vars";
12
12
  */
13
13
  export const EngineConfigSchemaBase = ClientConfigSchemaBase.extend({
14
14
  /** Unique key for this runner. Runners connecting a given key will replace any other runner connected with the same key. */
15
- runnerKey: z.string().optional(),
15
+ runnerKey: z
16
+ .string()
17
+ .optional()
18
+ .transform((val) => val ?? getRivetRunnerKey()),
16
19
 
17
20
  /** How many actors this runner can run. */
18
21
  totalSlots: z.number().default(100_000),
@@ -31,10 +34,10 @@ export type EngineConfigInput = z.input<typeof EngineConfigSchema>;
31
34
 
32
35
  export function transformEngineConfig(
33
36
  config: z.infer<typeof EngineConfigSchemaBase>,
34
- ctx?: z.RefinementCtx,
37
+ ctx: z.RefinementCtx,
35
38
  ) {
36
39
  return {
37
40
  ...transformClientConfig(config, ctx),
38
- runnerKey: config.runnerKey ?? getRivetRunnerKey(),
41
+ runnerKey: config.runnerKey,
39
42
  };
40
43
  }
@@ -1,2 +1,2 @@
1
1
  export const ENGINE_PORT = 6420;
2
- export const ENGINE_ENDPOINT = `http://localhost:${ENGINE_PORT}`;
2
+ export const ENGINE_ENDPOINT = `http://127.0.0.1:${ENGINE_PORT}`;
@@ -308,7 +308,7 @@ async function checkIfEngineAlreadyRunningOnPort(
308
308
  ): Promise<boolean> {
309
309
  let response: Response;
310
310
  try {
311
- response = await fetch(`http://localhost:${port}/health`);
311
+ response = await fetch(`http://127.0.0.1:${port}/health`);
312
312
  } catch (err) {
313
313
  // Nothing is running on this port
314
314
  return false;
package/src/globals.d.ts CHANGED
@@ -16,6 +16,7 @@ declare global {
16
16
  interface Window {
17
17
  location?: {
18
18
  hostname?: string;
19
+ origin?: string;
19
20
  };
20
21
  __rivetkit?: unknown[];
21
22
  }
@@ -56,7 +56,7 @@ export function getInspectorUrl(
56
56
  const endpoint =
57
57
  config.inspector.defaultEndpoint ??
58
58
  (config.managerPort !== 6420
59
- ? `http://localhost:${managerPort}`
59
+ ? `http://127.0.0.1:${managerPort}`
60
60
  : undefined);
61
61
  if (endpoint) {
62
62
  url.searchParams.set("u", endpoint);
@@ -590,7 +590,14 @@ export function buildManagerRouter(
590
590
  router.get("/health", (c) => handleHealthRequest(c));
591
591
 
592
592
  router.get("/metadata", (c) =>
593
- handleMetadataRequest(c, config, { normal: {} }, undefined),
593
+ handleMetadataRequest(
594
+ c,
595
+ config,
596
+ { normal: {} },
597
+ config.publicEndpoint,
598
+ config.publicNamespace,
599
+ config.publicToken,
600
+ ),
594
601
  );
595
602
 
596
603
  managerDriver.modifyManagerRouter?.(config, router as unknown as Hono);