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
@@ -6,7 +6,7 @@
6
6
 
7
7
 
8
8
 
9
- var _chunkQC4AE54Wcjs = require('../chunk-QC4AE54W.cjs');
9
+ var _chunkVQRYS6VWcjs = require('../chunk-VQRYS6VW.cjs');
10
10
 
11
11
 
12
12
 
@@ -27,9 +27,9 @@ var _chunkQC4AE54Wcjs = require('../chunk-QC4AE54W.cjs');
27
27
 
28
28
 
29
29
 
30
- var _chunkLZADH4QAcjs = require('../chunk-LZADH4QA.cjs');
31
- require('../chunk-DRJCTDDT.cjs');
32
- require('../chunk-F3SQLO3X.cjs');
30
+ var _chunkNR2N4UA2cjs = require('../chunk-NR2N4UA2.cjs');
31
+ require('../chunk-M54KFQQP.cjs');
32
+ require('../chunk-Y5LN2XRH.cjs');
33
33
  require('../chunk-XJMYGATE.cjs');
34
34
 
35
35
 
@@ -58,5 +58,5 @@ require('../chunk-XJMYGATE.cjs');
58
58
 
59
59
 
60
60
 
61
- exports.ActorFeature = _chunkLZADH4QAcjs.ActorFeature; exports.ActorId = _chunkLZADH4QAcjs.ActorId; exports.ActorLogEntry = _chunkLZADH4QAcjs.ActorLogEntry; exports.ActorSchema = _chunkLZADH4QAcjs.ActorSchema; exports.BuildSchema = _chunkLZADH4QAcjs.BuildSchema; exports.BuildsSchema = _chunkLZADH4QAcjs.BuildsSchema; exports.ColumnSchema = _chunkLZADH4QAcjs.ColumnSchema; exports.ColumnsSchema = _chunkLZADH4QAcjs.ColumnsSchema; exports.ConnectionSchema = _chunkLZADH4QAcjs.ConnectionSchema; exports.CreateActorSchema = _chunkLZADH4QAcjs.CreateActorSchema; exports.DatabaseQuerySchema = _chunkLZADH4QAcjs.DatabaseQuerySchema; exports.ForeignKeySchema = _chunkLZADH4QAcjs.ForeignKeySchema; exports.ForeignKeysSchema = _chunkLZADH4QAcjs.ForeignKeysSchema; exports.OperationSchema = _chunkLZADH4QAcjs.OperationSchema; exports.PatchSchema = _chunkLZADH4QAcjs.PatchSchema; exports.RealtimeEventSchema = _chunkLZADH4QAcjs.RealtimeEventSchema; exports.RecordedRealtimeEventSchema = _chunkLZADH4QAcjs.RecordedRealtimeEventSchema; exports.TableSchema = _chunkLZADH4QAcjs.TableSchema; exports.TablesSchema = _chunkLZADH4QAcjs.TablesSchema; exports.compareSecrets = _chunkQC4AE54Wcjs.compareSecrets; exports.configureInspectorAccessToken = _chunkQC4AE54Wcjs.configureInspectorAccessToken; exports.createActorInspectorClient = _chunkQC4AE54Wcjs.createActorInspectorClient; exports.createManagerInspectorClient = _chunkQC4AE54Wcjs.createManagerInspectorClient; exports.getInspectorUrl = _chunkQC4AE54Wcjs.getInspectorUrl; exports.isInspectorEnabled = _chunkQC4AE54Wcjs.isInspectorEnabled; exports.secureInspector = _chunkQC4AE54Wcjs.secureInspector;
61
+ exports.ActorFeature = _chunkNR2N4UA2cjs.ActorFeature; exports.ActorId = _chunkNR2N4UA2cjs.ActorId; exports.ActorLogEntry = _chunkNR2N4UA2cjs.ActorLogEntry; exports.ActorSchema = _chunkNR2N4UA2cjs.ActorSchema; exports.BuildSchema = _chunkNR2N4UA2cjs.BuildSchema; exports.BuildsSchema = _chunkNR2N4UA2cjs.BuildsSchema; exports.ColumnSchema = _chunkNR2N4UA2cjs.ColumnSchema; exports.ColumnsSchema = _chunkNR2N4UA2cjs.ColumnsSchema; exports.ConnectionSchema = _chunkNR2N4UA2cjs.ConnectionSchema; exports.CreateActorSchema = _chunkNR2N4UA2cjs.CreateActorSchema; exports.DatabaseQuerySchema = _chunkNR2N4UA2cjs.DatabaseQuerySchema; exports.ForeignKeySchema = _chunkNR2N4UA2cjs.ForeignKeySchema; exports.ForeignKeysSchema = _chunkNR2N4UA2cjs.ForeignKeysSchema; exports.OperationSchema = _chunkNR2N4UA2cjs.OperationSchema; exports.PatchSchema = _chunkNR2N4UA2cjs.PatchSchema; exports.RealtimeEventSchema = _chunkNR2N4UA2cjs.RealtimeEventSchema; exports.RecordedRealtimeEventSchema = _chunkNR2N4UA2cjs.RecordedRealtimeEventSchema; exports.TableSchema = _chunkNR2N4UA2cjs.TableSchema; exports.TablesSchema = _chunkNR2N4UA2cjs.TablesSchema; exports.compareSecrets = _chunkVQRYS6VWcjs.compareSecrets; exports.configureInspectorAccessToken = _chunkVQRYS6VWcjs.configureInspectorAccessToken; exports.createActorInspectorClient = _chunkVQRYS6VWcjs.createActorInspectorClient; exports.createManagerInspectorClient = _chunkVQRYS6VWcjs.createManagerInspectorClient; exports.getInspectorUrl = _chunkVQRYS6VWcjs.getInspectorUrl; exports.isInspectorEnabled = _chunkVQRYS6VWcjs.isInspectorEnabled; exports.secureInspector = _chunkVQRYS6VWcjs.secureInspector;
62
62
  //# sourceMappingURL=mod.cjs.map
@@ -1,16 +1,17 @@
1
- import { ao as ActorFeature, R as RunnerConfig, K as RunnerConfigInput, al as ManagerDriver } from '../config-BRDYDraU.cjs';
2
- export { as as Actor, ap as ActorId, aq as ActorLogEntry, ar as ActorSchema, aS as Build, aR as BuildSchema, aU as Builds, aT as BuildsSchema, aK as Column, aJ as ColumnSchema, aM as Columns, aL as ColumnsSchema, ay as Connection, ax as ConnectionSchema, aW as CreateActor, aV as CreateActorSchema, aE as DatabaseQuery, aD as DatabaseQuerySchema, aO as ForeignKey, aN as ForeignKeySchema, aQ as ForeignKeys, aP as ForeignKeysSchema, au as Operation, at as OperationSchema, aw as Patch, av as PatchSchema, aA as RealtimeEvent, az as RealtimeEventSchema, aC as RecordedRealtimeEvent, aB as RecordedRealtimeEventSchema, aG as Table, aF as TableSchema, aI as Tables, aH as TablesSchema } from '../config-BRDYDraU.cjs';
1
+ import { ao as ActorFeature, R as RunnerConfig, K as RunnerConfigInput, al as ManagerDriver } from '../config-DxlmiJS1.cjs';
2
+ export { as as Actor, ap as ActorId, aq as ActorLogEntry, ar as ActorSchema, aS as Build, aR as BuildSchema, aU as Builds, aT as BuildsSchema, aK as Column, aJ as ColumnSchema, aM as Columns, aL as ColumnsSchema, ay as Connection, ax as ConnectionSchema, aW as CreateActor, aV as CreateActorSchema, aE as DatabaseQuery, aD as DatabaseQuerySchema, aO as ForeignKey, aN as ForeignKeySchema, aQ as ForeignKeys, aP as ForeignKeysSchema, au as Operation, at as OperationSchema, aw as Patch, av as PatchSchema, aA as RealtimeEvent, az as RealtimeEventSchema, aC as RecordedRealtimeEvent, aB as RecordedRealtimeEventSchema, aG as Table, aF as TableSchema, aI as Tables, aH as TablesSchema } from '../config-DxlmiJS1.cjs';
3
3
  import * as hono_utils_http_status from 'hono/utils/http-status';
4
4
  import * as hono_utils_types from 'hono/utils/types';
5
5
  import * as hono_client from 'hono/client';
6
6
  import { hc } from 'hono/client';
7
- import * as z from 'zod/v4';
7
+ import * as z from 'zod';
8
8
  import * as hono from 'hono';
9
- import 'zod';
10
9
  import 'pino';
11
10
  import '../utils.cjs';
12
11
  import '../utils-fwx3o3K9.cjs';
12
+ import 'vbare';
13
13
  import 'nanoevents';
14
+ import 'zod/v4';
14
15
 
15
16
  declare const client$1: {
16
17
  ping: hono_client.ClientRequest<{
@@ -1,16 +1,17 @@
1
- import { ao as ActorFeature, R as RunnerConfig, K as RunnerConfigInput, al as ManagerDriver } from '../config-Bo-blHpJ.js';
2
- export { as as Actor, ap as ActorId, aq as ActorLogEntry, ar as ActorSchema, aS as Build, aR as BuildSchema, aU as Builds, aT as BuildsSchema, aK as Column, aJ as ColumnSchema, aM as Columns, aL as ColumnsSchema, ay as Connection, ax as ConnectionSchema, aW as CreateActor, aV as CreateActorSchema, aE as DatabaseQuery, aD as DatabaseQuerySchema, aO as ForeignKey, aN as ForeignKeySchema, aQ as ForeignKeys, aP as ForeignKeysSchema, au as Operation, at as OperationSchema, aw as Patch, av as PatchSchema, aA as RealtimeEvent, az as RealtimeEventSchema, aC as RecordedRealtimeEvent, aB as RecordedRealtimeEventSchema, aG as Table, aF as TableSchema, aI as Tables, aH as TablesSchema } from '../config-Bo-blHpJ.js';
1
+ import { ao as ActorFeature, R as RunnerConfig, K as RunnerConfigInput, al as ManagerDriver } from '../config-CcMdKDv9.js';
2
+ export { as as Actor, ap as ActorId, aq as ActorLogEntry, ar as ActorSchema, aS as Build, aR as BuildSchema, aU as Builds, aT as BuildsSchema, aK as Column, aJ as ColumnSchema, aM as Columns, aL as ColumnsSchema, ay as Connection, ax as ConnectionSchema, aW as CreateActor, aV as CreateActorSchema, aE as DatabaseQuery, aD as DatabaseQuerySchema, aO as ForeignKey, aN as ForeignKeySchema, aQ as ForeignKeys, aP as ForeignKeysSchema, au as Operation, at as OperationSchema, aw as Patch, av as PatchSchema, aA as RealtimeEvent, az as RealtimeEventSchema, aC as RecordedRealtimeEvent, aB as RecordedRealtimeEventSchema, aG as Table, aF as TableSchema, aI as Tables, aH as TablesSchema } from '../config-CcMdKDv9.js';
3
3
  import * as hono_utils_http_status from 'hono/utils/http-status';
4
4
  import * as hono_utils_types from 'hono/utils/types';
5
5
  import * as hono_client from 'hono/client';
6
6
  import { hc } from 'hono/client';
7
- import * as z from 'zod/v4';
7
+ import * as z from 'zod';
8
8
  import * as hono from 'hono';
9
- import 'zod';
10
9
  import 'pino';
11
10
  import '../utils.js';
12
11
  import '../utils-fwx3o3K9.js';
12
+ import 'vbare';
13
13
  import 'nanoevents';
14
+ import 'zod/v4';
14
15
 
15
16
  declare const client$1: {
16
17
  ping: hono_client.ClientRequest<{
@@ -6,7 +6,7 @@ import {
6
6
  getInspectorUrl,
7
7
  isInspectorEnabled,
8
8
  secureInspector
9
- } from "../chunk-2NNICHGY.js";
9
+ } from "../chunk-ILK4JEMF.js";
10
10
  import {
11
11
  ActorFeature,
12
12
  ActorId,
@@ -27,9 +27,9 @@ import {
27
27
  RecordedRealtimeEventSchema,
28
28
  TableSchema,
29
29
  TablesSchema
30
- } from "../chunk-6F2NCX7R.js";
31
- import "../chunk-C3UREFUI.js";
32
- import "../chunk-KSQQU7NC.js";
30
+ } from "../chunk-AE7BB3M2.js";
31
+ import "../chunk-EJXISR3H.js";
32
+ import "../chunk-S5URQ3CI.js";
33
33
  import "../chunk-LQOCWGP6.js";
34
34
  export {
35
35
  ActorFeature,
package/dist/tsup/mod.cjs CHANGED
@@ -9,24 +9,24 @@
9
9
 
10
10
 
11
11
 
12
- var _chunk4GJQDTAGcjs = require('./chunk-4GJQDTAG.cjs');
13
- require('./chunk-QC4AE54W.cjs');
12
+ var _chunk3ZC6SBX6cjs = require('./chunk-3ZC6SBX6.cjs');
13
+ require('./chunk-VQRYS6VW.cjs');
14
14
 
15
15
 
16
16
 
17
- var _chunkXNKWXMITcjs = require('./chunk-XNKWXMIT.cjs');
18
- require('./chunk-LZADH4QA.cjs');
19
- require('./chunk-TJ2PJ5C7.cjs');
20
- require('./chunk-2TZH6VO6.cjs');
17
+ var _chunkCJLXW36Fcjs = require('./chunk-CJLXW36F.cjs');
18
+ require('./chunk-NR2N4UA2.cjs');
19
+ require('./chunk-Y2AKEZRY.cjs');
20
+ require('./chunk-NQZ643FB.cjs');
21
21
 
22
22
 
23
23
 
24
24
 
25
- var _chunkDRJCTDDTcjs = require('./chunk-DRJCTDDT.cjs');
25
+ var _chunkM54KFQQPcjs = require('./chunk-M54KFQQP.cjs');
26
26
 
27
27
 
28
28
 
29
- var _chunkF3SQLO3Xcjs = require('./chunk-F3SQLO3X.cjs');
29
+ var _chunkY5LN2XRHcjs = require('./chunk-Y5LN2XRH.cjs');
30
30
 
31
31
 
32
32
  var _chunkXJMYGATEcjs = require('./chunk-XJMYGATE.cjs');
@@ -49,5 +49,5 @@ var _chunkXJMYGATEcjs = require('./chunk-XJMYGATE.cjs');
49
49
 
50
50
 
51
51
 
52
- exports.ALLOWED_PUBLIC_HEADERS = _chunkDRJCTDDTcjs.ALLOWED_PUBLIC_HEADERS; exports.InlineWebSocketAdapter = _chunk4GJQDTAGcjs.InlineWebSocketAdapter; exports.PATH_CONNECT = _chunkDRJCTDDTcjs.PATH_CONNECT; exports.PATH_WEBSOCKET_PREFIX = _chunkDRJCTDDTcjs.PATH_WEBSOCKET_PREFIX; exports.Registry = _chunk4GJQDTAGcjs.Registry; exports.RegistryConfigSchema = _chunk4GJQDTAGcjs.RegistryConfigSchema; exports.UserError = _chunkXJMYGATEcjs.UserError; exports.actor = _chunk4GJQDTAGcjs.actor; exports.createActorRouter = _chunk4GJQDTAGcjs.createActorRouter; exports.createClientWithDriver = _chunkXNKWXMITcjs.createClientWithDriver; exports.createEngineDriver = _chunk4GJQDTAGcjs.createEngineDriver; exports.createFileSystemDriver = _chunk4GJQDTAGcjs.createFileSystemDriver; exports.createMemoryDriver = _chunk4GJQDTAGcjs.createMemoryDriver; exports.lookupInRegistry = _chunkXNKWXMITcjs.lookupInRegistry; exports.noopNext = _chunkF3SQLO3Xcjs.noopNext; exports.routeWebSocket = _chunk4GJQDTAGcjs.routeWebSocket; exports.setup = _chunk4GJQDTAGcjs.setup; exports.toUint8Array = _chunkF3SQLO3Xcjs.toUint8Array;
52
+ exports.ALLOWED_PUBLIC_HEADERS = _chunkM54KFQQPcjs.ALLOWED_PUBLIC_HEADERS; exports.InlineWebSocketAdapter = _chunk3ZC6SBX6cjs.InlineWebSocketAdapter; exports.PATH_CONNECT = _chunkM54KFQQPcjs.PATH_CONNECT; exports.PATH_WEBSOCKET_PREFIX = _chunkM54KFQQPcjs.PATH_WEBSOCKET_PREFIX; exports.Registry = _chunk3ZC6SBX6cjs.Registry; exports.RegistryConfigSchema = _chunk3ZC6SBX6cjs.RegistryConfigSchema; exports.UserError = _chunkXJMYGATEcjs.UserError; exports.actor = _chunk3ZC6SBX6cjs.actor; exports.createActorRouter = _chunk3ZC6SBX6cjs.createActorRouter; exports.createClientWithDriver = _chunkCJLXW36Fcjs.createClientWithDriver; exports.createEngineDriver = _chunk3ZC6SBX6cjs.createEngineDriver; exports.createFileSystemDriver = _chunk3ZC6SBX6cjs.createFileSystemDriver; exports.createMemoryDriver = _chunk3ZC6SBX6cjs.createMemoryDriver; exports.lookupInRegistry = _chunkCJLXW36Fcjs.lookupInRegistry; exports.noopNext = _chunkY5LN2XRHcjs.noopNext; exports.routeWebSocket = _chunk3ZC6SBX6cjs.routeWebSocket; exports.setup = _chunk3ZC6SBX6cjs.setup; exports.toUint8Array = _chunkY5LN2XRHcjs.toUint8Array;
53
53
  //# sourceMappingURL=mod.cjs.map
@@ -1,5 +1,5 @@
1
- import { R as RunnerConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition, U as UniversalWebSocket, g as RivetEvent, h as RivetCloseEvent, i as RivetMessageEvent, D as DriverConfig } from './config-BRDYDraU.cjs';
2
- export { o as ActionContext, u as ActionContextOf, F as ActorConfig, z as ActorConfigSchema, p as ActorContext, v as ActorContextOf, m as ActorKey, l as ActorQuery, y as ActorTypes, w as AnyActorDefinition, j as AnyClient, B as AuthIntent, C as Client, n as Conn, q as ConnInitContext, r as CreateConnStateContext, I as InitContext, O as OnBeforeConnectContext, s as OnConnectContext, M as Registry, J as RegistryActors, H as RegistryConfig, L as RegistryConfigSchema, t as RequestContext, K as RunConfigInput, S as ServerlessActorDriverBuilder, W as WebSocketContext, k as createClientWithDriver, x as lookupInRegistry, N as setup, G as test } from './config-BRDYDraU.cjs';
1
+ import { R as RunnerConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition, U as UniversalWebSocket, g as RivetEvent, h as RivetCloseEvent, i as RivetMessageEvent, D as DriverConfig } from './config-DxlmiJS1.cjs';
2
+ export { o as ActionContext, u as ActionContextOf, F as ActorConfig, z as ActorConfigSchema, p as ActorContext, v as ActorContextOf, m as ActorKey, l as ActorQuery, y as ActorTypes, w as AnyActorDefinition, j as AnyClient, B as AuthIntent, C as Client, n as Conn, q as ConnInitContext, r as CreateConnStateContext, I as InitContext, O as OnBeforeConnectContext, s as OnConnectContext, M as Registry, J as RegistryActors, H as RegistryConfig, L as RegistryConfigSchema, t as RequestContext, K as RunConfigInput, S as ServerlessActorDriverBuilder, W as WebSocketContext, k as createClientWithDriver, x as lookupInRegistry, N as setup, G as test } from './config-DxlmiJS1.cjs';
3
3
  import { WSContext } from 'hono/ws';
4
4
  export { n as noopNext } from './utils-fwx3o3K9.cjs';
5
5
  export { toUint8Array } from './utils.cjs';
@@ -8,6 +8,7 @@ export { UserError, UserErrorOptions } from './actor/errors.cjs';
8
8
  import { Hono } from 'hono';
9
9
  import 'zod';
10
10
  import 'pino';
11
+ import 'vbare';
11
12
  import 'nanoevents';
12
13
  import 'zod/v4';
13
14
  import 'hono/utils/http-status';
@@ -1,5 +1,5 @@
1
- import { R as RunnerConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition, U as UniversalWebSocket, g as RivetEvent, h as RivetCloseEvent, i as RivetMessageEvent, D as DriverConfig } from './config-Bo-blHpJ.js';
2
- export { o as ActionContext, u as ActionContextOf, F as ActorConfig, z as ActorConfigSchema, p as ActorContext, v as ActorContextOf, m as ActorKey, l as ActorQuery, y as ActorTypes, w as AnyActorDefinition, j as AnyClient, B as AuthIntent, C as Client, n as Conn, q as ConnInitContext, r as CreateConnStateContext, I as InitContext, O as OnBeforeConnectContext, s as OnConnectContext, M as Registry, J as RegistryActors, H as RegistryConfig, L as RegistryConfigSchema, t as RequestContext, K as RunConfigInput, S as ServerlessActorDriverBuilder, W as WebSocketContext, k as createClientWithDriver, x as lookupInRegistry, N as setup, G as test } from './config-Bo-blHpJ.js';
1
+ import { R as RunnerConfig, A as ActorDriver, a as AnyConn, b as AnyActorInstance, E as Encoding, c as AnyDatabaseProvider, d as Actions, e as ActorConfigInput, f as ActorDefinition, U as UniversalWebSocket, g as RivetEvent, h as RivetCloseEvent, i as RivetMessageEvent, D as DriverConfig } from './config-CcMdKDv9.js';
2
+ export { o as ActionContext, u as ActionContextOf, F as ActorConfig, z as ActorConfigSchema, p as ActorContext, v as ActorContextOf, m as ActorKey, l as ActorQuery, y as ActorTypes, w as AnyActorDefinition, j as AnyClient, B as AuthIntent, C as Client, n as Conn, q as ConnInitContext, r as CreateConnStateContext, I as InitContext, O as OnBeforeConnectContext, s as OnConnectContext, M as Registry, J as RegistryActors, H as RegistryConfig, L as RegistryConfigSchema, t as RequestContext, K as RunConfigInput, S as ServerlessActorDriverBuilder, W as WebSocketContext, k as createClientWithDriver, x as lookupInRegistry, N as setup, G as test } from './config-CcMdKDv9.js';
3
3
  import { WSContext } from 'hono/ws';
4
4
  export { n as noopNext } from './utils-fwx3o3K9.js';
5
5
  export { toUint8Array } from './utils.js';
@@ -8,6 +8,7 @@ export { UserError, UserErrorOptions } from './actor/errors.js';
8
8
  import { Hono } from 'hono';
9
9
  import 'zod';
10
10
  import 'pino';
11
+ import 'vbare';
11
12
  import 'nanoevents';
12
13
  import 'zod/v4';
13
14
  import 'hono/utils/http-status';
package/dist/tsup/mod.js CHANGED
@@ -9,24 +9,24 @@ import {
9
9
  createMemoryDriver,
10
10
  routeWebSocket,
11
11
  setup
12
- } from "./chunk-XU4GGB6J.js";
13
- import "./chunk-2NNICHGY.js";
12
+ } from "./chunk-AHPMXTSB.js";
13
+ import "./chunk-ILK4JEMF.js";
14
14
  import {
15
15
  createClientWithDriver,
16
16
  lookupInRegistry
17
- } from "./chunk-BBTOBXEO.js";
18
- import "./chunk-6F2NCX7R.js";
19
- import "./chunk-D7A47BVR.js";
20
- import "./chunk-5YDKTW6Y.js";
17
+ } from "./chunk-KXSSOVFA.js";
18
+ import "./chunk-AE7BB3M2.js";
19
+ import "./chunk-7IAEY5UZ.js";
20
+ import "./chunk-DATRTJVZ.js";
21
21
  import {
22
22
  ALLOWED_PUBLIC_HEADERS,
23
23
  PATH_CONNECT,
24
24
  PATH_WEBSOCKET_PREFIX
25
- } from "./chunk-C3UREFUI.js";
25
+ } from "./chunk-EJXISR3H.js";
26
26
  import {
27
27
  noopNext,
28
28
  toUint8Array
29
- } from "./chunk-KSQQU7NC.js";
29
+ } from "./chunk-S5URQ3CI.js";
30
30
  import {
31
31
  UserError
32
32
  } from "./chunk-LQOCWGP6.js";
@@ -1,18 +1,19 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkFYZLEH57cjs = require('../chunk-FYZLEH57.cjs');
5
- require('../chunk-4GJQDTAG.cjs');
6
- require('../chunk-QC4AE54W.cjs');
7
- require('../chunk-XNKWXMIT.cjs');
8
- require('../chunk-LZADH4QA.cjs');
9
- require('../chunk-TJ2PJ5C7.cjs');
10
- require('../chunk-2TZH6VO6.cjs');
11
- require('../chunk-DRJCTDDT.cjs');
12
- require('../chunk-F3SQLO3X.cjs');
4
+ var _chunkJALGQWHWcjs = require('../chunk-JALGQWHW.cjs');
5
+ require('../chunk-3ZC6SBX6.cjs');
6
+ require('../chunk-VQRYS6VW.cjs');
7
+ require('../chunk-YW2E3UPH.cjs');
8
+ require('../chunk-CJLXW36F.cjs');
9
+ require('../chunk-NR2N4UA2.cjs');
10
+ require('../chunk-Y2AKEZRY.cjs');
11
+ require('../chunk-NQZ643FB.cjs');
12
+ require('../chunk-M54KFQQP.cjs');
13
+ require('../chunk-Y5LN2XRH.cjs');
13
14
  require('../chunk-XJMYGATE.cjs');
14
15
 
15
16
 
16
17
 
17
- exports.getPort = _chunkFYZLEH57cjs.getPort; exports.setupTest = _chunkFYZLEH57cjs.setupTest;
18
+ exports.getPort = _chunkJALGQWHWcjs.getPort; exports.setupTest = _chunkJALGQWHWcjs.setupTest;
18
19
  //# sourceMappingURL=mod.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/test/mod.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACF,6FAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/test/mod.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/test/mod.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACF,6FAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/test/mod.cjs"}
@@ -1,21 +1,17 @@
1
1
  import { TestContext } from 'vitest';
2
- import { M as Registry, C as Client } from '../config-BRDYDraU.cjs';
2
+ import { M as Registry, C as Client } from '../config-DxlmiJS1.cjs';
3
3
  import 'zod';
4
4
  import 'hono';
5
5
  import 'pino';
6
6
  import '../utils.cjs';
7
7
  import '../utils-fwx3o3K9.cjs';
8
8
  import 'hono/utils/http-status';
9
+ import 'vbare';
9
10
  import 'nanoevents';
10
11
  import 'zod/v4';
11
12
 
12
13
  interface SetupTestResult<A extends Registry<any>> {
13
14
  client: Client<A>;
14
- mockDriver: {
15
- actorDriver: {
16
- setCreateVarsContext: (ctx: any) => void;
17
- };
18
- };
19
15
  }
20
16
  declare function setupTest<A extends Registry<any>>(c: TestContext, registry: A): Promise<SetupTestResult<A>>;
21
17
  declare function getPort(): Promise<number>;
@@ -1,21 +1,17 @@
1
1
  import { TestContext } from 'vitest';
2
- import { M as Registry, C as Client } from '../config-Bo-blHpJ.js';
2
+ import { M as Registry, C as Client } from '../config-CcMdKDv9.js';
3
3
  import 'zod';
4
4
  import 'hono';
5
5
  import 'pino';
6
6
  import '../utils.js';
7
7
  import '../utils-fwx3o3K9.js';
8
8
  import 'hono/utils/http-status';
9
+ import 'vbare';
9
10
  import 'nanoevents';
10
11
  import 'zod/v4';
11
12
 
12
13
  interface SetupTestResult<A extends Registry<any>> {
13
14
  client: Client<A>;
14
- mockDriver: {
15
- actorDriver: {
16
- setCreateVarsContext: (ctx: any) => void;
17
- };
18
- };
19
15
  }
20
16
  declare function setupTest<A extends Registry<any>>(c: TestContext, registry: A): Promise<SetupTestResult<A>>;
21
17
  declare function getPort(): Promise<number>;
@@ -1,15 +1,16 @@
1
1
  import {
2
2
  getPort,
3
3
  setupTest
4
- } from "../chunk-VRZNWBDK.js";
5
- import "../chunk-XU4GGB6J.js";
6
- import "../chunk-2NNICHGY.js";
7
- import "../chunk-BBTOBXEO.js";
8
- import "../chunk-6F2NCX7R.js";
9
- import "../chunk-D7A47BVR.js";
10
- import "../chunk-5YDKTW6Y.js";
11
- import "../chunk-C3UREFUI.js";
12
- import "../chunk-KSQQU7NC.js";
4
+ } from "../chunk-ZL3SUOIM.js";
5
+ import "../chunk-AHPMXTSB.js";
6
+ import "../chunk-ILK4JEMF.js";
7
+ import "../chunk-IDYDUETM.js";
8
+ import "../chunk-KXSSOVFA.js";
9
+ import "../chunk-AE7BB3M2.js";
10
+ import "../chunk-7IAEY5UZ.js";
11
+ import "../chunk-DATRTJVZ.js";
12
+ import "../chunk-EJXISR3H.js";
13
+ import "../chunk-S5URQ3CI.js";
13
14
  import "../chunk-LQOCWGP6.js";
14
15
  export {
15
16
  getPort,
@@ -13,7 +13,7 @@
13
13
 
14
14
 
15
15
 
16
- var _chunkF3SQLO3Xcjs = require('./chunk-F3SQLO3X.cjs');
16
+ var _chunkY5LN2XRHcjs = require('./chunk-Y5LN2XRH.cjs');
17
17
  require('./chunk-XJMYGATE.cjs');
18
18
 
19
19
 
@@ -30,5 +30,5 @@ require('./chunk-XJMYGATE.cjs');
30
30
 
31
31
 
32
32
 
33
- exports.EXTRA_ERROR_LOG = _chunkF3SQLO3Xcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunkF3SQLO3Xcjs.SinglePromiseQueue; exports.VERSION = _chunkF3SQLO3Xcjs.VERSION; exports.arrayBuffersEqual = _chunkF3SQLO3Xcjs.arrayBuffersEqual; exports.assertUnreachable = _chunkF3SQLO3Xcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkF3SQLO3Xcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunkF3SQLO3Xcjs.combineUrlPath; exports.dbg = _chunkF3SQLO3Xcjs.dbg; exports.getEnvUniversal = _chunkF3SQLO3Xcjs.getEnvUniversal; exports.httpUserAgent = _chunkF3SQLO3Xcjs.httpUserAgent; exports.promiseWithResolvers = _chunkF3SQLO3Xcjs.promiseWithResolvers; exports.setLongTimeout = _chunkF3SQLO3Xcjs.setLongTimeout; exports.stringifyError = _chunkF3SQLO3Xcjs.stringifyError; exports.toUint8Array = _chunkF3SQLO3Xcjs.toUint8Array;
33
+ exports.EXTRA_ERROR_LOG = _chunkY5LN2XRHcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunkY5LN2XRHcjs.SinglePromiseQueue; exports.VERSION = _chunkY5LN2XRHcjs.VERSION; exports.arrayBuffersEqual = _chunkY5LN2XRHcjs.arrayBuffersEqual; exports.assertUnreachable = _chunkY5LN2XRHcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkY5LN2XRHcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunkY5LN2XRHcjs.combineUrlPath; exports.dbg = _chunkY5LN2XRHcjs.dbg; exports.getEnvUniversal = _chunkY5LN2XRHcjs.getEnvUniversal; exports.httpUserAgent = _chunkY5LN2XRHcjs.httpUserAgent; exports.promiseWithResolvers = _chunkY5LN2XRHcjs.promiseWithResolvers; exports.setLongTimeout = _chunkY5LN2XRHcjs.setLongTimeout; exports.stringifyError = _chunkY5LN2XRHcjs.stringifyError; exports.toUint8Array = _chunkY5LN2XRHcjs.toUint8Array;
34
34
  //# sourceMappingURL=utils.cjs.map
@@ -13,7 +13,7 @@ import {
13
13
  setLongTimeout,
14
14
  stringifyError,
15
15
  toUint8Array
16
- } from "./chunk-KSQQU7NC.js";
16
+ } from "./chunk-S5URQ3CI.js";
17
17
  import "./chunk-LQOCWGP6.js";
18
18
  export {
19
19
  EXTRA_ERROR_LOG,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rivetkit",
3
- "version": "2.0.27",
3
+ "version": "2.0.28",
4
4
  "description": "Lightweight libraries for building stateful actors on edge platforms",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
@@ -154,7 +154,7 @@
154
154
  "dependencies": {
155
155
  "@bare-ts/lib": "~0.3.0",
156
156
  "@hono/standard-validator": "^0.1.3",
157
- "@hono/zod-openapi": "^0.19.10",
157
+ "@hono/zod-openapi": "^1.1.5",
158
158
  "@rivetkit/fast-json-patch": "^3.1.2",
159
159
  "cbor-x": "^1.6.0",
160
160
  "hono": "^4.7.0",
@@ -164,8 +164,9 @@
164
164
  "p-retry": "^6.2.1",
165
165
  "pino": "^9.5.0",
166
166
  "uuid": "^12.0.0",
167
- "zod": "^3.25.76",
168
- "@rivetkit/engine-runner": "2.0.27"
167
+ "zod": "^4.1.0",
168
+ "vbare": "^0.0.4",
169
+ "@rivetkit/engine-runner": "2.0.28"
169
170
  },
170
171
  "devDependencies": {
171
172
  "@bare-ts/tools": "^0.13.0",
@@ -184,7 +185,7 @@
184
185
  "vite-tsconfig-paths": "^5.1.4",
185
186
  "vitest": "^3.1.1",
186
187
  "ws": "^8.18.1",
187
- "zod-to-json-schema": "^3.24.6"
188
+ "zod-to-json-schema": "^3.25.0"
188
189
  },
189
190
  "peerDependencies": {
190
191
  "@hono/node-server": "^1.14.0",
@@ -209,7 +210,7 @@
209
210
  "stableVersion": "0.8.0",
210
211
  "scripts": {
211
212
  "build": "tsup src/mod.ts src/client/mod.ts src/common/log.ts src/common/websocket.ts src/actor/errors.ts src/topologies/coordinate/mod.ts src/topologies/partition/mod.ts src/utils.ts src/driver-helpers/mod.ts src/driver-test-suite/mod.ts src/test/mod.ts src/inspector/mod.ts",
212
- "build:schema": "./scripts/compile-bare.ts compile schemas/client-protocol/v1.bare -o dist/schemas/client-protocol/v1.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v2.bare -o dist/schemas/client-protocol/v2.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v1.bare -o dist/schemas/file-system-driver/v1.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v2.bare -o dist/schemas/file-system-driver/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v1.bare -o dist/schemas/actor-persist/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v2.bare -o dist/schemas/actor-persist/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v3.bare -o dist/schemas/actor-persist/v3.ts",
213
+ "build:schema": "./scripts/compile-bare.ts compile schemas/client-protocol/v1.bare -o dist/schemas/client-protocol/v1.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v2.bare -o dist/schemas/client-protocol/v2.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v1.bare -o dist/schemas/file-system-driver/v1.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v2.bare -o dist/schemas/file-system-driver/v2.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v3.bare -o dist/schemas/file-system-driver/v3.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v1.bare -o dist/schemas/actor-persist/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v2.bare -o dist/schemas/actor-persist/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v3.bare -o dist/schemas/actor-persist/v3.ts",
213
214
  "check-types": "tsc --noEmit",
214
215
  "lint": "biome check .",
215
216
  "lint:fix": "biome check --write .",
@@ -35,6 +35,10 @@ export interface ActorTypes<
35
35
  database?: TDatabase;
36
36
  }
37
37
 
38
+ // Helper for validating function types - accepts generic for specific function signatures
39
+ const zFunction = <T extends (...args: any[]) => any = (...args: unknown[]) => unknown>() =>
40
+ z.custom<T>((val) => typeof val === "function");
41
+
38
42
  // This schema is used to validate the input at runtime. The generic types are defined below in `ActorConfig`.
39
43
  //
40
44
  // We don't use Zod generics with `z.custom` because:
@@ -42,25 +46,25 @@ export interface ActorTypes<
42
46
  // (b) it makes the type definitions incredibly difficult to read as opposed to vanilla TypeScript.
43
47
  export const ActorConfigSchema = z
44
48
  .object({
45
- onCreate: z.function().optional(),
46
- onDestroy: z.function().optional(),
47
- onWake: z.function().optional(),
48
- onSleep: z.function().optional(),
49
- onStateChange: z.function().optional(),
50
- onBeforeConnect: z.function().optional(),
51
- onConnect: z.function().optional(),
52
- onDisconnect: z.function().optional(),
53
- onBeforeActionResponse: z.function().optional(),
54
- onRequest: z.function().optional(),
55
- onWebSocket: z.function().optional(),
56
- actions: z.record(z.function()).default({}),
49
+ onCreate: zFunction().optional(),
50
+ onDestroy: zFunction().optional(),
51
+ onWake: zFunction().optional(),
52
+ onSleep: zFunction().optional(),
53
+ onStateChange: zFunction().optional(),
54
+ onBeforeConnect: zFunction().optional(),
55
+ onConnect: zFunction().optional(),
56
+ onDisconnect: zFunction().optional(),
57
+ onBeforeActionResponse: zFunction().optional(),
58
+ onRequest: zFunction().optional(),
59
+ onWebSocket: zFunction().optional(),
60
+ actions: z.record(z.string(), zFunction()).default(() => ({})),
57
61
  state: z.any().optional(),
58
- createState: z.function().optional(),
62
+ createState: zFunction().optional(),
59
63
  connState: z.any().optional(),
60
- createConnState: z.function().optional(),
64
+ createConnState: zFunction().optional(),
61
65
  vars: z.any().optional(),
62
66
  db: z.any().optional(),
63
- createVars: z.function().optional(),
67
+ createVars: zFunction().optional(),
64
68
  options: z
65
69
  .object({
66
70
  createVarsTimeout: z.number().positive().default(5000),
@@ -87,15 +91,12 @@ export const ActorConfigSchema = z
87
91
  canHibernateWebSocket: z
88
92
  .union([
89
93
  z.boolean(),
90
- z
91
- .function()
92
- .args(z.custom<Request>())
93
- .returns(z.boolean()),
94
+ zFunction<(request: Request) => boolean>(),
94
95
  ])
95
96
  .default(false),
96
97
  })
97
98
  .strict()
98
- .default({}),
99
+ .prefault(() => ({})),
99
100
  })
100
101
  .strict()
101
102
  .refine(
@@ -1,6 +1,9 @@
1
1
  import * as cbor from "cbor-x";
2
2
  import type * as protocol from "@/schemas/client-protocol/mod";
3
- import { TO_CLIENT_VERSIONED } from "@/schemas/client-protocol/versioned";
3
+ import {
4
+ CURRENT_VERSION as CLIENT_PROTOCOL_CURRENT_VERSION,
5
+ TO_CLIENT_VERSIONED,
6
+ } from "@/schemas/client-protocol/versioned";
4
7
  import {
5
8
  type ToClient as ToClientJson,
6
9
  ToClientSchema,
@@ -177,6 +180,7 @@ export class Conn<S, CP, CS, V, I, DB extends AnyDatabaseProvider> {
177
180
  new CachedSerializer(
178
181
  eventData,
179
182
  TO_CLIENT_VERSIONED,
183
+ CLIENT_PROTOCOL_CURRENT_VERSION,
180
184
  ToClientSchema,
181
185
  // JSON: args is the raw value (array of arguments)
182
186
  (value): ToClientJson => ({
@@ -2,7 +2,10 @@ import { HibernatingWebSocketMetadata } from "@rivetkit/engine-runner";
2
2
  import * as cbor from "cbor-x";
3
3
  import invariant from "invariant";
4
4
  import { CONN_VERSIONED } from "@/schemas/actor-persist/versioned";
5
- import { TO_CLIENT_VERSIONED } from "@/schemas/client-protocol/versioned";
5
+ import {
6
+ CURRENT_VERSION as CLIENT_PROTOCOL_CURRENT_VERSION,
7
+ TO_CLIENT_VERSIONED,
8
+ } from "@/schemas/client-protocol/versioned";
6
9
  import { ToClientSchema } from "@/schemas/client-protocol-zod/mod";
7
10
  import { arrayBuffersEqual, stringifyError } from "@/utils";
8
11
  import type { ConnDriver } from "../conn/driver";
@@ -204,6 +207,7 @@ export class ConnectionManager<
204
207
  new CachedSerializer(
205
208
  initData,
206
209
  TO_CLIENT_VERSIONED,
210
+ CLIENT_PROTOCOL_CURRENT_VERSION,
207
211
  ToClientSchema,
208
212
  // JSON: identity conversion (no nested data to encode)
209
213
  (value) => ({
@@ -1,6 +1,9 @@
1
1
  import * as cbor from "cbor-x";
2
2
  import type * as protocol from "@/schemas/client-protocol/mod";
3
- import { TO_CLIENT_VERSIONED } from "@/schemas/client-protocol/versioned";
3
+ import {
4
+ CURRENT_VERSION as CLIENT_PROTOCOL_CURRENT_VERSION,
5
+ TO_CLIENT_VERSIONED,
6
+ } from "@/schemas/client-protocol/versioned";
4
7
  import {
5
8
  type ToClient as ToClientJson,
6
9
  ToClientSchema,
@@ -172,6 +175,7 @@ export class EventManager<S, CP, CS, V, I, DB extends AnyDatabaseProvider> {
172
175
  const toClientSerializer = new CachedSerializer(
173
176
  eventData,
174
177
  TO_CLIENT_VERSIONED,
178
+ CLIENT_PROTOCOL_CURRENT_VERSION,
175
179
  ToClientSchema,
176
180
  // JSON: args is the raw value (array of arguments)
177
181
  (value): ToClientJson => ({
@@ -4,6 +4,7 @@ import { isCborSerializable, stringifyError } from "@/common/utils";
4
4
  import {
5
5
  ACTOR_VERSIONED,
6
6
  CONN_VERSIONED,
7
+ CURRENT_VERSION as ACTOR_PERSIST_CURRENT_VERSION,
7
8
  } from "@/schemas/actor-persist/versioned";
8
9
  import { promiseWithResolvers, SinglePromiseQueue } from "@/utils";
9
10
  import { type AnyConn, CONN_STATE_MANAGER_SYMBOL } from "../conn/mod";
@@ -134,7 +135,10 @@ export class StateManager<S, CP, CS, I> {
134
135
  await this.#actorDriver.kvBatchPut(this.#actor.id, [
135
136
  [
136
137
  KEYS.PERSIST_DATA,
137
- ACTOR_VERSIONED.serializeWithEmbeddedVersion(bareData),
138
+ ACTOR_VERSIONED.serializeWithEmbeddedVersion(
139
+ bareData,
140
+ ACTOR_PERSIST_CURRENT_VERSION,
141
+ ),
138
142
  ],
139
143
  ]);
140
144
  }
@@ -256,11 +260,21 @@ export class StateManager<S, CP, CS, I> {
256
260
  this.#pendingSaveTimeout = setTimeout(() => {
257
261
  this.#pendingSaveTimeout = undefined;
258
262
  this.#pendingSaveScheduledTimestamp = undefined;
259
- this.#savePersistInner();
263
+ this.#savePersistInner().catch((error) => {
264
+ this.#actor.rLog.error({
265
+ msg: "error saving persist data in scheduled save",
266
+ error: stringifyError(error),
267
+ });
268
+ });
260
269
  }, saveDelay);
261
270
  } else {
262
271
  // Save immediately
263
- this.#savePersistInner();
272
+ this.#savePersistInner().catch((error) => {
273
+ this.#actor.rLog.error({
274
+ msg: "error saving persist data immediately",
275
+ error: stringifyError(error),
276
+ });
277
+ });
264
278
  }
265
279
  }
266
280
 
@@ -393,6 +407,7 @@ export class StateManager<S, CP, CS, I> {
393
407
  KEYS.PERSIST_DATA,
394
408
  ACTOR_VERSIONED.serializeWithEmbeddedVersion(
395
409
  bareData,
410
+ ACTOR_PERSIST_CURRENT_VERSION,
396
411
  ),
397
412
  ]);
398
413
  }
@@ -440,6 +455,7 @@ export class StateManager<S, CP, CS, I> {
440
455
  const connData =
441
456
  CONN_VERSIONED.serializeWithEmbeddedVersion(
442
457
  bareData,
458
+ ACTOR_PERSIST_CURRENT_VERSION,
443
459
  );
444
460
 
445
461
  entries.push([makeConnKey(connId), connData]);
@@ -10,6 +10,7 @@ import {
10
10
  import { deconstructError } from "@/common/utils";
11
11
  import type * as protocol from "@/schemas/client-protocol/mod";
12
12
  import {
13
+ CURRENT_VERSION as CLIENT_PROTOCOL_CURRENT_VERSION,
13
14
  TO_CLIENT_VERSIONED,
14
15
  TO_SERVER_VERSIONED,
15
16
  } from "@/schemas/client-protocol/versioned";
@@ -217,6 +218,7 @@ export async function processMessage<
217
218
  new CachedSerializer(
218
219
  output,
219
220
  TO_CLIENT_VERSIONED,
221
+ CLIENT_PROTOCOL_CURRENT_VERSION,
220
222
  ToClientSchema,
221
223
  // JSON: output is the raw value
222
224
  (value): ToClientJson => ({
@@ -298,6 +300,7 @@ export async function processMessage<
298
300
  new CachedSerializer(
299
301
  errorData,
300
302
  TO_CLIENT_VERSIONED,
303
+ CLIENT_PROTOCOL_CURRENT_VERSION,
301
304
  ToClientSchema,
302
305
  // JSON: metadata is the raw value (keep as undefined if not present)
303
306
  (value): ToClientJson => {