rivetkit 2.0.42 → 2.1.0-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 (322) hide show
  1. package/dist/{tsup/config-CLnylLYY.d.ts → browser/client.d.ts} +2127 -1910
  2. package/dist/browser/client.js +5182 -0
  3. package/dist/browser/client.js.map +1 -0
  4. package/dist/browser/inspector/client.d.ts +130 -0
  5. package/dist/browser/inspector/client.js +2854 -0
  6. package/dist/browser/inspector/client.js.map +1 -0
  7. package/dist/browser/v3-DnYObHH3.d.ts +279 -0
  8. package/dist/schemas/actor-inspector/v2.ts +796 -0
  9. package/dist/schemas/actor-inspector/v3.ts +899 -0
  10. package/dist/schemas/actor-persist/v4.ts +406 -0
  11. package/dist/schemas/client-protocol/v3.ts +554 -0
  12. package/dist/schemas/persist/v1.ts +781 -0
  13. package/dist/schemas/transport/v1.ts +697 -0
  14. package/dist/tsup/actor/errors.cjs +27 -3
  15. package/dist/tsup/actor/errors.cjs.map +1 -1
  16. package/dist/tsup/actor/errors.d.cts +37 -1
  17. package/dist/tsup/actor/errors.d.ts +37 -1
  18. package/dist/tsup/actor/errors.js +26 -1
  19. package/dist/tsup/{actor-router-consts-DzI2szci.d.cts → actor-router-consts-D29T1Z-K.d.cts} +1 -1
  20. package/dist/tsup/{actor-router-consts-DzI2szci.d.ts → actor-router-consts-D29T1Z-K.d.ts} +1 -1
  21. package/dist/tsup/chunk-424PT5DM.js +23 -0
  22. package/dist/tsup/chunk-424PT5DM.js.map +1 -0
  23. package/dist/tsup/{chunk-JDAD2YFA.js → chunk-5ESWDTHJ.js} +148 -273
  24. package/dist/tsup/chunk-5ESWDTHJ.js.map +1 -0
  25. package/dist/tsup/{chunk-FJ3KTN4V.js → chunk-6LIBPELE.js} +119 -11
  26. package/dist/tsup/chunk-6LIBPELE.js.map +1 -0
  27. package/dist/tsup/chunk-6LJAZ5R4.cjs +96 -0
  28. package/dist/tsup/chunk-6LJAZ5R4.cjs.map +1 -0
  29. package/dist/tsup/{chunk-LFVF5SCU.js → chunk-7HTNH26M.js} +126 -1
  30. package/dist/tsup/chunk-7HTNH26M.js.map +1 -0
  31. package/dist/tsup/chunk-7K4CYDGD.js +630 -0
  32. package/dist/tsup/chunk-7K4CYDGD.js.map +1 -0
  33. package/dist/tsup/{chunk-XXGJCOL6.js → chunk-A6YIZWTK.js} +2 -2
  34. package/dist/tsup/chunk-AIYEYMX5.cjs +630 -0
  35. package/dist/tsup/chunk-AIYEYMX5.cjs.map +1 -0
  36. package/dist/tsup/{chunk-Q6W7RJJP.js → chunk-DIGBC2VI.js} +211 -2316
  37. package/dist/tsup/chunk-DIGBC2VI.js.map +1 -0
  38. package/dist/tsup/{chunk-RZW2DNND.cjs → chunk-F6JYU5IK.cjs} +1957 -1039
  39. package/dist/tsup/chunk-F6JYU5IK.cjs.map +1 -0
  40. package/dist/tsup/chunk-HAZL2EPK.cjs +534 -0
  41. package/dist/tsup/chunk-HAZL2EPK.cjs.map +1 -0
  42. package/dist/tsup/chunk-HDQ2JUQT.cjs +23 -0
  43. package/dist/tsup/chunk-HDQ2JUQT.cjs.map +1 -0
  44. package/dist/tsup/chunk-HIDX4C5Y.cjs +1036 -0
  45. package/dist/tsup/chunk-HIDX4C5Y.cjs.map +1 -0
  46. package/dist/tsup/chunk-IVG73YCW.js +534 -0
  47. package/dist/tsup/chunk-IVG73YCW.js.map +1 -0
  48. package/dist/tsup/chunk-KJSYAUOM.js +96 -0
  49. package/dist/tsup/chunk-KJSYAUOM.js.map +1 -0
  50. package/dist/tsup/{chunk-2XQS746M.cjs → chunk-L47L3ZWJ.cjs} +127 -2
  51. package/dist/tsup/chunk-L47L3ZWJ.cjs.map +1 -0
  52. package/dist/tsup/{chunk-H4TB4X25.cjs → chunk-LW6KLR7A.cjs} +126 -18
  53. package/dist/tsup/chunk-LW6KLR7A.cjs.map +1 -0
  54. package/dist/tsup/chunk-LXUQ667X.js +2006 -0
  55. package/dist/tsup/chunk-LXUQ667X.js.map +1 -0
  56. package/dist/tsup/{chunk-GMAVRZSF.js → chunk-M2T62AZQ.js} +1790 -872
  57. package/dist/tsup/chunk-M2T62AZQ.js.map +1 -0
  58. package/dist/tsup/chunk-MZ37VV3P.js +5974 -0
  59. package/dist/tsup/chunk-MZ37VV3P.js.map +1 -0
  60. package/dist/tsup/chunk-N4KRDJ56.js +72 -0
  61. package/dist/tsup/chunk-N4KRDJ56.js.map +1 -0
  62. package/dist/tsup/chunk-NIYZDWMW.cjs +2006 -0
  63. package/dist/tsup/chunk-NIYZDWMW.cjs.map +1 -0
  64. package/dist/tsup/chunk-OMEPCQK2.js +649 -0
  65. package/dist/tsup/chunk-OMEPCQK2.js.map +1 -0
  66. package/dist/tsup/chunk-SR3KQE7Q.cjs +72 -0
  67. package/dist/tsup/chunk-SR3KQE7Q.cjs.map +1 -0
  68. package/dist/tsup/chunk-SSEP6DHP.cjs +2657 -0
  69. package/dist/tsup/chunk-SSEP6DHP.cjs.map +1 -0
  70. package/dist/tsup/chunk-T5YCUGVS.js +1036 -0
  71. package/dist/tsup/chunk-T5YCUGVS.js.map +1 -0
  72. package/dist/tsup/{chunk-EJVBH5VF.cjs → chunk-TPGXWFQT.cjs} +3 -3
  73. package/dist/tsup/{chunk-EJVBH5VF.cjs.map → chunk-TPGXWFQT.cjs.map} +1 -1
  74. package/dist/tsup/{chunk-X35U3YNX.cjs → chunk-TYLXNCA5.cjs} +214 -339
  75. package/dist/tsup/chunk-TYLXNCA5.cjs.map +1 -0
  76. package/dist/tsup/chunk-VKVNIQRQ.js +257 -0
  77. package/dist/tsup/chunk-VKVNIQRQ.js.map +1 -0
  78. package/dist/tsup/chunk-XWBAQO5H.cjs +649 -0
  79. package/dist/tsup/chunk-XWBAQO5H.cjs.map +1 -0
  80. package/dist/tsup/chunk-YQ4LDVD6.cjs +5974 -0
  81. package/dist/tsup/chunk-YQ4LDVD6.cjs.map +1 -0
  82. package/dist/tsup/chunk-ZFY5J2EP.cjs +257 -0
  83. package/dist/tsup/chunk-ZFY5J2EP.cjs.map +1 -0
  84. package/dist/tsup/client/mod.cjs +9 -10
  85. package/dist/tsup/client/mod.cjs.map +1 -1
  86. package/dist/tsup/client/mod.d.cts +11 -5
  87. package/dist/tsup/client/mod.d.ts +11 -5
  88. package/dist/tsup/client/mod.js +8 -8
  89. package/dist/tsup/common/log.cjs +4 -4
  90. package/dist/tsup/common/log.d.cts +2 -2
  91. package/dist/tsup/common/log.d.ts +2 -2
  92. package/dist/tsup/common/log.js +3 -2
  93. package/dist/tsup/common/websocket.cjs +5 -5
  94. package/dist/tsup/common/websocket.js +4 -3
  95. package/dist/tsup/config-BFqid9Gr.d.ts +2574 -0
  96. package/dist/tsup/config-BiNoIHRs.d.cts +80 -0
  97. package/dist/tsup/config-BiNoIHRs.d.ts +80 -0
  98. package/dist/tsup/{config-CZB2-W8x.d.cts → config-CAZphOS1.d.cts} +681 -355
  99. package/dist/tsup/db/drizzle/mod.cjs +49 -0
  100. package/dist/tsup/db/drizzle/mod.cjs.map +1 -0
  101. package/dist/tsup/db/drizzle/mod.d.cts +17 -0
  102. package/dist/tsup/db/drizzle/mod.d.ts +17 -0
  103. package/dist/tsup/db/drizzle/mod.js +49 -0
  104. package/dist/tsup/db/drizzle/mod.js.map +1 -0
  105. package/dist/tsup/db/mod.cjs +9 -0
  106. package/dist/tsup/db/mod.cjs.map +1 -0
  107. package/dist/tsup/db/mod.d.cts +9 -0
  108. package/dist/tsup/db/mod.d.ts +9 -0
  109. package/dist/tsup/db/mod.js +9 -0
  110. package/dist/tsup/db/mod.js.map +1 -0
  111. package/dist/tsup/{driver-D0QX9M11.d.ts → driver-Bxv62E2p.d.ts} +2 -2
  112. package/dist/tsup/{driver-q-zqG7fc.d.cts → driver-DYXwJR5D.d.cts} +2 -2
  113. package/dist/tsup/driver-helpers/mod.cjs +12 -6
  114. package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
  115. package/dist/tsup/driver-helpers/mod.d.cts +12 -5
  116. package/dist/tsup/driver-helpers/mod.d.ts +12 -5
  117. package/dist/tsup/driver-helpers/mod.js +12 -5
  118. package/dist/tsup/driver-test-suite/mod.cjs +1370 -116
  119. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
  120. package/dist/tsup/driver-test-suite/mod.d.cts +10 -4
  121. package/dist/tsup/driver-test-suite/mod.d.ts +10 -4
  122. package/dist/tsup/driver-test-suite/mod.js +2093 -838
  123. package/dist/tsup/driver-test-suite/mod.js.map +1 -1
  124. package/dist/tsup/inspector/mod.cjs +29 -3
  125. package/dist/tsup/inspector/mod.cjs.map +1 -1
  126. package/dist/tsup/inspector/mod.d.cts +124 -3
  127. package/dist/tsup/inspector/mod.d.ts +124 -3
  128. package/dist/tsup/inspector/mod.js +72 -45
  129. package/dist/tsup/keys-CydblqMh.d.cts +13 -0
  130. package/dist/tsup/keys-CydblqMh.d.ts +13 -0
  131. package/dist/tsup/mod.cjs +16 -10
  132. package/dist/tsup/mod.cjs.map +1 -1
  133. package/dist/tsup/mod.d.cts +26 -14
  134. package/dist/tsup/mod.d.ts +26 -14
  135. package/dist/tsup/mod.js +20 -13
  136. package/dist/tsup/serve-test-suite/mod.cjs +1165 -83
  137. package/dist/tsup/serve-test-suite/mod.cjs.map +1 -1
  138. package/dist/tsup/serve-test-suite/mod.js +1114 -29
  139. package/dist/tsup/serve-test-suite/mod.js.map +1 -1
  140. package/dist/tsup/test/mod.cjs +84 -11
  141. package/dist/tsup/test/mod.cjs.map +1 -1
  142. package/dist/tsup/test/mod.d.cts +10 -5
  143. package/dist/tsup/test/mod.d.ts +10 -5
  144. package/dist/tsup/test/mod.js +85 -11
  145. package/dist/tsup/test/mod.js.map +1 -1
  146. package/dist/tsup/utils.cjs +10 -4
  147. package/dist/tsup/utils.cjs.map +1 -1
  148. package/dist/tsup/utils.d.cts +72 -2
  149. package/dist/tsup/utils.d.ts +72 -2
  150. package/dist/tsup/utils.js +9 -2
  151. package/dist/tsup/v3-DnYObHH3.d.cts +279 -0
  152. package/dist/tsup/v3-DnYObHH3.d.ts +279 -0
  153. package/dist/tsup/workflow/mod.cjs +16 -0
  154. package/dist/tsup/workflow/mod.cjs.map +1 -0
  155. package/dist/tsup/workflow/mod.d.cts +83 -0
  156. package/dist/tsup/workflow/mod.d.ts +83 -0
  157. package/dist/tsup/workflow/mod.js +16 -0
  158. package/dist/tsup/workflow/mod.js.map +1 -0
  159. package/package.json +62 -5
  160. package/src/actor/config.ts +478 -68
  161. package/src/actor/conn/mod.ts +68 -16
  162. package/src/actor/conn/state-manager.ts +2 -2
  163. package/src/actor/contexts/action.ts +20 -12
  164. package/src/actor/contexts/base/actor.ts +137 -7
  165. package/src/actor/contexts/base/conn-init.ts +27 -7
  166. package/src/actor/contexts/base/conn.ts +27 -18
  167. package/src/actor/contexts/before-action-response.ts +9 -2
  168. package/src/actor/contexts/before-connect.ts +7 -2
  169. package/src/actor/contexts/connect.ts +9 -2
  170. package/src/actor/contexts/create-conn-state.ts +7 -2
  171. package/src/actor/contexts/create-vars.ts +16 -3
  172. package/src/actor/contexts/create.ts +16 -3
  173. package/src/actor/contexts/destroy.ts +9 -3
  174. package/src/actor/contexts/disconnect.ts +10 -4
  175. package/src/actor/contexts/index.ts +4 -3
  176. package/src/actor/contexts/request.ts +23 -6
  177. package/src/actor/contexts/run.ts +47 -0
  178. package/src/actor/contexts/sleep.ts +9 -3
  179. package/src/actor/contexts/state-change.ts +9 -3
  180. package/src/actor/contexts/wake.ts +9 -3
  181. package/src/actor/contexts/websocket.ts +23 -6
  182. package/src/actor/database.ts +8 -18
  183. package/src/actor/definition.ts +20 -6
  184. package/src/actor/driver.ts +32 -3
  185. package/src/actor/errors.ts +127 -0
  186. package/src/actor/instance/connection-manager.ts +183 -80
  187. package/src/actor/instance/event-manager.ts +26 -15
  188. package/src/actor/instance/keys.ts +117 -0
  189. package/src/actor/instance/mod.ts +784 -174
  190. package/src/actor/instance/queue-manager.ts +603 -0
  191. package/src/actor/instance/queue.ts +287 -0
  192. package/src/actor/instance/schedule-manager.ts +49 -7
  193. package/src/actor/instance/state-manager.ts +35 -11
  194. package/src/actor/instance/traces-driver.ts +128 -0
  195. package/src/actor/mod.ts +26 -2
  196. package/src/actor/protocol/old.ts +28 -13
  197. package/src/actor/protocol/serde.ts +1 -1
  198. package/src/actor/router-endpoints.ts +177 -21
  199. package/src/actor/router-websocket-endpoints.ts +18 -29
  200. package/src/actor/router.ts +177 -0
  201. package/src/actor/schema.ts +291 -0
  202. package/src/actor/utils.ts +40 -0
  203. package/src/client/actor-common.ts +1 -1
  204. package/src/client/actor-conn.ts +100 -33
  205. package/src/client/actor-handle.ts +61 -33
  206. package/src/client/client.ts +2 -4
  207. package/src/client/config.ts +1 -1
  208. package/src/client/mod.browser.ts +2 -0
  209. package/src/client/mod.ts +1 -4
  210. package/src/client/queue.ts +146 -0
  211. package/src/client/utils.ts +1 -1
  212. package/src/common/log.ts +1 -1
  213. package/src/common/utils.ts +3 -3
  214. package/src/db/config.ts +100 -0
  215. package/src/db/drizzle/mod.ts +226 -0
  216. package/src/db/drizzle/sqlite-core.ts +22 -0
  217. package/src/db/mod.ts +125 -0
  218. package/src/db/shared.ts +92 -0
  219. package/src/db/sqlite-vfs.ts +12 -0
  220. package/src/driver-helpers/mod.ts +1 -0
  221. package/src/driver-test-suite/mod.ts +69 -43
  222. package/src/driver-test-suite/tests/access-control.ts +218 -0
  223. package/src/driver-test-suite/tests/actor-db-raw.ts +73 -0
  224. package/src/driver-test-suite/tests/actor-db.ts +394 -0
  225. package/src/driver-test-suite/tests/actor-inspector.ts +259 -358
  226. package/src/driver-test-suite/tests/actor-kv.ts +41 -20
  227. package/src/driver-test-suite/tests/actor-queue.ts +324 -0
  228. package/src/driver-test-suite/tests/actor-run.ts +181 -0
  229. package/src/driver-test-suite/tests/actor-schedule.ts +5 -2
  230. package/src/driver-test-suite/tests/actor-sleep.ts +3 -3
  231. package/src/driver-test-suite/tests/actor-stateless.ts +70 -0
  232. package/src/driver-test-suite/tests/actor-workflow.ts +108 -0
  233. package/src/driver-test-suite/tests/manager-driver.ts +11 -0
  234. package/src/driver-test-suite/tests/raw-http-request-properties.ts +1 -1
  235. package/src/driver-test-suite/tests/raw-websocket.ts +12 -12
  236. package/src/drivers/default.ts +7 -2
  237. package/src/drivers/engine/actor-driver.ts +45 -37
  238. package/src/drivers/engine/config.ts +1 -1
  239. package/src/drivers/file-system/actor.ts +20 -2
  240. package/src/drivers/file-system/global-state.ts +569 -258
  241. package/src/drivers/file-system/kv-limits.ts +70 -0
  242. package/src/drivers/file-system/manager.ts +22 -6
  243. package/src/drivers/file-system/mod.ts +39 -16
  244. package/src/drivers/file-system/sqlite-runtime.ts +210 -0
  245. package/src/inspector/actor-inspector.ts +224 -102
  246. package/src/inspector/config.ts +1 -1
  247. package/src/inspector/handler.ts +102 -20
  248. package/src/inspector/mod.browser.ts +8 -0
  249. package/src/inspector/mod.ts +2 -0
  250. package/src/inspector/serve-ui.ts +40 -0
  251. package/src/inspector/transport.ts +18 -0
  252. package/src/inspector/utils.ts +5 -39
  253. package/src/manager/gateway.ts +1 -1
  254. package/src/manager/protocol/mod.ts +1 -1
  255. package/src/manager/protocol/query.ts +1 -1
  256. package/src/manager/router-schema.ts +1 -1
  257. package/src/manager/router.ts +38 -12
  258. package/src/manager-api/actors.ts +1 -1
  259. package/src/manager-api/common.ts +1 -1
  260. package/src/registry/config/driver.ts +1 -1
  261. package/src/registry/config/index.ts +212 -43
  262. package/src/registry/config/legacy-runner.ts +1 -1
  263. package/src/registry/config/runner.ts +1 -1
  264. package/src/registry/config/serverless.ts +1 -1
  265. package/src/registry/index.ts +7 -5
  266. package/src/remote-manager-driver/api-utils.ts +1 -1
  267. package/src/schemas/actor-inspector/mod.ts +1 -1
  268. package/src/schemas/actor-inspector/versioned.ts +195 -8
  269. package/src/schemas/actor-persist/versioned.ts +87 -7
  270. package/src/schemas/client-protocol/mod.ts +1 -1
  271. package/src/schemas/client-protocol/versioned.ts +127 -11
  272. package/src/schemas/client-protocol-zod/mod.ts +16 -1
  273. package/src/schemas/persist/mod.ts +1 -0
  274. package/src/schemas/transport/mod.ts +1 -0
  275. package/src/serde.ts +1 -1
  276. package/src/serve-test-suite/mod.ts +10 -9
  277. package/src/test/mod.ts +15 -56
  278. package/src/utils/endpoint-parser.test.ts +1 -1
  279. package/src/utils/endpoint-parser.ts +1 -1
  280. package/src/utils/env-vars.ts +12 -1
  281. package/src/utils/node.ts +15 -2
  282. package/src/utils.test.ts +34 -0
  283. package/src/utils.ts +140 -6
  284. package/src/workflow/constants.ts +2 -0
  285. package/src/workflow/context.ts +532 -0
  286. package/src/workflow/driver.ts +191 -0
  287. package/src/workflow/inspector.ts +268 -0
  288. package/src/workflow/mod.ts +122 -0
  289. package/dist/tsup/chunk-2IJTYN6K.cjs +0 -278
  290. package/dist/tsup/chunk-2IJTYN6K.cjs.map +0 -1
  291. package/dist/tsup/chunk-2XQS746M.cjs.map +0 -1
  292. package/dist/tsup/chunk-3VP5CSHV.cjs +0 -114
  293. package/dist/tsup/chunk-3VP5CSHV.cjs.map +0 -1
  294. package/dist/tsup/chunk-AQFSQMBG.js +0 -114
  295. package/dist/tsup/chunk-AQFSQMBG.js.map +0 -1
  296. package/dist/tsup/chunk-E6ZE2YEA.js +0 -664
  297. package/dist/tsup/chunk-E6ZE2YEA.js.map +0 -1
  298. package/dist/tsup/chunk-FJ3KTN4V.js.map +0 -1
  299. package/dist/tsup/chunk-GBENOENJ.cjs +0 -8
  300. package/dist/tsup/chunk-GBENOENJ.cjs.map +0 -1
  301. package/dist/tsup/chunk-GD7UXGOE.cjs +0 -4762
  302. package/dist/tsup/chunk-GD7UXGOE.cjs.map +0 -1
  303. package/dist/tsup/chunk-GMAVRZSF.js.map +0 -1
  304. package/dist/tsup/chunk-H4TB4X25.cjs.map +0 -1
  305. package/dist/tsup/chunk-JDAD2YFA.js.map +0 -1
  306. package/dist/tsup/chunk-KCOVZOPS.js +0 -1946
  307. package/dist/tsup/chunk-KCOVZOPS.js.map +0 -1
  308. package/dist/tsup/chunk-KDFWJKMJ.cjs +0 -664
  309. package/dist/tsup/chunk-KDFWJKMJ.cjs.map +0 -1
  310. package/dist/tsup/chunk-LFVF5SCU.js.map +0 -1
  311. package/dist/tsup/chunk-Q6W7RJJP.js.map +0 -1
  312. package/dist/tsup/chunk-RUW5CZ5Z.cjs +0 -1949
  313. package/dist/tsup/chunk-RUW5CZ5Z.cjs.map +0 -1
  314. package/dist/tsup/chunk-RZW2DNND.cjs.map +0 -1
  315. package/dist/tsup/chunk-TCOEBUUE.js +0 -278
  316. package/dist/tsup/chunk-TCOEBUUE.js.map +0 -1
  317. package/dist/tsup/chunk-X35U3YNX.cjs.map +0 -1
  318. package/dist/tsup/keys-Chhy4ylv.d.cts +0 -8
  319. package/dist/tsup/keys-Chhy4ylv.d.ts +0 -8
  320. package/dist/tsup/v1-Gq4avTK3.d.cts +0 -240
  321. package/dist/tsup/v1-Gq4avTK3.d.ts +0 -240
  322. /package/dist/tsup/{chunk-XXGJCOL6.js.map → chunk-A6YIZWTK.js.map} +0 -0
@@ -5,17 +5,18 @@
5
5
 
6
6
 
7
7
 
8
+ var _chunkYQ4LDVD6cjs = require('./chunk-YQ4LDVD6.cjs');
8
9
 
9
10
 
10
11
 
11
12
 
12
13
 
13
- var _chunkRUW5CZ5Zcjs = require('./chunk-RUW5CZ5Z.cjs');
14
14
 
15
15
 
16
16
 
17
17
 
18
18
 
19
+ var _chunkSSEP6DHPcjs = require('./chunk-SSEP6DHP.cjs');
19
20
 
20
21
 
21
22
 
@@ -23,7 +24,6 @@ var _chunkRUW5CZ5Zcjs = require('./chunk-RUW5CZ5Z.cjs');
23
24
 
24
25
 
25
26
 
26
- var _chunkGD7UXGOEcjs = require('./chunk-GD7UXGOE.cjs');
27
27
 
28
28
 
29
29
 
@@ -45,13 +45,14 @@ var _chunkGD7UXGOEcjs = require('./chunk-GD7UXGOE.cjs');
45
45
 
46
46
 
47
47
 
48
+ var _chunkF6JYU5IKcjs = require('./chunk-F6JYU5IK.cjs');
48
49
 
49
50
 
50
- var _chunkRZW2DNNDcjs = require('./chunk-RZW2DNND.cjs');
51
51
 
52
52
 
53
53
 
54
54
 
55
+ var _chunkHIDX4C5Ycjs = require('./chunk-HIDX4C5Y.cjs');
55
56
 
56
57
 
57
58
 
@@ -65,172 +66,26 @@ var _chunkRZW2DNNDcjs = require('./chunk-RZW2DNND.cjs');
65
66
 
66
67
 
67
68
 
68
- var _chunkH4TB4X25cjs = require('./chunk-H4TB4X25.cjs');
69
69
 
70
70
 
71
71
 
72
72
 
73
73
 
74
- var _chunk2XQS746Mcjs = require('./chunk-2XQS746M.cjs');
74
+ var _chunkLW6KLR7Acjs = require('./chunk-LW6KLR7A.cjs');
75
75
 
76
- // src/actor/config.ts
77
- var _zod = require('zod');
78
- var zFunction = () => _zod.z.custom((val) => typeof val === "function");
79
- var ActorConfigSchema = _zod.z.object({
80
- onCreate: zFunction().optional(),
81
- onDestroy: zFunction().optional(),
82
- onWake: zFunction().optional(),
83
- onSleep: zFunction().optional(),
84
- onStateChange: zFunction().optional(),
85
- onBeforeConnect: zFunction().optional(),
86
- onConnect: zFunction().optional(),
87
- onDisconnect: zFunction().optional(),
88
- onBeforeActionResponse: zFunction().optional(),
89
- onRequest: zFunction().optional(),
90
- onWebSocket: zFunction().optional(),
91
- actions: _zod.z.record(_zod.z.string(), zFunction()).default(() => ({})),
92
- state: _zod.z.any().optional(),
93
- createState: zFunction().optional(),
94
- connState: _zod.z.any().optional(),
95
- createConnState: zFunction().optional(),
96
- vars: _zod.z.any().optional(),
97
- db: _zod.z.any().optional(),
98
- createVars: zFunction().optional(),
99
- options: _zod.z.object({
100
- createVarsTimeout: _zod.z.number().positive().default(5e3),
101
- createConnStateTimeout: _zod.z.number().positive().default(5e3),
102
- onConnectTimeout: _zod.z.number().positive().default(5e3),
103
- // This must be less than ACTOR_STOP_THRESHOLD_MS
104
- onSleepTimeout: _zod.z.number().positive().default(5e3),
105
- onDestroyTimeout: _zod.z.number().positive().default(5e3),
106
- stateSaveInterval: _zod.z.number().positive().default(1e4),
107
- actionTimeout: _zod.z.number().positive().default(6e4),
108
- // Max time to wait for waitUntil background promises during shutdown
109
- waitUntilTimeout: _zod.z.number().positive().default(15e3),
110
- connectionLivenessTimeout: _zod.z.number().positive().default(2500),
111
- connectionLivenessInterval: _zod.z.number().positive().default(5e3),
112
- noSleep: _zod.z.boolean().default(false),
113
- sleepTimeout: _zod.z.number().positive().default(3e4),
114
- /**
115
- * Can hibernate WebSockets for onWebSocket.
116
- *
117
- * WebSockets using actions/events are hibernatable by default.
118
- *
119
- * @experimental
120
- **/
121
- canHibernateWebSocket: _zod.z.union([
122
- _zod.z.boolean(),
123
- zFunction()
124
- ]).default(false)
125
- }).strict().prefault(() => ({}))
126
- }).strict().refine(
127
- (data) => !(data.state !== void 0 && data.createState !== void 0),
128
- {
129
- message: "Cannot define both 'state' and 'createState'",
130
- path: ["state"]
131
- }
132
- ).refine(
133
- (data) => !(data.connState !== void 0 && data.createConnState !== void 0),
134
- {
135
- message: "Cannot define both 'connState' and 'createConnState'",
136
- path: ["connState"]
137
- }
138
- ).refine(
139
- (data) => !(data.vars !== void 0 && data.createVars !== void 0),
140
- {
141
- message: "Cannot define both 'vars' and 'createVars'",
142
- path: ["vars"]
143
- }
144
- );
145
- var DocActorOptionsSchema = _zod.z.object({
146
- createVarsTimeout: _zod.z.number().optional().describe("Timeout in ms for createVars handler. Default: 5000"),
147
- createConnStateTimeout: _zod.z.number().optional().describe(
148
- "Timeout in ms for createConnState handler. Default: 5000"
149
- ),
150
- onConnectTimeout: _zod.z.number().optional().describe("Timeout in ms for onConnect handler. Default: 5000"),
151
- onSleepTimeout: _zod.z.number().optional().describe(
152
- "Timeout in ms for onSleep handler. Must be less than ACTOR_STOP_THRESHOLD_MS. Default: 5000"
153
- ),
154
- onDestroyTimeout: _zod.z.number().optional().describe("Timeout in ms for onDestroy handler. Default: 5000"),
155
- stateSaveInterval: _zod.z.number().optional().describe(
156
- "Interval in ms between automatic state saves. Default: 10000"
157
- ),
158
- actionTimeout: _zod.z.number().optional().describe("Timeout in ms for action handlers. Default: 60000"),
159
- waitUntilTimeout: _zod.z.number().optional().describe(
160
- "Max time in ms to wait for waitUntil background promises during shutdown. Default: 15000"
161
- ),
162
- connectionLivenessTimeout: _zod.z.number().optional().describe(
163
- "Timeout in ms for connection liveness checks. Default: 2500"
164
- ),
165
- connectionLivenessInterval: _zod.z.number().optional().describe(
166
- "Interval in ms between connection liveness checks. Default: 5000"
167
- ),
168
- noSleep: _zod.z.boolean().optional().describe("If true, the actor will never sleep. Default: false"),
169
- sleepTimeout: _zod.z.number().optional().describe(
170
- "Time in ms of inactivity before the actor sleeps. Default: 30000"
171
- ),
172
- canHibernateWebSocket: _zod.z.boolean().optional().describe(
173
- "Whether WebSockets using onWebSocket can be hibernated. WebSockets using actions/events are hibernatable by default. Default: false"
174
- )
175
- }).describe("Actor options for timeouts and behavior configuration.");
176
- var DocActorConfigSchema = _zod.z.object({
177
- state: _zod.z.unknown().optional().describe(
178
- "Initial state value for the actor. Cannot be used with createState."
179
- ),
180
- createState: _zod.z.unknown().optional().describe(
181
- "Function to create initial state. Receives context and input. Cannot be used with state."
182
- ),
183
- connState: _zod.z.unknown().optional().describe(
184
- "Initial connection state value. Cannot be used with createConnState."
185
- ),
186
- createConnState: _zod.z.unknown().optional().describe(
187
- "Function to create connection state. Receives context and connection params. Cannot be used with connState."
188
- ),
189
- vars: _zod.z.unknown().optional().describe(
190
- "Initial ephemeral variables value. Cannot be used with createVars."
191
- ),
192
- createVars: _zod.z.unknown().optional().describe(
193
- "Function to create ephemeral variables. Receives context and driver context. Cannot be used with vars."
194
- ),
195
- db: _zod.z.unknown().optional().describe("Database provider instance for the actor."),
196
- onCreate: _zod.z.unknown().optional().describe(
197
- "Called when the actor is first initialized. Use to initialize state."
198
- ),
199
- onDestroy: _zod.z.unknown().optional().describe("Called when the actor is destroyed."),
200
- onWake: _zod.z.unknown().optional().describe(
201
- "Called when the actor wakes up and is ready to receive connections and actions."
202
- ),
203
- onSleep: _zod.z.unknown().optional().describe(
204
- "Called when the actor is stopping or sleeping. Use to clean up resources."
205
- ),
206
- onStateChange: _zod.z.unknown().optional().describe(
207
- "Called when the actor's state changes. State changes within this hook won't trigger recursion."
208
- ),
209
- onBeforeConnect: _zod.z.unknown().optional().describe(
210
- "Called before a client connects. Throw an error to reject the connection."
211
- ),
212
- onConnect: _zod.z.unknown().optional().describe("Called when a client successfully connects."),
213
- onDisconnect: _zod.z.unknown().optional().describe("Called when a client disconnects."),
214
- onBeforeActionResponse: _zod.z.unknown().optional().describe(
215
- "Called before sending an action response. Use to transform output."
216
- ),
217
- onRequest: _zod.z.unknown().optional().describe(
218
- "Called for raw HTTP requests to /actors/{name}/http/* endpoints."
219
- ),
220
- onWebSocket: _zod.z.unknown().optional().describe(
221
- "Called for raw WebSocket connections to /actors/{name}/websocket/* endpoints."
222
- ),
223
- actions: _zod.z.record(_zod.z.string(), _zod.z.unknown()).optional().describe(
224
- "Map of action name to handler function. Defaults to an empty object."
225
- ),
226
- options: DocActorOptionsSchema.optional()
227
- }).describe("Actor configuration passed to the actor() function.");
76
+
77
+
78
+
79
+
80
+ var _chunkL47L3ZWJcjs = require('./chunk-L47L3ZWJ.cjs');
228
81
 
229
82
  // src/actor/mod.ts
230
83
  function actor(input) {
231
- const config = ActorConfigSchema.parse(input);
232
- return new (0, _chunkGD7UXGOEcjs.ActorDefinition)(config);
84
+ const config = _chunkHIDX4C5Ycjs.ActorConfigSchema.parse(input);
85
+ return new (0, _chunkYQ4LDVD6cjs.ActorDefinition)(config);
233
86
  }
87
+ var event2 = _chunkHIDX4C5Ycjs.event;
88
+ var queue2 = _chunkHIDX4C5Ycjs.queue;
234
89
 
235
90
  // src/drivers/engine/actor-driver.ts
236
91
  var _enginerunner = require('@rivetkit/engine-runner');
@@ -241,7 +96,7 @@ var _invariant = require('invariant'); var _invariant2 = _interopRequireDefault(
241
96
 
242
97
  // src/drivers/engine/log.ts
243
98
  function logger() {
244
- return _chunkH4TB4X25cjs.getLogger.call(void 0, "driver-engine");
99
+ return _chunkLW6KLR7Acjs.getLogger.call(void 0, "driver-engine");
245
100
  }
246
101
 
247
102
  // src/drivers/engine/actor-driver.ts
@@ -255,8 +110,8 @@ var EngineActorDriver = class {
255
110
  #runner;
256
111
  #actors = /* @__PURE__ */ new Map();
257
112
  #actorRouter;
258
- #runnerStarted = _chunkH4TB4X25cjs.promiseWithResolvers.call(void 0, );
259
- #runnerStopped = _chunkH4TB4X25cjs.promiseWithResolvers.call(void 0, );
113
+ #runnerStarted = _chunkLW6KLR7Acjs.promiseWithResolvers.call(void 0, (reason) => logger().warn({ msg: "unhandled runner started promise rejection", reason }));
114
+ #runnerStopped = _chunkLW6KLR7Acjs.promiseWithResolvers.call(void 0, (reason) => logger().warn({ msg: "unhandled runner stopped promise rejection", reason }));
260
115
  #isRunnerStopped = false;
261
116
  // HACK: Track actor stop intent locally since the runner protocol doesn't
262
117
  // pass the stop reason to onActorStop. This will be fixed when the runner
@@ -280,7 +135,7 @@ var EngineActorDriver = class {
280
135
  this.#managerDriver = managerDriver;
281
136
  this.#inlineClient = inlineClient;
282
137
  const token = config.token;
283
- this.#actorRouter = _chunkRUW5CZ5Zcjs.createActorRouter.call(void 0,
138
+ this.#actorRouter = _chunkYQ4LDVD6cjs.createActorRouter.call(void 0,
284
139
  config,
285
140
  this,
286
141
  void 0,
@@ -288,16 +143,16 @@ var EngineActorDriver = class {
288
143
  );
289
144
  const engineRunnerConfig = {
290
145
  version: config.runner.version,
291
- endpoint: _chunkGD7UXGOEcjs.getEndpoint.call(void 0, config),
146
+ endpoint: _chunkSSEP6DHPcjs.getEndpoint.call(void 0, config),
292
147
  token,
293
148
  namespace: config.namespace,
294
149
  totalSlots: config.runner.totalSlots,
295
150
  runnerName: config.runner.runnerName,
296
151
  runnerKey: _nullishCoalesce(config.runner.runnerKey, () => ( crypto.randomUUID())),
297
152
  metadata: {
298
- rivetkit: { version: _chunkH4TB4X25cjs.VERSION }
153
+ rivetkit: { version: _chunkLW6KLR7Acjs.VERSION }
299
154
  },
300
- prepopulateActorNames: _chunkRZW2DNNDcjs.buildActorNames.call(void 0, config),
155
+ prepopulateActorNames: _chunkF6JYU5IKcjs.buildActorNames.call(void 0, config),
301
156
  onConnected: () => {
302
157
  this.#runnerStarted.resolve(void 0);
303
158
  },
@@ -314,7 +169,7 @@ var EngineActorDriver = class {
314
169
  },
315
170
  onActorStart: this.#runnerOnActorStart.bind(this),
316
171
  onActorStop: this.#runnerOnActorStop.bind(this),
317
- logger: _chunkH4TB4X25cjs.getLogger.call(void 0, "engine-runner")
172
+ logger: _chunkLW6KLR7Acjs.getLogger.call(void 0, "engine-runner")
318
173
  };
319
174
  this.#runner = new (0, _enginerunner.Runner)(engineRunnerConfig);
320
175
  this.#runner.start();
@@ -352,15 +207,13 @@ var EngineActorDriver = class {
352
207
  handler.alarmTimeout = void 0;
353
208
  }
354
209
  const delay = Math.max(0, timestamp - Date.now());
355
- handler.alarmTimeout = _chunkH4TB4X25cjs.setLongTimeout.call(void 0, () => {
210
+ handler.alarmTimeout = _chunkLW6KLR7Acjs.setLongTimeout.call(void 0, () => {
356
211
  actor2.onAlarm();
357
212
  handler.alarmTimeout = void 0;
358
213
  }, delay);
359
214
  this.#runner.setAlarm(actor2.id, timestamp);
360
215
  }
361
- async getDatabase(_actorId) {
362
- return void 0;
363
- }
216
+ // No database overrides - will use KV-backed implementation from rivetkit/db
364
217
  // MARK: - Batch KV operations
365
218
  async kvBatchPut(actorId, entries) {
366
219
  await this.#runner.kvPut(actorId, entries);
@@ -424,7 +277,7 @@ var EngineActorDriver = class {
424
277
  var _a;
425
278
  (_a = handler.actor) == null ? void 0 : _a.rLog.error({
426
279
  msg: "onStop errored",
427
- error: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
280
+ error: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
428
281
  });
429
282
  })
430
283
  );
@@ -468,6 +321,7 @@ var EngineActorDriver = class {
468
321
  });
469
322
  }
470
323
  async #runnerOnActorStart(actorId, generation, actorConfig) {
324
+ var _a;
471
325
  logger().debug({
472
326
  msg: "runner actor starting",
473
327
  actorId,
@@ -482,42 +336,52 @@ var EngineActorDriver = class {
482
336
  let handler = this.#actors.get(actorId);
483
337
  if (!handler) {
484
338
  handler = {
485
- actorStartPromise: _chunkH4TB4X25cjs.promiseWithResolvers.call(void 0, )
339
+ actorStartPromise: _chunkLW6KLR7Acjs.promiseWithResolvers.call(void 0, (reason) => logger().warn({ msg: "unhandled actor start promise rejection", reason }))
486
340
  };
487
341
  this.#actors.set(actorId, handler);
488
342
  }
489
343
  const name = actorConfig.name;
490
344
  _invariant2.default.call(void 0, actorConfig.key, "actor should have a key");
491
- const key = _chunkRZW2DNNDcjs.deserializeActorKey.call(void 0, actorConfig.key);
492
- const [persistDataBuffer] = await this.#runner.kvGet(actorId, [
493
- _chunkRZW2DNNDcjs.KEYS.PERSIST_DATA
494
- ]);
495
- if (persistDataBuffer === null) {
496
- const initialKvState = _chunkRZW2DNNDcjs.getInitialActorKvState.call(void 0, input);
497
- await this.#runner.kvPut(actorId, initialKvState);
498
- logger().debug({
499
- msg: "initialized persist data for new actor",
500
- actorId
501
- });
502
- } else {
503
- logger().debug({
504
- msg: "found existing persist data for actor",
345
+ const key = _chunkF6JYU5IKcjs.deserializeActorKey.call(void 0, actorConfig.key);
346
+ try {
347
+ const [persistDataBuffer] = await this.#runner.kvGet(actorId, [
348
+ _chunkHIDX4C5Ycjs.KEYS.PERSIST_DATA
349
+ ]);
350
+ if (persistDataBuffer === null) {
351
+ const initialKvState = _chunkF6JYU5IKcjs.getInitialActorKvState.call(void 0, input);
352
+ await this.#runner.kvPut(actorId, initialKvState);
353
+ logger().debug({
354
+ msg: "initialized persist data for new actor",
355
+ actorId
356
+ });
357
+ } else {
358
+ logger().debug({
359
+ msg: "found existing persist data for actor",
360
+ actorId,
361
+ dataSize: persistDataBuffer.byteLength
362
+ });
363
+ }
364
+ const definition = _chunkYQ4LDVD6cjs.lookupInRegistry.call(void 0, this.#config, actorConfig.name);
365
+ handler.actor = await definition.instantiate();
366
+ await handler.actor.start(
367
+ this,
368
+ this.#inlineClient,
505
369
  actorId,
506
- dataSize: persistDataBuffer.byteLength
507
- });
370
+ name,
371
+ key,
372
+ "unknown"
373
+ // TODO: Add regions
374
+ );
375
+ logger().debug({ msg: "runner actor started", actorId, name, key });
376
+ } catch (innerError) {
377
+ const error = new Error(
378
+ `Failed to start actor ${actorId}: ${innerError}`,
379
+ { cause: innerError }
380
+ );
381
+ (_a = handler.actorStartPromise) == null ? void 0 : _a.reject(error);
382
+ handler.actorStartPromise = void 0;
383
+ throw error;
508
384
  }
509
- const definition = _chunkGD7UXGOEcjs.lookupInRegistry.call(void 0, this.#config, actorConfig.name);
510
- handler.actor = definition.instantiate();
511
- await handler.actor.start(
512
- this,
513
- this.#inlineClient,
514
- actorId,
515
- name,
516
- key,
517
- "unknown"
518
- // TODO: Add regions
519
- );
520
- logger().debug({ msg: "runner actor started", actorId, name, key });
521
385
  }
522
386
  async #runnerOnActorStop(actorId, generation) {
523
387
  logger().debug({ msg: "runner actor stopping", actorId, generation });
@@ -530,7 +394,7 @@ var EngineActorDriver = class {
530
394
  } catch (err) {
531
395
  logger().error({
532
396
  msg: "error in onStop, proceeding with removing actor",
533
- err: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
397
+ err: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
534
398
  });
535
399
  }
536
400
  this.#actors.delete(actorId);
@@ -563,10 +427,10 @@ var EngineActorDriver = class {
563
427
  websocketProps: websocketRaw ? Object.keys(websocketRaw).join(", ") : "null"
564
428
  });
565
429
  const protocols = request.headers.get("sec-websocket-protocol");
566
- const { encoding, connParams } = _chunkRZW2DNNDcjs.parseWebSocketProtocols.call(void 0, protocols);
430
+ const { encoding, connParams } = _chunkF6JYU5IKcjs.parseWebSocketProtocols.call(void 0, protocols);
567
431
  let wsHandler;
568
432
  try {
569
- wsHandler = await _chunkRZW2DNNDcjs.routeWebSocket.call(void 0,
433
+ wsHandler = await _chunkF6JYU5IKcjs.routeWebSocket.call(void 0,
570
434
  request,
571
435
  requestPath,
572
436
  requestHeaders,
@@ -589,7 +453,7 @@ var EngineActorDriver = class {
589
453
  const wsContext = new (0, _ws.WSContext)(websocket);
590
454
  const conn = wsHandler.conn;
591
455
  const actor2 = wsHandler.actor;
592
- const connStateManager = conn == null ? void 0 : conn[_chunkRZW2DNNDcjs.CONN_STATE_MANAGER_SYMBOL];
456
+ const connStateManager = conn == null ? void 0 : conn[_chunkF6JYU5IKcjs.CONN_STATE_MANAGER_SYMBOL];
593
457
  logger().debug({
594
458
  msg: "attaching websocket event listeners",
595
459
  actorId,
@@ -601,55 +465,55 @@ var EngineActorDriver = class {
601
465
  if (isRestoringHibernatable) {
602
466
  (_c = wsHandler.onRestore) == null ? void 0 : _c.call(wsHandler, wsContext);
603
467
  }
604
- websocket.addEventListener("open", (event) => {
605
- wsHandler.onOpen(event, wsContext);
468
+ websocket.addEventListener("open", (event3) => {
469
+ wsHandler.onOpen(event3, wsContext);
606
470
  });
607
- websocket.addEventListener("message", (event) => {
471
+ websocket.addEventListener("message", (event3) => {
608
472
  var _a2, _b2;
609
473
  logger().debug({
610
474
  msg: "websocket message event listener triggered",
611
475
  connId: conn == null ? void 0 : conn.id,
612
476
  actorId: actor2 == null ? void 0 : actor2.id,
613
- messageIndex: event.rivetMessageIndex,
477
+ messageIndex: event3.rivetMessageIndex,
614
478
  hasWsHandler: !!wsHandler,
615
479
  hasOnMessage: !!(wsHandler == null ? void 0 : wsHandler.onMessage),
616
480
  actorIsStopping: actor2 == null ? void 0 : actor2.isStopping,
617
481
  websocketType: (_a2 = websocket == null ? void 0 : websocket.constructor) == null ? void 0 : _a2.name,
618
482
  wsUniqueId: websocket.__rivet_ws_id,
619
- eventTargetWsId: (_b2 = event.target) == null ? void 0 : _b2.__rivet_ws_id
483
+ eventTargetWsId: (_b2 = event3.target) == null ? void 0 : _b2.__rivet_ws_id
620
484
  });
621
485
  if (actor2 == null ? void 0 : actor2.isStopping) {
622
486
  logger().debug({
623
487
  msg: "ignoring ws message, actor is stopping",
624
488
  connId: conn == null ? void 0 : conn.id,
625
489
  actorId: actor2 == null ? void 0 : actor2.id,
626
- messageIndex: event.rivetMessageIndex
490
+ messageIndex: event3.rivetMessageIndex
627
491
  });
628
492
  return;
629
493
  }
630
494
  logger().debug({
631
495
  msg: "calling wsHandler.onMessage",
632
496
  connId: conn == null ? void 0 : conn.id,
633
- messageIndex: event.rivetMessageIndex
497
+ messageIndex: event3.rivetMessageIndex
634
498
  });
635
- wsHandler.onMessage(event, wsContext);
499
+ wsHandler.onMessage(event3, wsContext);
636
500
  const hibernate = connStateManager == null ? void 0 : connStateManager.hibernatableData;
637
501
  if (hibernate && conn && actor2) {
638
502
  _invariant2.default.call(void 0,
639
- typeof event.rivetMessageIndex === "number",
503
+ typeof event3.rivetMessageIndex === "number",
640
504
  "missing event.rivetMessageIndex"
641
505
  );
642
506
  const previousMsgIndex = hibernate.serverMessageIndex;
643
- hibernate.serverMessageIndex = event.rivetMessageIndex;
507
+ hibernate.serverMessageIndex = event3.rivetMessageIndex;
644
508
  logger().info({
645
509
  msg: "persisting message index",
646
510
  connId: conn.id,
647
511
  previousMsgIndex,
648
- newMsgIndex: event.rivetMessageIndex
512
+ newMsgIndex: event3.rivetMessageIndex
649
513
  });
650
514
  const entry = this.#hwsMessageIndex.get(conn.id);
651
515
  if (entry) {
652
- const messageLength = _chunkRZW2DNNDcjs.getValueLength.call(void 0, event.data);
516
+ const messageLength = _chunkF6JYU5IKcjs.getValueLength.call(void 0, event3.data);
653
517
  entry.bufferedMessageSize += messageLength;
654
518
  if (entry.bufferedMessageSize >= CONN_BUFFERED_MESSAGE_SIZE_THRESHOLD) {
655
519
  entry.bufferedMessageSize = 0;
@@ -669,11 +533,11 @@ var EngineActorDriver = class {
669
533
  }
670
534
  }
671
535
  });
672
- websocket.addEventListener("close", (event) => {
673
- wsHandler.onClose(event, wsContext);
536
+ websocket.addEventListener("close", (event3) => {
537
+ wsHandler.onClose(event3, wsContext);
674
538
  });
675
- websocket.addEventListener("error", (event) => {
676
- wsHandler.onError(event, wsContext);
539
+ websocket.addEventListener("error", (event3) => {
540
+ wsHandler.onError(event3, wsContext);
677
541
  });
678
542
  if (isRestoringHibernatable) {
679
543
  logger().info({
@@ -720,10 +584,10 @@ var EngineActorDriver = class {
720
584
  gatewayId: _enginerunner.idToStr.call(void 0, gatewayId),
721
585
  requestId: _enginerunner.idToStr.call(void 0, requestId)
722
586
  });
723
- if (path === _chunkRZW2DNNDcjs.PATH_CONNECT) {
587
+ if (path === _chunkF6JYU5IKcjs.PATH_CONNECT) {
724
588
  return true;
725
- } else if (path === _chunkRZW2DNNDcjs.PATH_WEBSOCKET_BASE || path.startsWith(_chunkRZW2DNNDcjs.PATH_WEBSOCKET_PREFIX)) {
726
- const definition = _chunkGD7UXGOEcjs.lookupInRegistry.call(void 0,
589
+ } else if (path === _chunkF6JYU5IKcjs.PATH_WEBSOCKET_BASE || path.startsWith(_chunkF6JYU5IKcjs.PATH_WEBSOCKET_PREFIX)) {
590
+ const definition = _chunkYQ4LDVD6cjs.lookupInRegistry.call(void 0,
727
591
  this.#config,
728
592
  actorInstance.config.name
729
593
  );
@@ -732,7 +596,7 @@ var EngineActorDriver = class {
732
596
  return true;
733
597
  } else if (typeof canHibernateWebSocket === "function") {
734
598
  try {
735
- const newPath = _chunkRZW2DNNDcjs.truncateRawWebSocketPathPrefix.call(void 0,
599
+ const newPath = _chunkF6JYU5IKcjs.truncateRawWebSocketPathPrefix.call(void 0,
736
600
  url.pathname
737
601
  );
738
602
  const truncatedRequest = new Request(
@@ -751,7 +615,7 @@ var EngineActorDriver = class {
751
615
  } else {
752
616
  return false;
753
617
  }
754
- } else if (path === _chunkRZW2DNNDcjs.PATH_INSPECTOR_CONNECT) {
618
+ } else if (path === _chunkF6JYU5IKcjs.PATH_INSPECTOR_CONNECT) {
755
619
  return false;
756
620
  } else {
757
621
  logger().warn({
@@ -764,7 +628,7 @@ var EngineActorDriver = class {
764
628
  async #hwsLoadAll(actorId) {
765
629
  const actor2 = await this.loadActor(actorId);
766
630
  return actor2.conns.values().map((conn) => {
767
- const connStateManager = conn[_chunkRZW2DNNDcjs.CONN_STATE_MANAGER_SYMBOL];
631
+ const connStateManager = conn[_chunkF6JYU5IKcjs.CONN_STATE_MANAGER_SYMBOL];
768
632
  const hibernatable = connStateManager.hibernatableData;
769
633
  if (!hibernatable) return void 0;
770
634
  return {
@@ -787,7 +651,7 @@ var EngineActorDriver = class {
787
651
  await this.#runner.restoreHibernatingRequests(actor2.id, metaEntries);
788
652
  }
789
653
  onCreateConn(conn) {
790
- const hibernatable = conn[_chunkRZW2DNNDcjs.CONN_STATE_MANAGER_SYMBOL].hibernatableData;
654
+ const hibernatable = conn[_chunkF6JYU5IKcjs.CONN_STATE_MANAGER_SYMBOL].hibernatableData;
791
655
  if (!hibernatable) return;
792
656
  this.#hwsMessageIndex.set(conn.id, {
793
657
  serverMessageIndex: hibernatable.serverMessageIndex,
@@ -809,7 +673,7 @@ var EngineActorDriver = class {
809
673
  });
810
674
  }
811
675
  onBeforePersistConn(conn) {
812
- const stateManager = conn[_chunkRZW2DNNDcjs.CONN_STATE_MANAGER_SYMBOL];
676
+ const stateManager = conn[_chunkF6JYU5IKcjs.CONN_STATE_MANAGER_SYMBOL];
813
677
  const hibernatable = stateManager.hibernatableDataOrError();
814
678
  const entry = this.#hwsMessageIndex.get(conn.id);
815
679
  if (!entry) {
@@ -823,7 +687,7 @@ var EngineActorDriver = class {
823
687
  entry.serverMessageIndex = hibernatable.serverMessageIndex;
824
688
  }
825
689
  onAfterPersistConn(conn) {
826
- const stateManager = conn[_chunkRZW2DNNDcjs.CONN_STATE_MANAGER_SYMBOL];
690
+ const stateManager = conn[_chunkF6JYU5IKcjs.CONN_STATE_MANAGER_SYMBOL];
827
691
  const hibernatable = stateManager.hibernatableDataOrError();
828
692
  const entry = this.#hwsMessageIndex.get(conn.id);
829
693
  if (!entry) {
@@ -847,12 +711,12 @@ var EngineActorDriver = class {
847
711
  };
848
712
 
849
713
  // src/drivers/engine/config.ts
850
-
851
- var EngineConfigSchemaBase = _chunkGD7UXGOEcjs.ClientConfigSchemaBase.extend({
714
+ var _v4 = require('zod/v4');
715
+ var EngineConfigSchemaBase = _chunkSSEP6DHPcjs.ClientConfigSchemaBase.extend({
852
716
  /** Unique key for this runner. Runners connecting a given key will replace any other runner connected with the same key. */
853
- runnerKey: _zod.z.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunkH4TB4X25cjs.getRivetRunnerKey.call(void 0, )))),
717
+ runnerKey: _v4.z.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunkLW6KLR7Acjs.getRivetRunnerKey.call(void 0, )))),
854
718
  /** How many actors this runner can run. */
855
- totalSlots: _zod.z.number().default(1e5)
719
+ totalSlots: _v4.z.number().default(1e5)
856
720
  });
857
721
  var EngineConfigSchemaTransformed = EngineConfigSchemaBase.transform(
858
722
  (config, ctx) => transformEngineConfig(config, ctx)
@@ -862,7 +726,7 @@ var EngineConfigSchema = EngineConfigSchemaTransformed.default(
862
726
  );
863
727
  function transformEngineConfig(config, ctx) {
864
728
  return {
865
- ..._chunkGD7UXGOEcjs.transformClientConfig.call(void 0, config, ctx),
729
+ ..._chunkSSEP6DHPcjs.transformClientConfig.call(void 0, config, ctx),
866
730
  runnerKey: config.runnerKey
867
731
  };
868
732
  }
@@ -873,8 +737,8 @@ function createEngineDriver() {
873
737
  name: "engine",
874
738
  displayName: "Engine",
875
739
  manager: (config) => {
876
- const clientConfig = _chunkGD7UXGOEcjs.convertRegistryConfigToClientConfig.call(void 0, config);
877
- return new (0, _chunkGD7UXGOEcjs.RemoteManagerDriver)(clientConfig);
740
+ const clientConfig = _chunkSSEP6DHPcjs.convertRegistryConfigToClientConfig.call(void 0, config);
741
+ return new (0, _chunkSSEP6DHPcjs.RemoteManagerDriver)(clientConfig);
878
742
  },
879
743
  actor: (config, managerDriver, inlineClient) => {
880
744
  return new EngineActorDriver(
@@ -889,42 +753,42 @@ function createEngineDriver() {
889
753
 
890
754
  // src/registry/config/legacy-runner.ts
891
755
 
892
- var LegacyDriverConfigSchema = _zod.z.object({
756
+ var LegacyDriverConfigSchema = _v4.z.object({
893
757
  /** Machine-readable name to identify this driver by. */
894
- name: _zod.z.string(),
895
- manager: _zod.z.custom(),
896
- actor: _zod.z.custom()
758
+ name: _v4.z.string(),
759
+ manager: _v4.z.custom(),
760
+ actor: _v4.z.custom()
897
761
  });
898
- var LegacyRunnerConfigSchemaUnmerged = _zod.z.object({
762
+ var LegacyRunnerConfigSchemaUnmerged = _v4.z.object({
899
763
  driver: LegacyDriverConfigSchema.optional(),
900
764
  /** @experimental */
901
- maxIncomingMessageSize: _zod.z.number().optional().default(65536),
765
+ maxIncomingMessageSize: _v4.z.number().optional().default(65536),
902
766
  /** @experimental */
903
- maxOutgoingMessageSize: _zod.z.number().optional().default(1048576),
767
+ maxOutgoingMessageSize: _v4.z.number().optional().default(1048576),
904
768
  /** @experimental */
905
- inspector: _chunkRZW2DNNDcjs.InspectorConfigSchema,
769
+ inspector: _chunkF6JYU5IKcjs.InspectorConfigSchema,
906
770
  /** @experimental */
907
- disableDefaultServer: _zod.z.boolean().optional().default(false),
771
+ disableDefaultServer: _v4.z.boolean().optional().default(false),
908
772
  /** @experimental */
909
- defaultServerPort: _zod.z.number().default(6420),
773
+ defaultServerPort: _v4.z.number().default(6420),
910
774
  /** @experimental */
911
- runEngine: _zod.z.boolean().optional().default(() => _chunkH4TB4X25cjs.getRivetRunEngine.call(void 0, )),
775
+ runEngine: _v4.z.boolean().optional().default(() => _chunkLW6KLR7Acjs.getRivetRunEngine.call(void 0, )),
912
776
  /** @experimental */
913
- runEngineVersion: _zod.z.string().optional().default(() => _nullishCoalesce(_chunkH4TB4X25cjs.getRivetRunEngineVersion.call(void 0, ), () => ( _chunkH4TB4X25cjs.VERSION))),
777
+ runEngineVersion: _v4.z.string().optional().default(() => _nullishCoalesce(_chunkLW6KLR7Acjs.getRivetRunEngineVersion.call(void 0, ), () => ( _chunkLW6KLR7Acjs.VERSION))),
914
778
  /** @experimental */
915
- overrideServerAddress: _zod.z.string().optional(),
779
+ overrideServerAddress: _v4.z.string().optional(),
916
780
  /** @experimental */
917
- disableActorDriver: _zod.z.boolean().optional().default(false),
781
+ disableActorDriver: _v4.z.boolean().optional().default(false),
918
782
  /**
919
783
  * @experimental
920
784
  *
921
785
  * Whether to run runners normally or have them managed
922
786
  * serverlessly (by the Rivet Engine for example).
923
787
  */
924
- runnerKind: _zod.z.enum(["serverless", "normal"]).optional().default(
925
- () => _chunkH4TB4X25cjs.getRivetRunnerKind.call(void 0, ) === "serverless" ? "serverless" : "normal"
788
+ runnerKind: _v4.z.enum(["serverless", "normal"]).optional().default(
789
+ () => _chunkLW6KLR7Acjs.getRivetRunnerKind.call(void 0, ) === "serverless" ? "serverless" : "normal"
926
790
  ),
927
- totalSlots: _zod.z.number().optional(),
791
+ totalSlots: _v4.z.number().optional(),
928
792
  /**
929
793
  * @experimental
930
794
  *
@@ -932,19 +796,19 @@ var LegacyRunnerConfigSchemaUnmerged = _zod.z.object({
932
796
  * For example, if the base path is `/api`, then the route `/actors` will be
933
797
  * available at `/api/actors`.
934
798
  */
935
- basePath: _zod.z.string().optional().default("/"),
799
+ basePath: _v4.z.string().optional().default("/"),
936
800
  /**
937
801
  * @experimental
938
802
  *
939
803
  * Disable welcome message.
940
804
  * */
941
- noWelcome: _zod.z.boolean().optional().default(false),
805
+ noWelcome: _v4.z.boolean().optional().default(false),
942
806
  /**
943
807
  * @experimental
944
808
  * */
945
- logging: _zod.z.object({
946
- baseLogger: _zod.z.custom().optional(),
947
- level: _chunkH4TB4X25cjs.LogLevelSchema.optional()
809
+ logging: _v4.z.object({
810
+ baseLogger: _v4.z.custom().optional(),
811
+ level: _chunkLW6KLR7Acjs.LogLevelSchema.optional()
948
812
  }).optional().default(() => ({})),
949
813
  /**
950
814
  * @experimental
@@ -953,26 +817,26 @@ var LegacyRunnerConfigSchemaUnmerged = _zod.z.object({
953
817
  * Can only be used when runnerKind is "serverless".
954
818
  * If true, uses default configuration. Can also provide custom configuration.
955
819
  */
956
- autoConfigureServerless: _zod.z.union([
957
- _zod.z.boolean(),
958
- _zod.z.object({
959
- url: _zod.z.string().optional(),
960
- headers: _zod.z.record(_zod.z.string(), _zod.z.string()).optional(),
961
- maxRunners: _zod.z.number().optional(),
962
- minRunners: _zod.z.number().optional(),
963
- requestLifespan: _zod.z.number().optional(),
964
- runnersMargin: _zod.z.number().optional(),
965
- slotsPerRunner: _zod.z.number().optional(),
966
- metadata: _zod.z.record(_zod.z.string(), _zod.z.unknown()).optional()
820
+ autoConfigureServerless: _v4.z.union([
821
+ _v4.z.boolean(),
822
+ _v4.z.object({
823
+ url: _v4.z.string().optional(),
824
+ headers: _v4.z.record(_v4.z.string(), _v4.z.string()).optional(),
825
+ maxRunners: _v4.z.number().optional(),
826
+ minRunners: _v4.z.number().optional(),
827
+ requestLifespan: _v4.z.number().optional(),
828
+ runnersMargin: _v4.z.number().optional(),
829
+ slotsPerRunner: _v4.z.number().optional(),
830
+ metadata: _v4.z.record(_v4.z.string(), _v4.z.unknown()).optional()
967
831
  })
968
832
  ]).optional(),
969
833
  // This is a function to allow for lazy configuration of upgradeWebSocket on the
970
834
  // fly. This is required since the dependencies that upgradeWebSocket
971
835
  // (specifically Node.js) can sometimes only be specified after the router is
972
836
  // created or must be imported async using `await import(...)`
973
- getUpgradeWebSocket: _zod.z.custom().optional(),
837
+ getUpgradeWebSocket: _v4.z.custom().optional(),
974
838
  /** @experimental */
975
- token: _zod.z.string().optional().transform((v) => v || _chunkH4TB4X25cjs.getRivetToken.call(void 0, ))
839
+ token: _v4.z.string().optional().transform((v) => v || _chunkLW6KLR7Acjs.getRivetToken.call(void 0, ))
976
840
  }).merge(EngineConfigSchemaBase);
977
841
  var LegacyRunnerConfigSchemaTransformed = LegacyRunnerConfigSchemaUnmerged.transform((config, ctx) => ({
978
842
  ...config,
@@ -988,7 +852,7 @@ var LegacyRunnerConfigSchema = LegacyRunnerConfigSchemaTransformed.default(
988
852
  // src/drivers/default.ts
989
853
  function chooseDefaultDriver(config) {
990
854
  if (config.endpoint && config.driver) {
991
- throw new (0, _chunk2XQS746Mcjs.UserError)(
855
+ throw new (0, _chunkL47L3ZWJcjs.UserError)(
992
856
  "Cannot specify both 'endpoint' and 'driver' in configuration"
993
857
  );
994
858
  }
@@ -996,38 +860,43 @@ function chooseDefaultDriver(config) {
996
860
  return config.driver;
997
861
  }
998
862
  if (config.endpoint || config.token) {
999
- _chunkRZW2DNNDcjs.loggerWithoutContext.call(void 0, ).debug({
863
+ _chunkHIDX4C5Ycjs.loggerWithoutContext.call(void 0, ).debug({
1000
864
  msg: "using rivet engine driver",
1001
865
  endpoint: config.endpoint
1002
866
  });
1003
867
  return createEngineDriver();
1004
868
  }
1005
- _chunkRZW2DNNDcjs.loggerWithoutContext.call(void 0, ).debug({ msg: "using default file system driver" });
1006
- return _chunkRUW5CZ5Zcjs.createFileSystemOrMemoryDriver.call(void 0, true);
869
+ _chunkHIDX4C5Ycjs.loggerWithoutContext.call(void 0, ).debug({
870
+ msg: "using default file system driver",
871
+ storagePath: config.storagePath
872
+ });
873
+ return _chunkYQ4LDVD6cjs.createFileSystemOrMemoryDriver.call(void 0, true, {
874
+ path: config.storagePath
875
+ });
1007
876
  }
1008
877
 
1009
878
  // src/engine-process/log.ts
1010
879
  function logger2() {
1011
- return _chunkH4TB4X25cjs.getLogger.call(void 0, "engine-process");
880
+ return _chunkLW6KLR7Acjs.getLogger.call(void 0, "engine-process");
1012
881
  }
1013
882
 
1014
883
  // src/engine-process/mod.ts
1015
884
  var ENGINE_BASE_URL = "https://releases.rivet.dev/rivet";
1016
885
  var ENGINE_BINARY_NAME = "rivet-engine";
1017
886
  async function ensureEngineProcess(options) {
1018
- _chunkRUW5CZ5Zcjs.importNodeDependencies.call(void 0, );
887
+ _chunkF6JYU5IKcjs.importNodeDependencies.call(void 0, );
1019
888
  logger2().debug({
1020
889
  msg: "ensuring engine process",
1021
890
  version: options.version
1022
891
  });
1023
- const path = _chunkRUW5CZ5Zcjs.getNodePath.call(void 0, );
1024
- const storageRoot = _chunkRUW5CZ5Zcjs.getStoragePath.call(void 0, );
892
+ const path = _chunkF6JYU5IKcjs.getNodePath.call(void 0, );
893
+ const storageRoot = _chunkYQ4LDVD6cjs.getStoragePath.call(void 0, );
1025
894
  const binDir = path.join(storageRoot, "bin");
1026
895
  const varDir = path.join(storageRoot, "var");
1027
896
  const logsDir = path.join(varDir, "logs", "rivet-engine");
1028
- await _chunkRUW5CZ5Zcjs.ensureDirectoryExists.call(void 0, binDir);
1029
- await _chunkRUW5CZ5Zcjs.ensureDirectoryExists.call(void 0, varDir);
1030
- await _chunkRUW5CZ5Zcjs.ensureDirectoryExists.call(void 0, logsDir);
897
+ await _chunkYQ4LDVD6cjs.ensureDirectoryExists.call(void 0, binDir);
898
+ await _chunkYQ4LDVD6cjs.ensureDirectoryExists.call(void 0, varDir);
899
+ await _chunkYQ4LDVD6cjs.ensureDirectoryExists.call(void 0, logsDir);
1031
900
  if (await isEngineRunning()) {
1032
901
  try {
1033
902
  const health = await waitForEngineHealth();
@@ -1052,7 +921,7 @@ async function ensureEngineProcess(options) {
1052
921
  const timestamp = (/* @__PURE__ */ new Date()).toISOString().replace(/:/g, "-").replace(/\./g, "-");
1053
922
  const stdoutLogPath = path.join(logsDir, `engine-${timestamp}-stdout.log`);
1054
923
  const stderrLogPath = path.join(logsDir, `engine-${timestamp}-stderr.log`);
1055
- const fsSync = _chunkRUW5CZ5Zcjs.getNodeFsSync.call(void 0, );
924
+ const fsSync = _chunkF6JYU5IKcjs.getNodeFsSync.call(void 0, );
1056
925
  const stdoutStream = fsSync.createWriteStream(stdoutLogPath, {
1057
926
  flags: "a"
1058
927
  });
@@ -1064,7 +933,7 @@ async function ensureEngineProcess(options) {
1064
933
  stdout: stdoutLogPath,
1065
934
  stderr: stderrLogPath
1066
935
  });
1067
- const childProcess = _chunkRUW5CZ5Zcjs.getNodeChildProcess.call(void 0, );
936
+ const childProcess = _chunkF6JYU5IKcjs.getNodeChildProcess.call(void 0, );
1068
937
  const child = childProcess.spawn(binaryPath, ["start"], {
1069
938
  cwd: path.dirname(binaryPath),
1070
939
  stdio: ["inherit", "pipe", "pipe"],
@@ -1200,7 +1069,7 @@ async function downloadEngineBinaryIfNeeded(binaryPath, version, varDir) {
1200
1069
  `failed to download rivet engine binary from ${downloadUrl}: ${response.status} ${response.statusText}`
1201
1070
  );
1202
1071
  }
1203
- const crypto2 = _chunkRUW5CZ5Zcjs.getNodeCrypto.call(void 0, );
1072
+ const crypto2 = _chunkF6JYU5IKcjs.getNodeCrypto.call(void 0, );
1204
1073
  const tempPath = `${binaryPath}.${crypto2.randomUUID()}.tmp`;
1205
1074
  const startTime = Date.now();
1206
1075
  logger2().debug({
@@ -1215,14 +1084,14 @@ async function downloadEngineBinaryIfNeeded(binaryPath, version, varDir) {
1215
1084
  });
1216
1085
  }, 5e3);
1217
1086
  try {
1218
- const stream = _chunkRUW5CZ5Zcjs.getNodeStream.call(void 0, );
1219
- const fsSync = _chunkRUW5CZ5Zcjs.getNodeFsSync.call(void 0, );
1087
+ const stream = _chunkF6JYU5IKcjs.getNodeStream.call(void 0, );
1088
+ const fsSync = _chunkF6JYU5IKcjs.getNodeFsSync.call(void 0, );
1220
1089
  await stream.pipeline(
1221
1090
  response.body,
1222
1091
  fsSync.createWriteStream(tempPath)
1223
1092
  );
1224
1093
  clearTimeout(slowDownloadWarning);
1225
- const fs = _chunkRUW5CZ5Zcjs.getNodeFs.call(void 0, );
1094
+ const fs = _chunkF6JYU5IKcjs.getNodeFs.call(void 0, );
1226
1095
  const stats = await fs.stat(tempPath);
1227
1096
  const downloadDuration = Date.now() - startTime;
1228
1097
  if (process.platform !== "win32") {
@@ -1251,7 +1120,7 @@ async function downloadEngineBinaryIfNeeded(binaryPath, version, varDir) {
1251
1120
  support: "https://rivet.dev/discord"
1252
1121
  });
1253
1122
  try {
1254
- const fs = _chunkRUW5CZ5Zcjs.getNodeFs.call(void 0, );
1123
+ const fs = _chunkF6JYU5IKcjs.getNodeFs.call(void 0, );
1255
1124
  await fs.unlink(tempPath);
1256
1125
  } catch (unlinkError) {
1257
1126
  }
@@ -1293,7 +1162,7 @@ function resolveTargetTripletFor(platform, arch) {
1293
1162
  );
1294
1163
  }
1295
1164
  async function isEngineRunning() {
1296
- return await checkIfEngineAlreadyRunningOnPort(_chunkRZW2DNNDcjs.ENGINE_PORT);
1165
+ return await checkIfEngineAlreadyRunningOnPort(_chunkF6JYU5IKcjs.ENGINE_PORT);
1297
1166
  }
1298
1167
  async function checkIfEngineAlreadyRunningOnPort(port) {
1299
1168
  let response;
@@ -1328,7 +1197,7 @@ async function checkIfEngineAlreadyRunningOnPort(port) {
1328
1197
  }
1329
1198
  async function fileExists(filePath) {
1330
1199
  try {
1331
- const fs = _chunkRUW5CZ5Zcjs.getNodeFs.call(void 0, );
1200
+ const fs = _chunkF6JYU5IKcjs.getNodeFs.call(void 0, );
1332
1201
  await fs.access(filePath);
1333
1202
  return true;
1334
1203
  } catch (e) {
@@ -1342,7 +1211,7 @@ async function waitForEngineHealth() {
1342
1211
  logger2().debug({ msg: "waiting for engine health check" });
1343
1212
  for (let i = 0; i < maxRetries; i++) {
1344
1213
  try {
1345
- const response = await fetch(`${_chunkRZW2DNNDcjs.ENGINE_ENDPOINT}/health`, {
1214
+ const response = await fetch(`${_chunkF6JYU5IKcjs.ENGINE_ENDPOINT}/health`, {
1346
1215
  signal: AbortSignal.timeout(1e3)
1347
1216
  });
1348
1217
  if (response.ok) {
@@ -1376,17 +1245,13 @@ async function waitForEngineHealth() {
1376
1245
  var _factory = require('hono/factory');
1377
1246
  function getInspectorUrl(config, managerPort) {
1378
1247
  if (!config.inspector.enabled) return void 0;
1379
- const url = new URL("https://inspect.rivet.dev");
1380
- const endpoint = _nullishCoalesce(config.inspector.defaultEndpoint, () => ( (config.managerPort !== 6420 ? `http://127.0.0.1:${managerPort}` : void 0)));
1381
- if (endpoint) {
1382
- url.searchParams.set("u", endpoint);
1383
- }
1384
- return url.href;
1248
+ const base = _nullishCoalesce(config.inspector.defaultEndpoint, () => ( `http://127.0.0.1:${managerPort}`));
1249
+ return new URL("/ui/", base).href;
1385
1250
  }
1386
1251
 
1387
1252
  // src/serverless/log.ts
1388
1253
  function logger3() {
1389
- return _chunkH4TB4X25cjs.getLogger.call(void 0, "serverless");
1254
+ return _chunkLW6KLR7Acjs.getLogger.call(void 0, "serverless");
1390
1255
  }
1391
1256
 
1392
1257
  // src/serverless/configure.ts
@@ -1406,12 +1271,12 @@ async function configureServerlessRunner(config) {
1406
1271
  }
1407
1272
  const customConfig = config.serverless.configureRunnerPool;
1408
1273
  _invariant2.default.call(void 0, customConfig, "configureRunnerPool should exist");
1409
- const clientConfig = _chunkGD7UXGOEcjs.convertRegistryConfigToClientConfig.call(void 0, config);
1274
+ const clientConfig = _chunkSSEP6DHPcjs.convertRegistryConfigToClientConfig.call(void 0, config);
1410
1275
  logger3().debug({
1411
1276
  msg: "fetching datacenters",
1412
1277
  endpoint: config.endpoint
1413
1278
  });
1414
- const dcsRes = await _chunkGD7UXGOEcjs.getDatacenters.call(void 0, clientConfig);
1279
+ const dcsRes = await _chunkSSEP6DHPcjs.getDatacenters.call(void 0, clientConfig);
1415
1280
  const runnerName = _nullishCoalesce(customConfig.name, () => ( "default"));
1416
1281
  logger3().debug({
1417
1282
  msg: "configuring serverless runner",
@@ -1433,7 +1298,7 @@ async function configureServerlessRunner(config) {
1433
1298
  drain_on_version_upgrade: _nullishCoalesce(customConfig.drainOnVersionUpgrade, () => ( true)),
1434
1299
  metadataPollInterval: _nullishCoalesce(customConfig.metadataPollInterval, () => ( 1e3))
1435
1300
  };
1436
- await _chunkGD7UXGOEcjs.updateRunnerConfig.call(void 0, clientConfig, runnerName, {
1301
+ await _chunkSSEP6DHPcjs.updateRunnerConfig.call(void 0, clientConfig, runnerName, {
1437
1302
  datacenters: Object.fromEntries(
1438
1303
  dcsRes.datacenters.map((dc) => [dc.name, serverlessConfig])
1439
1304
  )
@@ -1453,7 +1318,7 @@ async function configureServerlessRunner(config) {
1453
1318
 
1454
1319
  // src/registry/log.ts
1455
1320
  function logger4() {
1456
- return _chunkH4TB4X25cjs.getLogger.call(void 0, "registry");
1321
+ return _chunkLW6KLR7Acjs.getLogger.call(void 0, "registry");
1457
1322
  }
1458
1323
 
1459
1324
  // src/registry/serve.ts
@@ -1468,7 +1333,7 @@ async function findFreePort(startPort = DEFAULT_PORT) {
1468
1333
  return _getport2.default.call(void 0, { port: portRange(startPort) });
1469
1334
  }
1470
1335
  async function crossPlatformServe(config, managerPort, app) {
1471
- const runtime = _chunkH4TB4X25cjs.detectRuntime.call(void 0, );
1336
+ const runtime = _chunkLW6KLR7Acjs.detectRuntime.call(void 0, );
1472
1337
  logger4().debug({ msg: "detected runtime for serve", runtime });
1473
1338
  switch (runtime) {
1474
1339
  case "deno":
@@ -1493,7 +1358,7 @@ async function serveNode(config, managerPort, app) {
1493
1358
  } catch (err) {
1494
1359
  logger4().error({
1495
1360
  msg: "failed to import @hono/node-server. please run 'npm install @hono/node-server @hono/node-ws'",
1496
- error: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
1361
+ error: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
1497
1362
  });
1498
1363
  process.exit(1);
1499
1364
  }
@@ -1508,7 +1373,7 @@ async function serveNode(config, managerPort, app) {
1508
1373
  } catch (err) {
1509
1374
  logger4().error({
1510
1375
  msg: "failed to import @hono/node-ws. please run 'npm install @hono/node-server @hono/node-ws'",
1511
- error: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
1376
+ error: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
1512
1377
  });
1513
1378
  process.exit(1);
1514
1379
  }
@@ -1536,7 +1401,7 @@ async function serveDeno(config, managerPort, app) {
1536
1401
  } catch (err) {
1537
1402
  logger4().error({
1538
1403
  msg: "failed to import hono/deno",
1539
- error: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
1404
+ error: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
1540
1405
  });
1541
1406
  process.exit(1);
1542
1407
  }
@@ -1558,7 +1423,7 @@ async function serveBun(config, managerPort, app) {
1558
1423
  } catch (err) {
1559
1424
  logger4().error({
1560
1425
  msg: "failed to import hono/bun",
1561
- error: _chunkH4TB4X25cjs.stringifyError.call(void 0, err)
1426
+ error: _chunkLW6KLR7Acjs.stringifyError.call(void 0, err)
1562
1427
  });
1563
1428
  process.exit(1);
1564
1429
  }
@@ -1580,25 +1445,25 @@ async function serveBun(config, managerPort, app) {
1580
1445
 
1581
1446
  // src/manager/router-schema.ts
1582
1447
 
1583
- var ServerlessStartHeadersSchema = _zod.z.object({
1584
- endpoint: _zod.z.string({
1448
+ var ServerlessStartHeadersSchema = _v4.z.object({
1449
+ endpoint: _v4.z.string({
1585
1450
  error: "x-rivet-endpoint header is required"
1586
1451
  }),
1587
- token: _zod.z.string({ error: "x-rivet-token header must be a string" }).optional(),
1588
- totalSlots: _zod.z.coerce.number({
1452
+ token: _v4.z.string({ error: "x-rivet-token header must be a string" }).optional(),
1453
+ totalSlots: _v4.z.coerce.number({
1589
1454
  error: "x-rivet-total-slots header must be a number"
1590
1455
  }).int({ error: "x-rivet-total-slots header must be an integer" }).gte(1, { error: "x-rivet-total-slots header must be positive" }),
1591
- runnerName: _zod.z.string({
1456
+ runnerName: _v4.z.string({
1592
1457
  error: "x-rivet-runner-name header is required"
1593
1458
  }),
1594
- namespace: _zod.z.string({
1459
+ namespace: _v4.z.string({
1595
1460
  error: "x-rivet-namespace-name header is required"
1596
1461
  })
1597
1462
  });
1598
1463
 
1599
1464
  // src/serverless/router.ts
1600
1465
  function buildServerlessRouter(driverConfig, config) {
1601
- return _chunkRZW2DNNDcjs.createRouter.call(void 0, config.serverless.basePath, (router) => {
1466
+ return _chunkF6JYU5IKcjs.createRouter.call(void 0, config.serverless.basePath, (router) => {
1602
1467
  router.get("/", (c) => {
1603
1468
  return c.text(
1604
1469
  "This is a RivetKit server.\n\nLearn more at https://rivetkit.org"
@@ -1614,7 +1479,7 @@ function buildServerlessRouter(driverConfig, config) {
1614
1479
  namespace: c.req.header("x-rivet-namespace-name")
1615
1480
  });
1616
1481
  if (!parseResult.success) {
1617
- throw new (0, _chunk2XQS746Mcjs.InvalidRequest)(
1482
+ throw new (0, _chunkL47L3ZWJcjs.InvalidRequest)(
1618
1483
  _nullishCoalesce(((_a = parseResult.error.issues[0]) == null ? void 0 : _a.message), () => ( "invalid serverless start headers"))
1619
1484
  );
1620
1485
  }
@@ -1628,10 +1493,10 @@ function buildServerlessRouter(driverConfig, config) {
1628
1493
  });
1629
1494
  if (config.endpoint) {
1630
1495
  if (!endpointsMatch(endpoint, config.endpoint)) {
1631
- throw new (0, _chunk2XQS746Mcjs.EndpointMismatch)(config.endpoint, endpoint);
1496
+ throw new (0, _chunkL47L3ZWJcjs.EndpointMismatch)(config.endpoint, endpoint);
1632
1497
  }
1633
1498
  if (namespace !== config.namespace) {
1634
- throw new (0, _chunk2XQS746Mcjs.NamespaceMismatch)(config.namespace, namespace);
1499
+ throw new (0, _chunkL47L3ZWJcjs.NamespaceMismatch)(config.namespace, namespace);
1635
1500
  }
1636
1501
  }
1637
1502
  const newConfig = {
@@ -1647,10 +1512,10 @@ function buildServerlessRouter(driverConfig, config) {
1647
1512
  runnerKey: void 0
1648
1513
  }
1649
1514
  };
1650
- const managerDriver = new (0, _chunkGD7UXGOEcjs.RemoteManagerDriver)(
1651
- _chunkGD7UXGOEcjs.convertRegistryConfigToClientConfig.call(void 0, newConfig)
1515
+ const managerDriver = new (0, _chunkSSEP6DHPcjs.RemoteManagerDriver)(
1516
+ _chunkSSEP6DHPcjs.convertRegistryConfigToClientConfig.call(void 0, newConfig)
1652
1517
  );
1653
- const client = _chunkGD7UXGOEcjs.createClientWithDriver.call(void 0, managerDriver);
1518
+ const client = _chunkSSEP6DHPcjs.createClientWithDriver.call(void 0, managerDriver);
1654
1519
  const actorDriver = driverConfig.actor(
1655
1520
  newConfig,
1656
1521
  managerDriver,
@@ -1662,10 +1527,10 @@ function buildServerlessRouter(driverConfig, config) {
1662
1527
  );
1663
1528
  return await actorDriver.serverlessHandleStart(c);
1664
1529
  });
1665
- router.get("/health", (c) => _chunkRZW2DNNDcjs.handleHealthRequest.call(void 0, c));
1530
+ router.get("/health", (c) => _chunkF6JYU5IKcjs.handleHealthRequest.call(void 0, c));
1666
1531
  router.get(
1667
1532
  "/metadata",
1668
- (c) => _chunkRZW2DNNDcjs.handleMetadataRequest.call(void 0,
1533
+ (c) => _chunkF6JYU5IKcjs.handleMetadataRequest.call(void 0,
1669
1534
  c,
1670
1535
  config,
1671
1536
  { serverless: {} },
@@ -1750,9 +1615,9 @@ var Runtime = class _Runtime {
1750
1615
  logger4().info("rivetkit starting");
1751
1616
  const config = registry.parseConfig();
1752
1617
  if ((_a = config.logging) == null ? void 0 : _a.baseLogger) {
1753
- _chunkH4TB4X25cjs.configureBaseLogger.call(void 0, config.logging.baseLogger);
1618
+ _chunkLW6KLR7Acjs.configureBaseLogger.call(void 0, config.logging.baseLogger);
1754
1619
  } else {
1755
- _chunkH4TB4X25cjs.configureDefaultLogger.call(void 0, (_b = config.logging) == null ? void 0 : _b.level);
1620
+ _chunkLW6KLR7Acjs.configureDefaultLogger.call(void 0, (_b = config.logging) == null ? void 0 : _b.level);
1756
1621
  }
1757
1622
  _invariant2.default.call(void 0,
1758
1623
  !(config.serverless.spawnEngine && config.serveManager),
@@ -1762,7 +1627,7 @@ var Runtime = class _Runtime {
1762
1627
  const managerDriver = driver.manager(config);
1763
1628
  let managerPort;
1764
1629
  if (config.serverless.spawnEngine) {
1765
- managerPort = _chunkRZW2DNNDcjs.ENGINE_PORT;
1630
+ managerPort = _chunkF6JYU5IKcjs.ENGINE_PORT;
1766
1631
  logger4().debug({
1767
1632
  msg: "spawning engine",
1768
1633
  version: config.serverless.engineVersion
@@ -1771,10 +1636,11 @@ var Runtime = class _Runtime {
1771
1636
  version: config.serverless.engineVersion
1772
1637
  });
1773
1638
  } else if (config.serveManager) {
1639
+ const configuredManagerPort = config.managerPort;
1774
1640
  let upgradeWebSocket;
1775
1641
  const getUpgradeWebSocket = () => upgradeWebSocket;
1776
1642
  managerDriver.setGetUpgradeWebSocket(getUpgradeWebSocket);
1777
- const { router: managerRouter } = _chunkRZW2DNNDcjs.buildManagerRouter.call(void 0,
1643
+ const { router: managerRouter } = _chunkF6JYU5IKcjs.buildManagerRouter.call(void 0,
1778
1644
  config,
1779
1645
  managerDriver,
1780
1646
  getUpgradeWebSocket
@@ -1784,6 +1650,11 @@ var Runtime = class _Runtime {
1784
1650
  msg: "serving manager",
1785
1651
  port: managerPort
1786
1652
  });
1653
+ if (config.publicEndpoint === `http://127.0.0.1:${configuredManagerPort}`) {
1654
+ config.publicEndpoint = `http://127.0.0.1:${managerPort}`;
1655
+ config.serverless.publicEndpoint = config.publicEndpoint;
1656
+ }
1657
+ config.managerPort = managerPort;
1787
1658
  const out = await crossPlatformServe(
1788
1659
  config,
1789
1660
  managerPort,
@@ -1826,7 +1697,7 @@ var Runtime = class _Runtime {
1826
1697
  this.#startKind = "runner";
1827
1698
  if (this.#config.runner && this.#driver.autoStartActorDriver) {
1828
1699
  logger4().debug("starting actor driver");
1829
- const inlineClient = _chunkGD7UXGOEcjs.createClientWithDriver.call(void 0,
1700
+ const inlineClient = _chunkSSEP6DHPcjs.createClientWithDriver.call(void 0,
1830
1701
  this.#managerDriver
1831
1702
  );
1832
1703
  this.#driver.actor(this.#config, this.#managerDriver, inlineClient);
@@ -1838,7 +1709,7 @@ var Runtime = class _Runtime {
1838
1709
  const inspectorUrl = this.managerPort ? getInspectorUrl(this.#config, this.managerPort) : void 0;
1839
1710
  console.log();
1840
1711
  console.log(
1841
- ` RivetKit ${_chunkH4TB4X25cjs.package_default.version} (${this.#driver.displayName} - ${this.#startKind === "serverless" ? "Serverless" : "Runner"})`
1712
+ ` RivetKit ${_chunkLW6KLR7Acjs.package_default.version} (${this.#driver.displayName} - ${this.#startKind === "serverless" ? "Serverless" : "Runner"})`
1842
1713
  );
1843
1714
  if (this.#config.namespace !== "default") {
1844
1715
  logLine("Namespace", this.#config.namespace);
@@ -1879,16 +1750,18 @@ var Registry = class {
1879
1750
  return this.#config;
1880
1751
  }
1881
1752
  parseConfig() {
1882
- return _chunkRZW2DNNDcjs.RegistryConfigSchema.parse(this.#config);
1753
+ return _chunkF6JYU5IKcjs.RegistryConfigSchema.parse(this.#config);
1883
1754
  }
1884
1755
  // Shared runtime instance
1885
1756
  #runtime;
1886
1757
  #runtimePromise;
1887
1758
  constructor(config) {
1888
1759
  this.#config = config;
1889
- setTimeout(() => {
1890
- this.#ensureRuntime();
1891
- }, 0);
1760
+ if (_chunkLW6KLR7Acjs.getNodeEnv.call(void 0, ) !== "test") {
1761
+ setTimeout(() => {
1762
+ this.#ensureRuntime();
1763
+ }, 0);
1764
+ }
1892
1765
  }
1893
1766
  /** Creates runtime if not already created. Idempotent. */
1894
1767
  #ensureRuntime() {
@@ -1945,7 +1818,7 @@ var Registry = class {
1945
1818
  "autoConfigureServerless can only be configured when runnerKind is 'serverless'"
1946
1819
  );
1947
1820
  }
1948
- const isDevEnv = _chunkH4TB4X25cjs.isDev.call(void 0, );
1821
+ const isDevEnv = _chunkLW6KLR7Acjs.isDev.call(void 0, );
1949
1822
  if (isDevEnv && config.runnerKind === "serverless") {
1950
1823
  if ((inputConfig == null ? void 0 : inputConfig.runEngine) === void 0) config.runEngine = true;
1951
1824
  if ((inputConfig == null ? void 0 : inputConfig.autoConfigureServerless) === void 0)
@@ -1958,7 +1831,7 @@ var Registry = class {
1958
1831
  }
1959
1832
  }
1960
1833
  #legacyStartServerless(config, _inputConfig) {
1961
- const client = _chunkGD7UXGOEcjs.createClient.call(void 0, {
1834
+ const client = _chunkSSEP6DHPcjs.createClient.call(void 0, {
1962
1835
  endpoint: config.endpoint,
1963
1836
  token: config.token,
1964
1837
  namespace: config.namespace,
@@ -1971,7 +1844,7 @@ var Registry = class {
1971
1844
  }
1972
1845
  #legacyStartNormal(config) {
1973
1846
  this.#ensureRuntime().then((runtime) => runtime.startRunner());
1974
- const client = _chunkGD7UXGOEcjs.createClient.call(void 0, {
1847
+ const client = _chunkSSEP6DHPcjs.createClient.call(void 0, {
1975
1848
  endpoint: config.endpoint,
1976
1849
  token: config.token,
1977
1850
  namespace: config.namespace,
@@ -1992,5 +1865,7 @@ function setup(input) {
1992
1865
 
1993
1866
 
1994
1867
 
1995
- exports.actor = actor; exports.createEngineDriver = createEngineDriver; exports.Registry = Registry; exports.setup = setup;
1996
- //# sourceMappingURL=chunk-X35U3YNX.cjs.map
1868
+
1869
+
1870
+ exports.actor = actor; exports.event = event2; exports.queue = queue2; exports.createEngineDriver = createEngineDriver; exports.Registry = Registry; exports.setup = setup;
1871
+ //# sourceMappingURL=chunk-TYLXNCA5.cjs.map