rivetkit 2.0.6 → 2.0.7-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 (170) hide show
  1. package/dist/schemas/actor-persist/v1.ts +0 -6
  2. package/dist/tsup/actor-router-consts-B3Lu87yJ.d.cts +28 -0
  3. package/dist/tsup/actor-router-consts-B3Lu87yJ.d.ts +28 -0
  4. package/dist/tsup/{chunk-MRRT2CZD.cjs → chunk-3MBP4WNC.cjs} +7 -7
  5. package/dist/tsup/{chunk-MRRT2CZD.cjs.map → chunk-3MBP4WNC.cjs.map} +1 -1
  6. package/dist/tsup/{chunk-TWGATZ3X.cjs → chunk-3Y45CIF4.cjs} +922 -872
  7. package/dist/tsup/chunk-3Y45CIF4.cjs.map +1 -0
  8. package/dist/tsup/chunk-4GP7BZSR.js +102 -0
  9. package/dist/tsup/chunk-4GP7BZSR.js.map +1 -0
  10. package/dist/tsup/{chunk-UFWAK3X2.cjs → chunk-5ZOHIKWG.cjs} +660 -385
  11. package/dist/tsup/chunk-5ZOHIKWG.cjs.map +1 -0
  12. package/dist/tsup/{chunk-5JBFVV4C.cjs → chunk-6EUWRXLT.cjs} +21 -7
  13. package/dist/tsup/chunk-6EUWRXLT.cjs.map +1 -0
  14. package/dist/tsup/{chunk-UTI5NCES.cjs → chunk-6OVKCDSH.cjs} +6 -6
  15. package/dist/tsup/{chunk-UTI5NCES.cjs.map → chunk-6OVKCDSH.cjs.map} +1 -1
  16. package/dist/tsup/{chunk-VPV4MWXR.js → chunk-7N56ZUC7.js} +3 -3
  17. package/dist/tsup/{chunk-DIAYNQTE.cjs → chunk-B3TLRM4Q.cjs} +12 -12
  18. package/dist/tsup/{chunk-DIAYNQTE.cjs.map → chunk-B3TLRM4Q.cjs.map} +1 -1
  19. package/dist/tsup/{chunk-4CKHQRXG.js → chunk-BW5DPM6Z.js} +515 -240
  20. package/dist/tsup/chunk-BW5DPM6Z.js.map +1 -0
  21. package/dist/tsup/{chunk-NTCUGYSD.cjs → chunk-DFS77KAA.cjs} +34 -31
  22. package/dist/tsup/chunk-DFS77KAA.cjs.map +1 -0
  23. package/dist/tsup/{chunk-VCEHU56K.js → chunk-E4UVJKSV.js} +2 -2
  24. package/dist/tsup/chunk-G4ABMAQY.cjs +102 -0
  25. package/dist/tsup/chunk-G4ABMAQY.cjs.map +1 -0
  26. package/dist/tsup/{chunk-ZYLTS2EM.js → chunk-GZVBFXBI.js} +2 -2
  27. package/dist/tsup/{chunk-W6LN7AF5.js → chunk-HPT3I7UU.js} +866 -816
  28. package/dist/tsup/chunk-HPT3I7UU.js.map +1 -0
  29. package/dist/tsup/{chunk-7OUKNSTU.js → chunk-JD54PXWP.js} +17 -14
  30. package/dist/tsup/chunk-JD54PXWP.js.map +1 -0
  31. package/dist/tsup/{chunk-KG3C7MKR.cjs → chunk-K4ENQCC4.cjs} +3 -3
  32. package/dist/tsup/{chunk-KG3C7MKR.cjs.map → chunk-K4ENQCC4.cjs.map} +1 -1
  33. package/dist/tsup/{chunk-WC2PSJWN.js → chunk-PUSQNDJG.js} +2 -2
  34. package/dist/tsup/{chunk-RGQR2J7S.js → chunk-RVP5RUSC.js} +20 -6
  35. package/dist/tsup/chunk-RVP5RUSC.js.map +1 -0
  36. package/dist/tsup/{chunk-TCUI5JFE.cjs → chunk-SAZCNSVY.cjs} +45 -18
  37. package/dist/tsup/chunk-SAZCNSVY.cjs.map +1 -0
  38. package/dist/tsup/{chunk-G75SVQON.js → chunk-SBKRVQS2.js} +9 -5
  39. package/dist/tsup/chunk-SBKRVQS2.js.map +1 -0
  40. package/dist/tsup/{chunk-6P6RA47N.cjs → chunk-TZGUSEIJ.cjs} +14 -10
  41. package/dist/tsup/chunk-TZGUSEIJ.cjs.map +1 -0
  42. package/dist/tsup/{chunk-2K3JMDAN.js → chunk-YQ4XQYPM.js} +40 -13
  43. package/dist/tsup/chunk-YQ4XQYPM.js.map +1 -0
  44. package/dist/tsup/client/mod.cjs +9 -9
  45. package/dist/tsup/client/mod.d.cts +7 -8
  46. package/dist/tsup/client/mod.d.ts +7 -8
  47. package/dist/tsup/client/mod.js +8 -8
  48. package/dist/tsup/common/log.cjs +3 -3
  49. package/dist/tsup/common/log.js +2 -2
  50. package/dist/tsup/common/websocket.cjs +4 -4
  51. package/dist/tsup/common/websocket.js +3 -3
  52. package/dist/tsup/{connection-BLemxi4f.d.ts → conn-DCSQgIlw.d.ts} +1605 -1353
  53. package/dist/tsup/{connection-CpDIydXf.d.cts → conn-DdzHTm2E.d.cts} +1605 -1353
  54. package/dist/tsup/driver-helpers/mod.cjs +31 -5
  55. package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
  56. package/dist/tsup/driver-helpers/mod.d.cts +7 -8
  57. package/dist/tsup/driver-helpers/mod.d.ts +7 -8
  58. package/dist/tsup/driver-helpers/mod.js +33 -7
  59. package/dist/tsup/driver-test-suite/mod.cjs +317 -222
  60. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
  61. package/dist/tsup/driver-test-suite/mod.d.cts +7 -7
  62. package/dist/tsup/driver-test-suite/mod.d.ts +7 -7
  63. package/dist/tsup/driver-test-suite/mod.js +582 -487
  64. package/dist/tsup/driver-test-suite/mod.js.map +1 -1
  65. package/dist/tsup/inspector/mod.cjs +16 -6
  66. package/dist/tsup/inspector/mod.cjs.map +1 -1
  67. package/dist/tsup/inspector/mod.d.cts +34 -7
  68. package/dist/tsup/inspector/mod.d.ts +34 -7
  69. package/dist/tsup/inspector/mod.js +17 -7
  70. package/dist/tsup/mod.cjs +10 -20
  71. package/dist/tsup/mod.cjs.map +1 -1
  72. package/dist/tsup/mod.d.cts +9 -7
  73. package/dist/tsup/mod.d.ts +9 -7
  74. package/dist/tsup/mod.js +9 -19
  75. package/dist/tsup/test/mod.cjs +11 -11
  76. package/dist/tsup/test/mod.d.cts +6 -7
  77. package/dist/tsup/test/mod.d.ts +6 -7
  78. package/dist/tsup/test/mod.js +10 -10
  79. package/dist/tsup/utils.cjs +4 -2
  80. package/dist/tsup/utils.cjs.map +1 -1
  81. package/dist/tsup/utils.d.cts +11 -1
  82. package/dist/tsup/utils.d.ts +11 -1
  83. package/dist/tsup/utils.js +3 -1
  84. package/package.json +8 -4
  85. package/src/actor/action.ts +1 -1
  86. package/src/actor/config.ts +1 -1
  87. package/src/actor/conn-drivers.ts +205 -0
  88. package/src/actor/conn-socket.ts +6 -0
  89. package/src/actor/{connection.ts → conn.ts} +78 -84
  90. package/src/actor/context.ts +1 -1
  91. package/src/actor/driver.ts +4 -43
  92. package/src/actor/instance.ts +162 -86
  93. package/src/actor/mod.ts +1 -11
  94. package/src/actor/persisted.ts +2 -5
  95. package/src/actor/protocol/old.ts +1 -1
  96. package/src/actor/router-endpoints.ts +142 -106
  97. package/src/actor/router.ts +81 -45
  98. package/src/actor/utils.ts +5 -1
  99. package/src/client/actor-conn.ts +154 -23
  100. package/src/client/client.ts +1 -1
  101. package/src/client/config.ts +7 -0
  102. package/src/common/actor-router-consts.ts +29 -8
  103. package/src/common/router.ts +2 -1
  104. package/src/common/versioned-data.ts +5 -5
  105. package/src/driver-helpers/mod.ts +14 -1
  106. package/src/driver-test-suite/mod.ts +11 -2
  107. package/src/driver-test-suite/test-inline-client-driver.ts +36 -18
  108. package/src/driver-test-suite/tests/actor-conn-state.ts +66 -22
  109. package/src/driver-test-suite/tests/actor-conn.ts +65 -126
  110. package/src/driver-test-suite/tests/actor-reconnect.ts +160 -0
  111. package/src/driver-test-suite/tests/actor-sleep.ts +0 -1
  112. package/src/driver-test-suite/tests/raw-websocket.ts +0 -35
  113. package/src/driver-test-suite/utils.ts +3 -3
  114. package/src/drivers/default.ts +8 -7
  115. package/src/drivers/engine/actor-driver.ts +53 -31
  116. package/src/drivers/engine/config.ts +4 -0
  117. package/src/drivers/file-system/actor.ts +0 -6
  118. package/src/drivers/file-system/global-state.ts +3 -14
  119. package/src/drivers/file-system/manager.ts +12 -8
  120. package/src/inspector/actor.ts +4 -3
  121. package/src/inspector/config.ts +10 -1
  122. package/src/inspector/mod.ts +1 -0
  123. package/src/inspector/utils.ts +23 -4
  124. package/src/manager/driver.ts +11 -1
  125. package/src/manager/gateway.ts +407 -0
  126. package/src/manager/router.ts +269 -468
  127. package/src/manager-api/actors.ts +61 -0
  128. package/src/manager-api/common.ts +4 -0
  129. package/src/mod.ts +1 -1
  130. package/src/registry/mod.ts +119 -10
  131. package/src/remote-manager-driver/actor-http-client.ts +30 -19
  132. package/src/remote-manager-driver/actor-websocket-client.ts +43 -16
  133. package/src/remote-manager-driver/api-endpoints.ts +19 -21
  134. package/src/remote-manager-driver/api-utils.ts +10 -1
  135. package/src/remote-manager-driver/mod.ts +51 -48
  136. package/src/remote-manager-driver/ws-proxy.ts +2 -9
  137. package/src/test/mod.ts +6 -2
  138. package/src/utils.ts +21 -2
  139. package/dist/tsup/actor-router-consts-BK6arfy8.d.cts +0 -17
  140. package/dist/tsup/actor-router-consts-BK6arfy8.d.ts +0 -17
  141. package/dist/tsup/chunk-2K3JMDAN.js.map +0 -1
  142. package/dist/tsup/chunk-42I3OZ3Q.js +0 -15
  143. package/dist/tsup/chunk-42I3OZ3Q.js.map +0 -1
  144. package/dist/tsup/chunk-4CKHQRXG.js.map +0 -1
  145. package/dist/tsup/chunk-5JBFVV4C.cjs.map +0 -1
  146. package/dist/tsup/chunk-6P6RA47N.cjs.map +0 -1
  147. package/dist/tsup/chunk-7OUKNSTU.js.map +0 -1
  148. package/dist/tsup/chunk-G75SVQON.js.map +0 -1
  149. package/dist/tsup/chunk-KUPQZYUQ.cjs +0 -15
  150. package/dist/tsup/chunk-KUPQZYUQ.cjs.map +0 -1
  151. package/dist/tsup/chunk-NTCUGYSD.cjs.map +0 -1
  152. package/dist/tsup/chunk-RGQR2J7S.js.map +0 -1
  153. package/dist/tsup/chunk-TCUI5JFE.cjs.map +0 -1
  154. package/dist/tsup/chunk-TWGATZ3X.cjs.map +0 -1
  155. package/dist/tsup/chunk-UFWAK3X2.cjs.map +0 -1
  156. package/dist/tsup/chunk-W6LN7AF5.js.map +0 -1
  157. package/dist/tsup/common-CXCe7s6i.d.cts +0 -218
  158. package/dist/tsup/common-CXCe7s6i.d.ts +0 -218
  159. package/src/actor/generic-conn-driver.ts +0 -246
  160. package/src/common/fake-event-source.ts +0 -267
  161. package/src/manager-api/routes/actors-create.ts +0 -16
  162. package/src/manager-api/routes/actors-delete.ts +0 -4
  163. package/src/manager-api/routes/actors-get-by-id.ts +0 -7
  164. package/src/manager-api/routes/actors-get-or-create-by-id.ts +0 -29
  165. package/src/manager-api/routes/actors-get.ts +0 -7
  166. package/src/manager-api/routes/common.ts +0 -18
  167. /package/dist/tsup/{chunk-VPV4MWXR.js.map → chunk-7N56ZUC7.js.map} +0 -0
  168. /package/dist/tsup/{chunk-VCEHU56K.js.map → chunk-E4UVJKSV.js.map} +0 -0
  169. /package/dist/tsup/{chunk-ZYLTS2EM.js.map → chunk-GZVBFXBI.js.map} +0 -0
  170. /package/dist/tsup/{chunk-WC2PSJWN.js.map → chunk-PUSQNDJG.js.map} +0 -0
@@ -1,37 +1,46 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
- var _chunk6P6RA47Ncjs = require('../chunk-6P6RA47N.cjs');
3
+ var _chunkTZGUSEIJcjs = require('../chunk-TZGUSEIJ.cjs');
4
4
 
5
5
 
6
6
 
7
- var _chunkTWGATZ3Xcjs = require('../chunk-TWGATZ3X.cjs');
7
+ var _chunk3Y45CIF4cjs = require('../chunk-3Y45CIF4.cjs');
8
8
 
9
9
 
10
10
 
11
- var _chunkKUPQZYUQcjs = require('../chunk-KUPQZYUQ.cjs');
12
11
 
12
+ var _chunkG4ABMAQYcjs = require('../chunk-G4ABMAQY.cjs');
13
13
 
14
- var _chunkUTI5NCEScjs = require('../chunk-UTI5NCES.cjs');
15
14
 
15
+ var _chunk6OVKCDSHcjs = require('../chunk-6OVKCDSH.cjs');
16
16
 
17
17
 
18
- var _chunkUFWAK3X2cjs = require('../chunk-UFWAK3X2.cjs');
19
- require('../chunk-DIAYNQTE.cjs');
20
18
 
19
+ var _chunk5ZOHIKWGcjs = require('../chunk-5ZOHIKWG.cjs');
20
+ require('../chunk-B3TLRM4Q.cjs');
21
21
 
22
- var _chunkKG3C7MKRcjs = require('../chunk-KG3C7MKR.cjs');
23
22
 
23
+ var _chunkK4ENQCC4cjs = require('../chunk-K4ENQCC4.cjs');
24
24
 
25
- var _chunkNTCUGYSDcjs = require('../chunk-NTCUGYSD.cjs');
26
25
 
26
+ var _chunkDFS77KAAcjs = require('../chunk-DFS77KAA.cjs');
27
27
 
28
28
 
29
29
 
30
- var _chunkTCUI5JFEcjs = require('../chunk-TCUI5JFE.cjs');
31
30
 
32
31
 
33
- var _chunkMRRT2CZDcjs = require('../chunk-MRRT2CZD.cjs');
34
- require('../chunk-5JBFVV4C.cjs');
32
+
33
+
34
+
35
+
36
+
37
+ var _chunkSAZCNSVYcjs = require('../chunk-SAZCNSVY.cjs');
38
+
39
+
40
+ var _chunk3MBP4WNCcjs = require('../chunk-3MBP4WNC.cjs');
41
+
42
+
43
+ var _chunk6EUWRXLTcjs = require('../chunk-6EUWRXLT.cjs');
35
44
 
36
45
 
37
46
 
@@ -46,7 +55,7 @@ var _vitest = require('vitest');
46
55
 
47
56
  // src/driver-test-suite/log.ts
48
57
  function logger() {
49
- return _chunkMRRT2CZDcjs.getLogger.call(void 0, "test-suite");
58
+ return _chunk3MBP4WNCcjs.getLogger.call(void 0, "test-suite");
50
59
  }
51
60
 
52
61
  // src/driver-test-suite/tests/action-features.ts
@@ -55,7 +64,6 @@ function logger() {
55
64
  // src/driver-test-suite/utils.ts
56
65
 
57
66
 
58
-
59
67
  // src/driver-test-suite/test-inline-client-driver.ts
60
68
  var _cborx = require('cbor-x'); var cbor = _interopRequireWildcard(_cborx);
61
69
  function createTestInlineClientDriver(endpoint, encoding, transport) {
@@ -98,13 +106,14 @@ function createTestInlineClientDriver(endpoint, encoding, transport) {
98
106
  const url = `${endpoint}/.test/inline-driver/send-request/${pathWithQuery}`;
99
107
  logger().debug({ msg: "rewriting http url", from: oldUrl, to: url });
100
108
  const headers = new Headers(actorRequest.headers);
101
- headers.set(_chunkTCUI5JFEcjs.HEADER_ACTOR_ID, actorId);
109
+ headers.set(_chunkSAZCNSVYcjs.HEADER_ACTOR_ID, actorId);
102
110
  const response = await fetch(
103
111
  new Request(url, {
104
112
  method: actorRequest.method,
105
113
  headers,
106
114
  body: actorRequest.body,
107
- signal: actorRequest.signal
115
+ signal: actorRequest.signal,
116
+ duplex: "half"
108
117
  })
109
118
  );
110
119
  if (!response.ok && ((_a = response.headers.get("content-type")) == null ? void 0 : _a.includes("application/json"))) {
@@ -113,7 +122,7 @@ function createTestInlineClientDriver(endpoint, encoding, transport) {
113
122
  const errorData = await clonedResponse.json();
114
123
  if (errorData.error) {
115
124
  if (typeof errorData.error === "object") {
116
- throw new (0, _chunkUFWAK3X2cjs.ActorError)(
125
+ throw new (0, _chunk5ZOHIKWGcjs.ActorError)(
117
126
  errorData.error.code,
118
127
  errorData.error.message,
119
128
  errorData.error.metadata
@@ -121,7 +130,7 @@ function createTestInlineClientDriver(endpoint, encoding, transport) {
121
130
  }
122
131
  }
123
132
  } catch (e) {
124
- if (!(e instanceof _chunkUFWAK3X2cjs.ActorError)) {
133
+ if (!(e instanceof _chunk5ZOHIKWGcjs.ActorError)) {
125
134
  return response;
126
135
  }
127
136
  throw e;
@@ -129,38 +138,46 @@ function createTestInlineClientDriver(endpoint, encoding, transport) {
129
138
  }
130
139
  return response;
131
140
  },
132
- async openWebSocket(path, actorId, encoding2, params) {
133
- const WebSocket2 = await _chunkKG3C7MKRcjs.importWebSocket.call(void 0, );
141
+ async openWebSocket(path, actorId, encoding2, params, connId, connToken) {
142
+ const WebSocket2 = await _chunkK4ENQCC4cjs.importWebSocket.call(void 0, );
134
143
  const normalizedPath = path.startsWith("/") ? path.slice(1) : path;
135
- logger().debug({
136
- msg: "creating websocket connection via test inline driver"
137
- });
138
144
  const wsUrl = new URL(
139
145
  `${endpoint}/.test/inline-driver/connect-websocket/ws`
140
146
  );
141
- wsUrl.searchParams.set("path", normalizedPath);
142
- wsUrl.searchParams.set("actorId", actorId);
143
- if (params !== void 0)
144
- wsUrl.searchParams.set("params", JSON.stringify(params));
145
- wsUrl.searchParams.set("encodingKind", encoding2);
147
+ logger().debug({
148
+ msg: "creating websocket connection via test inline driver",
149
+ url: wsUrl.toString()
150
+ });
146
151
  const wsProtocol = wsUrl.protocol === "https:" ? "wss:" : "ws:";
147
- const finalWsUrl = `${wsProtocol}//${wsUrl.host}${wsUrl.pathname}${wsUrl.search}`;
152
+ const finalWsUrl = `${wsProtocol}//${wsUrl.host}${wsUrl.pathname}`;
148
153
  logger().debug({ msg: "connecting to websocket", url: finalWsUrl });
149
- const ws = new WebSocket2(finalWsUrl, [
150
- // HACK: See packages/drivers/cloudflare-workers/src/websocket.ts
151
- "rivetkit"
152
- ]);
154
+ const protocols = [];
155
+ protocols.push(`${_chunkSAZCNSVYcjs.WS_PROTOCOL_TARGET}actor`);
156
+ protocols.push(`${_chunkSAZCNSVYcjs.WS_PROTOCOL_ACTOR}${actorId}`);
157
+ protocols.push(`${_chunkSAZCNSVYcjs.WS_PROTOCOL_ENCODING}${encoding2}`);
158
+ protocols.push(`${_chunkSAZCNSVYcjs.WS_PROTOCOL_TRANSPORT}${transport}`);
159
+ protocols.push(
160
+ `${_chunkSAZCNSVYcjs.WS_PROTOCOL_PATH}${encodeURIComponent(normalizedPath)}`
161
+ );
162
+ if (params !== void 0) {
163
+ protocols.push(
164
+ `${_chunkSAZCNSVYcjs.WS_PROTOCOL_CONN_PARAMS}${encodeURIComponent(JSON.stringify(params))}`
165
+ );
166
+ }
167
+ const ws = new WebSocket2(finalWsUrl, protocols);
153
168
  return ws;
154
169
  },
155
170
  async proxyRequest(c, actorRequest, actorId) {
156
171
  return await this.sendRequest(actorId, actorRequest);
157
172
  },
158
- proxyWebSocket(_c, _path, _actorId, _encoding, _params, _authData) {
173
+ proxyWebSocket(_c, _path, _actorId, _encoding, _params) {
159
174
  throw "UNIMPLEMENTED";
160
175
  },
161
176
  displayInformation() {
162
177
  return { name: "Test Inline", properties: {} };
163
- }
178
+ },
179
+ // TODO:
180
+ getOrCreateInspectorAccessToken: () => ""
164
181
  // action: async <Args extends Array<unknown> = unknown[], Response = unknown>(
165
182
  // _c: HonoContext | undefined,
166
183
  // actorQuery: ActorQuery,
@@ -496,7 +513,8 @@ async function makeInlineRequest(endpoint, encoding, transport, method, args) {
496
513
  transport,
497
514
  method,
498
515
  args
499
- })
516
+ }),
517
+ duplex: "half"
500
518
  });
501
519
  if (!response.ok) {
502
520
  throw new Error(`Failed to call inline ${method}: ${response.statusText}`);
@@ -508,14 +526,14 @@ async function makeInlineRequest(endpoint, encoding, transport, method, args) {
508
526
  if ("ok" in callResponse) {
509
527
  return callResponse.ok;
510
528
  } else if ("err" in callResponse) {
511
- throw new (0, _chunkUFWAK3X2cjs.ActorError)(
529
+ throw new (0, _chunk5ZOHIKWGcjs.ActorError)(
512
530
  callResponse.err.group,
513
531
  callResponse.err.code,
514
532
  callResponse.err.message,
515
533
  callResponse.err.metadata
516
534
  );
517
535
  } else {
518
- _chunkTCUI5JFEcjs.assertUnreachable.call(void 0, callResponse);
536
+ _chunkSAZCNSVYcjs.assertUnreachable.call(void 0, callResponse);
519
537
  }
520
538
  }
521
539
 
@@ -530,25 +548,25 @@ async function setupDriverTest(c, driverTestConfig) {
530
548
  c.onTestFinished(cleanup);
531
549
  let client;
532
550
  if (driverTestConfig.clientType === "http") {
533
- client = _chunkUTI5NCEScjs.createClient.call(void 0, {
551
+ client = _chunk6OVKCDSHcjs.createClient.call(void 0, {
534
552
  endpoint,
535
553
  namespace,
536
554
  runnerName,
537
555
  transport: driverTestConfig.transport
538
556
  });
539
557
  } else if (driverTestConfig.clientType === "inline") {
558
+ const transport = _nullishCoalesce(driverTestConfig.transport, () => ( "websocket"));
540
559
  const managerDriver = createTestInlineClientDriver(
541
560
  endpoint,
542
561
  "bare",
543
- _nullishCoalesce(driverTestConfig.transport, () => ( "websocket"))
562
+ transport
544
563
  );
545
- _invariant2.default.call(void 0, driverTestConfig.transport, "missing transport");
546
- const runConfig = _chunkNTCUGYSDcjs.RunConfigSchema.parse({
547
- transport: driverTestConfig.transport
564
+ const runConfig = _chunkDFS77KAAcjs.RunConfigSchema.parse({
565
+ transport
548
566
  });
549
- client = _chunkUFWAK3X2cjs.createClientWithDriver.call(void 0, managerDriver, runConfig);
567
+ client = _chunk5ZOHIKWGcjs.createClientWithDriver.call(void 0, managerDriver, runConfig);
550
568
  } else {
551
- _chunkTCUI5JFEcjs.assertUnreachable.call(void 0, driverTestConfig.clientType);
569
+ _chunkSAZCNSVYcjs.assertUnreachable.call(void 0, driverTestConfig.clientType);
552
570
  }
553
571
  if (!driverTestConfig.HACK_skipCleanupNet) {
554
572
  c.onTestFinished(async () => await client.dispose());
@@ -696,17 +714,19 @@ function runActorConnTests(driverTestConfig) {
696
714
  const handle = client.counter.getOrCreate(["test-mixed-rpc-ws"]);
697
715
  const connection = handle.connect();
698
716
  const receivedEvents = [];
699
- const receivedEventsPromise = new Promise((resolve) => {
700
- connection.on("newCount", (count) => {
701
- receivedEvents.push(count);
702
- if (receivedEvents.includes(1) && receivedEvents.includes(6) && receivedEvents.includes(9))
703
- resolve(void 0);
704
- });
717
+ connection.on("newCount", (count) => {
718
+ receivedEvents.push(count);
719
+ });
720
+ await _vitest.vi.waitFor(async () => {
721
+ await connection.setCount(1);
722
+ _vitest.expect.call(void 0, receivedEvents).includes(1);
723
+ });
724
+ await handle.setCount(2);
725
+ await handle.setCount(3);
726
+ await _vitest.vi.waitFor(() => {
727
+ _vitest.expect.call(void 0, receivedEvents).includes(2);
728
+ _vitest.expect.call(void 0, receivedEvents).includes(3);
705
729
  });
706
- await connection.increment(1);
707
- await handle.increment(5);
708
- await handle.increment(3);
709
- await receivedEventsPromise;
710
730
  await connection.dispose();
711
731
  });
712
732
  _vitest.test.call(void 0, "should receive events via broadcast", async (c) => {
@@ -717,10 +737,15 @@ function runActorConnTests(driverTestConfig) {
717
737
  connection.on("newCount", (count) => {
718
738
  receivedEvents.push(count);
719
739
  });
720
- await connection.increment(5);
721
- await connection.increment(3);
722
- _vitest.expect.call(void 0, receivedEvents).toContain(5);
723
- _vitest.expect.call(void 0, receivedEvents).toContain(8);
740
+ await _vitest.vi.waitFor(
741
+ async () => {
742
+ await connection.setCount(5);
743
+ await connection.setCount(8);
744
+ _vitest.expect.call(void 0, receivedEvents).toContain(5);
745
+ _vitest.expect.call(void 0, receivedEvents).toContain(8);
746
+ },
747
+ { timeout: 1e4 }
748
+ );
724
749
  await connection.dispose();
725
750
  });
726
751
  _vitest.test.call(void 0, "should handle one-time events with once()", async (c) => {
@@ -733,8 +758,10 @@ function runActorConnTests(driverTestConfig) {
733
758
  });
734
759
  await connection.increment(5);
735
760
  await connection.increment(3);
736
- _vitest.expect.call(void 0, receivedEvents).toEqual([5]);
737
- _vitest.expect.call(void 0, receivedEvents).not.toContain(8);
761
+ await _vitest.vi.waitFor(() => {
762
+ _vitest.expect.call(void 0, receivedEvents).toEqual([5]);
763
+ _vitest.expect.call(void 0, receivedEvents).not.toContain(8);
764
+ });
738
765
  await connection.dispose();
739
766
  });
740
767
  _vitest.test.call(void 0, "should unsubscribe from events", async (c) => {
@@ -745,10 +772,12 @@ function runActorConnTests(driverTestConfig) {
745
772
  const unsubscribe = connection.on("newCount", (count) => {
746
773
  receivedEvents.push(count);
747
774
  });
748
- await connection.increment(5);
775
+ await _vitest.vi.waitFor(async () => {
776
+ await connection.setCount(5);
777
+ _vitest.expect.call(void 0, receivedEvents).toEqual([5]);
778
+ });
749
779
  unsubscribe();
750
- await connection.increment(3);
751
- _vitest.expect.call(void 0, receivedEvents).toEqual([5]);
780
+ await connection.setCount(8);
752
781
  _vitest.expect.call(void 0, receivedEvents).not.toContain(8);
753
782
  await connection.dispose();
754
783
  });
@@ -774,7 +803,9 @@ function runActorConnTests(driverTestConfig) {
774
803
  });
775
804
  });
776
805
  _vitest.describe.call(void 0, "Lifecycle Hooks", () => {
777
- _vitest.test.call(void 0, "should trigger lifecycle hooks", async (c) => {
806
+ _vitest.test.skipIf(
807
+ driverTestConfig.transport === "sse" && driverTestConfig.clientType === "inline"
808
+ )("should trigger lifecycle hooks", async (c) => {
778
809
  const { client } = await setupDriverTest(c, driverTestConfig);
779
810
  const connHandle = client.counterWithLifecycle.getOrCreate(
780
811
  ["test-lifecycle"],
@@ -786,81 +817,30 @@ function runActorConnTests(driverTestConfig) {
786
817
  const events = await connection.getEvents();
787
818
  _vitest.expect.call(void 0, events).toEqual(["onStart", "onBeforeConnect", "onConnect"]);
788
819
  await connection.dispose();
789
- const handle = client.counterWithLifecycle.getOrCreate([
790
- "test-lifecycle"
791
- ]);
792
- const finalEvents = await handle.getEvents();
793
- _vitest.expect.call(void 0, finalEvents).toBeOneOf([
794
- // Still active
795
- ["onStart", "onBeforeConnect", "onConnect", "onDisconnect"],
796
- // Went to sleep and woke back up
797
- [
798
- "onStart",
799
- "onBeforeConnect",
800
- "onConnect",
801
- "onDisconnect",
802
- "onStart"
803
- ]
804
- ]);
805
- });
806
- });
807
- _vitest.describe.call(void 0, "Connection Liveness", () => {
808
- _vitest.test.skip("should return correct liveness status for connections", async (c) => {
809
- const { client } = await setupDriverTest(c, driverTestConfig);
810
- const handle = client.connLivenessActor.getOrCreate([
811
- "test-liveness-status"
812
- ]);
813
- const connA = handle.connect();
814
- const connB = handle.connect();
815
- const connAId = await connA.getConnectionId();
816
- const connBId = await connB.getConnectionId();
817
- await connA.increment(5);
818
- await connB.increment(5);
819
- const counter = await handle.getCounter();
820
- _vitest.expect.call(void 0, counter).toBe(10);
821
- const connectionsStatusBeforeKill = await handle.getWsConnectionsLiveness();
822
- _vitest.expect.call(void 0, connectionsStatusBeforeKill).toHaveLength(2);
823
- _vitest.expect.call(void 0, connectionsStatusBeforeKill).toContainEqual(
824
- _vitest.expect.objectContaining({
825
- id: connAId,
826
- status: "connected",
827
- lastSeen: FAKE_TIME.getTime()
828
- })
829
- );
830
- _vitest.expect.call(void 0, connectionsStatusBeforeKill).toContainEqual(
831
- _vitest.expect.objectContaining({
832
- id: connBId,
833
- status: "connected",
834
- lastSeen: FAKE_TIME.getTime()
835
- })
836
- );
837
- await handle.kill(connAId);
838
- const connectionsStatusAfterKill = await handle.getWsConnectionsLiveness();
839
- _vitest.expect.call(void 0, connectionsStatusAfterKill).toEqual(
840
- _vitest.expect.arrayContaining([
841
- _vitest.expect.objectContaining({
842
- id: connAId,
843
- status: "reconnecting",
844
- lastSeen: FAKE_TIME.getTime()
845
- }),
846
- _vitest.expect.objectContaining({
847
- id: connBId,
848
- status: "connected",
849
- lastSeen: FAKE_TIME.getTime()
850
- })
851
- ])
852
- );
853
- await waitFor(driverTestConfig, 5e3);
854
- const connectionsStatusAfterCleanup = await handle.getWsConnectionsLiveness();
855
- _vitest.expect.call(void 0, connectionsStatusAfterCleanup).not.toContainEqual(
856
- _vitest.expect.objectContaining({
857
- id: connAId
858
- })
859
- );
860
- _vitest.expect.call(void 0, connectionsStatusAfterCleanup).toContainEqual(
861
- _vitest.expect.objectContaining({
862
- id: connBId
863
- })
820
+ await _vitest.vi.waitFor(
821
+ async () => {
822
+ const handle = client.counterWithLifecycle.getOrCreate([
823
+ "test-lifecycle"
824
+ ]);
825
+ const finalEvents = await handle.getEvents();
826
+ _vitest.expect.call(void 0, finalEvents).toBeOneOf([
827
+ // Still active
828
+ ["onStart", "onBeforeConnect", "onConnect", "onDisconnect"],
829
+ // Went to sleep and woke back up
830
+ [
831
+ "onStart",
832
+ "onBeforeConnect",
833
+ "onConnect",
834
+ "onDisconnect",
835
+ "onStart"
836
+ ]
837
+ ]);
838
+ },
839
+ // NOTE: High timeout required for Cloudflare Workers
840
+ {
841
+ timeout: 1e4,
842
+ interval: 100
843
+ }
864
844
  );
865
845
  });
866
846
  });
@@ -948,21 +928,57 @@ function runActorConnStateTests(driverTestConfig) {
948
928
  });
949
929
  });
950
930
  _vitest.describe.call(void 0, "Connection Lifecycle", () => {
951
- _vitest.test.call(void 0, "should track connection and disconnection events", async (c) => {
931
+ _vitest.test.skipIf(
932
+ driverTestConfig.transport === "sse" && driverTestConfig.clientType === "inline"
933
+ )("should track connection and disconnection events", async (c) => {
952
934
  const { client } = await setupDriverTest(c, driverTestConfig);
953
- const handle = client.connStateActor.getOrCreate();
954
- const conn = handle.connect();
935
+ const debugHandle = client.connStateActor.getOrCreate(void 0, {
936
+ params: { noCount: true }
937
+ });
938
+ const conn = client.connStateActor.getOrCreate().connect();
955
939
  const connState = await conn.getConnectionState();
956
- const connectionIds = await conn.getConnectionIds();
957
- _vitest.expect.call(void 0, connectionIds).toContain(connState.id);
958
- const initialDisconnections = await conn.getDisconnectionCount();
940
+ await _vitest.vi.waitFor(async () => {
941
+ const connectionIds = await debugHandle.getConnectionIds();
942
+ _vitest.expect.call(void 0, connectionIds).toContain(connState.id);
943
+ });
944
+ await _vitest.vi.waitFor(async () => {
945
+ const disconnects = await debugHandle.getDisconnectionCount();
946
+ _vitest.expect.call(void 0, disconnects).toBe(0);
947
+ });
959
948
  await conn.dispose();
960
- const newConn = handle.connect();
949
+ await _vitest.vi.waitFor(
950
+ async () => {
951
+ console.log("disconnects before");
952
+ const disconnects = await debugHandle.getDisconnectionCount();
953
+ console.log("disconnects", disconnects);
954
+ _vitest.expect.call(void 0, disconnects).toBe(1);
955
+ },
956
+ // SSE takes a long time to disconnect on CF Workers
957
+ {
958
+ timeout: 1e4,
959
+ interval: 100
960
+ }
961
+ );
962
+ const newConn = client.connStateActor.getOrCreate().connect();
961
963
  await _vitest.vi.waitFor(async () => {
962
- const newDisconnections = await newConn.getDisconnectionCount();
963
- _vitest.expect.call(void 0, newDisconnections).toBeGreaterThan(initialDisconnections);
964
+ const connectionIds = await debugHandle.getConnectionIds();
965
+ console.log("conn ids", connectionIds);
966
+ _vitest.expect.call(void 0, connectionIds.length).toBe(1);
964
967
  });
965
968
  await newConn.dispose();
969
+ await _vitest.vi.waitFor(
970
+ async () => {
971
+ console.log("A");
972
+ const disconnects = await debugHandle.getDisconnectionCount();
973
+ console.log(`B ${disconnects}`);
974
+ _vitest.expect.call(void 0, disconnects).toBe(2);
975
+ },
976
+ // SSE takes a long time to disconnect on CF Workers
977
+ {
978
+ timeout: 1e4,
979
+ interval: 100
980
+ }
981
+ );
966
982
  });
967
983
  _vitest.test.call(void 0, "should update connection state", async (c) => {
968
984
  const { client } = await setupDriverTest(c, driverTestConfig);
@@ -993,14 +1009,16 @@ function runActorConnStateTests(driverTestConfig) {
993
1009
  conn2.on("directMessage", (data) => {
994
1010
  receivedMessages.push(data);
995
1011
  });
996
- const success = await conn1.sendToConnection(
997
- state2.id,
998
- "Hello from conn1"
999
- );
1000
- _vitest.expect.call(void 0, success).toBe(true);
1001
- _vitest.expect.call(void 0, receivedMessages.length).toBe(1);
1002
- _vitest.expect.call(void 0, receivedMessages[0].from).toBe(state1.id);
1003
- _vitest.expect.call(void 0, receivedMessages[0].message).toBe("Hello from conn1");
1012
+ await _vitest.vi.waitFor(async () => {
1013
+ const success = await conn1.sendToConnection(
1014
+ state2.id,
1015
+ "Hello from conn1"
1016
+ );
1017
+ _vitest.expect.call(void 0, success).toBe(true);
1018
+ _vitest.expect.call(void 0, receivedMessages.length).toBe(1);
1019
+ _vitest.expect.call(void 0, receivedMessages[0].from).toBe(state1.id);
1020
+ _vitest.expect.call(void 0, receivedMessages[0].message).toBe("Hello from conn1");
1021
+ });
1004
1022
  await conn1.dispose();
1005
1023
  await conn2.dispose();
1006
1024
  });
@@ -1079,7 +1097,7 @@ function runActorScheduleTests(driverTestConfig) {
1079
1097
 
1080
1098
  // fixtures/driver-test-suite/sleep.ts
1081
1099
  var SLEEP_TIMEOUT = 500;
1082
- var sleep = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1100
+ var sleep = _chunk3Y45CIF4cjs.actor.call(void 0, {
1083
1101
  state: { startCount: 0, sleepCount: 0 },
1084
1102
  onStart: (c) => {
1085
1103
  c.state.startCount += 1;
@@ -1105,7 +1123,7 @@ var sleep = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1105
1123
  sleepTimeout: SLEEP_TIMEOUT
1106
1124
  }
1107
1125
  });
1108
- var sleepWithLongRpc = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1126
+ var sleepWithLongRpc = _chunk3Y45CIF4cjs.actor.call(void 0, {
1109
1127
  state: { startCount: 0, sleepCount: 0 },
1110
1128
  createVars: () => ({}),
1111
1129
  onStart: (c) => {
@@ -1120,7 +1138,7 @@ var sleepWithLongRpc = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1120
1138
  },
1121
1139
  longRunningRpc: async (c) => {
1122
1140
  c.log.info("starting long running rpc");
1123
- c.vars.longRunningResolve = Promise.withResolvers();
1141
+ c.vars.longRunningResolve = _chunk6EUWRXLTcjs.promiseWithResolvers.call(void 0, );
1124
1142
  c.broadcast("waiting");
1125
1143
  await c.vars.longRunningResolve.promise;
1126
1144
  c.log.info("finished long running rpc");
@@ -1134,7 +1152,7 @@ var sleepWithLongRpc = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1134
1152
  sleepTimeout: SLEEP_TIMEOUT
1135
1153
  }
1136
1154
  });
1137
- var sleepWithRawHttp = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1155
+ var sleepWithRawHttp = _chunk3Y45CIF4cjs.actor.call(void 0, {
1138
1156
  state: { startCount: 0, sleepCount: 0, requestCount: 0 },
1139
1157
  onStart: (c) => {
1140
1158
  c.state.startCount += 1;
@@ -1169,7 +1187,7 @@ var sleepWithRawHttp = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1169
1187
  sleepTimeout: SLEEP_TIMEOUT
1170
1188
  }
1171
1189
  });
1172
- var sleepWithRawWebSocket = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1190
+ var sleepWithRawWebSocket = _chunk3Y45CIF4cjs.actor.call(void 0, {
1173
1191
  state: { startCount: 0, sleepCount: 0, connectionCount: 0 },
1174
1192
  onStart: (c) => {
1175
1193
  c.state.startCount += 1;
@@ -1232,7 +1250,7 @@ var sleepWithRawWebSocket = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1232
1250
  sleepTimeout: SLEEP_TIMEOUT
1233
1251
  }
1234
1252
  });
1235
- var sleepWithNoSleepOption = _chunkTWGATZ3Xcjs.actor.call(void 0, {
1253
+ var sleepWithNoSleepOption = _chunk3Y45CIF4cjs.actor.call(void 0, {
1236
1254
  state: { startCount: 0, sleepCount: 0 },
1237
1255
  onStart: (c) => {
1238
1256
  c.state.startCount += 1;
@@ -1447,7 +1465,6 @@ function runActorSleepTests(driverTestConfig) {
1447
1465
  _vitest.expect.call(void 0, counts.sleepCount).toBe(0);
1448
1466
  _vitest.expect.call(void 0, counts.startCount).toBe(1);
1449
1467
  ws.close();
1450
- await new Promise((resolve) => setTimeout(resolve, 100));
1451
1468
  await waitFor(driverTestConfig, SLEEP_TIMEOUT + 100);
1452
1469
  {
1453
1470
  const { startCount, sleepCount } = await sleepActor.getCounts();
@@ -1943,7 +1960,7 @@ function runActorInspectorTests(driverTestConfig) {
1943
1960
  _vitest.describe.call(void 0, "Manager Inspector", () => {
1944
1961
  _vitest.test.call(void 0, "should respond to ping", async (c) => {
1945
1962
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
1946
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
1963
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
1947
1964
  headers: {
1948
1965
  Authorization: `Bearer token`
1949
1966
  }
@@ -1957,7 +1974,7 @@ function runActorInspectorTests(driverTestConfig) {
1957
1974
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
1958
1975
  await client.counter.create(["test-actor-1"]);
1959
1976
  await client.counter.create(["test-actor-2"]);
1960
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
1977
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
1961
1978
  headers: {
1962
1979
  Authorization: `Bearer token`
1963
1980
  }
@@ -1980,7 +1997,7 @@ function runActorInspectorTests(driverTestConfig) {
1980
1997
  const actorKey2 = ["test-cursor-2"];
1981
1998
  await client.counter.create(actorKey1);
1982
1999
  await client.counter.create(actorKey2);
1983
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2000
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
1984
2001
  headers: {
1985
2002
  Authorization: `Bearer token`
1986
2003
  }
@@ -2005,7 +2022,7 @@ function runActorInspectorTests(driverTestConfig) {
2005
2022
  });
2006
2023
  _vitest.test.call(void 0, "should handle invalid limit parameter", async (c) => {
2007
2024
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
2008
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2025
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2009
2026
  headers: {
2010
2027
  Authorization: `Bearer token`
2011
2028
  }
@@ -2017,7 +2034,7 @@ function runActorInspectorTests(driverTestConfig) {
2017
2034
  });
2018
2035
  _vitest.test.call(void 0, "should create a new actor", async (c) => {
2019
2036
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
2020
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2037
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2021
2038
  headers: {
2022
2039
  Authorization: `Bearer token`
2023
2040
  }
@@ -2041,7 +2058,7 @@ function runActorInspectorTests(driverTestConfig) {
2041
2058
  });
2042
2059
  _vitest.test.call(void 0, "should get builds", async (c) => {
2043
2060
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
2044
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2061
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2045
2062
  headers: {
2046
2063
  Authorization: `Bearer token`
2047
2064
  }
@@ -2059,7 +2076,7 @@ function runActorInspectorTests(driverTestConfig) {
2059
2076
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2060
2077
  const handle = await client.counter.create(["test-get-by-id"]);
2061
2078
  const actorId = await handle.resolve();
2062
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2079
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2063
2080
  headers: {
2064
2081
  Authorization: `Bearer token`
2065
2082
  }
@@ -2073,7 +2090,7 @@ function runActorInspectorTests(driverTestConfig) {
2073
2090
  });
2074
2091
  _vitest.test.call(void 0, "should return 404 for non-existent actor", async (c) => {
2075
2092
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
2076
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2093
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2077
2094
  headers: {
2078
2095
  Authorization: `Bearer token`
2079
2096
  }
@@ -2089,7 +2106,7 @@ function runActorInspectorTests(driverTestConfig) {
2089
2106
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2090
2107
  const handle = await client.counter.create(["test-bootstrap"]);
2091
2108
  await handle.resolve();
2092
- const http = _chunkKUPQZYUQcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2109
+ const http = _chunkG4ABMAQYcjs.createManagerInspectorClient.call(void 0, `${endpoint}/inspect`, {
2093
2110
  headers: {
2094
2111
  Authorization: `Bearer token`
2095
2112
  }
@@ -2111,10 +2128,10 @@ function runActorInspectorTests(driverTestConfig) {
2111
2128
  _vitest.test.call(void 0, "should handle actor not found", async (c) => {
2112
2129
  const { endpoint } = await setupDriverTest(c, driverTestConfig);
2113
2130
  const actorId = "non-existing";
2114
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2131
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2115
2132
  headers: {
2116
2133
  Authorization: `Bearer token`,
2117
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2134
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2118
2135
  getForId: { name: "counter", actorId }
2119
2136
  })
2120
2137
  }
@@ -2126,10 +2143,10 @@ function runActorInspectorTests(driverTestConfig) {
2126
2143
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2127
2144
  const handle = await client.counter.create(["test-ping"]);
2128
2145
  const actorId = await handle.resolve();
2129
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2146
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2130
2147
  headers: {
2131
2148
  Authorization: `Bearer token`,
2132
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2149
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2133
2150
  getForId: { name: "counter", actorId }
2134
2151
  })
2135
2152
  }
@@ -2144,10 +2161,10 @@ function runActorInspectorTests(driverTestConfig) {
2144
2161
  const handle = await client.counter.create(["test-state"]);
2145
2162
  const actorId = await handle.resolve();
2146
2163
  await handle.increment(5);
2147
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2164
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2148
2165
  headers: {
2149
2166
  Authorization: `Bearer token`,
2150
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2167
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2151
2168
  getForId: { name: "counter", actorId }
2152
2169
  })
2153
2170
  }
@@ -2166,10 +2183,10 @@ function runActorInspectorTests(driverTestConfig) {
2166
2183
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2167
2184
  const handle = await client.counter.create(["test-state-replace"]);
2168
2185
  const actorId = await handle.resolve();
2169
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2186
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2170
2187
  headers: {
2171
2188
  Authorization: `Bearer token`,
2172
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2189
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2173
2190
  getForId: { name: "counter", actorId }
2174
2191
  })
2175
2192
  }
@@ -2191,10 +2208,10 @@ function runActorInspectorTests(driverTestConfig) {
2191
2208
  const handle = await client.counter.create(["test-state-patch"]);
2192
2209
  const actorId = await handle.resolve();
2193
2210
  await handle.increment(3);
2194
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2211
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2195
2212
  headers: {
2196
2213
  Authorization: `Bearer token`,
2197
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2214
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2198
2215
  getForId: { name: "counter", actorId }
2199
2216
  })
2200
2217
  }
@@ -2225,10 +2242,10 @@ function runActorInspectorTests(driverTestConfig) {
2225
2242
  const actorId = await handle.resolve();
2226
2243
  handle.connect();
2227
2244
  await handle.increment(10);
2228
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2245
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2229
2246
  headers: {
2230
2247
  Authorization: `Bearer token`,
2231
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2248
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2232
2249
  getForId: { name: "counter", actorId }
2233
2250
  })
2234
2251
  }
@@ -2250,10 +2267,10 @@ function runActorInspectorTests(driverTestConfig) {
2250
2267
  const actorId = await handle.resolve();
2251
2268
  handle.connect();
2252
2269
  await handle.increment(10);
2253
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2270
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2254
2271
  headers: {
2255
2272
  Authorization: `Bearer token`,
2256
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2273
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2257
2274
  getForId: { name: "counter", actorId }
2258
2275
  })
2259
2276
  }
@@ -2276,10 +2293,10 @@ function runActorInspectorTests(driverTestConfig) {
2276
2293
  const actorId = await handle.resolve();
2277
2294
  handle.connect();
2278
2295
  await handle.increment(10);
2279
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2296
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2280
2297
  headers: {
2281
2298
  Authorization: `Bearer token`,
2282
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2299
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2283
2300
  getForId: { name: "counter", actorId }
2284
2301
  })
2285
2302
  }
@@ -2304,10 +2321,10 @@ function runActorInspectorTests(driverTestConfig) {
2304
2321
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2305
2322
  const handle = await client.counter.create(["test-rpcs"]);
2306
2323
  const actorId = await handle.resolve();
2307
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2324
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2308
2325
  headers: {
2309
2326
  Authorization: `Bearer token`,
2310
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2327
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2311
2328
  getForId: { name: "counter", actorId }
2312
2329
  })
2313
2330
  }
@@ -2325,10 +2342,10 @@ function runActorInspectorTests(driverTestConfig) {
2325
2342
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2326
2343
  const handle = await client.counter.create(["test-db"]);
2327
2344
  const actorId = await handle.resolve();
2328
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2345
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2329
2346
  headers: {
2330
2347
  Authorization: `Bearer token`,
2331
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2348
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2332
2349
  getForId: { name: "counter", actorId }
2333
2350
  })
2334
2351
  }
@@ -2349,10 +2366,10 @@ function runActorInspectorTests(driverTestConfig) {
2349
2366
  const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2350
2367
  const handle = await client.counter.create(["test-db-query"]);
2351
2368
  const actorId = await handle.resolve();
2352
- const http = _chunkKUPQZYUQcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2369
+ const http = _chunkG4ABMAQYcjs.createActorInspectorClient.call(void 0, `${endpoint}/actors/inspect`, {
2353
2370
  headers: {
2354
2371
  Authorization: `Bearer token`,
2355
- [_chunkTCUI5JFEcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2372
+ [_chunkSAZCNSVYcjs.HEADER_ACTOR_QUERY]: JSON.stringify({
2356
2373
  getForId: { name: "counter", actorId }
2357
2374
  })
2358
2375
  }
@@ -2515,6 +2532,103 @@ function runActorOnStateChangeTests(driverTestConfig) {
2515
2532
  });
2516
2533
  }
2517
2534
 
2535
+ // src/driver-test-suite/tests/actor-reconnect.ts
2536
+
2537
+ function runActorReconnectTests(driverTestConfig) {
2538
+ _vitest.describe.call(void 0, "Actor Reconnection Tests", () => {
2539
+ _vitest.test.call(void 0, "should reconnect and preserve connection state after non-clean disconnect", async (c) => {
2540
+ const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2541
+ const handle = client.counterConn.getOrCreate(["test-reconnect"]);
2542
+ const connection = handle.connect();
2543
+ await connection.increment(5);
2544
+ const connCount1 = await connection.getConnectionCount();
2545
+ _vitest.expect.call(void 0, connCount1).toBe(1);
2546
+ const connRaw = connection;
2547
+ await forceUncleanDisconnect(
2548
+ endpoint,
2549
+ connRaw.actorId,
2550
+ connRaw.connectionId
2551
+ );
2552
+ await _vitest.vi.waitFor(
2553
+ async () => {
2554
+ const countAfterReconnect = await connection.getCount();
2555
+ _vitest.expect.call(void 0, countAfterReconnect).toBe(5);
2556
+ },
2557
+ { timeout: 5e3, interval: 100 }
2558
+ );
2559
+ const connCount2 = await connection.getConnectionCount();
2560
+ _vitest.expect.call(void 0, connCount2).toBe(1);
2561
+ const newCount = await connection.getCount();
2562
+ _vitest.expect.call(void 0, newCount).toBe(5);
2563
+ await connection.dispose();
2564
+ });
2565
+ _vitest.test.call(void 0, "should not preserve connection state after clean disconnect", async (c) => {
2566
+ const { client } = await setupDriverTest(c, driverTestConfig);
2567
+ const handle = client.counterConn.getOrCreate(["test-clean-disconnect"]);
2568
+ const connection = handle.connect();
2569
+ await connection.increment(10);
2570
+ const connCount1 = await connection.getConnectionCount();
2571
+ _vitest.expect.call(void 0, connCount1).toBe(1);
2572
+ await connection.dispose();
2573
+ await _vitest.vi.waitFor(
2574
+ async () => {
2575
+ const handle2 = client.counterConn.get(["test-clean-disconnect"]);
2576
+ const connCount = await handle2.getConnectionCount();
2577
+ _vitest.expect.call(void 0, connCount).toBe(1);
2578
+ },
2579
+ { timeout: 5e3 }
2580
+ );
2581
+ const connection2 = handle.connect();
2582
+ const countNewConnection = await connection2.getCount();
2583
+ _vitest.expect.call(void 0, countNewConnection).toBe(0);
2584
+ const connCount3 = await connection2.getConnectionCount();
2585
+ _vitest.expect.call(void 0, connCount3).toBe(1);
2586
+ await connection2.dispose();
2587
+ });
2588
+ _vitest.test.call(void 0, "should handle multiple non-clean disconnects and reconnects", async (c) => {
2589
+ const { client, endpoint } = await setupDriverTest(c, driverTestConfig);
2590
+ const handle = client.counterConn.getOrCreate([
2591
+ "test-multiple-reconnect"
2592
+ ]);
2593
+ const connection = handle.connect();
2594
+ await connection.setCount(100);
2595
+ for (let i = 0; i < 3; i++) {
2596
+ await connection.increment(1);
2597
+ const connRaw = connection;
2598
+ await forceUncleanDisconnect(
2599
+ endpoint,
2600
+ connRaw.actorId,
2601
+ connRaw.connectionId
2602
+ );
2603
+ await _vitest.vi.waitFor(
2604
+ async () => {
2605
+ const countAfter = await connection.getCount();
2606
+ _vitest.expect.call(void 0, countAfter).toBe(101 + i);
2607
+ },
2608
+ { timeout: 5e3 }
2609
+ );
2610
+ const connCount = await connection.getConnectionCount();
2611
+ _vitest.expect.call(void 0, connCount).toBe(1);
2612
+ }
2613
+ const finalCount = await connection.getCount();
2614
+ _vitest.expect.call(void 0, finalCount).toBe(103);
2615
+ await connection.dispose();
2616
+ });
2617
+ });
2618
+ }
2619
+ async function forceUncleanDisconnect(endpoint, actorId, connId) {
2620
+ const response = await fetch(
2621
+ `${endpoint}/.test/force-disconnect?actor=${actorId}&conn=${connId}`,
2622
+ {
2623
+ method: "POST"
2624
+ }
2625
+ );
2626
+ if (!response.ok) {
2627
+ const text = await response.text();
2628
+ throw new Error(`Failed to force disconnect: ${text}`);
2629
+ }
2630
+ }
2631
+
2518
2632
  // src/driver-test-suite/tests/actor-vars.ts
2519
2633
 
2520
2634
  function runActorVarsTests(driverTestConfig) {
@@ -3557,29 +3671,6 @@ function runRawWebSocketTests(driverTestConfig) {
3557
3671
  _vitest.expect.call(void 0, welcomeMessage.type).toBe("welcome");
3558
3672
  ws.close();
3559
3673
  });
3560
- _vitest.test.call(void 0, "should pass connection parameters through subprotocols", async (c) => {
3561
- const { client } = await setupDriverTest(c, driverTestConfig);
3562
- const testParams = { userId: "test123", role: "admin" };
3563
- const actor2 = client.rawWebSocketActor.getOrCreate(["params"], {
3564
- params: testParams
3565
- });
3566
- const ws = await actor2.websocket();
3567
- await new Promise((resolve) => {
3568
- ws.addEventListener("open", () => resolve(), { once: true });
3569
- });
3570
- ws.send(JSON.stringify({ type: "getAuthData" }));
3571
- const response = await new Promise((resolve, reject) => {
3572
- ws.addEventListener("message", (event) => {
3573
- const data = JSON.parse(event.data);
3574
- if (data.type === "authData") {
3575
- resolve(data);
3576
- }
3577
- });
3578
- ws.addEventListener("close", reject);
3579
- });
3580
- _vitest.expect.call(void 0, response).toBeDefined();
3581
- ws.close();
3582
- });
3583
3674
  _vitest.test.call(void 0, "should handle connection close properly", async (c) => {
3584
3675
  const { client } = await setupDriverTest(c, driverTestConfig);
3585
3676
  const actor2 = client.rawWebSocketActor.getOrCreate(["close-test"]);
@@ -3785,15 +3876,18 @@ function runDriverTests(driverTestConfigPartial) {
3785
3876
  clientType
3786
3877
  };
3787
3878
  _vitest.describe.call(void 0, `client type (${clientType})`, () => {
3879
+ var _a;
3788
3880
  runActorDriverTests(driverTestConfig);
3789
3881
  runManagerDriverTests(driverTestConfig);
3790
- for (const transport of ["websocket", "sse"]) {
3882
+ const transports = ((_a = driverTestConfig.skip) == null ? void 0 : _a.sse) ? ["websocket"] : ["websocket", "sse"];
3883
+ for (const transport of transports) {
3791
3884
  _vitest.describe.call(void 0, `transport (${transport})`, () => {
3792
3885
  runActorConnTests({
3793
3886
  ...driverTestConfig,
3794
3887
  transport
3795
3888
  });
3796
3889
  runActorConnStateTests({ ...driverTestConfig, transport });
3890
+ runActorReconnectTests({ ...driverTestConfig, transport });
3797
3891
  runRequestAccessTests({ ...driverTestConfig, transport });
3798
3892
  runActorDriverTestsWithTransport({ ...driverTestConfig, transport });
3799
3893
  });
@@ -3836,7 +3930,7 @@ async function createTestRuntime(registryPath, driverFactory) {
3836
3930
  };
3837
3931
  } else {
3838
3932
  let upgradeWebSocket;
3839
- const config = _chunkNTCUGYSDcjs.RunConfigSchema.parse({
3933
+ const config = _chunkDFS77KAAcjs.RunConfigSchema.parse({
3840
3934
  driver,
3841
3935
  getUpgradeWebSocket: () => upgradeWebSocket,
3842
3936
  inspector: {
@@ -3845,15 +3939,16 @@ async function createTestRuntime(registryPath, driverFactory) {
3845
3939
  }
3846
3940
  });
3847
3941
  const managerDriver = driver.manager(registry.config, config);
3848
- const { router } = _chunkTWGATZ3Xcjs.createManagerRouter.call(void 0,
3942
+ _chunkG4ABMAQYcjs.configureInspectorAccessToken.call(void 0, config, managerDriver);
3943
+ const { router } = _chunk3Y45CIF4cjs.createManagerRouter.call(void 0,
3849
3944
  registry.config,
3850
3945
  config,
3851
3946
  managerDriver,
3852
- false
3947
+ void 0
3853
3948
  );
3854
3949
  const nodeWebSocket = _nodews.createNodeWebSocket.call(void 0, { app: router });
3855
3950
  upgradeWebSocket = nodeWebSocket.upgradeWebSocket;
3856
- const port = await _chunk6P6RA47Ncjs.getPort.call(void 0, );
3951
+ const port = await _chunkTZGUSEIJcjs.getPort.call(void 0, );
3857
3952
  const server = _nodeserver.serve.call(void 0, {
3858
3953
  fetch: router.fetch,
3859
3954
  hostname: "127.0.0.1",