rivetkit 2.0.27 → 2.0.28

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 (124) hide show
  1. package/dist/schemas/file-system-driver/v3.ts +167 -0
  2. package/dist/tsup/{chunk-4GJQDTAG.cjs → chunk-3ZC6SBX6.cjs} +652 -329
  3. package/dist/tsup/chunk-3ZC6SBX6.cjs.map +1 -0
  4. package/dist/tsup/{chunk-D7A47BVR.js → chunk-7IAEY5UZ.js} +2 -2
  5. package/dist/tsup/{chunk-6F2NCX7R.js → chunk-AE7BB3M2.js} +2 -2
  6. package/dist/tsup/{chunk-XU4GGB6J.js → chunk-AHPMXTSB.js} +503 -180
  7. package/dist/tsup/chunk-AHPMXTSB.js.map +1 -0
  8. package/dist/tsup/{chunk-XNKWXMIT.cjs → chunk-CJLXW36F.cjs} +768 -292
  9. package/dist/tsup/chunk-CJLXW36F.cjs.map +1 -0
  10. package/dist/tsup/chunk-DATRTJVZ.js +891 -0
  11. package/dist/tsup/chunk-DATRTJVZ.js.map +1 -0
  12. package/dist/tsup/{chunk-C3UREFUI.js → chunk-EJXISR3H.js} +14 -5
  13. package/dist/tsup/chunk-EJXISR3H.js.map +1 -0
  14. package/dist/tsup/{chunk-GUH2PNPG.js → chunk-IDYDUETM.js} +3 -3
  15. package/dist/tsup/{chunk-2NNICHGY.js → chunk-ILK4JEMF.js} +2 -2
  16. package/dist/tsup/chunk-JALGQWHW.cjs +129 -0
  17. package/dist/tsup/chunk-JALGQWHW.cjs.map +1 -0
  18. package/dist/tsup/{chunk-BBTOBXEO.js → chunk-KXSSOVFA.js} +578 -102
  19. package/dist/tsup/chunk-KXSSOVFA.js.map +1 -0
  20. package/dist/tsup/{chunk-DRJCTDDT.cjs → chunk-M54KFQQP.cjs} +18 -9
  21. package/dist/tsup/chunk-M54KFQQP.cjs.map +1 -0
  22. package/dist/tsup/chunk-NQZ643FB.cjs +891 -0
  23. package/dist/tsup/chunk-NQZ643FB.cjs.map +1 -0
  24. package/dist/tsup/{chunk-LZADH4QA.cjs → chunk-NR2N4UA2.cjs} +10 -10
  25. package/dist/tsup/{chunk-LZADH4QA.cjs.map → chunk-NR2N4UA2.cjs.map} +1 -1
  26. package/dist/tsup/{chunk-KSQQU7NC.js → chunk-S5URQ3CI.js} +7 -6
  27. package/dist/tsup/chunk-S5URQ3CI.js.map +1 -0
  28. package/dist/tsup/{chunk-QC4AE54W.cjs → chunk-VQRYS6VW.cjs} +3 -3
  29. package/dist/tsup/{chunk-QC4AE54W.cjs.map → chunk-VQRYS6VW.cjs.map} +1 -1
  30. package/dist/tsup/{chunk-TJ2PJ5C7.cjs → chunk-Y2AKEZRY.cjs} +3 -3
  31. package/dist/tsup/{chunk-TJ2PJ5C7.cjs.map → chunk-Y2AKEZRY.cjs.map} +1 -1
  32. package/dist/tsup/{chunk-F3SQLO3X.cjs → chunk-Y5LN2XRH.cjs} +7 -6
  33. package/dist/tsup/chunk-Y5LN2XRH.cjs.map +1 -0
  34. package/dist/tsup/{chunk-G7YZSSWV.cjs → chunk-YW2E3UPH.cjs} +6 -6
  35. package/dist/tsup/{chunk-G7YZSSWV.cjs.map → chunk-YW2E3UPH.cjs.map} +1 -1
  36. package/dist/tsup/{chunk-VRZNWBDK.js → chunk-ZL3SUOIM.js} +45 -46
  37. package/dist/tsup/chunk-ZL3SUOIM.js.map +1 -0
  38. package/dist/tsup/client/mod.cjs +8 -8
  39. package/dist/tsup/client/mod.d.cts +3 -2
  40. package/dist/tsup/client/mod.d.ts +3 -2
  41. package/dist/tsup/client/mod.js +7 -7
  42. package/dist/tsup/common/log.cjs +2 -2
  43. package/dist/tsup/common/log.d.cts +9 -1
  44. package/dist/tsup/common/log.d.ts +9 -1
  45. package/dist/tsup/common/log.js +1 -1
  46. package/dist/tsup/common/websocket.cjs +3 -3
  47. package/dist/tsup/common/websocket.js +2 -2
  48. package/dist/tsup/{config-Bo-blHpJ.d.ts → config-CcMdKDv9.d.ts} +301 -899
  49. package/dist/tsup/{config-BRDYDraU.d.cts → config-DxlmiJS1.d.cts} +301 -899
  50. package/dist/tsup/driver-helpers/mod.cjs +4 -4
  51. package/dist/tsup/driver-helpers/mod.d.cts +2 -1
  52. package/dist/tsup/driver-helpers/mod.d.ts +2 -1
  53. package/dist/tsup/driver-helpers/mod.js +3 -3
  54. package/dist/tsup/driver-test-suite/mod.cjs +71 -71
  55. package/dist/tsup/driver-test-suite/mod.d.cts +2 -1
  56. package/dist/tsup/driver-test-suite/mod.d.ts +2 -1
  57. package/dist/tsup/driver-test-suite/mod.js +10 -10
  58. package/dist/tsup/inspector/mod.cjs +5 -5
  59. package/dist/tsup/inspector/mod.d.cts +5 -4
  60. package/dist/tsup/inspector/mod.d.ts +5 -4
  61. package/dist/tsup/inspector/mod.js +4 -4
  62. package/dist/tsup/mod.cjs +9 -9
  63. package/dist/tsup/mod.d.cts +3 -2
  64. package/dist/tsup/mod.d.ts +3 -2
  65. package/dist/tsup/mod.js +8 -8
  66. package/dist/tsup/test/mod.cjs +11 -10
  67. package/dist/tsup/test/mod.cjs.map +1 -1
  68. package/dist/tsup/test/mod.d.cts +2 -6
  69. package/dist/tsup/test/mod.d.ts +2 -6
  70. package/dist/tsup/test/mod.js +10 -9
  71. package/dist/tsup/utils.cjs +2 -2
  72. package/dist/tsup/utils.js +1 -1
  73. package/package.json +7 -6
  74. package/src/actor/config.ts +21 -20
  75. package/src/actor/conn/mod.ts +5 -1
  76. package/src/actor/instance/connection-manager.ts +5 -1
  77. package/src/actor/instance/event-manager.ts +5 -1
  78. package/src/actor/instance/state-manager.ts +19 -3
  79. package/src/actor/protocol/old.ts +3 -0
  80. package/src/actor/protocol/serde.ts +5 -1
  81. package/src/actor/router-endpoints.ts +2 -0
  82. package/src/client/actor-conn.ts +2 -0
  83. package/src/client/actor-handle.ts +3 -0
  84. package/src/client/config.ts +1 -1
  85. package/src/client/utils.ts +4 -1
  86. package/src/common/router.ts +5 -1
  87. package/src/driver-helpers/utils.ts +8 -2
  88. package/src/drivers/engine/config.ts +6 -3
  89. package/src/drivers/file-system/global-state.ts +46 -1
  90. package/src/drivers/file-system/manager.ts +4 -0
  91. package/src/inspector/config.ts +1 -2
  92. package/src/manager/driver.ts +4 -0
  93. package/src/manager/router-schema.ts +7 -7
  94. package/src/manager/router.ts +4 -4
  95. package/src/registry/run-config.ts +9 -5
  96. package/src/remote-manager-driver/actor-http-client.ts +1 -1
  97. package/src/remote-manager-driver/api-utils.ts +2 -0
  98. package/src/schemas/actor-persist/versioned.ts +126 -54
  99. package/src/schemas/client-protocol/versioned.ts +173 -42
  100. package/src/schemas/file-system-driver/mod.ts +1 -1
  101. package/src/schemas/file-system-driver/versioned.ts +129 -45
  102. package/src/serde.ts +9 -2
  103. package/src/test/config.ts +13 -12
  104. package/src/test/mod.ts +56 -82
  105. package/dist/tsup/chunk-2TZH6VO6.cjs +0 -514
  106. package/dist/tsup/chunk-2TZH6VO6.cjs.map +0 -1
  107. package/dist/tsup/chunk-4GJQDTAG.cjs.map +0 -1
  108. package/dist/tsup/chunk-5YDKTW6Y.js +0 -514
  109. package/dist/tsup/chunk-5YDKTW6Y.js.map +0 -1
  110. package/dist/tsup/chunk-BBTOBXEO.js.map +0 -1
  111. package/dist/tsup/chunk-C3UREFUI.js.map +0 -1
  112. package/dist/tsup/chunk-DRJCTDDT.cjs.map +0 -1
  113. package/dist/tsup/chunk-F3SQLO3X.cjs.map +0 -1
  114. package/dist/tsup/chunk-FYZLEH57.cjs +0 -130
  115. package/dist/tsup/chunk-FYZLEH57.cjs.map +0 -1
  116. package/dist/tsup/chunk-KSQQU7NC.js.map +0 -1
  117. package/dist/tsup/chunk-VRZNWBDK.js.map +0 -1
  118. package/dist/tsup/chunk-XNKWXMIT.cjs.map +0 -1
  119. package/dist/tsup/chunk-XU4GGB6J.js.map +0 -1
  120. package/src/common/versioned-data.ts +0 -95
  121. /package/dist/tsup/{chunk-D7A47BVR.js.map → chunk-7IAEY5UZ.js.map} +0 -0
  122. /package/dist/tsup/{chunk-6F2NCX7R.js.map → chunk-AE7BB3M2.js.map} +0 -0
  123. /package/dist/tsup/{chunk-GUH2PNPG.js.map → chunk-IDYDUETM.js.map} +0 -0
  124. /package/dist/tsup/{chunk-2NNICHGY.js.map → chunk-ILK4JEMF.js.map} +0 -0
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkQC4AE54Wcjs = require('./chunk-QC4AE54W.cjs');
7
+ var _chunkVQRYS6VWcjs = require('./chunk-VQRYS6VW.cjs');
8
8
 
9
9
 
10
10
 
@@ -28,17 +28,17 @@ var _chunkQC4AE54Wcjs = require('./chunk-QC4AE54W.cjs');
28
28
 
29
29
 
30
30
 
31
- var _chunkXNKWXMITcjs = require('./chunk-XNKWXMIT.cjs');
32
31
 
32
+ var _chunkCJLXW36Fcjs = require('./chunk-CJLXW36F.cjs');
33
33
 
34
- var _chunkLZADH4QAcjs = require('./chunk-LZADH4QA.cjs');
35
34
 
35
+ var _chunkNR2N4UA2cjs = require('./chunk-NR2N4UA2.cjs');
36
36
 
37
37
 
38
38
 
39
39
 
40
40
 
41
- var _chunk2TZH6VO6cjs = require('./chunk-2TZH6VO6.cjs');
41
+ var _chunkNQZ643FBcjs = require('./chunk-NQZ643FB.cjs');
42
42
 
43
43
 
44
44
 
@@ -60,7 +60,7 @@ var _chunk2TZH6VO6cjs = require('./chunk-2TZH6VO6.cjs');
60
60
 
61
61
 
62
62
 
63
- var _chunkDRJCTDDTcjs = require('./chunk-DRJCTDDT.cjs');
63
+ var _chunkM54KFQQPcjs = require('./chunk-M54KFQQP.cjs');
64
64
 
65
65
 
66
66
 
@@ -76,7 +76,7 @@ var _chunkDRJCTDDTcjs = require('./chunk-DRJCTDDT.cjs');
76
76
 
77
77
 
78
78
 
79
- var _chunkF3SQLO3Xcjs = require('./chunk-F3SQLO3X.cjs');
79
+ var _chunkY5LN2XRHcjs = require('./chunk-Y5LN2XRH.cjs');
80
80
 
81
81
 
82
82
 
@@ -91,26 +91,27 @@ var _chunkXJMYGATEcjs = require('./chunk-XJMYGATE.cjs');
91
91
 
92
92
  // src/actor/config.ts
93
93
  var _zod = require('zod');
94
+ var zFunction = () => _zod.z.custom((val) => typeof val === "function");
94
95
  var ActorConfigSchema = _zod.z.object({
95
- onCreate: _zod.z.function().optional(),
96
- onDestroy: _zod.z.function().optional(),
97
- onWake: _zod.z.function().optional(),
98
- onSleep: _zod.z.function().optional(),
99
- onStateChange: _zod.z.function().optional(),
100
- onBeforeConnect: _zod.z.function().optional(),
101
- onConnect: _zod.z.function().optional(),
102
- onDisconnect: _zod.z.function().optional(),
103
- onBeforeActionResponse: _zod.z.function().optional(),
104
- onRequest: _zod.z.function().optional(),
105
- onWebSocket: _zod.z.function().optional(),
106
- actions: _zod.z.record(_zod.z.function()).default({}),
96
+ onCreate: zFunction().optional(),
97
+ onDestroy: zFunction().optional(),
98
+ onWake: zFunction().optional(),
99
+ onSleep: zFunction().optional(),
100
+ onStateChange: zFunction().optional(),
101
+ onBeforeConnect: zFunction().optional(),
102
+ onConnect: zFunction().optional(),
103
+ onDisconnect: zFunction().optional(),
104
+ onBeforeActionResponse: zFunction().optional(),
105
+ onRequest: zFunction().optional(),
106
+ onWebSocket: zFunction().optional(),
107
+ actions: _zod.z.record(_zod.z.string(), zFunction()).default(() => ({})),
107
108
  state: _zod.z.any().optional(),
108
- createState: _zod.z.function().optional(),
109
+ createState: zFunction().optional(),
109
110
  connState: _zod.z.any().optional(),
110
- createConnState: _zod.z.function().optional(),
111
+ createConnState: zFunction().optional(),
111
112
  vars: _zod.z.any().optional(),
112
113
  db: _zod.z.any().optional(),
113
- createVars: _zod.z.function().optional(),
114
+ createVars: zFunction().optional(),
114
115
  options: _zod.z.object({
115
116
  createVarsTimeout: _zod.z.number().positive().default(5e3),
116
117
  createConnStateTimeout: _zod.z.number().positive().default(5e3),
@@ -135,9 +136,9 @@ var ActorConfigSchema = _zod.z.object({
135
136
  **/
136
137
  canHibernateWebSocket: _zod.z.union([
137
138
  _zod.z.boolean(),
138
- _zod.z.function().args(_zod.z.custom()).returns(_zod.z.boolean())
139
+ zFunction()
139
140
  ]).default(false)
140
- }).strict().default({})
141
+ }).strict().prefault(() => ({}))
141
142
  }).strict().refine(
142
143
  (data) => !(data.state !== void 0 && data.createState !== void 0),
143
144
  {
@@ -182,15 +183,15 @@ async function handleAction(c, _runConfig, actorDriver, actionName, actorId) {
182
183
  const encoding = getRequestEncoding(c.req);
183
184
  const parameters = getRequestConnParams(c.req);
184
185
  const arrayBuffer = await c.req.arrayBuffer();
185
- const request = _chunkDRJCTDDTcjs.deserializeWithEncoding.call(void 0,
186
+ const request = _chunkM54KFQQPcjs.deserializeWithEncoding.call(void 0,
186
187
  encoding,
187
188
  new Uint8Array(arrayBuffer),
188
- _chunkXNKWXMITcjs.HTTP_ACTION_REQUEST_VERSIONED,
189
- _chunkXNKWXMITcjs.HttpActionRequestSchema,
189
+ _chunkCJLXW36Fcjs.HTTP_ACTION_REQUEST_VERSIONED,
190
+ _chunkCJLXW36Fcjs.HttpActionRequestSchema,
190
191
  // JSON: args is already the decoded value (raw object/array)
191
192
  (json) => json.args,
192
193
  // BARE/CBOR: args is ArrayBuffer that needs CBOR-decoding
193
- (bare2) => cbor.decode(new Uint8Array(bare2.args))
194
+ (bare4) => cbor.decode(new Uint8Array(bare4.args))
194
195
  );
195
196
  const actionArgs = request;
196
197
  let actor2;
@@ -200,33 +201,34 @@ async function handleAction(c, _runConfig, actorDriver, actionName, actorId) {
200
201
  actor2 = await actorDriver.loadActor(actorId);
201
202
  actor2.rLog.debug({ msg: "handling action", actionName, encoding });
202
203
  conn = await actor2.connectionManager.prepareAndConnectConn(
203
- _chunkXNKWXMITcjs.createHttpDriver.call(void 0, ),
204
+ _chunkCJLXW36Fcjs.createHttpDriver.call(void 0, ),
204
205
  parameters,
205
206
  c.req.raw,
206
207
  c.req.path,
207
208
  c.req.header()
208
209
  );
209
- const ctx = new (0, _chunkXNKWXMITcjs.ActionContext)(actor2, conn);
210
+ const ctx = new (0, _chunkCJLXW36Fcjs.ActionContext)(actor2, conn);
210
211
  output = await actor2.executeAction(ctx, actionName, actionArgs);
211
212
  } finally {
212
213
  if (conn) {
213
214
  conn.disconnect();
214
215
  }
215
216
  }
216
- const serialized = _chunkDRJCTDDTcjs.serializeWithEncoding.call(void 0,
217
+ const serialized = _chunkM54KFQQPcjs.serializeWithEncoding.call(void 0,
217
218
  encoding,
218
219
  output,
219
- _chunkXNKWXMITcjs.HTTP_ACTION_RESPONSE_VERSIONED,
220
- _chunkXNKWXMITcjs.HttpActionResponseSchema,
220
+ _chunkCJLXW36Fcjs.HTTP_ACTION_RESPONSE_VERSIONED,
221
+ _chunkCJLXW36Fcjs.CURRENT_VERSION,
222
+ _chunkCJLXW36Fcjs.HttpActionResponseSchema,
221
223
  // JSON: output is the raw value (will be serialized by jsonStringifyCompat)
222
224
  (value) => ({ output: value }),
223
225
  // BARE/CBOR: output needs to be CBOR-encoded to ArrayBuffer
224
226
  (value) => ({
225
- output: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, cbor.encode(value))
227
+ output: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, cbor.encode(value))
226
228
  })
227
229
  );
228
230
  return c.body(serialized, 200, {
229
- "Content-Type": _chunkDRJCTDDTcjs.contentTypeForEncoding.call(void 0, encoding)
231
+ "Content-Type": _chunkM54KFQQPcjs.contentTypeForEncoding.call(void 0, encoding)
230
232
  });
231
233
  }
232
234
  async function handleRawRequest(c, req, actorDriver, actorId) {
@@ -250,11 +252,11 @@ async function handleRawRequest(c, req, actorDriver, actorId) {
250
252
  }
251
253
  }
252
254
  function getRequestEncoding(req) {
253
- const encodingParam = req.header(_chunkDRJCTDDTcjs.HEADER_ENCODING);
255
+ const encodingParam = req.header(_chunkM54KFQQPcjs.HEADER_ENCODING);
254
256
  if (!encodingParam) {
255
257
  return "json";
256
258
  }
257
- const result = _chunkDRJCTDDTcjs.EncodingSchema.safeParse(encodingParam);
259
+ const result = _chunkM54KFQQPcjs.EncodingSchema.safeParse(encodingParam);
258
260
  if (!result.success) {
259
261
  throw new (0, _chunkXJMYGATEcjs.InvalidEncoding)(encodingParam);
260
262
  }
@@ -264,7 +266,7 @@ function getRequestExposeInternalError(_req) {
264
266
  return false;
265
267
  }
266
268
  function getRequestConnParams(req) {
267
- const paramsParam = req.header(_chunkDRJCTDDTcjs.HEADER_CONN_PARAMS);
269
+ const paramsParam = req.header(_chunkM54KFQQPcjs.HEADER_CONN_PARAMS);
268
270
  if (!paramsParam) {
269
271
  return null;
270
272
  }
@@ -272,7 +274,7 @@ function getRequestConnParams(req) {
272
274
  return JSON.parse(paramsParam);
273
275
  } catch (err) {
274
276
  throw new (0, _chunkXJMYGATEcjs.InvalidParams)(
275
- `Invalid params JSON: ${_chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)}`
277
+ `Invalid params JSON: ${_chunkY5LN2XRHcjs.stringifyError.call(void 0, err)}`
276
278
  );
277
279
  }
278
280
  }
@@ -306,7 +308,7 @@ function buildActorNames(registryConfig) {
306
308
 
307
309
  // src/common/router.ts
308
310
  function logger() {
309
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "router");
311
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "router");
310
312
  }
311
313
  function loggerMiddleware(logger8) {
312
314
  return async (c, next) => {
@@ -324,7 +326,7 @@ function loggerMiddleware(logger8) {
324
326
  reqSize: c.req.header("content-length"),
325
327
  resSize: c.res.headers.get("content-length"),
326
328
  userAgent: c.req.header("user-agent"),
327
- ..._chunkF3SQLO3Xcjs.getEnvUniversal.call(void 0, "_RIVET_LOG_HEADERS") ? { allHeaders: JSON.stringify(c.req.header()) } : {}
329
+ ..._chunkY5LN2XRHcjs.getEnvUniversal.call(void 0, "_RIVET_LOG_HEADERS") ? { allHeaders: JSON.stringify(c.req.header()) } : {}
328
330
  });
329
331
  };
330
332
  }
@@ -333,7 +335,7 @@ function handleRouteNotFound(c) {
333
335
  }
334
336
  function handleRouteError(error, c) {
335
337
  const exposeInternalError = getRequestExposeInternalError(c.req.raw);
336
- const { statusCode, group, code, message, metadata } = _chunkF3SQLO3Xcjs.deconstructError.call(void 0,
338
+ const { statusCode, group, code, message, metadata } = _chunkY5LN2XRHcjs.deconstructError.call(void 0,
337
339
  error,
338
340
  logger(),
339
341
  {
@@ -349,11 +351,12 @@ function handleRouteError(error, c) {
349
351
  encoding = "json";
350
352
  }
351
353
  const errorData = { group, code, message, metadata };
352
- const output = _chunkDRJCTDDTcjs.serializeWithEncoding.call(void 0,
354
+ const output = _chunkM54KFQQPcjs.serializeWithEncoding.call(void 0,
353
355
  encoding,
354
356
  errorData,
355
- _chunkXNKWXMITcjs.HTTP_RESPONSE_ERROR_VERSIONED,
356
- _chunkXNKWXMITcjs.HttpResponseErrorSchema,
357
+ _chunkCJLXW36Fcjs.HTTP_RESPONSE_ERROR_VERSIONED,
358
+ _chunkCJLXW36Fcjs.CURRENT_VERSION,
359
+ _chunkCJLXW36Fcjs.HttpResponseErrorSchema,
357
360
  // JSON: metadata is the raw value (will be serialized by jsonStringifyCompat)
358
361
  (value) => ({
359
362
  group: value.group,
@@ -366,7 +369,7 @@ function handleRouteError(error, c) {
366
369
  group: value.group,
367
370
  code: value.code,
368
371
  message: value.message,
369
- metadata: value.metadata ? _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(value.metadata)) : null
372
+ metadata: value.metadata ? _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(value.metadata)) : null
370
373
  })
371
374
  );
372
375
  return c.body(output, { status: statusCode });
@@ -374,7 +377,7 @@ function handleRouteError(error, c) {
374
377
  function handleMetadataRequest(c, registryConfig, runConfig) {
375
378
  const response = {
376
379
  runtime: "rivetkit",
377
- version: _chunkF3SQLO3Xcjs.VERSION,
380
+ version: _chunkY5LN2XRHcjs.VERSION,
378
381
  runner: {
379
382
  kind: runConfig.runnerKind === "serverless" ? { serverless: {} } : { normal: {} }
380
383
  },
@@ -390,7 +393,7 @@ function handleHealthRequest(c) {
390
393
  return c.json({
391
394
  status: "ok",
392
395
  runtime: "rivetkit",
393
- version: _chunkF3SQLO3Xcjs.VERSION
396
+ version: _chunkY5LN2XRHcjs.VERSION
394
397
  });
395
398
  }
396
399
 
@@ -407,7 +410,7 @@ function createRawWebSocketDriver(hibernatable, closePromise) {
407
410
  // handle messages from the RivetKit protocol
408
411
  disconnect: async (_actor, _conn, reason) => {
409
412
  if (!websocket) {
410
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).warn(
413
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).warn(
411
414
  "disconnecting raw ws without websocket"
412
415
  );
413
416
  return;
@@ -433,7 +436,7 @@ function createRawWebSocketDriver(hibernatable, closePromise) {
433
436
 
434
437
  // src/actor/conn/drivers/websocket.ts
435
438
  function createWebSocketDriver(hibernatable, encoding, closePromise) {
436
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).debug({
439
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).debug({
437
440
  msg: "createWebSocketDriver creating driver",
438
441
  hibernatable
439
442
  });
@@ -498,7 +501,7 @@ function createWebSocketDriver(hibernatable, encoding, closePromise) {
498
501
  },
499
502
  disconnect: async (_actor, _conn, reason) => {
500
503
  if (!websocket) {
501
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).warn(
504
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).warn(
502
505
  "disconnecting ws without websocket"
503
506
  );
504
507
  return;
@@ -533,10 +536,10 @@ async function routeWebSocket(request, requestPath, requestHeaders, runConfig, a
533
536
  requestPath,
534
537
  isHibernatable
535
538
  });
536
- const closePromiseResolvers = _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, );
539
+ const closePromiseResolvers = _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, );
537
540
  let handler;
538
541
  let connDriver;
539
- if (requestPath === _chunkDRJCTDDTcjs.PATH_CONNECT) {
542
+ if (requestPath === _chunkM54KFQQPcjs.PATH_CONNECT) {
540
543
  const { driver, setWebSocket } = createWebSocketDriver(
541
544
  isHibernatable ? { gatewayId, requestId } : void 0,
542
545
  encoding,
@@ -544,14 +547,14 @@ async function routeWebSocket(request, requestPath, requestHeaders, runConfig, a
544
547
  );
545
548
  handler = handleWebSocketConnect.bind(void 0, setWebSocket);
546
549
  connDriver = driver;
547
- } else if (requestPath === _chunkDRJCTDDTcjs.PATH_WEBSOCKET_BASE || requestPath.startsWith(_chunkDRJCTDDTcjs.PATH_WEBSOCKET_PREFIX)) {
550
+ } else if (requestPath === _chunkM54KFQQPcjs.PATH_WEBSOCKET_BASE || requestPath.startsWith(_chunkM54KFQQPcjs.PATH_WEBSOCKET_PREFIX)) {
548
551
  const { driver, setWebSocket } = createRawWebSocketDriver(
549
552
  isHibernatable ? { gatewayId, requestId } : void 0,
550
553
  closePromiseResolvers.promise
551
554
  );
552
555
  handler = handleRawWebSocket.bind(void 0, setWebSocket);
553
556
  connDriver = driver;
554
- } else if (requestPath === _chunkDRJCTDDTcjs.PATH_INSPECTOR_CONNECT) {
557
+ } else if (requestPath === _chunkM54KFQQPcjs.PATH_INSPECTOR_CONNECT) {
555
558
  return await handleWebSocketInspectorConnect();
556
559
  } else {
557
560
  throw `WebSocket Path Not Found: ${requestPath}`;
@@ -576,9 +579,9 @@ async function routeWebSocket(request, requestPath, requestHeaders, runConfig, a
576
579
  exposeInternalError
577
580
  });
578
581
  } catch (error) {
579
- const { group, code } = _chunkF3SQLO3Xcjs.deconstructError.call(void 0,
582
+ const { group, code } = _chunkY5LN2XRHcjs.deconstructError.call(void 0,
580
583
  error,
581
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ),
584
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ),
582
585
  {},
583
586
  exposeInternalError
584
587
  );
@@ -623,12 +626,12 @@ async function handleWebSocketConnect(setWebSocket, {
623
626
  onMessage: (evt, ws) => {
624
627
  actor2.rLog.debug({ msg: "received message" });
625
628
  const value = evt.data.valueOf();
626
- _chunkXNKWXMITcjs.parseMessage.call(void 0, value, {
629
+ _chunkCJLXW36Fcjs.parseMessage.call(void 0, value, {
627
630
  encoding,
628
631
  maxIncomingMessageSize: runConfig.maxIncomingMessageSize
629
632
  }).then((message) => {
630
633
  actor2.processMessage(message, conn).catch((error) => {
631
- const { code } = _chunkF3SQLO3Xcjs.deconstructError.call(void 0,
634
+ const { code } = _chunkY5LN2XRHcjs.deconstructError.call(void 0,
632
635
  error,
633
636
  actor2.rLog,
634
637
  {
@@ -639,7 +642,7 @@ async function handleWebSocketConnect(setWebSocket, {
639
642
  ws.close(1011, code);
640
643
  });
641
644
  }).catch((error) => {
642
- const { code } = _chunkF3SQLO3Xcjs.deconstructError.call(void 0,
645
+ const { code } = _chunkY5LN2XRHcjs.deconstructError.call(void 0,
643
646
  error,
644
647
  actor2.rLog,
645
648
  {
@@ -674,7 +677,7 @@ async function handleWebSocketConnect(setWebSocket, {
674
677
  try {
675
678
  actor2.rLog.warn({ msg: "websocket error" });
676
679
  } catch (error) {
677
- _chunkF3SQLO3Xcjs.deconstructError.call(void 0,
680
+ _chunkY5LN2XRHcjs.deconstructError.call(void 0,
678
681
  error,
679
682
  actor2.rLog,
680
683
  { wsEvent: "error" },
@@ -738,16 +741,16 @@ function parseWebSocketProtocols(protocols) {
738
741
  if (protocols) {
739
742
  const protocolList = protocols.split(",").map((p) => p.trim());
740
743
  for (const protocol of protocolList) {
741
- if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING)) {
742
- encodingRaw = protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING.length);
743
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS)) {
744
+ if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING)) {
745
+ encodingRaw = protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING.length);
746
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS)) {
744
747
  connParamsRaw = decodeURIComponent(
745
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS.length)
748
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS.length)
746
749
  );
747
750
  }
748
751
  }
749
752
  }
750
- const encoding = _chunkDRJCTDDTcjs.EncodingSchema.parse(encodingRaw);
753
+ const encoding = _chunkM54KFQQPcjs.EncodingSchema.parse(encodingRaw);
751
754
  const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
752
755
  return { encoding, connParams };
753
756
  }
@@ -763,7 +766,7 @@ function createActorRouter(runConfig, actorDriver, isTest) {
763
766
  const router = new (0, _hono.Hono)({
764
767
  strict: false
765
768
  });
766
- router.use("*", loggerMiddleware(_chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, )));
769
+ router.use("*", loggerMiddleware(_chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, )));
767
770
  router.use("*", async (c, next) => {
768
771
  const actor2 = await actorDriver.loadActor(c.env.actorId);
769
772
  actor2.beginHonoHttpRequest();
@@ -793,15 +796,15 @@ function createActorRouter(runConfig, actorDriver, isTest) {
793
796
  if (!conn) {
794
797
  return c.text(`Connection not found: ${connId}`, 404);
795
798
  }
796
- if ((_a = conn[_chunkXNKWXMITcjs.CONN_DRIVER_SYMBOL]) == null ? void 0 : _a.terminate) {
797
- conn[_chunkXNKWXMITcjs.CONN_DRIVER_SYMBOL].terminate(actor2, conn);
799
+ if ((_a = conn[_chunkCJLXW36Fcjs.CONN_DRIVER_SYMBOL]) == null ? void 0 : _a.terminate) {
800
+ conn[_chunkCJLXW36Fcjs.CONN_DRIVER_SYMBOL].terminate(actor2, conn);
798
801
  }
799
802
  return c.json({ success: true });
800
803
  });
801
804
  }
802
805
  router.on(
803
806
  "GET",
804
- [_chunkDRJCTDDTcjs.PATH_CONNECT, `${_chunkDRJCTDDTcjs.PATH_WEBSOCKET_PREFIX}*`, _chunkDRJCTDDTcjs.PATH_INSPECTOR_CONNECT],
807
+ [_chunkM54KFQQPcjs.PATH_CONNECT, `${_chunkM54KFQQPcjs.PATH_WEBSOCKET_PREFIX}*`, _chunkM54KFQQPcjs.PATH_INSPECTOR_CONNECT],
805
808
  async (c) => {
806
809
  var _a;
807
810
  const upgradeWebSocket = (_a = runConfig.getUpgradeWebSocket) == null ? void 0 : _a.call(runConfig);
@@ -823,7 +826,7 @@ function createActorRouter(runConfig, actorDriver, isTest) {
823
826
  false,
824
827
  false
825
828
  );
826
- })(c, _chunkF3SQLO3Xcjs.noopNext.call(void 0, ));
829
+ })(c, _chunkY5LN2XRHcjs.noopNext.call(void 0, ));
827
830
  } else {
828
831
  return c.text(
829
832
  "WebSockets are not enabled for this driver.",
@@ -852,7 +855,7 @@ function createActorRouter(runConfig, actorDriver, isTest) {
852
855
  body: c.req.raw.body,
853
856
  duplex: "half"
854
857
  });
855
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).debug({
858
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).debug({
856
859
  msg: "rewriting http url",
857
860
  from: c.req.url,
858
861
  to: correctedRequest.url
@@ -864,10 +867,10 @@ function createActorRouter(runConfig, actorDriver, isTest) {
864
867
  c.env.actorId
865
868
  );
866
869
  });
867
- if (_chunkQC4AE54Wcjs.isInspectorEnabled.call(void 0, runConfig, "actor")) {
870
+ if (_chunkVQRYS6VWcjs.isInspectorEnabled.call(void 0, runConfig, "actor")) {
868
871
  router.route(
869
872
  "/inspect",
870
- new (0, _hono.Hono)().use(_chunkQC4AE54Wcjs.secureInspector.call(void 0, runConfig), async (c, next) => {
873
+ new (0, _hono.Hono)().use(_chunkVQRYS6VWcjs.secureInspector.call(void 0, runConfig), async (c, next) => {
871
874
  const inspector = (await actorDriver.loadActor(c.env.actorId)).inspector;
872
875
  _invariant2.default.call(void 0,
873
876
  inspector,
@@ -875,7 +878,7 @@ function createActorRouter(runConfig, actorDriver, isTest) {
875
878
  );
876
879
  c.set("inspector", inspector);
877
880
  return next();
878
- }).route("/", _chunkXNKWXMITcjs.createActorInspectorRouter.call(void 0, ))
881
+ }).route("/", _chunkCJLXW36Fcjs.createActorInspectorRouter.call(void 0, ))
879
882
  );
880
883
  }
881
884
  router.notFound(handleRouteNotFound);
@@ -885,14 +888,14 @@ function createActorRouter(runConfig, actorDriver, isTest) {
885
888
 
886
889
  // src/actor/mod.ts
887
890
  function actor(input) {
888
- const config2 = ActorConfigSchema.parse(input);
889
- return new (0, _chunkXNKWXMITcjs.ActorDefinition)(config2);
891
+ const config4 = ActorConfigSchema.parse(input);
892
+ return new (0, _chunkCJLXW36Fcjs.ActorDefinition)(config4);
890
893
  }
891
894
 
892
895
  // src/common/inline-websocket-adapter.ts
893
896
  var _ws2 = require('hono/ws');
894
897
  function logger2() {
895
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "fake-event-source2");
898
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "fake-event-source2");
896
899
  }
897
900
  var InlineWebSocketAdapter = (_class = class {
898
901
  // WebSocket readyState values
@@ -1233,7 +1236,7 @@ var _streaming = require('hono/streaming');
1233
1236
 
1234
1237
  // src/drivers/engine/log.ts
1235
1238
  function logger3() {
1236
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "driver-engine");
1239
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "driver-engine");
1237
1240
  }
1238
1241
 
1239
1242
  // src/drivers/engine/actor-driver.ts
@@ -1251,8 +1254,8 @@ var EngineActorDriver = class {
1251
1254
  #version = 1;
1252
1255
  // Version for the runner protocol
1253
1256
  #alarmTimeout;
1254
- #runnerStarted = _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, );
1255
- #runnerStopped = _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, );
1257
+ #runnerStarted = _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, );
1258
+ #runnerStopped = _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, );
1256
1259
  #isRunnerStopped = false;
1257
1260
  // HACK: Track actor stop intent locally since the runner protocol doesn't
1258
1261
  // pass the stop reason to onActorStop. This will be fixed when the runner
@@ -1287,7 +1290,7 @@ var EngineActorDriver = class {
1287
1290
  );
1288
1291
  const engineRunnerConfig = {
1289
1292
  version: this.#version,
1290
- endpoint: _chunkXNKWXMITcjs.getEndpoint.call(void 0, runConfig),
1293
+ endpoint: _chunkCJLXW36Fcjs.getEndpoint.call(void 0, runConfig),
1291
1294
  token,
1292
1295
  namespace: runConfig.namespace,
1293
1296
  totalSlots: runConfig.totalSlots,
@@ -1313,7 +1316,7 @@ var EngineActorDriver = class {
1313
1316
  },
1314
1317
  onActorStart: this.#runnerOnActorStart.bind(this),
1315
1318
  onActorStop: this.#runnerOnActorStop.bind(this),
1316
- logger: _chunkF3SQLO3Xcjs.getLogger.call(void 0, "engine-runner")
1319
+ logger: _chunkY5LN2XRHcjs.getLogger.call(void 0, "engine-runner")
1317
1320
  };
1318
1321
  this.#runner = new (0, _enginerunner.Runner)(engineRunnerConfig);
1319
1322
  this.#runner.start();
@@ -1344,7 +1347,7 @@ var EngineActorDriver = class {
1344
1347
  this.#alarmTimeout = void 0;
1345
1348
  }
1346
1349
  const delay = Math.max(0, timestamp - Date.now());
1347
- this.#alarmTimeout = _chunkF3SQLO3Xcjs.setLongTimeout.call(void 0, () => {
1350
+ this.#alarmTimeout = _chunkY5LN2XRHcjs.setLongTimeout.call(void 0, () => {
1348
1351
  actor2.onAlarm();
1349
1352
  this.#alarmTimeout = void 0;
1350
1353
  }, delay);
@@ -1416,7 +1419,7 @@ var EngineActorDriver = class {
1416
1419
  var _a;
1417
1420
  (_a = handler.actor) == null ? void 0 : _a.rLog.error({
1418
1421
  msg: "onStop errored",
1419
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
1422
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
1420
1423
  });
1421
1424
  })
1422
1425
  );
@@ -1474,18 +1477,18 @@ var EngineActorDriver = class {
1474
1477
  let handler = this.#actors.get(actorId);
1475
1478
  if (!handler) {
1476
1479
  handler = {
1477
- actorStartPromise: _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, )
1480
+ actorStartPromise: _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, )
1478
1481
  };
1479
1482
  this.#actors.set(actorId, handler);
1480
1483
  }
1481
1484
  const name = actorConfig.name;
1482
1485
  _invariant2.default.call(void 0, actorConfig.key, "actor should have a key");
1483
- const key = _chunkXNKWXMITcjs.deserializeActorKey.call(void 0, actorConfig.key);
1486
+ const key = _chunkCJLXW36Fcjs.deserializeActorKey.call(void 0, actorConfig.key);
1484
1487
  const [persistDataBuffer] = await this.#runner.kvGet(actorId, [
1485
- _chunk2TZH6VO6cjs.KEYS.PERSIST_DATA
1488
+ _chunkNQZ643FBcjs.KEYS.PERSIST_DATA
1486
1489
  ]);
1487
1490
  if (persistDataBuffer === null) {
1488
- const initialKvState = _chunk2TZH6VO6cjs.getInitialActorKvState.call(void 0, input);
1491
+ const initialKvState = _chunkNQZ643FBcjs.getInitialActorKvState.call(void 0, input);
1489
1492
  await this.#runner.kvPut(actorId, initialKvState);
1490
1493
  logger3().debug({
1491
1494
  msg: "initialized persist data for new actor",
@@ -1498,7 +1501,7 @@ var EngineActorDriver = class {
1498
1501
  dataSize: persistDataBuffer.byteLength
1499
1502
  });
1500
1503
  }
1501
- const definition = _chunkXNKWXMITcjs.lookupInRegistry.call(void 0,
1504
+ const definition = _chunkCJLXW36Fcjs.lookupInRegistry.call(void 0,
1502
1505
  this.#registryConfig,
1503
1506
  actorConfig.name
1504
1507
  );
@@ -1525,7 +1528,7 @@ var EngineActorDriver = class {
1525
1528
  } catch (err) {
1526
1529
  logger3().error({
1527
1530
  msg: "error in onStop, proceeding with removing actor",
1528
- err: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
1531
+ err: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
1529
1532
  });
1530
1533
  }
1531
1534
  this.#actors.delete(actorId);
@@ -1584,7 +1587,7 @@ var EngineActorDriver = class {
1584
1587
  const wsContext = new (0, _ws2.WSContext)(websocket);
1585
1588
  const conn = wsHandler.conn;
1586
1589
  const actor2 = wsHandler.actor;
1587
- const connStateManager = conn == null ? void 0 : conn[_chunkXNKWXMITcjs.CONN_STATE_MANAGER_SYMBOL];
1590
+ const connStateManager = conn == null ? void 0 : conn[_chunkCJLXW36Fcjs.CONN_STATE_MANAGER_SYMBOL];
1588
1591
  logger3().debug({
1589
1592
  msg: "attaching websocket event listeners",
1590
1593
  actorId,
@@ -1644,7 +1647,7 @@ var EngineActorDriver = class {
1644
1647
  });
1645
1648
  const entry = this.#hwsMessageIndex.get(conn.id);
1646
1649
  if (entry) {
1647
- const messageLength = _chunkXNKWXMITcjs.getValueLength.call(void 0, event.data);
1650
+ const messageLength = _chunkCJLXW36Fcjs.getValueLength.call(void 0, event.data);
1648
1651
  entry.bufferedMessageSize += messageLength;
1649
1652
  if (entry.bufferedMessageSize >= CONN_BUFFERED_MESSAGE_SIZE_THRESHOLD) {
1650
1653
  entry.bufferedMessageSize = 0;
@@ -1715,10 +1718,10 @@ var EngineActorDriver = class {
1715
1718
  gatewayId: _enginerunner.idToStr.call(void 0, gatewayId),
1716
1719
  requestId: _enginerunner.idToStr.call(void 0, requestId)
1717
1720
  });
1718
- if (path === _chunkDRJCTDDTcjs.PATH_CONNECT) {
1721
+ if (path === _chunkM54KFQQPcjs.PATH_CONNECT) {
1719
1722
  return true;
1720
- } else if (path === _chunkDRJCTDDTcjs.PATH_WEBSOCKET_BASE || path.startsWith(_chunkDRJCTDDTcjs.PATH_WEBSOCKET_PREFIX)) {
1721
- const definition = _chunkXNKWXMITcjs.lookupInRegistry.call(void 0,
1723
+ } else if (path === _chunkM54KFQQPcjs.PATH_WEBSOCKET_BASE || path.startsWith(_chunkM54KFQQPcjs.PATH_WEBSOCKET_PREFIX)) {
1724
+ const definition = _chunkCJLXW36Fcjs.lookupInRegistry.call(void 0,
1722
1725
  this.#registryConfig,
1723
1726
  actorInstance.config.name
1724
1727
  );
@@ -1746,7 +1749,7 @@ var EngineActorDriver = class {
1746
1749
  } else {
1747
1750
  return false;
1748
1751
  }
1749
- } else if (path === _chunkDRJCTDDTcjs.PATH_INSPECTOR_CONNECT) {
1752
+ } else if (path === _chunkM54KFQQPcjs.PATH_INSPECTOR_CONNECT) {
1750
1753
  return false;
1751
1754
  } else {
1752
1755
  logger3().warn({
@@ -1759,7 +1762,7 @@ var EngineActorDriver = class {
1759
1762
  async #hwsLoadAll(actorId) {
1760
1763
  const actor2 = await this.loadActor(actorId);
1761
1764
  return actor2.conns.values().map((conn) => {
1762
- const connStateManager = conn[_chunkXNKWXMITcjs.CONN_STATE_MANAGER_SYMBOL];
1765
+ const connStateManager = conn[_chunkCJLXW36Fcjs.CONN_STATE_MANAGER_SYMBOL];
1763
1766
  const hibernatable = connStateManager.hibernatableData;
1764
1767
  if (!hibernatable) return void 0;
1765
1768
  return {
@@ -1782,7 +1785,7 @@ var EngineActorDriver = class {
1782
1785
  await this.#runner.restoreHibernatingRequests(actor2.id, metaEntries);
1783
1786
  }
1784
1787
  onCreateConn(conn) {
1785
- const hibernatable = conn[_chunkXNKWXMITcjs.CONN_STATE_MANAGER_SYMBOL].hibernatableData;
1788
+ const hibernatable = conn[_chunkCJLXW36Fcjs.CONN_STATE_MANAGER_SYMBOL].hibernatableData;
1786
1789
  if (!hibernatable) return;
1787
1790
  this.#hwsMessageIndex.set(conn.id, {
1788
1791
  serverMessageIndex: hibernatable.serverMessageIndex,
@@ -1804,7 +1807,7 @@ var EngineActorDriver = class {
1804
1807
  });
1805
1808
  }
1806
1809
  onBeforePersistConn(conn) {
1807
- const stateManager = conn[_chunkXNKWXMITcjs.CONN_STATE_MANAGER_SYMBOL];
1810
+ const stateManager = conn[_chunkCJLXW36Fcjs.CONN_STATE_MANAGER_SYMBOL];
1808
1811
  const hibernatable = stateManager.hibernatableDataOrError();
1809
1812
  const entry = this.#hwsMessageIndex.get(conn.id);
1810
1813
  if (!entry) {
@@ -1818,7 +1821,7 @@ var EngineActorDriver = class {
1818
1821
  entry.serverMessageIndex = hibernatable.serverMessageIndex;
1819
1822
  }
1820
1823
  onAfterPersistConn(conn) {
1821
- const stateManager = conn[_chunkXNKWXMITcjs.CONN_STATE_MANAGER_SYMBOL];
1824
+ const stateManager = conn[_chunkCJLXW36Fcjs.CONN_STATE_MANAGER_SYMBOL];
1822
1825
  const hibernatable = stateManager.hibernatableDataOrError();
1823
1826
  const entry = this.#hwsMessageIndex.get(conn.id);
1824
1827
  if (!entry) {
@@ -1846,7 +1849,7 @@ function createEngineDriver() {
1846
1849
  return {
1847
1850
  name: "engine",
1848
1851
  manager: (_registryConfig, runConfig) => {
1849
- return new (0, _chunkXNKWXMITcjs.RemoteManagerDriver)(runConfig);
1852
+ return new (0, _chunkCJLXW36Fcjs.RemoteManagerDriver)(runConfig);
1850
1853
  },
1851
1854
  actor: (registryConfig, runConfig, managerDriver, inlineClient) => {
1852
1855
  return new EngineActorDriver(
@@ -2031,19 +2034,12 @@ var FileSystemActorDriver = class {
2031
2034
  // src/drivers/file-system/global-state.ts
2032
2035
 
2033
2036
 
2034
- // dist/schemas/file-system-driver/v2.ts
2035
- var _lib = require('@bare-ts/lib'); var bare = _interopRequireWildcard(_lib);
2037
+ // src/schemas/file-system-driver/versioned.ts
2038
+ var _vbare = require('vbare');
2039
+
2040
+ // dist/schemas/file-system-driver/v1.ts
2041
+ var _lib = require('@bare-ts/lib'); var bare = _interopRequireWildcard(_lib); var bare2 = _interopRequireWildcard(_lib); var bare3 = _interopRequireWildcard(_lib);
2036
2042
  var config = /* @__PURE__ */ bare.Config({});
2037
- function readActorKvEntry(bc) {
2038
- return {
2039
- key: bare.readData(bc),
2040
- value: bare.readData(bc)
2041
- };
2042
- }
2043
- function writeActorKvEntry(bc, x) {
2044
- bare.writeData(bc, x.key);
2045
- bare.writeData(bc, x.value);
2046
- }
2047
2043
  function read0(bc) {
2048
2044
  const len = bare.readUintSafe(bc);
2049
2045
  if (len === 0) {
@@ -2061,29 +2057,12 @@ function write0(bc, x) {
2061
2057
  bare.writeString(bc, x[i]);
2062
2058
  }
2063
2059
  }
2064
- function read1(bc) {
2065
- const len = bare.readUintSafe(bc);
2066
- if (len === 0) {
2067
- return [];
2068
- }
2069
- const result = [readActorKvEntry(bc)];
2070
- for (let i = 1; i < len; i++) {
2071
- result[i] = readActorKvEntry(bc);
2072
- }
2073
- return result;
2074
- }
2075
- function write1(bc, x) {
2076
- bare.writeUintSafe(bc, x.length);
2077
- for (let i = 0; i < x.length; i++) {
2078
- writeActorKvEntry(bc, x[i]);
2079
- }
2080
- }
2081
2060
  function readActorState(bc) {
2082
2061
  return {
2083
2062
  actorId: bare.readString(bc),
2084
2063
  name: bare.readString(bc),
2085
2064
  key: read0(bc),
2086
- kvStorage: read1(bc),
2065
+ persistedData: bare.readData(bc),
2087
2066
  createdAt: bare.readU64(bc)
2088
2067
  };
2089
2068
  }
@@ -2091,7 +2070,7 @@ function writeActorState(bc, x) {
2091
2070
  bare.writeString(bc, x.actorId);
2092
2071
  bare.writeString(bc, x.name);
2093
2072
  write0(bc, x.key);
2094
- write1(bc, x.kvStorage);
2073
+ bare.writeData(bc, x.persistedData);
2095
2074
  bare.writeU64(bc, x.createdAt);
2096
2075
  }
2097
2076
  function encodeActorState(x) {
@@ -2137,46 +2116,349 @@ function decodeActorAlarm(bytes) {
2137
2116
  return result;
2138
2117
  }
2139
2118
 
2119
+ // dist/schemas/file-system-driver/v2.ts
2120
+
2121
+ var config2 = /* @__PURE__ */ bare2.Config({});
2122
+ function readActorKvEntry(bc) {
2123
+ return {
2124
+ key: bare2.readData(bc),
2125
+ value: bare2.readData(bc)
2126
+ };
2127
+ }
2128
+ function writeActorKvEntry(bc, x) {
2129
+ bare2.writeData(bc, x.key);
2130
+ bare2.writeData(bc, x.value);
2131
+ }
2132
+ function read02(bc) {
2133
+ const len = bare2.readUintSafe(bc);
2134
+ if (len === 0) {
2135
+ return [];
2136
+ }
2137
+ const result = [bare2.readString(bc)];
2138
+ for (let i = 1; i < len; i++) {
2139
+ result[i] = bare2.readString(bc);
2140
+ }
2141
+ return result;
2142
+ }
2143
+ function write02(bc, x) {
2144
+ bare2.writeUintSafe(bc, x.length);
2145
+ for (let i = 0; i < x.length; i++) {
2146
+ bare2.writeString(bc, x[i]);
2147
+ }
2148
+ }
2149
+ function read1(bc) {
2150
+ const len = bare2.readUintSafe(bc);
2151
+ if (len === 0) {
2152
+ return [];
2153
+ }
2154
+ const result = [readActorKvEntry(bc)];
2155
+ for (let i = 1; i < len; i++) {
2156
+ result[i] = readActorKvEntry(bc);
2157
+ }
2158
+ return result;
2159
+ }
2160
+ function write1(bc, x) {
2161
+ bare2.writeUintSafe(bc, x.length);
2162
+ for (let i = 0; i < x.length; i++) {
2163
+ writeActorKvEntry(bc, x[i]);
2164
+ }
2165
+ }
2166
+ function readActorState2(bc) {
2167
+ return {
2168
+ actorId: bare2.readString(bc),
2169
+ name: bare2.readString(bc),
2170
+ key: read02(bc),
2171
+ kvStorage: read1(bc),
2172
+ createdAt: bare2.readU64(bc)
2173
+ };
2174
+ }
2175
+ function writeActorState2(bc, x) {
2176
+ bare2.writeString(bc, x.actorId);
2177
+ bare2.writeString(bc, x.name);
2178
+ write02(bc, x.key);
2179
+ write1(bc, x.kvStorage);
2180
+ bare2.writeU64(bc, x.createdAt);
2181
+ }
2182
+ function encodeActorState2(x) {
2183
+ const bc = new bare2.ByteCursor(
2184
+ new Uint8Array(config2.initialBufferLength),
2185
+ config2
2186
+ );
2187
+ writeActorState2(bc, x);
2188
+ return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);
2189
+ }
2190
+ function decodeActorState2(bytes) {
2191
+ const bc = new bare2.ByteCursor(bytes, config2);
2192
+ const result = readActorState2(bc);
2193
+ if (bc.offset < bc.view.byteLength) {
2194
+ throw new bare2.BareError(bc.offset, "remaining bytes");
2195
+ }
2196
+ return result;
2197
+ }
2198
+ function readActorAlarm2(bc) {
2199
+ return {
2200
+ actorId: bare2.readString(bc),
2201
+ timestamp: bare2.readUint(bc)
2202
+ };
2203
+ }
2204
+ function writeActorAlarm2(bc, x) {
2205
+ bare2.writeString(bc, x.actorId);
2206
+ bare2.writeUint(bc, x.timestamp);
2207
+ }
2208
+ function encodeActorAlarm2(x) {
2209
+ const bc = new bare2.ByteCursor(
2210
+ new Uint8Array(config2.initialBufferLength),
2211
+ config2
2212
+ );
2213
+ writeActorAlarm2(bc, x);
2214
+ return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);
2215
+ }
2216
+ function decodeActorAlarm2(bytes) {
2217
+ const bc = new bare2.ByteCursor(bytes, config2);
2218
+ const result = readActorAlarm2(bc);
2219
+ if (bc.offset < bc.view.byteLength) {
2220
+ throw new bare2.BareError(bc.offset, "remaining bytes");
2221
+ }
2222
+ return result;
2223
+ }
2224
+
2225
+ // dist/schemas/file-system-driver/v3.ts
2226
+
2227
+ var config3 = /* @__PURE__ */ bare3.Config({});
2228
+ function readActorKvEntry2(bc) {
2229
+ return {
2230
+ key: bare3.readData(bc),
2231
+ value: bare3.readData(bc)
2232
+ };
2233
+ }
2234
+ function writeActorKvEntry2(bc, x) {
2235
+ bare3.writeData(bc, x.key);
2236
+ bare3.writeData(bc, x.value);
2237
+ }
2238
+ function read03(bc) {
2239
+ const len = bare3.readUintSafe(bc);
2240
+ if (len === 0) {
2241
+ return [];
2242
+ }
2243
+ const result = [bare3.readString(bc)];
2244
+ for (let i = 1; i < len; i++) {
2245
+ result[i] = bare3.readString(bc);
2246
+ }
2247
+ return result;
2248
+ }
2249
+ function write03(bc, x) {
2250
+ bare3.writeUintSafe(bc, x.length);
2251
+ for (let i = 0; i < x.length; i++) {
2252
+ bare3.writeString(bc, x[i]);
2253
+ }
2254
+ }
2255
+ function read12(bc) {
2256
+ const len = bare3.readUintSafe(bc);
2257
+ if (len === 0) {
2258
+ return [];
2259
+ }
2260
+ const result = [readActorKvEntry2(bc)];
2261
+ for (let i = 1; i < len; i++) {
2262
+ result[i] = readActorKvEntry2(bc);
2263
+ }
2264
+ return result;
2265
+ }
2266
+ function write12(bc, x) {
2267
+ bare3.writeUintSafe(bc, x.length);
2268
+ for (let i = 0; i < x.length; i++) {
2269
+ writeActorKvEntry2(bc, x[i]);
2270
+ }
2271
+ }
2272
+ function read2(bc) {
2273
+ return bare3.readBool(bc) ? bare3.readU64(bc) : null;
2274
+ }
2275
+ function write2(bc, x) {
2276
+ bare3.writeBool(bc, x !== null);
2277
+ if (x !== null) {
2278
+ bare3.writeU64(bc, x);
2279
+ }
2280
+ }
2281
+ function readActorState3(bc) {
2282
+ return {
2283
+ actorId: bare3.readString(bc),
2284
+ name: bare3.readString(bc),
2285
+ key: read03(bc),
2286
+ kvStorage: read12(bc),
2287
+ createdAt: bare3.readU64(bc),
2288
+ startTs: read2(bc),
2289
+ connectableTs: read2(bc),
2290
+ sleepTs: read2(bc),
2291
+ destroyTs: read2(bc)
2292
+ };
2293
+ }
2294
+ function writeActorState3(bc, x) {
2295
+ bare3.writeString(bc, x.actorId);
2296
+ bare3.writeString(bc, x.name);
2297
+ write03(bc, x.key);
2298
+ write12(bc, x.kvStorage);
2299
+ bare3.writeU64(bc, x.createdAt);
2300
+ write2(bc, x.startTs);
2301
+ write2(bc, x.connectableTs);
2302
+ write2(bc, x.sleepTs);
2303
+ write2(bc, x.destroyTs);
2304
+ }
2305
+ function encodeActorState3(x) {
2306
+ const bc = new bare3.ByteCursor(
2307
+ new Uint8Array(config3.initialBufferLength),
2308
+ config3
2309
+ );
2310
+ writeActorState3(bc, x);
2311
+ return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);
2312
+ }
2313
+ function decodeActorState3(bytes) {
2314
+ const bc = new bare3.ByteCursor(bytes, config3);
2315
+ const result = readActorState3(bc);
2316
+ if (bc.offset < bc.view.byteLength) {
2317
+ throw new bare3.BareError(bc.offset, "remaining bytes");
2318
+ }
2319
+ return result;
2320
+ }
2321
+ function readActorAlarm3(bc) {
2322
+ return {
2323
+ actorId: bare3.readString(bc),
2324
+ timestamp: bare3.readUint(bc)
2325
+ };
2326
+ }
2327
+ function writeActorAlarm3(bc, x) {
2328
+ bare3.writeString(bc, x.actorId);
2329
+ bare3.writeUint(bc, x.timestamp);
2330
+ }
2331
+ function encodeActorAlarm3(x) {
2332
+ const bc = new bare3.ByteCursor(
2333
+ new Uint8Array(config3.initialBufferLength),
2334
+ config3
2335
+ );
2336
+ writeActorAlarm3(bc, x);
2337
+ return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);
2338
+ }
2339
+ function decodeActorAlarm3(bytes) {
2340
+ const bc = new bare3.ByteCursor(bytes, config3);
2341
+ const result = readActorAlarm3(bc);
2342
+ if (bc.offset < bc.view.byteLength) {
2343
+ throw new bare3.BareError(bc.offset, "remaining bytes");
2344
+ }
2345
+ return result;
2346
+ }
2347
+
2140
2348
  // src/schemas/file-system-driver/versioned.ts
2141
- var CURRENT_VERSION = 2;
2142
- var migrations = /* @__PURE__ */ new Map([
2143
- [
2144
- 2,
2145
- (v1State) => {
2146
- const kvStorage = [];
2147
- if (v1State.persistedData) {
2148
- const key = new Uint8Array([1]);
2149
- kvStorage.push({
2150
- key: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key),
2151
- value: v1State.persistedData
2152
- });
2153
- }
2154
- return {
2155
- actorId: v1State.actorId,
2156
- name: v1State.name,
2157
- key: v1State.key,
2158
- kvStorage,
2159
- createdAt: v1State.createdAt
2160
- };
2161
- }
2162
- ]
2163
- ]);
2164
- var ACTOR_STATE_VERSIONED = _chunk2TZH6VO6cjs.createVersionedDataHandler.call(void 0, {
2165
- currentVersion: CURRENT_VERSION,
2166
- migrations,
2167
- serializeVersion: (data) => encodeActorState(data),
2168
- deserializeVersion: (bytes) => decodeActorState(bytes)
2349
+ var CURRENT_VERSION2 = 3;
2350
+ var v1ToV2 = (v1State) => {
2351
+ const kvStorage = [];
2352
+ if (v1State.persistedData) {
2353
+ const key = new Uint8Array([1]);
2354
+ kvStorage.push({
2355
+ key: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key),
2356
+ value: v1State.persistedData
2357
+ });
2358
+ }
2359
+ return {
2360
+ actorId: v1State.actorId,
2361
+ name: v1State.name,
2362
+ key: v1State.key,
2363
+ kvStorage,
2364
+ createdAt: v1State.createdAt
2365
+ };
2366
+ };
2367
+ var v2ToV3 = (v2State) => {
2368
+ return {
2369
+ actorId: v2State.actorId,
2370
+ name: v2State.name,
2371
+ key: v2State.key,
2372
+ kvStorage: v2State.kvStorage,
2373
+ createdAt: v2State.createdAt,
2374
+ startTs: null,
2375
+ connectableTs: null,
2376
+ sleepTs: null,
2377
+ destroyTs: null
2378
+ };
2379
+ };
2380
+ var v3ToV2 = (v3State) => {
2381
+ return {
2382
+ actorId: v3State.actorId,
2383
+ name: v3State.name,
2384
+ key: v3State.key,
2385
+ kvStorage: v3State.kvStorage,
2386
+ createdAt: v3State.createdAt
2387
+ };
2388
+ };
2389
+ var v2ToV1 = (v2State) => {
2390
+ const persistDataEntry = v2State.kvStorage.find((entry) => {
2391
+ const key = new Uint8Array(entry.key);
2392
+ return key.length === 1 && key[0] === 1;
2393
+ });
2394
+ return {
2395
+ actorId: v2State.actorId,
2396
+ name: v2State.name,
2397
+ key: v2State.key,
2398
+ persistedData: (persistDataEntry == null ? void 0 : persistDataEntry.value) || new ArrayBuffer(0),
2399
+ createdAt: v2State.createdAt
2400
+ };
2401
+ };
2402
+ var ACTOR_STATE_VERSIONED = _vbare.createVersionedDataHandler.call(void 0, {
2403
+ deserializeVersion: (bytes, version) => {
2404
+ switch (version) {
2405
+ case 1:
2406
+ return decodeActorState(bytes);
2407
+ case 2:
2408
+ return decodeActorState2(bytes);
2409
+ case 3:
2410
+ return decodeActorState3(bytes);
2411
+ default:
2412
+ throw new Error(`Unknown version ${version}`);
2413
+ }
2414
+ },
2415
+ serializeVersion: (data, version) => {
2416
+ switch (version) {
2417
+ case 1:
2418
+ return encodeActorState(data);
2419
+ case 2:
2420
+ return encodeActorState2(data);
2421
+ case 3:
2422
+ return encodeActorState3(data);
2423
+ default:
2424
+ throw new Error(`Unknown version ${version}`);
2425
+ }
2426
+ },
2427
+ deserializeConverters: () => [v1ToV2, v2ToV3],
2428
+ serializeConverters: () => [v3ToV2, v2ToV1]
2169
2429
  });
2170
- var ACTOR_ALARM_VERSIONED = _chunk2TZH6VO6cjs.createVersionedDataHandler.call(void 0, {
2171
- currentVersion: CURRENT_VERSION,
2172
- migrations,
2173
- serializeVersion: (data) => encodeActorAlarm(data),
2174
- deserializeVersion: (bytes) => decodeActorAlarm(bytes)
2430
+ var ACTOR_ALARM_VERSIONED = _vbare.createVersionedDataHandler.call(void 0, {
2431
+ deserializeVersion: (bytes, version) => {
2432
+ switch (version) {
2433
+ case 1:
2434
+ return decodeActorAlarm(bytes);
2435
+ case 2:
2436
+ return decodeActorAlarm2(bytes);
2437
+ case 3:
2438
+ return decodeActorAlarm3(bytes);
2439
+ default:
2440
+ throw new Error(`Unknown version ${version}`);
2441
+ }
2442
+ },
2443
+ serializeVersion: (data, version) => {
2444
+ switch (version) {
2445
+ case 1:
2446
+ return encodeActorAlarm(data);
2447
+ case 2:
2448
+ return encodeActorAlarm2(data);
2449
+ case 3:
2450
+ return encodeActorAlarm3(data);
2451
+ default:
2452
+ throw new Error(`Unknown version ${version}`);
2453
+ }
2454
+ },
2455
+ deserializeConverters: () => [],
2456
+ serializeConverters: () => []
2175
2457
  });
2176
2458
 
2177
2459
  // src/drivers/file-system/log.ts
2178
2460
  function logger4() {
2179
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "driver-fs");
2461
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "driver-fs");
2180
2462
  }
2181
2463
 
2182
2464
  // src/drivers/file-system/utils.ts
@@ -2371,11 +2653,11 @@ var FileSystemGlobalState = class {
2371
2653
  entry.generation = crypto.randomUUID();
2372
2654
  }
2373
2655
  const kvStorage = [];
2374
- const initialKvState = _chunk2TZH6VO6cjs.getInitialActorKvState.call(void 0, input);
2656
+ const initialKvState = _chunkNQZ643FBcjs.getInitialActorKvState.call(void 0, input);
2375
2657
  for (const [key2, value] of initialKvState) {
2376
2658
  kvStorage.push({
2377
- key: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key2),
2378
- value: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, value)
2659
+ key: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key2),
2660
+ value: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, value)
2379
2661
  });
2380
2662
  }
2381
2663
  entry.state = {
@@ -2383,7 +2665,11 @@ var FileSystemGlobalState = class {
2383
2665
  name,
2384
2666
  key,
2385
2667
  createdAt: BigInt(Date.now()),
2386
- kvStorage
2668
+ kvStorage,
2669
+ startTs: null,
2670
+ connectableTs: null,
2671
+ sleepTs: null,
2672
+ destroyTs: null
2387
2673
  };
2388
2674
  entry.lifecycleState = 1 /* AWAKE */;
2389
2675
  await this.writeActor(actorId, entry.generation, entry.state);
@@ -2441,11 +2727,11 @@ var FileSystemGlobalState = class {
2441
2727
  entry.generation = crypto.randomUUID();
2442
2728
  }
2443
2729
  const kvStorage = [];
2444
- const initialKvState = _chunk2TZH6VO6cjs.getInitialActorKvState.call(void 0, input);
2730
+ const initialKvState = _chunkNQZ643FBcjs.getInitialActorKvState.call(void 0, input);
2445
2731
  for (const [key2, value] of initialKvState) {
2446
2732
  kvStorage.push({
2447
- key: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key2),
2448
- value: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, value)
2733
+ key: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key2),
2734
+ value: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, value)
2449
2735
  });
2450
2736
  }
2451
2737
  entry.state = {
@@ -2453,7 +2739,11 @@ var FileSystemGlobalState = class {
2453
2739
  name,
2454
2740
  key,
2455
2741
  createdAt: BigInt(Date.now()),
2456
- kvStorage
2742
+ kvStorage,
2743
+ startTs: null,
2744
+ connectableTs: null,
2745
+ sleepTs: null,
2746
+ destroyTs: null
2457
2747
  };
2458
2748
  await this.writeActor(actorId, entry.generation, entry.state);
2459
2749
  }
@@ -2474,6 +2764,13 @@ var FileSystemGlobalState = class {
2474
2764
  if (actor2.loadPromise) await actor2.loadPromise.catch();
2475
2765
  if ((_a = actor2.startPromise) == null ? void 0 : _a.promise)
2476
2766
  await actor2.startPromise.promise.catch();
2767
+ if (actor2.state) {
2768
+ actor2.state = {
2769
+ ...actor2.state,
2770
+ sleepTs: BigInt(Date.now())
2771
+ };
2772
+ await this.writeActor(actorId, actor2.generation, actor2.state);
2773
+ }
2477
2774
  _invariant2.default.call(void 0, actor2.actor, "actor should be loaded");
2478
2775
  await actor2.actor.onStop("sleep");
2479
2776
  this.#actors.delete(actorId);
@@ -2488,6 +2785,13 @@ var FileSystemGlobalState = class {
2488
2785
  if (actor2.loadPromise) await actor2.loadPromise.catch();
2489
2786
  if ((_a = actor2.startPromise) == null ? void 0 : _a.promise)
2490
2787
  await actor2.startPromise.promise.catch();
2788
+ if (actor2.state) {
2789
+ actor2.state = {
2790
+ ...actor2.state,
2791
+ destroyTs: BigInt(Date.now())
2792
+ };
2793
+ await this.writeActor(actorId, actor2.generation, actor2.state);
2794
+ }
2491
2795
  if (actor2.actor) {
2492
2796
  await actor2.actor.onStop("destroy");
2493
2797
  }
@@ -2506,7 +2810,7 @@ var FileSystemGlobalState = class {
2506
2810
  logger4().error({
2507
2811
  msg: "failed to delete actor state file",
2508
2812
  actorId,
2509
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
2813
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2510
2814
  });
2511
2815
  }
2512
2816
  }
@@ -2520,7 +2824,7 @@ var FileSystemGlobalState = class {
2520
2824
  logger4().error({
2521
2825
  msg: "failed to delete actor database file",
2522
2826
  actorId,
2523
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
2827
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2524
2828
  });
2525
2829
  }
2526
2830
  }
@@ -2534,7 +2838,7 @@ var FileSystemGlobalState = class {
2534
2838
  logger4().error({
2535
2839
  msg: "failed to delete actor alarm file",
2536
2840
  actorId,
2537
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
2841
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2538
2842
  });
2539
2843
  }
2540
2844
  }
@@ -2591,7 +2895,8 @@ var FileSystemGlobalState = class {
2591
2895
  timestamp: BigInt(timestamp)
2592
2896
  };
2593
2897
  const data = ACTOR_ALARM_VERSIONED.serializeWithEmbeddedVersion(
2594
- alarmData
2898
+ alarmData,
2899
+ CURRENT_VERSION2
2595
2900
  );
2596
2901
  const fs = getNodeFs();
2597
2902
  await fs.writeFile(tempPath, data);
@@ -2636,9 +2941,16 @@ var FileSystemGlobalState = class {
2636
2941
  name: state.name,
2637
2942
  key: state.key,
2638
2943
  createdAt: state.createdAt,
2639
- kvStorage: state.kvStorage
2944
+ kvStorage: state.kvStorage,
2945
+ startTs: state.startTs,
2946
+ connectableTs: state.connectableTs,
2947
+ sleepTs: state.sleepTs,
2948
+ destroyTs: state.destroyTs
2640
2949
  };
2641
- const serializedState = ACTOR_STATE_VERSIONED.serializeWithEmbeddedVersion(bareState);
2950
+ const serializedState = ACTOR_STATE_VERSIONED.serializeWithEmbeddedVersion(
2951
+ bareState,
2952
+ CURRENT_VERSION2
2953
+ );
2642
2954
  const fs = getNodeFs();
2643
2955
  await fs.writeFile(tempPath, serializedState);
2644
2956
  if (!this.isGenerationCurrentAndNotDestroyed(actorId, generation)) {
@@ -2704,9 +3016,9 @@ var FileSystemGlobalState = class {
2704
3016
  if (entry.actor) {
2705
3017
  return entry.actor;
2706
3018
  }
2707
- entry.startPromise = _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, );
3019
+ entry.startPromise = _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, );
2708
3020
  try {
2709
- const definition = _chunkXNKWXMITcjs.lookupInRegistry.call(void 0,
3021
+ const definition = _chunkCJLXW36Fcjs.lookupInRegistry.call(void 0,
2710
3022
  registryConfig,
2711
3023
  entry.state.name
2712
3024
  );
@@ -2719,6 +3031,13 @@ var FileSystemGlobalState = class {
2719
3031
  entry.state.key,
2720
3032
  "unknown"
2721
3033
  );
3034
+ const now = BigInt(Date.now());
3035
+ entry.state = {
3036
+ ...entry.state,
3037
+ startTs: now,
3038
+ connectableTs: now
3039
+ };
3040
+ await this.writeActor(actorId, entry.generation, entry.state);
2722
3041
  entry.startPromise.resolve();
2723
3042
  entry.startPromise = void 0;
2724
3043
  return entry.actor;
@@ -2777,7 +3096,7 @@ var FileSystemGlobalState = class {
2777
3096
  logger4().error({
2778
3097
  msg: "failed to read alarm file",
2779
3098
  file,
2780
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
3099
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2781
3100
  });
2782
3101
  }
2783
3102
  }
@@ -2807,7 +3126,7 @@ var FileSystemGlobalState = class {
2807
3126
  (_a = entry.alarmTimeout) == null ? void 0 : _a.abort();
2808
3127
  entry.alarmTimestamp = timestamp;
2809
3128
  const delay = Math.max(0, timestamp - Date.now());
2810
- entry.alarmTimeout = _chunkF3SQLO3Xcjs.setLongTimeout.call(void 0, async () => {
3129
+ entry.alarmTimeout = _chunkY5LN2XRHcjs.setLongTimeout.call(void 0, async () => {
2811
3130
  entry.alarmTimestamp = void 0;
2812
3131
  if (this.#persist) {
2813
3132
  try {
@@ -2818,7 +3137,7 @@ var FileSystemGlobalState = class {
2818
3137
  logger4().debug({
2819
3138
  msg: "failed to remove alarm file",
2820
3139
  actorId,
2821
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
3140
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2822
3141
  });
2823
3142
  }
2824
3143
  }
@@ -2845,7 +3164,7 @@ var FileSystemGlobalState = class {
2845
3164
  logger4().error({
2846
3165
  msg: "failed to handle alarm",
2847
3166
  actorId,
2848
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, err)
3167
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, err)
2849
3168
  });
2850
3169
  }
2851
3170
  }, delay);
@@ -2857,7 +3176,7 @@ var FileSystemGlobalState = class {
2857
3176
  if (fsSync.existsSync(tokenPath)) {
2858
3177
  return fsSync.readFileSync(tokenPath, "utf-8");
2859
3178
  }
2860
- const newToken = _chunkDRJCTDDTcjs.generateRandomString.call(void 0, );
3179
+ const newToken = _chunkM54KFQQPcjs.generateRandomString.call(void 0, );
2861
3180
  fsSync.writeFileSync(tokenPath, newToken);
2862
3181
  return newToken;
2863
3182
  }
@@ -2912,17 +3231,17 @@ var FileSystemGlobalState = class {
2912
3231
  const newKvStorage = [...entry.state.kvStorage];
2913
3232
  for (const [key, value] of entries) {
2914
3233
  const existingIndex = newKvStorage.findIndex(
2915
- (e) => _chunkF3SQLO3Xcjs.arrayBuffersEqual.call(void 0, e.key, _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key))
3234
+ (e) => _chunkY5LN2XRHcjs.arrayBuffersEqual.call(void 0, e.key, _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key))
2916
3235
  );
2917
3236
  if (existingIndex >= 0) {
2918
3237
  newKvStorage[existingIndex] = {
2919
- key: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key),
2920
- value: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, value)
3238
+ key: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key),
3239
+ value: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, value)
2921
3240
  };
2922
3241
  } else {
2923
3242
  newKvStorage.push({
2924
- key: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key),
2925
- value: _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, value)
3243
+ key: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key),
3244
+ value: _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, value)
2926
3245
  });
2927
3246
  }
2928
3247
  }
@@ -2947,7 +3266,7 @@ var FileSystemGlobalState = class {
2947
3266
  const results = [];
2948
3267
  for (const key of keys) {
2949
3268
  const foundEntry = entry.state.kvStorage.find(
2950
- (e) => _chunkF3SQLO3Xcjs.arrayBuffersEqual.call(void 0, e.key, _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key))
3269
+ (e) => _chunkY5LN2XRHcjs.arrayBuffersEqual.call(void 0, e.key, _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key))
2951
3270
  );
2952
3271
  if (foundEntry) {
2953
3272
  results.push(new Uint8Array(foundEntry.value));
@@ -2972,7 +3291,7 @@ var FileSystemGlobalState = class {
2972
3291
  const newKvStorage = [...entry.state.kvStorage];
2973
3292
  for (const key of keys) {
2974
3293
  const indexToDelete = newKvStorage.findIndex(
2975
- (e) => _chunkF3SQLO3Xcjs.arrayBuffersEqual.call(void 0, e.key, _chunkF3SQLO3Xcjs.bufferToArrayBuffer.call(void 0, key))
3294
+ (e) => _chunkY5LN2XRHcjs.arrayBuffersEqual.call(void 0, e.key, _chunkY5LN2XRHcjs.bufferToArrayBuffer.call(void 0, key))
2976
3295
  );
2977
3296
  if (indexToDelete >= 0) {
2978
3297
  newKvStorage.splice(indexToDelete, 1);
@@ -3038,13 +3357,13 @@ function createManagerInspectorRouter() {
3038
3357
  });
3039
3358
  return c.json(actors, 200);
3040
3359
  } catch (error) {
3041
- _chunkQC4AE54Wcjs.inspectorLogger.call(void 0, ).error({
3360
+ _chunkVQRYS6VWcjs.inspectorLogger.call(void 0, ).error({
3042
3361
  msg: "Failed to fetch actors",
3043
3362
  error
3044
3363
  });
3045
3364
  return c.json("Failed to fetch actors", 500);
3046
3365
  }
3047
- }).post("/actors", _standardvalidator.sValidator.call(void 0, "json", _chunkLZADH4QAcjs.CreateActorSchema), async (c) => {
3366
+ }).post("/actors", _standardvalidator.sValidator.call(void 0, "json", _chunkNR2N4UA2cjs.CreateActorSchema), async (c) => {
3048
3367
  const actor2 = await c.var.inspector.accessors.createActor(
3049
3368
  c.req.valid("json")
3050
3369
  );
@@ -3070,7 +3389,7 @@ var ManagerInspector = class {
3070
3389
 
3071
3390
  constructor(accessors) {
3072
3391
  this.accessors = accessors();
3073
- _chunkQC4AE54Wcjs.inspectorLogger.call(void 0, ).debug({ msg: "Manager Inspector enabled and ready" });
3392
+ _chunkVQRYS6VWcjs.inspectorLogger.call(void 0, ).debug({ msg: "Manager Inspector enabled and ready" });
3074
3393
  }
3075
3394
  };
3076
3395
 
@@ -3151,9 +3470,9 @@ var FileSystemManagerDriver = class {
3151
3470
  };
3152
3471
  });
3153
3472
  }
3154
- const inlineClient = _chunkXNKWXMITcjs.createClientWithDriver.call(void 0,
3473
+ const inlineClient = _chunkCJLXW36Fcjs.createClientWithDriver.call(void 0,
3155
3474
  this,
3156
- _chunk2TZH6VO6cjs.ClientConfigSchema.parse({})
3475
+ _chunkNQZ643FBcjs.ClientConfigSchema.parse({})
3157
3476
  );
3158
3477
  this.#actorDriver = this.#driverConfig.actor(
3159
3478
  registryConfig,
@@ -3218,7 +3537,7 @@ var FileSystemManagerDriver = class {
3218
3537
  false,
3219
3538
  false
3220
3539
  );
3221
- return upgradeWebSocket(() => wsHandler)(c, _chunkF3SQLO3Xcjs.noopNext.call(void 0, ));
3540
+ return upgradeWebSocket(() => wsHandler)(c, _chunkY5LN2XRHcjs.noopNext.call(void 0, ));
3222
3541
  }
3223
3542
  async getForId({
3224
3543
  actorId
@@ -3293,7 +3612,11 @@ var FileSystemManagerDriver = class {
3293
3612
  actorId: actor2.actorId,
3294
3613
  name: actor2.name,
3295
3614
  key: actor2.key,
3296
- createTs: Number(actor2.createdAt)
3615
+ createTs: Number(actor2.createdAt),
3616
+ startTs: actor2.startTs !== null ? Number(actor2.startTs) : null,
3617
+ connectableTs: actor2.connectableTs !== null ? Number(actor2.connectableTs) : null,
3618
+ sleepTs: actor2.sleepTs !== null ? Number(actor2.sleepTs) : null,
3619
+ destroyTs: actor2.destroyTs !== null ? Number(actor2.destroyTs) : null
3297
3620
  });
3298
3621
  }
3299
3622
  }
@@ -3376,19 +3699,19 @@ function chooseDefaultDriver(runConfig) {
3376
3699
  return runConfig.driver;
3377
3700
  }
3378
3701
  if (runConfig.endpoint || runConfig.token || runConfig.runnerKind === "serverless") {
3379
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).debug({
3702
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).debug({
3380
3703
  msg: "using rivet engine driver",
3381
3704
  endpoint: runConfig.endpoint
3382
3705
  });
3383
3706
  return createEngineDriver();
3384
3707
  }
3385
- _chunkDRJCTDDTcjs.loggerWithoutContext.call(void 0, ).debug({ msg: "using default file system driver" });
3708
+ _chunkM54KFQQPcjs.loggerWithoutContext.call(void 0, ).debug({ msg: "using default file system driver" });
3386
3709
  return createFileSystemOrMemoryDriver(true);
3387
3710
  }
3388
3711
 
3389
3712
  // src/engine-process/log.ts
3390
3713
  function logger5() {
3391
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "engine-process");
3714
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "engine-process");
3392
3715
  }
3393
3716
 
3394
3717
  // src/engine-process/mod.ts
@@ -3789,7 +4112,7 @@ var ActorsListNamesResponseSchema = _zod.z.object({
3789
4112
 
3790
4113
  // src/manager/log.ts
3791
4114
  function logger6() {
3792
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "actor-manager");
4115
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "actor-manager");
3793
4116
  }
3794
4117
 
3795
4118
  // src/manager/gateway.ts
@@ -3805,11 +4128,11 @@ async function handleWebSocketGatewayPathBased(runConfig, managerDriver, c, acto
3805
4128
  if (protocols) {
3806
4129
  const protocolList = protocols.split(",").map((p) => p.trim());
3807
4130
  for (const protocol of protocolList) {
3808
- if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING)) {
3809
- encodingRaw = protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING.length);
3810
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS)) {
4131
+ if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING)) {
4132
+ encodingRaw = protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING.length);
4133
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS)) {
3811
4134
  connParamsRaw = decodeURIComponent(
3812
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS.length)
4135
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS.length)
3813
4136
  );
3814
4137
  }
3815
4138
  }
@@ -3910,17 +4233,17 @@ async function handleWebSocketGateway(runConfig, managerDriver, c, strippedPath)
3910
4233
  if (protocols) {
3911
4234
  const protocolList = protocols.split(",").map((p) => p.trim());
3912
4235
  for (const protocol of protocolList) {
3913
- if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_TARGET)) {
3914
- target = protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_TARGET.length);
3915
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ACTOR)) {
4236
+ if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_TARGET)) {
4237
+ target = protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_TARGET.length);
4238
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ACTOR)) {
3916
4239
  actorId = decodeURIComponent(
3917
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_ACTOR.length)
4240
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_ACTOR.length)
3918
4241
  );
3919
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING)) {
3920
- encodingRaw = protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING.length);
3921
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS)) {
4242
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING)) {
4243
+ encodingRaw = protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING.length);
4244
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS)) {
3922
4245
  connParamsRaw = decodeURIComponent(
3923
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS.length)
4246
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS.length)
3924
4247
  );
3925
4248
  }
3926
4249
  }
@@ -3950,8 +4273,8 @@ async function handleWebSocketGateway(runConfig, managerDriver, c, strippedPath)
3950
4273
  );
3951
4274
  }
3952
4275
  async function handleHttpGateway(managerDriver, c, next, strippedPath) {
3953
- const target = c.req.header(_chunkDRJCTDDTcjs.HEADER_RIVET_TARGET);
3954
- const actorId = c.req.header(_chunkDRJCTDDTcjs.HEADER_RIVET_ACTOR);
4276
+ const target = c.req.header(_chunkM54KFQQPcjs.HEADER_RIVET_TARGET);
4277
+ const actorId = c.req.header(_chunkM54KFQQPcjs.HEADER_RIVET_ACTOR);
3955
4278
  if (target !== "actor") {
3956
4279
  return next();
3957
4280
  }
@@ -3965,8 +4288,8 @@ async function handleHttpGateway(managerDriver, c, next, strippedPath) {
3965
4288
  method: c.req.method
3966
4289
  });
3967
4290
  const proxyHeaders = new Headers(c.req.raw.headers);
3968
- proxyHeaders.delete(_chunkDRJCTDDTcjs.HEADER_RIVET_TARGET);
3969
- proxyHeaders.delete(_chunkDRJCTDDTcjs.HEADER_RIVET_ACTOR);
4291
+ proxyHeaders.delete(_chunkM54KFQQPcjs.HEADER_RIVET_TARGET);
4292
+ proxyHeaders.delete(_chunkM54KFQQPcjs.HEADER_RIVET_ACTOR);
3970
4293
  const url = new URL(c.req.url);
3971
4294
  const proxyUrl = new URL(`http://actor${strippedPath}${url.search}`);
3972
4295
  const proxyRequest = new Request(proxyUrl, {
@@ -4060,7 +4383,7 @@ async function createTestWebSocketProxy(clientWsPromise) {
4060
4383
  promise: serverWsPromise,
4061
4384
  resolve: serverWsResolve,
4062
4385
  reject: serverWsReject
4063
- } = _chunkF3SQLO3Xcjs.promiseWithResolvers.call(void 0, );
4386
+ } = _chunkY5LN2XRHcjs.promiseWithResolvers.call(void 0, );
4064
4387
  try {
4065
4388
  logger6().debug({ msg: "awaiting client websocket promise" });
4066
4389
  const ws = await clientWsPromise;
@@ -4237,17 +4560,17 @@ async function createTestWebSocketProxy(clientWsPromise) {
4237
4560
 
4238
4561
  var ServerlessStartHeadersSchema = _zod.z.object({
4239
4562
  endpoint: _zod.z.string({
4240
- required_error: "x-rivet-endpoint header is required"
4563
+ error: "x-rivet-endpoint header is required"
4241
4564
  }),
4242
- token: _zod.z.string({ invalid_type_error: "x-rivet-token header must be a string" }).optional(),
4565
+ token: _zod.z.string({ error: "x-rivet-token header must be a string" }).optional(),
4243
4566
  totalSlots: _zod.z.coerce.number({
4244
- invalid_type_error: "x-rivet-total-slots header must be a number"
4245
- }).int("x-rivet-total-slots header must be an integer").gte(1, "x-rivet-total-slots header must be positive"),
4567
+ error: "x-rivet-total-slots header must be a number"
4568
+ }).int({ error: "x-rivet-total-slots header must be an integer" }).gte(1, { error: "x-rivet-total-slots header must be positive" }),
4246
4569
  runnerName: _zod.z.string({
4247
- required_error: "x-rivet-runner-name header is required"
4570
+ error: "x-rivet-runner-name header is required"
4248
4571
  }),
4249
4572
  namespace: _zod.z.string({
4250
- required_error: "x-rivet-namespace-name header is required"
4573
+ error: "x-rivet-namespace-name header is required"
4251
4574
  })
4252
4575
  });
4253
4576
 
@@ -4309,7 +4632,7 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, driverCon
4309
4632
  } else if (runConfig.runnerKind === "normal") {
4310
4633
  addManagerRoutes(registryConfig, runConfig, managerDriver, router);
4311
4634
  } else {
4312
- _chunkF3SQLO3Xcjs.assertUnreachable.call(void 0, runConfig.runnerKind);
4635
+ _chunkY5LN2XRHcjs.assertUnreachable.call(void 0, runConfig.runnerKind);
4313
4636
  }
4314
4637
  router.notFound(handleRouteNotFound);
4315
4638
  router.onError(handleRouteError);
@@ -4376,13 +4699,13 @@ function addServerlessRoutes(driverConfig, registryConfig, runConfig, managerDri
4376
4699
  }
4377
4700
  function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4378
4701
  var _a;
4379
- if (_chunkQC4AE54Wcjs.isInspectorEnabled.call(void 0, runConfig, "manager")) {
4702
+ if (_chunkVQRYS6VWcjs.isInspectorEnabled.call(void 0, runConfig, "manager")) {
4380
4703
  if (!managerDriver.inspector) {
4381
4704
  throw new (0, _chunkXJMYGATEcjs.Unsupported)("inspector");
4382
4705
  }
4383
4706
  router.route(
4384
4707
  "/inspect",
4385
- new (0, _hono.Hono)().use(_chunkQC4AE54Wcjs.secureInspector.call(void 0, runConfig)).use((c, next) => {
4708
+ new (0, _hono.Hono)().use(_chunkVQRYS6VWcjs.secureInspector.call(void 0, runConfig)).use((c, next) => {
4386
4709
  c.set("inspector", managerDriver.inspector);
4387
4710
  return next();
4388
4711
  }).route("/", createManagerInspectorRouter())
@@ -4598,7 +4921,7 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4598
4921
  );
4599
4922
  response = { ok: output };
4600
4923
  } catch (rawErr) {
4601
- const err = _chunkF3SQLO3Xcjs.deconstructError.call(void 0, rawErr, logger6(), {}, true);
4924
+ const err = _chunkY5LN2XRHcjs.deconstructError.call(void 0, rawErr, logger6(), {}, true);
4602
4925
  response = { err };
4603
4926
  }
4604
4927
  return c.body(cbor4.encode(response));
@@ -4618,21 +4941,21 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4618
4941
  let path = "";
4619
4942
  let params;
4620
4943
  for (const protocol of protocols) {
4621
- if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ACTOR)) {
4944
+ if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ACTOR)) {
4622
4945
  actorId = decodeURIComponent(
4623
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_ACTOR.length)
4946
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_ACTOR.length)
4624
4947
  );
4625
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING)) {
4948
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING)) {
4626
4949
  encoding = protocol.substring(
4627
- _chunkDRJCTDDTcjs.WS_PROTOCOL_ENCODING.length
4950
+ _chunkM54KFQQPcjs.WS_PROTOCOL_ENCODING.length
4628
4951
  );
4629
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_TEST_PROTOCOL_PATH)) {
4952
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_TEST_PROTOCOL_PATH)) {
4630
4953
  path = decodeURIComponent(
4631
- protocol.substring(_chunkDRJCTDDTcjs.WS_TEST_PROTOCOL_PATH.length)
4954
+ protocol.substring(_chunkM54KFQQPcjs.WS_TEST_PROTOCOL_PATH.length)
4632
4955
  );
4633
- } else if (protocol.startsWith(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS)) {
4956
+ } else if (protocol.startsWith(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS)) {
4634
4957
  const paramsRaw = decodeURIComponent(
4635
- protocol.substring(_chunkDRJCTDDTcjs.WS_PROTOCOL_CONN_PARAMS.length)
4958
+ protocol.substring(_chunkM54KFQQPcjs.WS_PROTOCOL_CONN_PARAMS.length)
4636
4959
  );
4637
4960
  params = JSON.parse(paramsRaw);
4638
4961
  }
@@ -4651,10 +4974,10 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4651
4974
  params
4652
4975
  );
4653
4976
  return await createTestWebSocketProxy(clientWsPromise);
4654
- })(c, _chunkF3SQLO3Xcjs.noopNext.call(void 0, ));
4977
+ })(c, _chunkY5LN2XRHcjs.noopNext.call(void 0, ));
4655
4978
  });
4656
4979
  router.all(".test/inline-driver/send-request/*", async (c) => {
4657
- const actorId = c.req.header(_chunkDRJCTDDTcjs.HEADER_ACTOR_ID);
4980
+ const actorId = c.req.header(_chunkM54KFQQPcjs.HEADER_ACTOR_ID);
4658
4981
  if (!actorId) {
4659
4982
  return c.text("Missing required headers", 400);
4660
4983
  }
@@ -4681,9 +5004,9 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4681
5004
  } catch (error) {
4682
5005
  logger6().error({
4683
5006
  msg: "error in test inline raw http",
4684
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, error)
5007
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, error)
4685
5008
  });
4686
- const err = _chunkF3SQLO3Xcjs.deconstructError.call(void 0, error, logger6(), {}, true);
5009
+ const err = _chunkY5LN2XRHcjs.deconstructError.call(void 0, error, logger6(), {}, true);
4687
5010
  return c.json(
4688
5011
  {
4689
5012
  error: {
@@ -4728,7 +5051,7 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
4728
5051
  } catch (error) {
4729
5052
  logger6().error({
4730
5053
  msg: "error forcing disconnect",
4731
- error: _chunkF3SQLO3Xcjs.stringifyError.call(void 0, error)
5054
+ error: _chunkY5LN2XRHcjs.stringifyError.call(void 0, error)
4732
5055
  });
4733
5056
  return c.text(`Error: ${error}`, 500);
4734
5057
  }
@@ -4749,21 +5072,21 @@ function createApiActor(actor2, runnerName = "default") {
4749
5072
  return {
4750
5073
  actor_id: actor2.actorId,
4751
5074
  name: actor2.name,
4752
- key: _chunkXNKWXMITcjs.serializeActorKey.call(void 0, actor2.key),
5075
+ key: _chunkCJLXW36Fcjs.serializeActorKey.call(void 0, actor2.key),
4753
5076
  namespace_id: "default",
4754
5077
  // Assert default namespace
4755
5078
  runner_name_selector: runnerName,
4756
5079
  create_ts: _nullishCoalesce(actor2.createTs, () => ( Date.now())),
4757
- connectable_ts: null,
4758
- destroy_ts: null,
4759
- sleep_ts: null,
4760
- start_ts: null
5080
+ connectable_ts: _nullishCoalesce(actor2.connectableTs, () => ( null)),
5081
+ destroy_ts: _nullishCoalesce(actor2.destroyTs, () => ( null)),
5082
+ sleep_ts: _nullishCoalesce(actor2.sleepTs, () => ( null)),
5083
+ start_ts: _nullishCoalesce(actor2.startTs, () => ( null))
4761
5084
  };
4762
5085
  }
4763
5086
 
4764
5087
  // src/registry/log.ts
4765
5088
  function logger7() {
4766
- return _chunkF3SQLO3Xcjs.getLogger.call(void 0, "registry");
5089
+ return _chunkY5LN2XRHcjs.getLogger.call(void 0, "registry");
4767
5090
  }
4768
5091
 
4769
5092
  // src/registry/serve.ts
@@ -4814,76 +5137,76 @@ var Registry = class {
4814
5137
  get config() {
4815
5138
  return this.#config;
4816
5139
  }
4817
- constructor(config2) {
4818
- this.#config = config2;
5140
+ constructor(config4) {
5141
+ this.#config = config4;
4819
5142
  }
4820
5143
  /**
4821
5144
  * Runs the registry for a server.
4822
5145
  */
4823
5146
  start(inputConfig) {
4824
5147
  var _a, _b, _c;
4825
- const config2 = _chunk2TZH6VO6cjs.RunnerConfigSchema.parse(inputConfig);
4826
- if (config2.autoConfigureServerless && config2.runnerKind !== "serverless") {
5148
+ const config4 = _chunkNQZ643FBcjs.RunnerConfigSchema.parse(inputConfig);
5149
+ if (config4.autoConfigureServerless && config4.runnerKind !== "serverless") {
4827
5150
  throw new Error(
4828
5151
  "autoConfigureServerless can only be configured when runnerKind is 'serverless'"
4829
5152
  );
4830
5153
  }
4831
5154
  const readyPromises = [];
4832
- if (config2.runnerKind === "serverless") {
5155
+ if (config4.runnerKind === "serverless") {
4833
5156
  logger7().debug("disabling health check since using serverless");
4834
- config2.disableMetadataLookup = true;
5157
+ config4.disableMetadataLookup = true;
4835
5158
  }
4836
- if (process.env.NODE_ENV !== "production" && config2.runnerKind === "serverless") {
4837
- if ((inputConfig == null ? void 0 : inputConfig.runEngine) === void 0) config2.runEngine = true;
5159
+ if (process.env.NODE_ENV !== "production" && config4.runnerKind === "serverless") {
5160
+ if ((inputConfig == null ? void 0 : inputConfig.runEngine) === void 0) config4.runEngine = true;
4838
5161
  if ((inputConfig == null ? void 0 : inputConfig.autoConfigureServerless) === void 0)
4839
- config2.autoConfigureServerless = true;
5162
+ config4.autoConfigureServerless = true;
4840
5163
  }
4841
- if (config2.runEngine) {
5164
+ if (config4.runEngine) {
4842
5165
  logger7().debug({
4843
5166
  msg: "run engine requested",
4844
- version: config2.runEngineVersion
5167
+ version: config4.runEngineVersion
4845
5168
  });
4846
5169
  _invariant2.default.call(void 0,
4847
- config2.endpoint === void 0,
5170
+ config4.endpoint === void 0,
4848
5171
  "cannot specify 'endpoint' with 'runEngine'"
4849
5172
  );
4850
- config2.endpoint = ENGINE_ENDPOINT;
4851
- config2.disableActorDriver = true;
5173
+ config4.endpoint = ENGINE_ENDPOINT;
5174
+ config4.disableActorDriver = true;
4852
5175
  const engineProcessPromise = ensureEngineProcess({
4853
- version: config2.runEngineVersion
5176
+ version: config4.runEngineVersion
4854
5177
  });
4855
5178
  readyPromises.push(engineProcessPromise);
4856
5179
  }
4857
- if (config2.runnerKind === "serverless") {
4858
- config2.defaultServerPort = 8080;
4859
- config2.overrideServerAddress = config2.endpoint;
4860
- config2.disableActorDriver = true;
5180
+ if (config4.runnerKind === "serverless") {
5181
+ config4.defaultServerPort = 8080;
5182
+ config4.overrideServerAddress = config4.endpoint;
5183
+ config4.disableActorDriver = true;
4861
5184
  }
4862
- if ((_a = config2.logging) == null ? void 0 : _a.baseLogger) {
4863
- _chunkF3SQLO3Xcjs.configureBaseLogger.call(void 0, config2.logging.baseLogger);
5185
+ if ((_a = config4.logging) == null ? void 0 : _a.baseLogger) {
5186
+ _chunkY5LN2XRHcjs.configureBaseLogger.call(void 0, config4.logging.baseLogger);
4864
5187
  } else {
4865
- _chunkF3SQLO3Xcjs.configureDefaultLogger.call(void 0, (_b = config2.logging) == null ? void 0 : _b.level);
5188
+ _chunkY5LN2XRHcjs.configureDefaultLogger.call(void 0, (_b = config4.logging) == null ? void 0 : _b.level);
4866
5189
  }
4867
- const driver = chooseDefaultDriver(config2);
5190
+ const driver = chooseDefaultDriver(config4);
4868
5191
  if (driver.name === "engine") {
4869
- config2.inspector.enabled = { manager: false, actor: true };
4870
- if (config2.runnerKind !== "serverless") {
4871
- config2.disableDefaultServer = true;
5192
+ config4.inspector.enabled = { manager: false, actor: true };
5193
+ if (config4.runnerKind !== "serverless") {
5194
+ config4.disableDefaultServer = true;
4872
5195
  }
4873
5196
  }
4874
5197
  if (driver.name === "cloudflare-workers") {
4875
- config2.inspector.enabled = { manager: false, actor: true };
4876
- config2.disableDefaultServer = true;
4877
- config2.disableActorDriver = true;
4878
- config2.noWelcome = true;
5198
+ config4.inspector.enabled = { manager: false, actor: true };
5199
+ config4.disableDefaultServer = true;
5200
+ config4.disableActorDriver = true;
5201
+ config4.noWelcome = true;
4879
5202
  }
4880
5203
  let upgradeWebSocket;
4881
- if (!config2.getUpgradeWebSocket) {
4882
- config2.getUpgradeWebSocket = () => upgradeWebSocket;
5204
+ if (!config4.getUpgradeWebSocket) {
5205
+ config4.getUpgradeWebSocket = () => upgradeWebSocket;
4883
5206
  }
4884
- const managerDriver = driver.manager(this.#config, config2);
4885
- _chunkQC4AE54Wcjs.configureInspectorAccessToken.call(void 0, config2, managerDriver);
4886
- const client = _chunkXNKWXMITcjs.createClientWithDriver.call(void 0, managerDriver, config2);
5207
+ const managerDriver = driver.manager(this.#config, config4);
5208
+ _chunkVQRYS6VWcjs.configureInspectorAccessToken.call(void 0, config4, managerDriver);
5209
+ const client = _chunkCJLXW36Fcjs.createClientWithDriver.call(void 0, managerDriver, config4);
4887
5210
  const driverLog = _nullishCoalesce(((_c = managerDriver.extraStartupLog) == null ? void 0 : _c.call(managerDriver)), () => ( {}));
4888
5211
  logger7().info({
4889
5212
  msg: "rivetkit ready",
@@ -4891,59 +5214,59 @@ var Registry = class {
4891
5214
  definitions: Object.keys(this.#config.use).length,
4892
5215
  ...driverLog
4893
5216
  });
4894
- if (_chunkQC4AE54Wcjs.isInspectorEnabled.call(void 0, config2, "manager") && managerDriver.inspector) {
5217
+ if (_chunkVQRYS6VWcjs.isInspectorEnabled.call(void 0, config4, "manager") && managerDriver.inspector) {
4895
5218
  logger7().info({
4896
5219
  msg: "inspector ready",
4897
- url: _chunkQC4AE54Wcjs.getInspectorUrl.call(void 0, config2)
5220
+ url: _chunkVQRYS6VWcjs.getInspectorUrl.call(void 0, config4)
4898
5221
  });
4899
5222
  }
4900
- if (!config2.noWelcome) {
5223
+ if (!config4.noWelcome) {
4901
5224
  const displayInfo = managerDriver.displayInformation();
4902
5225
  console.log();
4903
- console.log(` RivetKit ${_chunkF3SQLO3Xcjs.package_default.version} (${displayInfo.name})`);
4904
- if (!config2.disableDefaultServer) {
4905
- console.log(` - Endpoint: ${_chunkXNKWXMITcjs.getEndpoint.call(void 0, config2)}`);
4906
- } else if (config2.overrideServerAddress) {
5226
+ console.log(` RivetKit ${_chunkY5LN2XRHcjs.package_default.version} (${displayInfo.name})`);
5227
+ if (!config4.disableDefaultServer) {
5228
+ console.log(` - Endpoint: ${_chunkCJLXW36Fcjs.getEndpoint.call(void 0, config4)}`);
5229
+ } else if (config4.overrideServerAddress) {
4907
5230
  console.log(
4908
- ` - Endpoint: ${config2.overrideServerAddress}`
5231
+ ` - Endpoint: ${config4.overrideServerAddress}`
4909
5232
  );
4910
5233
  }
4911
- if (config2.runEngine) {
5234
+ if (config4.runEngine) {
4912
5235
  const padding = " ".repeat(Math.max(0, 13 - "Engine".length));
4913
- console.log(` - Engine:${padding}v${config2.runEngineVersion}`);
5236
+ console.log(` - Engine:${padding}v${config4.runEngineVersion}`);
4914
5237
  }
4915
5238
  for (const [k, v] of Object.entries(displayInfo.properties)) {
4916
5239
  const padding = " ".repeat(Math.max(0, 13 - k.length));
4917
5240
  console.log(` - ${k}:${padding}${v}`);
4918
5241
  }
4919
- if (_chunkQC4AE54Wcjs.isInspectorEnabled.call(void 0, config2, "manager") && managerDriver.inspector) {
4920
- console.log(` - Inspector: ${_chunkQC4AE54Wcjs.getInspectorUrl.call(void 0, config2)}`);
5242
+ if (_chunkVQRYS6VWcjs.isInspectorEnabled.call(void 0, config4, "manager") && managerDriver.inspector) {
5243
+ console.log(` - Inspector: ${_chunkVQRYS6VWcjs.getInspectorUrl.call(void 0, config4)}`);
4921
5244
  }
4922
5245
  console.log();
4923
5246
  }
4924
5247
  const { router: hono } = createManagerRouter(
4925
5248
  this.#config,
4926
- config2,
5249
+ config4,
4927
5250
  managerDriver,
4928
5251
  driver,
4929
5252
  client
4930
5253
  );
4931
- if (!config2.disableDefaultServer) {
5254
+ if (!config4.disableDefaultServer) {
4932
5255
  const serverPromise = (async () => {
4933
- const out = await crossPlatformServe(config2, hono);
5256
+ const out = await crossPlatformServe(config4, hono);
4934
5257
  upgradeWebSocket = out.upgradeWebSocket;
4935
5258
  })();
4936
5259
  readyPromises.push(serverPromise);
4937
5260
  }
4938
- if (!config2.disableActorDriver) {
5261
+ if (!config4.disableActorDriver) {
4939
5262
  Promise.all(readyPromises).then(async () => {
4940
5263
  logger7().debug("starting actor driver");
4941
- driver.actor(this.#config, config2, managerDriver, client);
5264
+ driver.actor(this.#config, config4, managerDriver, client);
4942
5265
  });
4943
5266
  }
4944
- if (config2.runnerKind === "serverless" && config2.autoConfigureServerless) {
5267
+ if (config4.runnerKind === "serverless" && config4.autoConfigureServerless) {
4945
5268
  Promise.all(readyPromises).then(async () => {
4946
- await configureServerlessRunner(config2);
5269
+ await configureServerlessRunner(config4);
4947
5270
  });
4948
5271
  }
4949
5272
  return {
@@ -4952,67 +5275,67 @@ var Registry = class {
4952
5275
  };
4953
5276
  }
4954
5277
  };
4955
- async function configureServerlessRunner(config2) {
5278
+ async function configureServerlessRunner(config4) {
4956
5279
  logger7().debug("configuring serverless runner");
4957
5280
  try {
4958
- if (!config2.runnerName) {
5281
+ if (!config4.runnerName) {
4959
5282
  throw new Error(
4960
5283
  "runnerName is required for serverless configuration"
4961
5284
  );
4962
5285
  }
4963
- if (!config2.namespace) {
5286
+ if (!config4.namespace) {
4964
5287
  throw new Error(
4965
5288
  "namespace is required for serverless configuration"
4966
5289
  );
4967
5290
  }
4968
- if (!config2.endpoint) {
5291
+ if (!config4.endpoint) {
4969
5292
  throw new Error(
4970
5293
  "endpoint is required for serverless configuration"
4971
5294
  );
4972
5295
  }
4973
- const customConfig = typeof config2.autoConfigureServerless === "object" ? config2.autoConfigureServerless : {};
5296
+ const customConfig = typeof config4.autoConfigureServerless === "object" ? config4.autoConfigureServerless : {};
4974
5297
  const clientConfig = {
4975
- endpoint: config2.endpoint,
4976
- token: config2.token,
4977
- namespace: config2.namespace,
4978
- runnerName: config2.runnerName,
4979
- encoding: config2.encoding,
4980
- headers: config2.headers,
4981
- getUpgradeWebSocket: config2.getUpgradeWebSocket,
5298
+ endpoint: config4.endpoint,
5299
+ token: config4.token,
5300
+ namespace: config4.namespace,
5301
+ runnerName: config4.runnerName,
5302
+ encoding: config4.encoding,
5303
+ headers: config4.headers,
5304
+ getUpgradeWebSocket: config4.getUpgradeWebSocket,
4982
5305
  disableMetadataLookup: true
4983
5306
  // We don't need health check for this operation
4984
5307
  };
4985
5308
  logger7().debug({
4986
5309
  msg: "fetching datacenters",
4987
- endpoint: config2.endpoint
5310
+ endpoint: config4.endpoint
4988
5311
  });
4989
- const dcsRes = await _chunkXNKWXMITcjs.getDatacenters.call(void 0, clientConfig);
5312
+ const dcsRes = await _chunkCJLXW36Fcjs.getDatacenters.call(void 0, clientConfig);
4990
5313
  logger7().debug({
4991
5314
  msg: "configuring serverless runner",
4992
- runnerName: config2.runnerName,
4993
- namespace: config2.namespace
5315
+ runnerName: config4.runnerName,
5316
+ namespace: config4.namespace
4994
5317
  });
4995
5318
  const serverlessConfig = {
4996
5319
  serverless: {
4997
- url: customConfig.url || `http://localhost:${config2.defaultServerPort}`,
5320
+ url: customConfig.url || `http://localhost:${config4.defaultServerPort}`,
4998
5321
  headers: customConfig.headers || {},
4999
5322
  max_runners: _nullishCoalesce(customConfig.maxRunners, () => ( 100)),
5000
5323
  min_runners: _nullishCoalesce(customConfig.minRunners, () => ( 0)),
5001
5324
  request_lifespan: _nullishCoalesce(customConfig.requestLifespan, () => ( 15 * 60)),
5002
5325
  runners_margin: _nullishCoalesce(customConfig.runnersMargin, () => ( 0)),
5003
- slots_per_runner: _nullishCoalesce(_nullishCoalesce(customConfig.slotsPerRunner, () => ( config2.totalSlots)), () => ( 1e3))
5326
+ slots_per_runner: _nullishCoalesce(_nullishCoalesce(customConfig.slotsPerRunner, () => ( config4.totalSlots)), () => ( 1e3))
5004
5327
  },
5005
5328
  metadata: _nullishCoalesce(customConfig.metadata, () => ( {}))
5006
5329
  };
5007
- await _chunkXNKWXMITcjs.updateRunnerConfig.call(void 0, clientConfig, config2.runnerName, {
5330
+ await _chunkCJLXW36Fcjs.updateRunnerConfig.call(void 0, clientConfig, config4.runnerName, {
5008
5331
  datacenters: Object.fromEntries(
5009
5332
  dcsRes.datacenters.map((dc) => [dc.name, serverlessConfig])
5010
5333
  )
5011
5334
  });
5012
5335
  logger7().info({
5013
5336
  msg: "serverless runner configured successfully",
5014
- runnerName: config2.runnerName,
5015
- namespace: config2.namespace
5337
+ runnerName: config4.runnerName,
5338
+ namespace: config4.namespace
5016
5339
  });
5017
5340
  } catch (error) {
5018
5341
  logger7().error({
@@ -5022,8 +5345,8 @@ async function configureServerlessRunner(config2) {
5022
5345
  }
5023
5346
  }
5024
5347
  function setup(input) {
5025
- const config2 = RegistryConfigSchema.parse(input);
5026
- return new Registry(config2);
5348
+ const config4 = RegistryConfigSchema.parse(input);
5349
+ return new Registry(config4);
5027
5350
  }
5028
5351
 
5029
5352
 
@@ -5041,4 +5364,4 @@ function setup(input) {
5041
5364
 
5042
5365
  exports.RegistryConfigSchema = RegistryConfigSchema; exports.routeWebSocket = routeWebSocket; exports.createActorRouter = createActorRouter; exports.actor = actor; exports.InlineWebSocketAdapter = InlineWebSocketAdapter; exports.createEngineDriver = createEngineDriver; exports.createFileSystemOrMemoryDriver = createFileSystemOrMemoryDriver; exports.createFileSystemDriver = createFileSystemDriver; exports.createMemoryDriver = createMemoryDriver; exports.createManagerRouter = createManagerRouter; exports.Registry = Registry; exports.setup = setup;
5043
5366
  //! These configs configs hold anything that's not platform-specific about running actors.
5044
- //# sourceMappingURL=chunk-4GJQDTAG.cjs.map
5367
+ //# sourceMappingURL=chunk-3ZC6SBX6.cjs.map