rivetkit 2.0.20 → 2.0.22-rc.1

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 (169) hide show
  1. package/dist/tsup/actor/errors.cjs.map +1 -1
  2. package/dist/tsup/{chunk-L3YPHXPE.js → chunk-4B25D5OW.js} +481 -100
  3. package/dist/tsup/chunk-4B25D5OW.js.map +1 -0
  4. package/dist/tsup/{chunk-G6JGHCG4.cjs → chunk-5EB77IQ2.cjs} +6 -6
  5. package/dist/tsup/chunk-5EB77IQ2.cjs.map +1 -0
  6. package/dist/tsup/{chunk-KUZWEM23.cjs → chunk-6Z3YA6QR.cjs} +8 -4
  7. package/dist/tsup/chunk-6Z3YA6QR.cjs.map +1 -0
  8. package/dist/tsup/{chunk-ZODINJWN.cjs → chunk-7FEMVD3D.cjs} +12 -12
  9. package/dist/tsup/chunk-7FEMVD3D.cjs.map +1 -0
  10. package/dist/tsup/{chunk-FYP3TZXD.cjs → chunk-BIOPK7IB.cjs} +32 -26
  11. package/dist/tsup/chunk-BIOPK7IB.cjs.map +1 -0
  12. package/dist/tsup/{chunk-KKRR7DSG.cjs → chunk-C2U6KGOG.cjs} +3 -3
  13. package/dist/tsup/chunk-C2U6KGOG.cjs.map +1 -0
  14. package/dist/tsup/{chunk-5F6X4AFU.js → chunk-EEXX243L.js} +6 -6
  15. package/dist/tsup/chunk-EEXX243L.js.map +1 -0
  16. package/dist/tsup/{chunk-GQ5WTE64.js → chunk-FETQGZN4.js} +263 -97
  17. package/dist/tsup/chunk-FETQGZN4.js.map +1 -0
  18. package/dist/tsup/{chunk-ER5OT3SQ.js → chunk-GJPOIJHZ.js} +2 -2
  19. package/dist/tsup/chunk-GJPOIJHZ.js.map +1 -0
  20. package/dist/tsup/{chunk-7ACKZS3T.js → chunk-I7EJWHYV.js} +13 -7
  21. package/dist/tsup/chunk-I7EJWHYV.js.map +1 -0
  22. package/dist/tsup/{chunk-QMVCFQ37.js → chunk-JKNDUKFI.js} +8 -4
  23. package/dist/tsup/chunk-JKNDUKFI.js.map +1 -0
  24. package/dist/tsup/{chunk-M6LIJ6BK.js → chunk-JN6GPVFY.js} +3 -3
  25. package/dist/tsup/chunk-KSRXX3Z4.cjs.map +1 -1
  26. package/dist/tsup/{chunk-DUOTOMP7.cjs → chunk-LCQDY73V.cjs} +3 -3
  27. package/dist/tsup/chunk-LCQDY73V.cjs.map +1 -0
  28. package/dist/tsup/{chunk-RI4YHZZW.js → chunk-NDLOG2JH.js} +2 -2
  29. package/dist/tsup/{chunk-RI4YHZZW.js.map → chunk-NDLOG2JH.js.map} +1 -1
  30. package/dist/tsup/{chunk-2S7HJMMY.cjs → chunk-OAB7ECAB.cjs} +630 -249
  31. package/dist/tsup/chunk-OAB7ECAB.cjs.map +1 -0
  32. package/dist/tsup/{chunk-PV22ZBDE.cjs → chunk-PELXJCJS.cjs} +16 -10
  33. package/dist/tsup/chunk-PELXJCJS.cjs.map +1 -0
  34. package/dist/tsup/{chunk-JZD6FEOE.cjs → chunk-R6XOZKMU.cjs} +455 -289
  35. package/dist/tsup/chunk-R6XOZKMU.cjs.map +1 -0
  36. package/dist/tsup/{chunk-QRUGCDA5.js → chunk-RPI45FGS.js} +2 -2
  37. package/dist/tsup/{chunk-MGHPBNWB.js → chunk-UBCUW7HD.js} +2 -2
  38. package/dist/tsup/{chunk-RJVSNJO7.cjs → chunk-VJLGVVGP.cjs} +7 -7
  39. package/dist/tsup/chunk-VJLGVVGP.cjs.map +1 -0
  40. package/dist/tsup/{chunk-YFFCPYHY.js → chunk-ZVEDMBFT.js} +11 -5
  41. package/dist/tsup/chunk-ZVEDMBFT.js.map +1 -0
  42. package/dist/tsup/{chunk-2I6L3VRO.cjs → chunk-ZZYMCYAY.cjs} +14 -14
  43. package/dist/tsup/chunk-ZZYMCYAY.cjs.map +1 -0
  44. package/dist/tsup/client/mod.cjs +9 -9
  45. package/dist/tsup/client/mod.cjs.map +1 -1
  46. package/dist/tsup/client/mod.d.cts +2 -2
  47. package/dist/tsup/client/mod.d.ts +2 -2
  48. package/dist/tsup/client/mod.js +8 -8
  49. package/dist/tsup/common/log.cjs +3 -3
  50. package/dist/tsup/common/log.cjs.map +1 -1
  51. package/dist/tsup/common/log.js +2 -2
  52. package/dist/tsup/common/websocket.cjs +4 -4
  53. package/dist/tsup/common/websocket.cjs.map +1 -1
  54. package/dist/tsup/common/websocket.js +3 -3
  55. package/dist/tsup/{conn-CmPcqOCF.d.ts → conn-Clu655RU.d.ts} +72 -71
  56. package/dist/tsup/{conn-DU5EbfCu.d.cts → conn-lUvFLo_q.d.cts} +72 -71
  57. package/dist/tsup/driver-helpers/mod.cjs +5 -5
  58. package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
  59. package/dist/tsup/driver-helpers/mod.d.cts +1 -1
  60. package/dist/tsup/driver-helpers/mod.d.ts +1 -1
  61. package/dist/tsup/driver-helpers/mod.js +4 -4
  62. package/dist/tsup/driver-test-suite/mod.cjs +603 -294
  63. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
  64. package/dist/tsup/driver-test-suite/mod.d.cts +1 -1
  65. package/dist/tsup/driver-test-suite/mod.d.ts +1 -1
  66. package/dist/tsup/driver-test-suite/mod.js +574 -265
  67. package/dist/tsup/driver-test-suite/mod.js.map +1 -1
  68. package/dist/tsup/inspector/mod.cjs +6 -6
  69. package/dist/tsup/inspector/mod.cjs.map +1 -1
  70. package/dist/tsup/inspector/mod.d.cts +68 -7
  71. package/dist/tsup/inspector/mod.d.ts +68 -7
  72. package/dist/tsup/inspector/mod.js +5 -5
  73. package/dist/tsup/mod.cjs +10 -10
  74. package/dist/tsup/mod.cjs.map +1 -1
  75. package/dist/tsup/mod.d.cts +2 -2
  76. package/dist/tsup/mod.d.ts +2 -2
  77. package/dist/tsup/mod.js +9 -9
  78. package/dist/tsup/test/mod.cjs +11 -11
  79. package/dist/tsup/test/mod.cjs.map +1 -1
  80. package/dist/tsup/test/mod.d.cts +1 -1
  81. package/dist/tsup/test/mod.d.ts +1 -1
  82. package/dist/tsup/test/mod.js +10 -10
  83. package/dist/tsup/utils.cjs +2 -2
  84. package/dist/tsup/utils.cjs.map +1 -1
  85. package/dist/tsup/utils.js +1 -1
  86. package/package.json +4 -3
  87. package/src/actor/config.ts +108 -15
  88. package/src/actor/conn-drivers.ts +2 -1
  89. package/src/actor/instance.ts +119 -35
  90. package/src/actor/keys.test.ts +13 -4
  91. package/src/actor/protocol/old.ts +10 -3
  92. package/src/actor/router-endpoints.ts +26 -16
  93. package/src/actor/router.ts +41 -13
  94. package/src/actor/unstable-react.ts +1 -1
  95. package/src/client/actor-common.ts +3 -1
  96. package/src/client/actor-conn.ts +44 -12
  97. package/src/client/actor-handle.ts +4 -1
  98. package/src/client/client.ts +32 -18
  99. package/src/client/utils.ts +21 -8
  100. package/src/common/actor-router-consts.ts +2 -0
  101. package/src/common/inline-websocket-adapter2.ts +24 -6
  102. package/src/common/log.ts +6 -2
  103. package/src/common/logfmt.ts +3 -1
  104. package/src/common/router.ts +3 -1
  105. package/src/common/utils.ts +6 -2
  106. package/src/driver-helpers/utils.ts +4 -1
  107. package/src/driver-test-suite/mod.ts +15 -4
  108. package/src/driver-test-suite/test-inline-client-driver.ts +35 -13
  109. package/src/driver-test-suite/tests/action-features.ts +6 -2
  110. package/src/driver-test-suite/tests/actor-conn-state.ts +18 -8
  111. package/src/driver-test-suite/tests/actor-conn.ts +35 -13
  112. package/src/driver-test-suite/tests/actor-handle.ts +35 -15
  113. package/src/driver-test-suite/tests/actor-inline-client.ts +34 -23
  114. package/src/driver-test-suite/tests/actor-inspector.ts +241 -131
  115. package/src/driver-test-suite/tests/actor-reconnect.ts +14 -4
  116. package/src/driver-test-suite/tests/actor-schedule.ts +12 -3
  117. package/src/driver-test-suite/tests/actor-sleep.ts +6 -3
  118. package/src/driver-test-suite/tests/actor-vars.ts +6 -2
  119. package/src/driver-test-suite/tests/manager-driver.ts +16 -6
  120. package/src/driver-test-suite/tests/raw-http-request-properties.ts +64 -25
  121. package/src/driver-test-suite/tests/raw-http.ts +17 -5
  122. package/src/driver-test-suite/tests/raw-websocket.ts +36 -12
  123. package/src/driver-test-suite/tests/request-access.ts +18 -8
  124. package/src/drivers/engine/actor-driver.ts +46 -25
  125. package/src/drivers/engine/config.ts +2 -1
  126. package/src/drivers/file-system/global-state.ts +58 -16
  127. package/src/drivers/file-system/manager.ts +35 -12
  128. package/src/drivers/file-system/mod.ts +6 -1
  129. package/src/drivers/file-system/utils.ts +8 -2
  130. package/src/engine-process/mod.ts +15 -4
  131. package/src/inspector/actor.ts +63 -23
  132. package/src/inspector/config.ts +2 -1
  133. package/src/inspector/manager.ts +10 -3
  134. package/src/inspector/utils.ts +2 -1
  135. package/src/manager/driver.ts +4 -1
  136. package/src/manager/gateway.ts +278 -8
  137. package/src/manager/hono-websocket-adapter.ts +33 -10
  138. package/src/manager/router-schema.ts +4 -2
  139. package/src/manager/router.ts +78 -12
  140. package/src/manager-api/actors.ts +2 -0
  141. package/src/registry/mod.ts +31 -9
  142. package/src/registry/run-config.ts +3 -1
  143. package/src/remote-manager-driver/api-endpoints.ts +2 -2
  144. package/src/remote-manager-driver/mod.ts +23 -7
  145. package/src/remote-manager-driver/ws-proxy.ts +21 -5
  146. package/src/serde.ts +6 -2
  147. package/src/test/mod.ts +2 -1
  148. package/src/utils.ts +6 -2
  149. package/dist/tsup/chunk-2I6L3VRO.cjs.map +0 -1
  150. package/dist/tsup/chunk-2S7HJMMY.cjs.map +0 -1
  151. package/dist/tsup/chunk-5F6X4AFU.js.map +0 -1
  152. package/dist/tsup/chunk-7ACKZS3T.js.map +0 -1
  153. package/dist/tsup/chunk-DUOTOMP7.cjs.map +0 -1
  154. package/dist/tsup/chunk-ER5OT3SQ.js.map +0 -1
  155. package/dist/tsup/chunk-FYP3TZXD.cjs.map +0 -1
  156. package/dist/tsup/chunk-G6JGHCG4.cjs.map +0 -1
  157. package/dist/tsup/chunk-GQ5WTE64.js.map +0 -1
  158. package/dist/tsup/chunk-JZD6FEOE.cjs.map +0 -1
  159. package/dist/tsup/chunk-KKRR7DSG.cjs.map +0 -1
  160. package/dist/tsup/chunk-KUZWEM23.cjs.map +0 -1
  161. package/dist/tsup/chunk-L3YPHXPE.js.map +0 -1
  162. package/dist/tsup/chunk-PV22ZBDE.cjs.map +0 -1
  163. package/dist/tsup/chunk-QMVCFQ37.js.map +0 -1
  164. package/dist/tsup/chunk-RJVSNJO7.cjs.map +0 -1
  165. package/dist/tsup/chunk-YFFCPYHY.js.map +0 -1
  166. package/dist/tsup/chunk-ZODINJWN.cjs.map +0 -1
  167. /package/dist/tsup/{chunk-M6LIJ6BK.js.map → chunk-JN6GPVFY.js.map} +0 -0
  168. /package/dist/tsup/{chunk-QRUGCDA5.js.map → chunk-RPI45FGS.js.map} +0 -0
  169. /package/dist/tsup/{chunk-MGHPBNWB.js.map → chunk-UBCUW7HD.js.map} +0 -0
@@ -15,11 +15,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
15
15
  test("should respond to ping", async (c) => {
16
16
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
17
17
 
18
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
19
- headers: {
20
- Authorization: `Bearer token`,
18
+ const http = createManagerInspectorClient(
19
+ `${endpoint}/inspect`,
20
+ {
21
+ headers: {
22
+ Authorization: `Bearer token`,
23
+ },
21
24
  },
22
- });
25
+ );
23
26
 
24
27
  const response = await http.ping.$get();
25
28
  expect(response.status).toBe(200);
@@ -29,17 +32,23 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
29
32
  });
30
33
 
31
34
  test("should get actors with pagination", async (c) => {
32
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
35
+ const { client, endpoint } = await setupDriverTest(
36
+ c,
37
+ driverTestConfig,
38
+ );
33
39
 
34
40
  // Create some actors first
35
41
  await client.counter.create(["test-actor-1"]);
36
42
  await client.counter.create(["test-actor-2"]);
37
43
 
38
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
39
- headers: {
40
- Authorization: `Bearer token`,
44
+ const http = createManagerInspectorClient(
45
+ `${endpoint}/inspect`,
46
+ {
47
+ headers: {
48
+ Authorization: `Bearer token`,
49
+ },
41
50
  },
42
- });
51
+ );
43
52
 
44
53
  const response = await http.actors.$get({
45
54
  query: { limit: "1" },
@@ -56,7 +65,10 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
56
65
  });
57
66
 
58
67
  test("should get all actors with pagination", async (c) => {
59
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
68
+ const { client, endpoint } = await setupDriverTest(
69
+ c,
70
+ driverTestConfig,
71
+ );
60
72
 
61
73
  const actorKey1 = ["test-cursor-1"];
62
74
  const actorKey2 = ["test-cursor-2"];
@@ -65,11 +77,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
65
77
  await client.counter.create(actorKey1);
66
78
  await client.counter.create(actorKey2);
67
79
 
68
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
69
- headers: {
70
- Authorization: `Bearer token`,
80
+ const http = createManagerInspectorClient(
81
+ `${endpoint}/inspect`,
82
+ {
83
+ headers: {
84
+ Authorization: `Bearer token`,
85
+ },
71
86
  },
72
- });
87
+ );
73
88
 
74
89
  const response = await http.actors.$get({
75
90
  query: { limit: "5" },
@@ -94,11 +109,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
94
109
  test("should handle invalid limit parameter", async (c) => {
95
110
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
96
111
 
97
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
98
- headers: {
99
- Authorization: `Bearer token`,
112
+ const http = createManagerInspectorClient(
113
+ `${endpoint}/inspect`,
114
+ {
115
+ headers: {
116
+ Authorization: `Bearer token`,
117
+ },
100
118
  },
101
- });
119
+ );
102
120
 
103
121
  const response = await http.actors.$get({
104
122
  query: { limit: "0" },
@@ -109,11 +127,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
109
127
  test("should create a new actor", async (c) => {
110
128
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
111
129
 
112
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
113
- headers: {
114
- Authorization: `Bearer token`,
130
+ const http = createManagerInspectorClient(
131
+ `${endpoint}/inspect`,
132
+ {
133
+ headers: {
134
+ Authorization: `Bearer token`,
135
+ },
115
136
  },
116
- });
137
+ );
117
138
 
118
139
  const response = await http.actors.$post({
119
140
  json: {
@@ -137,11 +158,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
137
158
  test("should get builds", async (c) => {
138
159
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
139
160
 
140
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
141
- headers: {
142
- Authorization: `Bearer token`,
161
+ const http = createManagerInspectorClient(
162
+ `${endpoint}/inspect`,
163
+ {
164
+ headers: {
165
+ Authorization: `Bearer token`,
166
+ },
143
167
  },
144
- });
168
+ );
145
169
 
146
170
  const response = await http.builds.$get();
147
171
  expect(response.status).toBe(200);
@@ -155,17 +179,23 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
155
179
  });
156
180
 
157
181
  test("should get actor by id", async (c) => {
158
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
182
+ const { client, endpoint } = await setupDriverTest(
183
+ c,
184
+ driverTestConfig,
185
+ );
159
186
 
160
187
  // Create an actor and get its ID
161
188
  const handle = await client.counter.create(["test-get-by-id"]);
162
189
  const actorId = await handle.resolve();
163
190
 
164
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
165
- headers: {
166
- Authorization: `Bearer token`,
191
+ const http = createManagerInspectorClient(
192
+ `${endpoint}/inspect`,
193
+ {
194
+ headers: {
195
+ Authorization: `Bearer token`,
196
+ },
167
197
  },
168
- });
198
+ );
169
199
 
170
200
  const response = await http.actor[":id"].$get({
171
201
  param: { id: actorId },
@@ -179,11 +209,14 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
179
209
  test("should return 404 for non-existent actor", async (c) => {
180
210
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
181
211
 
182
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
183
- headers: {
184
- Authorization: `Bearer token`,
212
+ const http = createManagerInspectorClient(
213
+ `${endpoint}/inspect`,
214
+ {
215
+ headers: {
216
+ Authorization: `Bearer token`,
217
+ },
185
218
  },
186
- });
219
+ );
187
220
 
188
221
  const response = await http.actor[":id"].$get({
189
222
  param: { id: "non-existent-id" },
@@ -195,18 +228,24 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
195
228
  });
196
229
 
197
230
  test("should get bootstrap data", async (c) => {
198
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
231
+ const { client, endpoint } = await setupDriverTest(
232
+ c,
233
+ driverTestConfig,
234
+ );
199
235
 
200
236
  // Create at least one actor to ensure bootstrap has data
201
237
  // Create an actor and get its ID
202
238
  const handle = await client.counter.create(["test-bootstrap"]);
203
239
  await handle.resolve();
204
240
 
205
- const http = createManagerInspectorClient(`${endpoint}/inspect`, {
206
- headers: {
207
- Authorization: `Bearer token`,
241
+ const http = createManagerInspectorClient(
242
+ `${endpoint}/inspect`,
243
+ {
244
+ headers: {
245
+ Authorization: `Bearer token`,
246
+ },
208
247
  },
209
- });
248
+ );
210
249
 
211
250
  const response = await http.bootstrap.$get();
212
251
  expect(response.status).toBe(200);
@@ -229,32 +268,41 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
229
268
 
230
269
  const actorId = "non-existing";
231
270
 
232
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
233
- headers: {
234
- Authorization: `Bearer token`,
235
- [HEADER_ACTOR_QUERY]: JSON.stringify({
236
- getForId: { name: "counter", actorId },
237
- } satisfies ActorQuery),
271
+ const http = createActorInspectorClient(
272
+ `${endpoint}/actors/inspect`,
273
+ {
274
+ headers: {
275
+ Authorization: `Bearer token`,
276
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
277
+ getForId: { name: "counter", actorId },
278
+ } satisfies ActorQuery),
279
+ },
238
280
  },
239
- });
281
+ );
240
282
 
241
283
  const response = await http.ping.$get();
242
284
  expect(response.ok).toBe(false);
243
285
  });
244
286
  test("should respond to ping", async (c) => {
245
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
287
+ const { client, endpoint } = await setupDriverTest(
288
+ c,
289
+ driverTestConfig,
290
+ );
246
291
 
247
292
  const handle = await client.counter.create(["test-ping"]);
248
293
  const actorId = await handle.resolve();
249
294
 
250
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
251
- headers: {
252
- Authorization: `Bearer token`,
253
- [HEADER_ACTOR_QUERY]: JSON.stringify({
254
- getForId: { name: "counter", actorId },
255
- } satisfies ActorQuery),
295
+ const http = createActorInspectorClient(
296
+ `${endpoint}/actors/inspect`,
297
+ {
298
+ headers: {
299
+ Authorization: `Bearer token`,
300
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
301
+ getForId: { name: "counter", actorId },
302
+ } satisfies ActorQuery),
303
+ },
256
304
  },
257
- });
305
+ );
258
306
 
259
307
  const response = await http.ping.$get();
260
308
  expect(response.status).toBe(200);
@@ -264,7 +312,10 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
264
312
  });
265
313
 
266
314
  test("should get actor state", async (c) => {
267
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
315
+ const { client, endpoint } = await setupDriverTest(
316
+ c,
317
+ driverTestConfig,
318
+ );
268
319
 
269
320
  const handle = await client.counter.create(["test-state"]);
270
321
  const actorId = await handle.resolve();
@@ -272,14 +323,17 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
272
323
  // Increment the counter to set some state
273
324
  await handle.increment(5);
274
325
 
275
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
276
- headers: {
277
- Authorization: `Bearer token`,
278
- [HEADER_ACTOR_QUERY]: JSON.stringify({
279
- getForId: { name: "counter", actorId },
280
- } satisfies ActorQuery),
326
+ const http = createActorInspectorClient(
327
+ `${endpoint}/actors/inspect`,
328
+ {
329
+ headers: {
330
+ Authorization: `Bearer token`,
331
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
332
+ getForId: { name: "counter", actorId },
333
+ } satisfies ActorQuery),
334
+ },
281
335
  },
282
- });
336
+ );
283
337
 
284
338
  const response = await http.state.$get();
285
339
  expect(response.status).toBe(200);
@@ -294,19 +348,27 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
294
348
  });
295
349
 
296
350
  test("should update actor state with replace", async (c) => {
297
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
351
+ const { client, endpoint } = await setupDriverTest(
352
+ c,
353
+ driverTestConfig,
354
+ );
298
355
 
299
- const handle = await client.counter.create(["test-state-replace"]);
356
+ const handle = await client.counter.create([
357
+ "test-state-replace",
358
+ ]);
300
359
  const actorId = await handle.resolve();
301
360
 
302
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
303
- headers: {
304
- Authorization: `Bearer token`,
305
- [HEADER_ACTOR_QUERY]: JSON.stringify({
306
- getForId: { name: "counter", actorId },
307
- } satisfies ActorQuery),
361
+ const http = createActorInspectorClient(
362
+ `${endpoint}/actors/inspect`,
363
+ {
364
+ headers: {
365
+ Authorization: `Bearer token`,
366
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
367
+ getForId: { name: "counter", actorId },
368
+ } satisfies ActorQuery),
369
+ },
308
370
  },
309
- });
371
+ );
310
372
 
311
373
  // Replace the entire state
312
374
  const response = await http.state.$patch({
@@ -324,22 +386,30 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
324
386
  });
325
387
 
326
388
  test("should update actor state with patch", async (c) => {
327
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
389
+ const { client, endpoint } = await setupDriverTest(
390
+ c,
391
+ driverTestConfig,
392
+ );
328
393
 
329
- const handle = await client.counter.create(["test-state-patch"]);
394
+ const handle = await client.counter.create([
395
+ "test-state-patch",
396
+ ]);
330
397
  const actorId = await handle.resolve();
331
398
 
332
399
  // Set initial state
333
400
  await handle.increment(3);
334
401
 
335
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
336
- headers: {
337
- Authorization: `Bearer token`,
338
- [HEADER_ACTOR_QUERY]: JSON.stringify({
339
- getForId: { name: "counter", actorId },
340
- } satisfies ActorQuery),
402
+ const http = createActorInspectorClient(
403
+ `${endpoint}/actors/inspect`,
404
+ {
405
+ headers: {
406
+ Authorization: `Bearer token`,
407
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
408
+ getForId: { name: "counter", actorId },
409
+ } satisfies ActorQuery),
410
+ },
341
411
  },
342
- });
412
+ );
343
413
 
344
414
  // Patch the state
345
415
  const response = await http.state.$patch({
@@ -365,21 +435,29 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
365
435
  });
366
436
 
367
437
  test("should get actor connections", async (c) => {
368
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
438
+ const { client, endpoint } = await setupDriverTest(
439
+ c,
440
+ driverTestConfig,
441
+ );
369
442
 
370
- const handle = await client.counter.create(["test-connections"]);
443
+ const handle = await client.counter.create([
444
+ "test-connections",
445
+ ]);
371
446
  const actorId = await handle.resolve();
372
447
  handle.connect();
373
448
  await handle.increment(10);
374
449
 
375
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
376
- headers: {
377
- Authorization: `Bearer token`,
378
- [HEADER_ACTOR_QUERY]: JSON.stringify({
379
- getForId: { name: "counter", actorId },
380
- } satisfies ActorQuery),
450
+ const http = createActorInspectorClient(
451
+ `${endpoint}/actors/inspect`,
452
+ {
453
+ headers: {
454
+ Authorization: `Bearer token`,
455
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
456
+ getForId: { name: "counter", actorId },
457
+ } satisfies ActorQuery),
458
+ },
381
459
  },
382
- });
460
+ );
383
461
 
384
462
  const response = await http.connections.$get();
385
463
  expect(response.status).toBe(200);
@@ -395,7 +473,10 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
395
473
  });
396
474
 
397
475
  test("should get actor events", async (c) => {
398
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
476
+ const { client, endpoint } = await setupDriverTest(
477
+ c,
478
+ driverTestConfig,
479
+ );
399
480
 
400
481
  const handle = await client.counter.create(["test-events"]);
401
482
  const actorId = await handle.resolve();
@@ -403,14 +484,17 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
403
484
  handle.connect();
404
485
  await handle.increment(10);
405
486
 
406
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
407
- headers: {
408
- Authorization: `Bearer token`,
409
- [HEADER_ACTOR_QUERY]: JSON.stringify({
410
- getForId: { name: "counter", actorId },
411
- } satisfies ActorQuery),
487
+ const http = createActorInspectorClient(
488
+ `${endpoint}/actors/inspect`,
489
+ {
490
+ headers: {
491
+ Authorization: `Bearer token`,
492
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
493
+ getForId: { name: "counter", actorId },
494
+ } satisfies ActorQuery),
495
+ },
412
496
  },
413
- });
497
+ );
414
498
 
415
499
  const response = await http.events.$get();
416
500
  expect(response.status).toBe(200);
@@ -427,22 +511,30 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
427
511
  });
428
512
 
429
513
  test("should clear actor events", async (c) => {
430
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
514
+ const { client, endpoint } = await setupDriverTest(
515
+ c,
516
+ driverTestConfig,
517
+ );
431
518
 
432
- const handle = await client.counter.create(["test-events-clear"]);
519
+ const handle = await client.counter.create([
520
+ "test-events-clear",
521
+ ]);
433
522
  const actorId = await handle.resolve();
434
523
 
435
524
  handle.connect();
436
525
  await handle.increment(10);
437
526
 
438
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
439
- headers: {
440
- Authorization: `Bearer token`,
441
- [HEADER_ACTOR_QUERY]: JSON.stringify({
442
- getForId: { name: "counter", actorId },
443
- } satisfies ActorQuery),
527
+ const http = createActorInspectorClient(
528
+ `${endpoint}/actors/inspect`,
529
+ {
530
+ headers: {
531
+ Authorization: `Bearer token`,
532
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
533
+ getForId: { name: "counter", actorId },
534
+ } satisfies ActorQuery),
535
+ },
444
536
  },
445
- });
537
+ );
446
538
 
447
539
  {
448
540
  const response = await http.events.$get();
@@ -464,19 +556,25 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
464
556
  });
465
557
 
466
558
  test("should get actor rpcs", async (c) => {
467
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
559
+ const { client, endpoint } = await setupDriverTest(
560
+ c,
561
+ driverTestConfig,
562
+ );
468
563
 
469
564
  const handle = await client.counter.create(["test-rpcs"]);
470
565
  const actorId = await handle.resolve();
471
566
 
472
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
473
- headers: {
474
- Authorization: `Bearer token`,
475
- [HEADER_ACTOR_QUERY]: JSON.stringify({
476
- getForId: { name: "counter", actorId },
477
- } satisfies ActorQuery),
567
+ const http = createActorInspectorClient(
568
+ `${endpoint}/actors/inspect`,
569
+ {
570
+ headers: {
571
+ Authorization: `Bearer token`,
572
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
573
+ getForId: { name: "counter", actorId },
574
+ } satisfies ActorQuery),
575
+ },
478
576
  },
479
- });
577
+ );
480
578
 
481
579
  const response = await http.rpcs.$get();
482
580
  expect(response.status).toBe(200);
@@ -491,19 +589,25 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
491
589
 
492
590
  // database is not officially supported yet
493
591
  test.skip("should get actor database info", async (c) => {
494
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
592
+ const { client, endpoint } = await setupDriverTest(
593
+ c,
594
+ driverTestConfig,
595
+ );
495
596
 
496
597
  const handle = await client.counter.create(["test-db"]);
497
598
  const actorId = await handle.resolve();
498
599
 
499
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
500
- headers: {
501
- Authorization: `Bearer token`,
502
- [HEADER_ACTOR_QUERY]: JSON.stringify({
503
- getForId: { name: "counter", actorId },
504
- } satisfies ActorQuery),
600
+ const http = createActorInspectorClient(
601
+ `${endpoint}/actors/inspect`,
602
+ {
603
+ headers: {
604
+ Authorization: `Bearer token`,
605
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
606
+ getForId: { name: "counter", actorId },
607
+ } satisfies ActorQuery),
608
+ },
505
609
  },
506
- });
610
+ );
507
611
 
508
612
  const response = await http.db.$get();
509
613
  expect(response.status).toBe(200);
@@ -522,19 +626,25 @@ export function runActorInspectorTests(driverTestConfig: DriverTestConfig) {
522
626
  });
523
627
 
524
628
  test.skip("should execute database query when database is enabled", async (c) => {
525
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
629
+ const { client, endpoint } = await setupDriverTest(
630
+ c,
631
+ driverTestConfig,
632
+ );
526
633
 
527
634
  const handle = await client.counter.create(["test-db-query"]);
528
635
  const actorId = await handle.resolve();
529
636
 
530
- const http = createActorInspectorClient(`${endpoint}/actors/inspect`, {
531
- headers: {
532
- Authorization: `Bearer token`,
533
- [HEADER_ACTOR_QUERY]: JSON.stringify({
534
- getForId: { name: "counter", actorId },
535
- } satisfies ActorQuery),
637
+ const http = createActorInspectorClient(
638
+ `${endpoint}/actors/inspect`,
639
+ {
640
+ headers: {
641
+ Authorization: `Bearer token`,
642
+ [HEADER_ACTOR_QUERY]: JSON.stringify({
643
+ getForId: { name: "counter", actorId },
644
+ } satisfies ActorQuery),
645
+ },
536
646
  },
537
- });
647
+ );
538
648
 
539
649
  // First check if database is enabled
540
650
  const dbInfoResponse = await http.db.$get();
@@ -6,7 +6,10 @@ import { setupDriverTest } from "../utils";
6
6
  export function runActorReconnectTests(driverTestConfig: DriverTestConfig) {
7
7
  describe("Actor Reconnection Tests", () => {
8
8
  test("should reconnect and preserve connection state after non-clean disconnect", async (c) => {
9
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
9
+ const { client, endpoint } = await setupDriverTest(
10
+ c,
11
+ driverTestConfig,
12
+ );
10
13
 
11
14
  // Create actor and connect
12
15
  const handle = client.counterConn.getOrCreate(["test-reconnect"]);
@@ -52,7 +55,9 @@ export function runActorReconnectTests(driverTestConfig: DriverTestConfig) {
52
55
  const { client } = await setupDriverTest(c, driverTestConfig);
53
56
 
54
57
  // Create actor and connect
55
- const handle = client.counterConn.getOrCreate(["test-clean-disconnect"]);
58
+ const handle = client.counterConn.getOrCreate([
59
+ "test-clean-disconnect",
60
+ ]);
56
61
  const connection = handle.connect();
57
62
 
58
63
  // Set an initial count on the connection
@@ -69,7 +74,9 @@ export function runActorReconnectTests(driverTestConfig: DriverTestConfig) {
69
74
  await vi.waitFor(
70
75
  async () => {
71
76
  // Check that connection count is now 0
72
- const handle2 = client.counterConn.get(["test-clean-disconnect"]);
77
+ const handle2 = client.counterConn.get([
78
+ "test-clean-disconnect",
79
+ ]);
73
80
  const connCount = await handle2.getConnectionCount();
74
81
  // This counts the current action caller
75
82
  expect(connCount).toBe(1);
@@ -93,7 +100,10 @@ export function runActorReconnectTests(driverTestConfig: DriverTestConfig) {
93
100
  });
94
101
 
95
102
  test("should handle multiple non-clean disconnects and reconnects", async (c) => {
96
- const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
103
+ const { client, endpoint } = await setupDriverTest(
104
+ c,
105
+ driverTestConfig,
106
+ );
97
107
 
98
108
  // Create actor and connect
99
109
  const handle = client.counterConn.getOrCreate([
@@ -10,7 +10,10 @@ export function runActorScheduleTests(driverTestConfig: DriverTestConfig) {
10
10
 
11
11
  describe("Scheduled Alarms", () => {
12
12
  test("executes c.schedule.at() with specific timestamp", async (c) => {
13
- const { client } = await setupDriverTest(c, driverTestConfig);
13
+ const { client } = await setupDriverTest(
14
+ c,
15
+ driverTestConfig,
16
+ );
14
17
 
15
18
  // Create instance
16
19
  const scheduled = client.scheduled.getOrCreate();
@@ -31,7 +34,10 @@ export function runActorScheduleTests(driverTestConfig: DriverTestConfig) {
31
34
  });
32
35
 
33
36
  test("executes c.schedule.after() with delay", async (c) => {
34
- const { client } = await setupDriverTest(c, driverTestConfig);
37
+ const { client } = await setupDriverTest(
38
+ c,
39
+ driverTestConfig,
40
+ );
35
41
 
36
42
  // Create instance
37
43
  const scheduled = client.scheduled.getOrCreate();
@@ -51,7 +57,10 @@ export function runActorScheduleTests(driverTestConfig: DriverTestConfig) {
51
57
  });
52
58
 
53
59
  test("multiple scheduled tasks execute in order", async (c) => {
54
- const { client } = await setupDriverTest(c, driverTestConfig);
60
+ const { client } = await setupDriverTest(
61
+ c,
62
+ driverTestConfig,
63
+ );
55
64
 
56
65
  // Create instance
57
66
  const scheduled = client.scheduled.getOrCreate();