rivetkit 2.1.0-rc.1 → 2.1.0

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 (83) hide show
  1. package/dist/browser/client.js +1 -1
  2. package/dist/browser/client.js.map +1 -1
  3. package/dist/browser/inspector/client.js +1 -1
  4. package/dist/browser/inspector/client.js.map +1 -1
  5. package/dist/inspector.tar.gz +0 -0
  6. package/dist/tsup/{chunk-SSEP6DHP.cjs → chunk-5CI72Y5G.cjs} +152 -152
  7. package/dist/tsup/{chunk-SSEP6DHP.cjs.map → chunk-5CI72Y5G.cjs.map} +1 -1
  8. package/dist/tsup/{chunk-7K4CYDGD.js → chunk-7T4AIAQV.js} +10 -5
  9. package/dist/tsup/chunk-7T4AIAQV.js.map +1 -0
  10. package/dist/tsup/{chunk-T5YCUGVS.js → chunk-CIXKJYPF.js} +2 -2
  11. package/dist/tsup/{chunk-TPGXWFQT.cjs → chunk-DQFZ5S3X.cjs} +3 -3
  12. package/dist/tsup/{chunk-TPGXWFQT.cjs.map → chunk-DQFZ5S3X.cjs.map} +1 -1
  13. package/dist/tsup/{chunk-6LIBPELE.js → chunk-E2WWZFTQ.js} +2 -2
  14. package/dist/tsup/chunk-E2WWZFTQ.js.map +1 -0
  15. package/dist/tsup/{chunk-OMEPCQK2.js → chunk-KGR7K72J.js} +81 -84
  16. package/dist/tsup/chunk-KGR7K72J.js.map +1 -0
  17. package/dist/tsup/{chunk-F6JYU5IK.cjs → chunk-LBUMYRTK.cjs} +74 -74
  18. package/dist/tsup/{chunk-F6JYU5IK.cjs.map → chunk-LBUMYRTK.cjs.map} +1 -1
  19. package/dist/tsup/{chunk-TYLXNCA5.cjs → chunk-LICW4TVI.cjs} +97 -97
  20. package/dist/tsup/{chunk-TYLXNCA5.cjs.map → chunk-LICW4TVI.cjs.map} +1 -1
  21. package/dist/tsup/{chunk-AIYEYMX5.cjs → chunk-OV6UBV6G.cjs} +26 -21
  22. package/dist/tsup/chunk-OV6UBV6G.cjs.map +1 -0
  23. package/dist/tsup/{chunk-HIDX4C5Y.cjs → chunk-RYSCONN4.cjs} +3 -3
  24. package/dist/tsup/{chunk-HIDX4C5Y.cjs.map → chunk-RYSCONN4.cjs.map} +1 -1
  25. package/dist/tsup/{chunk-5ESWDTHJ.js → chunk-SHX2N2B4.js} +6 -6
  26. package/dist/tsup/{chunk-YQ4LDVD6.cjs → chunk-TO4U43RL.cjs} +234 -234
  27. package/dist/tsup/{chunk-YQ4LDVD6.cjs.map → chunk-TO4U43RL.cjs.map} +1 -1
  28. package/dist/tsup/{chunk-HAZL2EPK.cjs → chunk-UHDLODMO.cjs} +4 -4
  29. package/dist/tsup/{chunk-HAZL2EPK.cjs.map → chunk-UHDLODMO.cjs.map} +1 -1
  30. package/dist/tsup/{chunk-LW6KLR7A.cjs → chunk-UN5D22OI.cjs} +2 -2
  31. package/dist/tsup/chunk-UN5D22OI.cjs.map +1 -0
  32. package/dist/tsup/{chunk-MZ37VV3P.js → chunk-VSFWZWCC.js} +5 -5
  33. package/dist/tsup/{chunk-XWBAQO5H.cjs → chunk-WLLTFDMH.cjs} +108 -111
  34. package/dist/tsup/chunk-WLLTFDMH.cjs.map +1 -0
  35. package/dist/tsup/{chunk-M2T62AZQ.js → chunk-WUXPLV6G.js} +3 -3
  36. package/dist/tsup/{chunk-IVG73YCW.js → chunk-XYUY6WQB.js} +2 -2
  37. package/dist/tsup/{chunk-DIGBC2VI.js → chunk-YLYT7WSZ.js} +5 -5
  38. package/dist/tsup/{chunk-A6YIZWTK.js → chunk-ZMZNIOTG.js} +2 -2
  39. package/dist/tsup/client/mod.cjs +6 -6
  40. package/dist/tsup/client/mod.js +5 -5
  41. package/dist/tsup/common/log.cjs +2 -2
  42. package/dist/tsup/common/log.js +1 -1
  43. package/dist/tsup/common/websocket.cjs +3 -3
  44. package/dist/tsup/common/websocket.js +2 -2
  45. package/dist/tsup/context-7X-Dm6_f.d.cts +75 -0
  46. package/dist/tsup/context-x9zKhx5T.d.ts +75 -0
  47. package/dist/tsup/driver-helpers/mod.cjs +4 -4
  48. package/dist/tsup/driver-helpers/mod.js +3 -3
  49. package/dist/tsup/driver-test-suite/mod.cjs +60 -60
  50. package/dist/tsup/driver-test-suite/mod.js +10 -10
  51. package/dist/tsup/inspector/mod.cjs +3 -3
  52. package/dist/tsup/inspector/mod.js +2 -2
  53. package/dist/tsup/mod.cjs +8 -8
  54. package/dist/tsup/mod.d.cts +2 -0
  55. package/dist/tsup/mod.d.ts +2 -0
  56. package/dist/tsup/mod.js +7 -7
  57. package/dist/tsup/serve-test-suite/mod.cjs +99 -99
  58. package/dist/tsup/serve-test-suite/mod.js +10 -10
  59. package/dist/tsup/test/mod.cjs +10 -10
  60. package/dist/tsup/test/mod.js +6 -6
  61. package/dist/tsup/utils.cjs +2 -2
  62. package/dist/tsup/utils.js +1 -1
  63. package/dist/tsup/workflow/mod.cjs +5 -5
  64. package/dist/tsup/workflow/mod.d.cts +4 -62
  65. package/dist/tsup/workflow/mod.d.ts +4 -62
  66. package/dist/tsup/workflow/mod.js +4 -4
  67. package/package.json +6 -6
  68. package/src/mod.ts +6 -0
  69. package/src/workflow/context.ts +75 -15
  70. package/src/workflow/mod.ts +7 -1
  71. package/dist/tsup/chunk-6LIBPELE.js.map +0 -1
  72. package/dist/tsup/chunk-7K4CYDGD.js.map +0 -1
  73. package/dist/tsup/chunk-AIYEYMX5.cjs.map +0 -1
  74. package/dist/tsup/chunk-LW6KLR7A.cjs.map +0 -1
  75. package/dist/tsup/chunk-OMEPCQK2.js.map +0 -1
  76. package/dist/tsup/chunk-XWBAQO5H.cjs.map +0 -1
  77. /package/dist/tsup/{chunk-T5YCUGVS.js.map → chunk-CIXKJYPF.js.map} +0 -0
  78. /package/dist/tsup/{chunk-5ESWDTHJ.js.map → chunk-SHX2N2B4.js.map} +0 -0
  79. /package/dist/tsup/{chunk-MZ37VV3P.js.map → chunk-VSFWZWCC.js.map} +0 -0
  80. /package/dist/tsup/{chunk-M2T62AZQ.js.map → chunk-WUXPLV6G.js.map} +0 -0
  81. /package/dist/tsup/{chunk-IVG73YCW.js.map → chunk-XYUY6WQB.js.map} +0 -0
  82. /package/dist/tsup/{chunk-DIGBC2VI.js.map → chunk-YLYT7WSZ.js.map} +0 -0
  83. /package/dist/tsup/{chunk-A6YIZWTK.js.map → chunk-ZMZNIOTG.js.map} +0 -0
@@ -1,27 +1,27 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
3
 
4
- var _chunkAIYEYMX5cjs = require('./chunk-AIYEYMX5.cjs');
4
+ var _chunkOV6UBV6Gcjs = require('./chunk-OV6UBV6G.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkTYLXNCA5cjs = require('./chunk-TYLXNCA5.cjs');
8
+ var _chunkLICW4TVIcjs = require('./chunk-LICW4TVI.cjs');
9
9
 
10
10
 
11
11
  var _chunk6LJAZ5R4cjs = require('./chunk-6LJAZ5R4.cjs');
12
12
 
13
13
 
14
14
 
15
- var _chunkLW6KLR7Acjs = require('./chunk-LW6KLR7A.cjs');
15
+ var _chunkUN5D22OIcjs = require('./chunk-UN5D22OI.cjs');
16
16
 
17
17
  // src/driver-test-suite/log.ts
18
18
  function logger() {
19
- return _chunkLW6KLR7Acjs.getLogger.call(void 0, "test-suite");
19
+ return _chunkUN5D22OIcjs.getLogger.call(void 0, "test-suite");
20
20
  }
21
21
 
22
22
  // fixtures/driver-test-suite/hibernation.ts
23
23
  var HIBERNATION_SLEEP_TIMEOUT = 500;
24
- var hibernationActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
24
+ var hibernationActor = _chunkLICW4TVIcjs.actor.call(void 0, {
25
25
  state: {
26
26
  sleepCount: 0,
27
27
  wakeCount: 0
@@ -89,7 +89,7 @@ var hibernationActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
89
89
 
90
90
  // fixtures/driver-test-suite/sleep.ts
91
91
  var SLEEP_TIMEOUT = 1e3;
92
- var sleep = _chunkTYLXNCA5cjs.actor.call(void 0, {
92
+ var sleep = _chunkLICW4TVIcjs.actor.call(void 0, {
93
93
  state: { startCount: 0, sleepCount: 0 },
94
94
  onWake: (c) => {
95
95
  c.state.startCount += 1;
@@ -118,7 +118,7 @@ var sleep = _chunkTYLXNCA5cjs.actor.call(void 0, {
118
118
  sleepTimeout: SLEEP_TIMEOUT
119
119
  }
120
120
  });
121
- var sleepWithLongRpc = _chunkTYLXNCA5cjs.actor.call(void 0, {
121
+ var sleepWithLongRpc = _chunkLICW4TVIcjs.actor.call(void 0, {
122
122
  state: { startCount: 0, sleepCount: 0 },
123
123
  createVars: () => ({}),
124
124
  onWake: (c) => {
@@ -136,7 +136,7 @@ var sleepWithLongRpc = _chunkTYLXNCA5cjs.actor.call(void 0, {
136
136
  },
137
137
  longRunningRpc: async (c) => {
138
138
  c.log.info("starting long running rpc");
139
- c.vars.longRunningResolve = _chunkLW6KLR7Acjs.promiseWithResolvers.call(void 0, (reason) => c.log.warn({ msg: "unhandled long running rpc rejection", reason }));
139
+ c.vars.longRunningResolve = _chunkUN5D22OIcjs.promiseWithResolvers.call(void 0, (reason) => c.log.warn({ msg: "unhandled long running rpc rejection", reason }));
140
140
  c.broadcast("waiting");
141
141
  await c.vars.longRunningResolve.promise;
142
142
  c.log.info("finished long running rpc");
@@ -150,7 +150,7 @@ var sleepWithLongRpc = _chunkTYLXNCA5cjs.actor.call(void 0, {
150
150
  sleepTimeout: SLEEP_TIMEOUT
151
151
  }
152
152
  });
153
- var sleepWithRawHttp = _chunkTYLXNCA5cjs.actor.call(void 0, {
153
+ var sleepWithRawHttp = _chunkLICW4TVIcjs.actor.call(void 0, {
154
154
  state: { startCount: 0, sleepCount: 0, requestCount: 0 },
155
155
  onWake: (c) => {
156
156
  c.state.startCount += 1;
@@ -187,7 +187,7 @@ var sleepWithRawHttp = _chunkTYLXNCA5cjs.actor.call(void 0, {
187
187
  sleepTimeout: SLEEP_TIMEOUT
188
188
  }
189
189
  });
190
- var sleepWithRawWebSocket = _chunkTYLXNCA5cjs.actor.call(void 0, {
190
+ var sleepWithRawWebSocket = _chunkLICW4TVIcjs.actor.call(void 0, {
191
191
  state: { startCount: 0, sleepCount: 0, connectionCount: 0 },
192
192
  onWake: (c) => {
193
193
  c.state.startCount += 1;
@@ -250,7 +250,7 @@ var sleepWithRawWebSocket = _chunkTYLXNCA5cjs.actor.call(void 0, {
250
250
  sleepTimeout: SLEEP_TIMEOUT
251
251
  }
252
252
  });
253
- var sleepWithNoSleepOption = _chunkTYLXNCA5cjs.actor.call(void 0, {
253
+ var sleepWithNoSleepOption = _chunkLICW4TVIcjs.actor.call(void 0, {
254
254
  state: { startCount: 0, sleepCount: 0 },
255
255
  onWake: (c) => {
256
256
  c.state.startCount += 1;
@@ -274,7 +274,7 @@ var sleepWithNoSleepOption = _chunkTYLXNCA5cjs.actor.call(void 0, {
274
274
 
275
275
  // fixtures/driver-test-suite/run.ts
276
276
  var RUN_SLEEP_TIMEOUT = 1e3;
277
- var runWithTicks = _chunkTYLXNCA5cjs.actor.call(void 0, {
277
+ var runWithTicks = _chunkLICW4TVIcjs.actor.call(void 0, {
278
278
  state: {
279
279
  tickCount: 0,
280
280
  lastTickAt: 0,
@@ -316,7 +316,7 @@ var runWithTicks = _chunkTYLXNCA5cjs.actor.call(void 0, {
316
316
  runStopTimeout: 1e3
317
317
  }
318
318
  });
319
- var runWithQueueConsumer = _chunkTYLXNCA5cjs.actor.call(void 0, {
319
+ var runWithQueueConsumer = _chunkLICW4TVIcjs.actor.call(void 0, {
320
320
  state: {
321
321
  messagesReceived: [],
322
322
  runStarted: false,
@@ -359,7 +359,7 @@ var runWithQueueConsumer = _chunkTYLXNCA5cjs.actor.call(void 0, {
359
359
  runStopTimeout: 1e3
360
360
  }
361
361
  });
362
- var runWithEarlyExit = _chunkTYLXNCA5cjs.actor.call(void 0, {
362
+ var runWithEarlyExit = _chunkLICW4TVIcjs.actor.call(void 0, {
363
363
  state: {
364
364
  runStarted: false,
365
365
  destroyCalled: false
@@ -383,7 +383,7 @@ var runWithEarlyExit = _chunkTYLXNCA5cjs.actor.call(void 0, {
383
383
  sleepTimeout: RUN_SLEEP_TIMEOUT
384
384
  }
385
385
  });
386
- var runWithError = _chunkTYLXNCA5cjs.actor.call(void 0, {
386
+ var runWithError = _chunkLICW4TVIcjs.actor.call(void 0, {
387
387
  state: {
388
388
  runStarted: false,
389
389
  destroyCalled: false
@@ -407,7 +407,7 @@ var runWithError = _chunkTYLXNCA5cjs.actor.call(void 0, {
407
407
  sleepTimeout: RUN_SLEEP_TIMEOUT
408
408
  }
409
409
  });
410
- var runWithoutHandler = _chunkTYLXNCA5cjs.actor.call(void 0, {
410
+ var runWithoutHandler = _chunkLICW4TVIcjs.actor.call(void 0, {
411
411
  state: {
412
412
  wakeCount: 0
413
413
  },
@@ -427,33 +427,28 @@ var runWithoutHandler = _chunkTYLXNCA5cjs.actor.call(void 0, {
427
427
  // fixtures/driver-test-suite/workflow.ts
428
428
  var _workflowengine = require('@rivetkit/workflow-engine');
429
429
  var WORKFLOW_QUEUE_NAME = "workflow-default";
430
- var workflowCounterActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
430
+ var workflowCounterActor = _chunkLICW4TVIcjs.actor.call(void 0, {
431
431
  state: {
432
432
  runCount: 0,
433
433
  guardTriggered: false,
434
434
  history: []
435
435
  },
436
- run: _chunkAIYEYMX5cjs.workflow.call(void 0, async (ctx) => {
437
- await ctx.loop({
438
- name: "counter",
439
- run: async (loopCtx) => {
440
- const actorLoopCtx = loopCtx;
441
- try {
442
- actorLoopCtx.state;
443
- } catch (e2) {
444
- }
445
- await loopCtx.step("increment", async () => {
446
- actorLoopCtx.state.runCount += 1;
447
- actorLoopCtx.state.history.push(actorLoopCtx.state.runCount);
448
- });
449
- await loopCtx.sleep("idle", 25);
450
- return _workflowengine.Loop.continue(void 0);
436
+ run: _chunkOV6UBV6Gcjs.workflow.call(void 0, async (ctx) => {
437
+ await ctx.loop("counter", async (loopCtx) => {
438
+ try {
439
+ loopCtx.state;
440
+ } catch (e2) {
451
441
  }
442
+ await loopCtx.step("increment", async () => {
443
+ incrementWorkflowCounter(loopCtx);
444
+ });
445
+ await loopCtx.sleep("idle", 25);
446
+ return _workflowengine.Loop.continue(void 0);
452
447
  });
453
448
  }),
454
449
  actions: {
455
450
  getState: async (c) => {
456
- const guardFlag = await c.kv.get(_chunkAIYEYMX5cjs.WORKFLOW_GUARD_KV_KEY);
451
+ const guardFlag = await c.kv.get(_chunkOV6UBV6Gcjs.WORKFLOW_GUARD_KV_KEY);
457
452
  if (guardFlag === "true") {
458
453
  c.state.guardTriggered = true;
459
454
  }
@@ -464,32 +459,27 @@ var workflowCounterActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
464
459
  sleepTimeout: 50
465
460
  }
466
461
  });
467
- var workflowQueueActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
462
+ var workflowQueueActor = _chunkLICW4TVIcjs.actor.call(void 0, {
468
463
  state: {
469
464
  received: []
470
465
  },
471
466
  queues: {
472
- [WORKFLOW_QUEUE_NAME]: _chunkTYLXNCA5cjs.queue.call(void 0, )
473
- },
474
- run: _chunkAIYEYMX5cjs.workflow.call(void 0, async (ctx) => {
475
- await ctx.loop({
476
- name: "queue",
477
- run: async (loopCtx) => {
478
- const actorLoopCtx = loopCtx;
479
- const [message] = await loopCtx.queue.next("queue-wait", {
480
- names: [WORKFLOW_QUEUE_NAME],
481
- completable: true
482
- });
483
- if (!message || !message.complete) {
484
- return _workflowengine.Loop.continue(void 0);
485
- }
486
- const complete = message.complete;
487
- await loopCtx.step("store-message", async () => {
488
- actorLoopCtx.state.received.push(message.body);
489
- await complete({ echo: message.body });
490
- });
467
+ [WORKFLOW_QUEUE_NAME]: _chunkLICW4TVIcjs.queue.call(void 0, )
468
+ },
469
+ run: _chunkOV6UBV6Gcjs.workflow.call(void 0, async (ctx) => {
470
+ await ctx.loop("queue", async (loopCtx) => {
471
+ const message = await loopCtx.queue.next("queue-wait", {
472
+ names: [WORKFLOW_QUEUE_NAME],
473
+ completable: true
474
+ });
475
+ if (!message.complete) {
491
476
  return _workflowengine.Loop.continue(void 0);
492
477
  }
478
+ const complete = message.complete;
479
+ await loopCtx.step("store-message", async () => {
480
+ await storeWorkflowQueueMessage(loopCtx, message.body, complete);
481
+ });
482
+ return _workflowengine.Loop.continue(void 0);
493
483
  });
494
484
  }),
495
485
  actions: {
@@ -505,7 +495,7 @@ var workflowQueueActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
505
495
  }
506
496
  }
507
497
  });
508
- var workflowAccessActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
498
+ var workflowAccessActor = _chunkLICW4TVIcjs.actor.call(void 0, {
509
499
  db: _chunk6LJAZ5R4cjs.db.call(void 0, {
510
500
  onMigrate: async (rawDb) => {
511
501
  await rawDb.execute(`
@@ -522,61 +512,46 @@ var workflowAccessActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
522
512
  insideDbCount: 0,
523
513
  insideClientAvailable: false
524
514
  },
525
- run: _chunkAIYEYMX5cjs.workflow.call(void 0, async (ctx) => {
526
- await ctx.loop({
527
- name: "access",
528
- run: async (loopCtx) => {
529
- const actorLoopCtx = loopCtx;
530
- let outsideDbError = null;
531
- let outsideClientError = null;
532
- try {
533
- actorLoopCtx.db;
534
- } catch (error) {
535
- outsideDbError = error instanceof Error ? error.message : String(error);
536
- }
537
- try {
538
- actorLoopCtx.client();
539
- } catch (error) {
540
- outsideClientError = error instanceof Error ? error.message : String(error);
541
- }
542
- await loopCtx.step("access-step", async () => {
543
- var _a;
544
- await loopCtx.db.execute(
545
- `INSERT INTO workflow_access_log (created_at) VALUES (${Date.now()})`
546
- );
547
- const counts = await loopCtx.db.execute(
548
- `SELECT COUNT(*) as count FROM workflow_access_log`
549
- );
550
- const client = loopCtx.client();
551
- loopCtx.state.outsideDbError = outsideDbError;
552
- loopCtx.state.outsideClientError = outsideClientError;
553
- loopCtx.state.insideDbCount = _nullishCoalesce(((_a = counts[0]) == null ? void 0 : _a.count), () => ( 0));
554
- loopCtx.state.insideClientAvailable = typeof client.workflowQueueActor.getForId === "function";
555
- });
556
- await loopCtx.sleep("idle", 25);
557
- return _workflowengine.Loop.continue(void 0);
515
+ run: _chunkOV6UBV6Gcjs.workflow.call(void 0, async (ctx) => {
516
+ await ctx.loop("access", async (loopCtx) => {
517
+ let outsideDbError = null;
518
+ let outsideClientError = null;
519
+ try {
520
+ loopCtx.db;
521
+ } catch (error) {
522
+ outsideDbError = error instanceof Error ? error.message : String(error);
523
+ }
524
+ try {
525
+ loopCtx.client();
526
+ } catch (error) {
527
+ outsideClientError = error instanceof Error ? error.message : String(error);
558
528
  }
529
+ await loopCtx.step("access-step", async () => {
530
+ await updateWorkflowAccessState(
531
+ loopCtx,
532
+ outsideDbError,
533
+ outsideClientError
534
+ );
535
+ });
536
+ await loopCtx.sleep("idle", 25);
537
+ return _workflowengine.Loop.continue(void 0);
559
538
  });
560
539
  }),
561
540
  actions: {
562
541
  getState: (c) => c.state
563
542
  }
564
543
  });
565
- var workflowSleepActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
544
+ var workflowSleepActor = _chunkLICW4TVIcjs.actor.call(void 0, {
566
545
  state: {
567
546
  ticks: 0
568
547
  },
569
- run: _chunkAIYEYMX5cjs.workflow.call(void 0, async (ctx) => {
570
- await ctx.loop({
571
- name: "sleep",
572
- run: async (loopCtx) => {
573
- const actorLoopCtx = loopCtx;
574
- await loopCtx.step("tick", async () => {
575
- actorLoopCtx.state.ticks += 1;
576
- });
577
- await loopCtx.sleep("delay", 40);
578
- return _workflowengine.Loop.continue(void 0);
579
- }
548
+ run: _chunkOV6UBV6Gcjs.workflow.call(void 0, async (ctx) => {
549
+ await ctx.loop("sleep", async (loopCtx) => {
550
+ await loopCtx.step("tick", async () => {
551
+ incrementWorkflowSleepTick(loopCtx);
552
+ });
553
+ await loopCtx.sleep("delay", 40);
554
+ return _workflowengine.Loop.continue(void 0);
580
555
  });
581
556
  }),
582
557
  actions: {
@@ -586,13 +561,13 @@ var workflowSleepActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
586
561
  sleepTimeout: 50
587
562
  }
588
563
  });
589
- var workflowStopTeardownActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
564
+ var workflowStopTeardownActor = _chunkLICW4TVIcjs.actor.call(void 0, {
590
565
  state: {
591
566
  wakeAts: [],
592
567
  sleepAts: []
593
568
  },
594
569
  queues: {
595
- never: _chunkTYLXNCA5cjs.queue.call(void 0, )
570
+ never: _chunkLICW4TVIcjs.queue.call(void 0, )
596
571
  },
597
572
  onWake: (c) => {
598
573
  c.state.wakeAts.push(Date.now());
@@ -600,15 +575,12 @@ var workflowStopTeardownActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
600
575
  onSleep: (c) => {
601
576
  c.state.sleepAts.push(Date.now());
602
577
  },
603
- run: _chunkAIYEYMX5cjs.workflow.call(void 0, async (ctx) => {
604
- await ctx.loop({
605
- name: "wait-forever",
606
- run: async (loopCtx) => {
607
- await loopCtx.queue.next("wait-for-never", {
608
- names: ["never"]
609
- });
610
- return _workflowengine.Loop.continue(void 0);
611
- }
578
+ run: _chunkOV6UBV6Gcjs.workflow.call(void 0, async (ctx) => {
579
+ await ctx.loop("wait-forever", async (loopCtx) => {
580
+ await loopCtx.queue.next("wait-for-never", {
581
+ names: ["never"]
582
+ });
583
+ return _workflowengine.Loop.continue(void 0);
612
584
  });
613
585
  }),
614
586
  actions: {
@@ -622,6 +594,31 @@ var workflowStopTeardownActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
622
594
  runStopTimeout: 2e3
623
595
  }
624
596
  });
597
+ function incrementWorkflowCounter(ctx) {
598
+ ctx.state.runCount += 1;
599
+ ctx.state.history.push(ctx.state.runCount);
600
+ }
601
+ async function storeWorkflowQueueMessage(ctx, body, complete) {
602
+ ctx.state.received.push(body);
603
+ await complete({ echo: body });
604
+ }
605
+ async function updateWorkflowAccessState(ctx, outsideDbError, outsideClientError) {
606
+ var _a;
607
+ await ctx.db.execute(
608
+ `INSERT INTO workflow_access_log (created_at) VALUES (${Date.now()})`
609
+ );
610
+ const counts = await ctx.db.execute(
611
+ `SELECT COUNT(*) as count FROM workflow_access_log`
612
+ );
613
+ const client = ctx.client();
614
+ ctx.state.outsideDbError = outsideDbError;
615
+ ctx.state.outsideClientError = outsideClientError;
616
+ ctx.state.insideDbCount = _nullishCoalesce(((_a = counts[0]) == null ? void 0 : _a.count), () => ( 0));
617
+ ctx.state.insideClientAvailable = typeof client.workflowQueueActor.getForId === "function";
618
+ }
619
+ function incrementWorkflowSleepTick(ctx) {
620
+ ctx.state.ticks += 1;
621
+ }
625
622
 
626
623
 
627
624
 
@@ -646,4 +643,4 @@ var workflowStopTeardownActor = _chunkTYLXNCA5cjs.actor.call(void 0, {
646
643
 
647
644
 
648
645
  exports.logger = logger; exports.HIBERNATION_SLEEP_TIMEOUT = HIBERNATION_SLEEP_TIMEOUT; exports.hibernationActor = hibernationActor; exports.SLEEP_TIMEOUT = SLEEP_TIMEOUT; exports.sleep = sleep; exports.sleepWithLongRpc = sleepWithLongRpc; exports.sleepWithRawHttp = sleepWithRawHttp; exports.sleepWithRawWebSocket = sleepWithRawWebSocket; exports.sleepWithNoSleepOption = sleepWithNoSleepOption; exports.RUN_SLEEP_TIMEOUT = RUN_SLEEP_TIMEOUT; exports.runWithTicks = runWithTicks; exports.runWithQueueConsumer = runWithQueueConsumer; exports.runWithEarlyExit = runWithEarlyExit; exports.runWithError = runWithError; exports.runWithoutHandler = runWithoutHandler; exports.WORKFLOW_QUEUE_NAME = WORKFLOW_QUEUE_NAME; exports.workflowCounterActor = workflowCounterActor; exports.workflowQueueActor = workflowQueueActor; exports.workflowAccessActor = workflowAccessActor; exports.workflowSleepActor = workflowSleepActor; exports.workflowStopTeardownActor = workflowStopTeardownActor;
649
- //# sourceMappingURL=chunk-XWBAQO5H.cjs.map
646
+ //# sourceMappingURL=chunk-WLLTFDMH.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-WLLTFDMH.cjs","../../src/driver-test-suite/log.ts","../../fixtures/driver-test-suite/hibernation.ts","../../fixtures/driver-test-suite/sleep.ts","../../fixtures/driver-test-suite/run.ts","../../fixtures/driver-test-suite/workflow.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-WLLTFDMH.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\n\nexport function logger() {\n\treturn getLogger(\"test-suite\");\n}\n","import { actor } from \"rivetkit\";\n\nexport const HIBERNATION_SLEEP_TIMEOUT = 500;\n\nexport type HibernationConnState = {\n\tcount: number;\n\tconnectCount: number;\n\tdisconnectCount: number;\n};\n\nexport const hibernationActor = actor({\n\tstate: {\n\t\tsleepCount: 0,\n\t\twakeCount: 0,\n\t},\n\tcreateConnState: (c): HibernationConnState => {\n\t\treturn {\n\t\t\tcount: 0,\n\t\t\tconnectCount: 0,\n\t\t\tdisconnectCount: 0,\n\t\t};\n\t},\n\tonWake: (c) => {\n\t\tc.state.wakeCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tonConnect: (c, conn) => {\n\t\tconn.state.connectCount += 1;\n\t},\n\tonDisconnect: (c, conn) => {\n\t\tconn.state.disconnectCount += 1;\n\t},\n\tactions: {\n\t\t// Basic RPC that returns a simple value\n\t\tping: (c) => {\n\t\t\treturn \"pong\";\n\t\t},\n\t\t// Increment the connection's count\n\t\tconnIncrement: (c) => {\n\t\t\tc.conn.state.count += 1;\n\t\t\treturn c.conn.state.count;\n\t\t},\n\t\t// Get the connection's count\n\t\tgetConnCount: (c) => {\n\t\t\treturn c.conn.state.count;\n\t\t},\n\t\t// Get the connection's lifecycle counts\n\t\tgetConnLifecycleCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tconnectCount: c.conn.state.connectCount,\n\t\t\t\tdisconnectCount: c.conn.state.disconnectCount,\n\t\t\t};\n\t\t},\n\t\t// Get all connection IDs\n\t\tgetConnectionIds: (c) => {\n\t\t\treturn c.conns\n\t\t\t\t.entries()\n\t\t\t\t.map((x) => x[0])\n\t\t\t\t.toArray();\n\t\t},\n\t\t// Get actor sleep/wake counts\n\t\tgetActorCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t\twakeCount: c.state.wakeCount,\n\t\t\t};\n\t\t},\n\t\t// Trigger sleep\n\t\ttriggerSleep: (c) => {\n\t\t\tc.sleep();\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: HIBERNATION_SLEEP_TIMEOUT,\n\t},\n});\n","import { actor, type UniversalWebSocket } from \"rivetkit\";\nimport { promiseWithResolvers } from \"rivetkit/utils\";\n\nexport const SLEEP_TIMEOUT = 1000;\n\nexport const sleep = actor({\n\tstate: { startCount: 0, sleepCount: 0 },\n\tonWake: (c) => {\n\t\tc.state.startCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tactions: {\n\t\ttriggerSleep: (c) => {\n\t\t\tc.sleep();\n\t\t},\n\t\tgetCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t};\n\t\t},\n\t\tsetAlarm: async (c, duration: number) => {\n\t\t\tawait c.schedule.after(duration, \"onAlarm\");\n\t\t},\n\t\tonAlarm: (c) => {\n\t\t\tc.log.info(\"alarm called\");\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: SLEEP_TIMEOUT,\n\t},\n});\n\nexport const sleepWithLongRpc = actor({\n\tstate: { startCount: 0, sleepCount: 0 },\n\tcreateVars: () =>\n\t\t({}) as { longRunningResolve: PromiseWithResolvers<void> },\n\tonWake: (c) => {\n\t\tc.state.startCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tactions: {\n\t\tgetCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t};\n\t\t},\n\t\tlongRunningRpc: async (c) => {\n\t\t\tc.log.info(\"starting long running rpc\");\n\t\t\tc.vars.longRunningResolve = promiseWithResolvers((reason) => c.log.warn({ msg: \"unhandled long running rpc rejection\", reason }));\n\t\t\tc.broadcast(\"waiting\");\n\t\t\tawait c.vars.longRunningResolve.promise;\n\t\t\tc.log.info(\"finished long running rpc\");\n\t\t},\n\t\tfinishLongRunningRpc: (c) => c.vars.longRunningResolve?.resolve(),\n\t},\n\toptions: {\n\t\tsleepTimeout: SLEEP_TIMEOUT,\n\t},\n});\n\nexport const sleepWithRawHttp = actor({\n\tstate: { startCount: 0, sleepCount: 0, requestCount: 0 },\n\tonWake: (c) => {\n\t\tc.state.startCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tonRequest: async (c, request) => {\n\t\tc.state.requestCount += 1;\n\t\tconst url = new URL(request.url);\n\n\t\tif (url.pathname === \"/long-request\") {\n\t\t\tconst duration = parseInt(\n\t\t\t\turl.searchParams.get(\"duration\") || \"1000\",\n\t\t\t);\n\t\t\tc.log.info({ msg: \"starting long fetch request\", duration });\n\t\t\tawait new Promise((resolve) => setTimeout(resolve, duration));\n\t\t\tc.log.info(\"finished long fetch request\");\n\t\t\treturn new Response(JSON.stringify({ completed: true }), {\n\t\t\t\theaders: { \"Content-Type\": \"application/json\" },\n\t\t\t});\n\t\t}\n\n\t\treturn new Response(\"Not Found\", { status: 404 });\n\t},\n\tactions: {\n\t\tgetCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t\trequestCount: c.state.requestCount,\n\t\t\t};\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: SLEEP_TIMEOUT,\n\t},\n});\n\nexport const sleepWithRawWebSocket = actor({\n\tstate: { startCount: 0, sleepCount: 0, connectionCount: 0 },\n\tonWake: (c) => {\n\t\tc.state.startCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tonWebSocket: (c, websocket: UniversalWebSocket) => {\n\t\tc.state.connectionCount += 1;\n\t\tc.log.info({\n\t\t\tmsg: \"websocket connected\",\n\t\t\tconnectionCount: c.state.connectionCount,\n\t\t});\n\n\t\twebsocket.send(\n\t\t\tJSON.stringify({\n\t\t\t\ttype: \"connected\",\n\t\t\t\tconnectionCount: c.state.connectionCount,\n\t\t\t}),\n\t\t);\n\n\t\twebsocket.addEventListener(\"message\", (event: any) => {\n\t\t\tconst data = event.data;\n\t\t\tif (typeof data === \"string\") {\n\t\t\t\ttry {\n\t\t\t\t\tconst parsed = JSON.parse(data);\n\t\t\t\t\tif (parsed.type === \"getCounts\") {\n\t\t\t\t\t\twebsocket.send(\n\t\t\t\t\t\t\tJSON.stringify({\n\t\t\t\t\t\t\t\ttype: \"counts\",\n\t\t\t\t\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\t\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t\t\t\t\t\tconnectionCount: c.state.connectionCount,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (parsed.type === \"keepAlive\") {\n\t\t\t\t\t\t// Just acknowledge to keep connection alive\n\t\t\t\t\t\twebsocket.send(JSON.stringify({ type: \"ack\" }));\n\t\t\t\t\t}\n\t\t\t\t} catch {\n\t\t\t\t\t// Echo non-JSON messages\n\t\t\t\t\twebsocket.send(data);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\twebsocket.addEventListener(\"close\", () => {\n\t\t\tc.state.connectionCount -= 1;\n\t\t\tc.log.info({\n\t\t\t\tmsg: \"websocket disconnected\",\n\t\t\t\tconnectionCount: c.state.connectionCount,\n\t\t\t});\n\t\t});\n\t},\n\tactions: {\n\t\tgetCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t\tconnectionCount: c.state.connectionCount,\n\t\t\t};\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: SLEEP_TIMEOUT,\n\t},\n});\n\nexport const sleepWithNoSleepOption = actor({\n\tstate: { startCount: 0, sleepCount: 0 },\n\tonWake: (c) => {\n\t\tc.state.startCount += 1;\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepCount += 1;\n\t},\n\tactions: {\n\t\tgetCounts: (c) => {\n\t\t\treturn {\n\t\t\t\tstartCount: c.state.startCount,\n\t\t\t\tsleepCount: c.state.sleepCount,\n\t\t\t};\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: SLEEP_TIMEOUT,\n\t\tnoSleep: true,\n\t},\n});\n","import { actor } from \"rivetkit\";\nimport type { registry } from \"./registry\";\n\nexport const RUN_SLEEP_TIMEOUT = 1000;\n\n// Actor that tracks tick counts and respects abort signal\nexport const runWithTicks = actor({\n\tstate: {\n\t\ttickCount: 0,\n\t\tlastTickAt: 0,\n\t\trunStarted: false,\n\t\trunExited: false,\n\t},\n\trun: async (c) => {\n\t\tc.state.runStarted = true;\n\t\tc.log.info(\"run handler started\");\n\n\t\twhile (!c.aborted) {\n\t\t\tc.state.tickCount += 1;\n\t\t\tc.state.lastTickAt = Date.now();\n\t\t\tc.log.info({ msg: \"tick\", tickCount: c.state.tickCount });\n\n\t\t\t// Wait 50ms between ticks, or exit early if aborted\n\t\t\tawait new Promise<void>((resolve) => {\n\t\t\t\tconst timeout = setTimeout(resolve, 50);\n\t\t\t\tc.abortSignal.addEventListener(\n\t\t\t\t\t\"abort\",\n\t\t\t\t\t() => {\n\t\t\t\t\t\tclearTimeout(timeout);\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t},\n\t\t\t\t\t{ once: true },\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\tc.state.runExited = true;\n\t\tc.log.info(\"run handler exiting gracefully\");\n\t},\n\tactions: {\n\t\tgetState: (c) => ({\n\t\t\ttickCount: c.state.tickCount,\n\t\t\tlastTickAt: c.state.lastTickAt,\n\t\t\trunStarted: c.state.runStarted,\n\t\t\trunExited: c.state.runExited,\n\t\t}),\n\t},\n\toptions: {\n\t\tsleepTimeout: RUN_SLEEP_TIMEOUT,\n\t\trunStopTimeout: 1000,\n\t},\n});\n\n// Actor that consumes from a queue in the run handler\nexport const runWithQueueConsumer = actor({\n\tstate: {\n\t\tmessagesReceived: [] as Array<{ name: string; body: unknown }>,\n\t\trunStarted: false,\n\t\twakeCount: 0,\n\t},\n\tonWake: (c) => {\n\t\tc.state.wakeCount += 1;\n\t},\n\trun: async (c) => {\n\t\tc.state.runStarted = true;\n\t\tc.log.info(\"run handler started, waiting for messages\");\n\n\t\twhile (!c.aborted) {\n\t\t\tconst messages = await c.queue.next({ names: [\"messages\"] });\n\t\t\tconst message = messages[0];\n\t\t\tif (message) {\n\t\t\t\tc.log.info({ msg: \"received message\", body: message.body });\n\t\t\t\tc.state.messagesReceived.push({\n\t\t\t\t\tname: message.name,\n\t\t\t\t\tbody: message.body,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tc.log.info(\"run handler exiting gracefully\");\n\t},\n\tactions: {\n\t\tgetState: (c) => ({\n\t\t\tmessagesReceived: c.state.messagesReceived,\n\t\t\trunStarted: c.state.runStarted,\n\t\t\twakeCount: c.state.wakeCount,\n\t\t}),\n\t\tsendMessage: async (c, body: unknown) => {\n\t\t\tconst client = c.client<typeof registry>();\n\t\t\tconst handle = client.runWithQueueConsumer.getForId(c.actorId);\n\t\t\tawait handle.send(\"messages\", body);\n\t\t\treturn true;\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: RUN_SLEEP_TIMEOUT,\n\t\trunStopTimeout: 1000,\n\t},\n});\n\n// Actor that exits the run handler after a short delay to test crash behavior\nexport const runWithEarlyExit = actor({\n\tstate: {\n\t\trunStarted: false,\n\t\tdestroyCalled: false,\n\t},\n\trun: async (c) => {\n\t\tc.state.runStarted = true;\n\t\tc.log.info(\"run handler started, will exit after delay\");\n\t\t// Wait a bit so we can observe the runStarted state before exit\n\t\tawait new Promise((resolve) => setTimeout(resolve, 200));\n\t\tc.log.info(\"run handler exiting early\");\n\t\t// Exit without respecting abort signal\n\t},\n\tonDestroy: (c) => {\n\t\tc.state.destroyCalled = true;\n\t},\n\tactions: {\n\t\tgetState: (c) => ({\n\t\t\trunStarted: c.state.runStarted,\n\t\t\tdestroyCalled: c.state.destroyCalled,\n\t\t}),\n\t},\n\toptions: {\n\t\tsleepTimeout: RUN_SLEEP_TIMEOUT,\n\t},\n});\n\n// Actor that throws an error in the run handler to test crash behavior\nexport const runWithError = actor({\n\tstate: {\n\t\trunStarted: false,\n\t\tdestroyCalled: false,\n\t},\n\trun: async (c) => {\n\t\tc.state.runStarted = true;\n\t\tc.log.info(\"run handler started, will throw error\");\n\t\tawait new Promise((resolve) => setTimeout(resolve, 200));\n\t\tthrow new Error(\"intentional error in run handler\");\n\t},\n\tonDestroy: (c) => {\n\t\tc.state.destroyCalled = true;\n\t},\n\tactions: {\n\t\tgetState: (c) => ({\n\t\t\trunStarted: c.state.runStarted,\n\t\t\tdestroyCalled: c.state.destroyCalled,\n\t\t}),\n\t},\n\toptions: {\n\t\tsleepTimeout: RUN_SLEEP_TIMEOUT,\n\t},\n});\n\n// Actor without a run handler for comparison\nexport const runWithoutHandler = actor({\n\tstate: {\n\t\twakeCount: 0,\n\t},\n\tonWake: (c) => {\n\t\tc.state.wakeCount += 1;\n\t},\n\tactions: {\n\t\tgetState: (c) => ({\n\t\t\twakeCount: c.state.wakeCount,\n\t\t}),\n\t},\n\toptions: {\n\t\tsleepTimeout: RUN_SLEEP_TIMEOUT,\n\t},\n});\n","import { Loop } from \"@rivetkit/workflow-engine\";\nimport { actor, queue } from \"@/actor/mod\";\nimport { db } from \"@/db/mod\";\nimport { WORKFLOW_GUARD_KV_KEY } from \"@/workflow/constants\";\nimport { type WorkflowLoopContextOf, workflow } from \"@/workflow/mod\";\nimport type { registry } from \"./registry\";\n\nconst WORKFLOW_QUEUE_NAME = \"workflow-default\";\n\nexport const workflowCounterActor = actor({\n\tstate: {\n\t\trunCount: 0,\n\t\tguardTriggered: false,\n\t\thistory: [] as number[],\n\t},\n\trun: workflow(async (ctx) => {\n\t\tawait ctx.loop(\"counter\", async (loopCtx) => {\n\t\t\t\ttry {\n\t\t\t\t\t// Accessing state outside a step should throw.\n\t\t\t\t\t// biome-ignore lint/style/noUnusedExpressions: intentionally checking accessor.\n\t\t\t\t\tloopCtx.state;\n\t\t\t\t} catch {}\n\n\t\t\t\tawait loopCtx.step(\"increment\", async () => {\n\t\t\t\t\tincrementWorkflowCounter(loopCtx);\n\t\t\t\t});\n\n\t\t\t\tawait loopCtx.sleep(\"idle\", 25);\n\t\t\t\treturn Loop.continue(undefined);\n\t\t\t});\n\t}),\n\tactions: {\n\t\tgetState: async (c) => {\n\t\t\tconst guardFlag = await c.kv.get(WORKFLOW_GUARD_KV_KEY);\n\t\t\tif (guardFlag === \"true\") {\n\t\t\t\tc.state.guardTriggered = true;\n\t\t\t}\n\t\t\treturn c.state;\n\t\t},\n\t},\n\toptions: {\n\t\tsleepTimeout: 50,\n\t},\n});\n\nexport const workflowQueueActor = actor({\n\tstate: {\n\t\treceived: [] as unknown[],\n\t},\n\tqueues: {\n\t\t[WORKFLOW_QUEUE_NAME]: queue<unknown, { echo: unknown }>(),\n\t},\n\trun: workflow(async (ctx) => {\n\t\tawait ctx.loop(\"queue\", async (loopCtx) => {\n\t\t\t\tconst message = await loopCtx.queue.next(\"queue-wait\", {\n\t\t\t\t\tnames: [WORKFLOW_QUEUE_NAME],\n\t\t\t\t\tcompletable: true,\n\t\t\t\t});\n\t\t\t\tif (!message.complete) {\n\t\t\t\t\treturn Loop.continue(undefined);\n\t\t\t\t}\n\t\t\t\tconst complete = message.complete;\n\t\t\t\tawait loopCtx.step(\"store-message\", async () => {\n\t\t\t\t\tawait storeWorkflowQueueMessage(loopCtx, message.body, complete);\n\t\t\t\t});\n\t\t\t\treturn Loop.continue(undefined);\n\t\t\t});\n\t}),\n\tactions: {\n\t\tgetMessages: (c) => c.state.received,\n\t\tsendAndWait: async (c, payload: unknown) => {\n\t\t\tconst client = c.client<typeof registry>();\n\t\t\tconst handle = client.workflowQueueActor.getForId(c.actorId);\n\t\t\treturn await handle.send(\n\t\t\t\tWORKFLOW_QUEUE_NAME,\n\t\t\t\tpayload,\n\t\t\t\t{ wait: true, timeout: 1_000 },\n\t\t\t);\n\t\t},\n\t},\n});\n\nexport const workflowAccessActor = actor({\n\tdb: db({\n\t\tonMigrate: async (rawDb) => {\n\t\t\tawait rawDb.execute(`\n\t\t\t\tCREATE TABLE IF NOT EXISTS workflow_access_log (\n\t\t\t\t\tid INTEGER PRIMARY KEY AUTOINCREMENT,\n\t\t\t\t\tcreated_at INTEGER NOT NULL\n\t\t\t\t)\n\t\t\t`);\n\t\t},\n\t}),\n\tstate: {\n\t\toutsideDbError: null as string | null,\n\t\toutsideClientError: null as string | null,\n\t\tinsideDbCount: 0,\n\t\tinsideClientAvailable: false,\n\t},\n\trun: workflow(async (ctx) => {\n\t\tawait ctx.loop(\"access\", async (loopCtx) => {\n\t\t\t\tlet outsideDbError: string | null = null;\n\t\t\t\tlet outsideClientError: string | null = null;\n\n\t\t\t\ttry {\n\t\t\t\t\t// Accessing db outside a step should throw.\n\t\t\t\t\t// biome-ignore lint/style/noUnusedExpressions: intentionally checking accessor.\n\t\t\t\t\tloopCtx.db;\n\t\t\t\t} catch (error) {\n\t\t\t\t\toutsideDbError =\n\t\t\t\t\t\terror instanceof Error ? error.message : String(error);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tloopCtx.client<typeof registry>();\n\t\t\t\t} catch (error) {\n\t\t\t\t\toutsideClientError =\n\t\t\t\t\t\terror instanceof Error ? error.message : String(error);\n\t\t\t\t}\n\n\t\t\t\tawait loopCtx.step(\"access-step\", async () => {\n\t\t\t\t\tawait updateWorkflowAccessState(\n\t\t\t\t\t\tloopCtx,\n\t\t\t\t\t\toutsideDbError,\n\t\t\t\t\t\toutsideClientError,\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\t\tawait loopCtx.sleep(\"idle\", 25);\n\t\t\t\treturn Loop.continue(undefined);\n\t\t\t});\n\t}),\n\tactions: {\n\t\tgetState: (c) => c.state,\n\t},\n});\n\nexport const workflowSleepActor = actor({\n\tstate: {\n\t\tticks: 0,\n\t},\n\trun: workflow(async (ctx) => {\n\t\tawait ctx.loop(\"sleep\", async (loopCtx) => {\n\t\t\t\tawait loopCtx.step(\"tick\", async () => {\n\t\t\t\t\tincrementWorkflowSleepTick(loopCtx);\n\t\t\t\t});\n\t\t\t\tawait loopCtx.sleep(\"delay\", 40);\n\t\t\t\treturn Loop.continue(undefined);\n\t\t\t});\n\t}),\n\tactions: {\n\t\tgetState: (c) => c.state,\n\t},\n\toptions: {\n\t\tsleepTimeout: 50,\n\t},\n});\n\nexport const workflowStopTeardownActor = actor({\n\tstate: {\n\t\twakeAts: [] as number[],\n\t\tsleepAts: [] as number[],\n\t},\n\tqueues: {\n\t\tnever: queue<unknown>(),\n\t},\n\tonWake: (c) => {\n\t\tc.state.wakeAts.push(Date.now());\n\t},\n\tonSleep: (c) => {\n\t\tc.state.sleepAts.push(Date.now());\n\t},\n\trun: workflow(async (ctx) => {\n\t\tawait ctx.loop(\"wait-forever\", async (loopCtx) => {\n\t\t\t\tawait loopCtx.queue.next(\"wait-for-never\", {\n\t\t\t\t\tnames: [\"never\"],\n\t\t\t\t});\n\t\t\t\treturn Loop.continue(undefined);\n\t\t\t});\n\t}),\n\tactions: {\n\t\tgetTimeline: (c) => ({\n\t\t\twakeAts: [...c.state.wakeAts],\n\t\t\tsleepAts: [...c.state.sleepAts],\n\t\t}),\n\t},\n\toptions: {\n\t\tsleepTimeout: 75,\n\t\trunStopTimeout: 2_000,\n\t},\n});\n\nfunction incrementWorkflowCounter(\n\tctx: WorkflowLoopContextOf<typeof workflowCounterActor>,\n): void {\n\tctx.state.runCount += 1;\n\tctx.state.history.push(ctx.state.runCount);\n}\n\nasync function storeWorkflowQueueMessage(\n\tctx: WorkflowLoopContextOf<typeof workflowQueueActor>,\n\tbody: unknown,\n\tcomplete: (response: { echo: unknown }) => Promise<void>,\n): Promise<void> {\n\tctx.state.received.push(body);\n\tawait complete({ echo: body });\n}\n\nasync function updateWorkflowAccessState(\n\tctx: WorkflowLoopContextOf<typeof workflowAccessActor>,\n\toutsideDbError: string | null,\n\toutsideClientError: string | null,\n): Promise<void> {\n\tawait ctx.db.execute(\n\t\t`INSERT INTO workflow_access_log (created_at) VALUES (${Date.now()})`,\n\t);\n\tconst counts = await ctx.db.execute<{ count: number }>(\n\t\t`SELECT COUNT(*) as count FROM workflow_access_log`,\n\t);\n\tconst client = ctx.client<typeof registry>();\n\n\tctx.state.outsideDbError = outsideDbError;\n\tctx.state.outsideClientError = outsideClientError;\n\tctx.state.insideDbCount = counts[0]?.count ?? 0;\n\tctx.state.insideClientAvailable =\n\t\ttypeof client.workflowQueueActor.getForId === \"function\";\n}\n\nfunction incrementWorkflowSleepTick(\n\tctx: WorkflowLoopContextOf<typeof workflowSleepActor>,\n): void {\n\tctx.state.ticks += 1;\n}\n\nexport { WORKFLOW_QUEUE_NAME };\n"]}
@@ -11,7 +11,7 @@ import {
11
11
  hasSchemaConfigKey,
12
12
  loggerWithoutContext,
13
13
  validateSchemaSync
14
- } from "./chunk-T5YCUGVS.js";
14
+ } from "./chunk-CIXKJYPF.js";
15
15
  import {
16
16
  LogLevelSchema,
17
17
  VERSION,
@@ -42,7 +42,7 @@ import {
42
42
  noopNext,
43
43
  promiseWithResolvers,
44
44
  stringifyError
45
- } from "./chunk-6LIBPELE.js";
45
+ } from "./chunk-E2WWZFTQ.js";
46
46
  import {
47
47
  ConnStateNotEnabled,
48
48
  EventPayloadInvalid,
@@ -6115,4 +6115,4 @@ export {
6115
6115
  buildManagerRouter,
6116
6116
  getInitialActorKvState
6117
6117
  };
6118
- //# sourceMappingURL=chunk-M2T62AZQ.js.map
6118
+ //# sourceMappingURL=chunk-WUXPLV6G.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  bufferToArrayBuffer,
3
3
  toUint8Array
4
- } from "./chunk-6LIBPELE.js";
4
+ } from "./chunk-E2WWZFTQ.js";
5
5
 
6
6
  // dist/schemas/transport/v1.ts
7
7
  import * as bare from "@rivetkit/bare-ts";
@@ -531,4 +531,4 @@ export {
531
531
  encodeWorkflowHistoryTransport,
532
532
  decodeWorkflowHistoryTransport
533
533
  };
534
- //# sourceMappingURL=chunk-IVG73YCW.js.map
534
+ //# sourceMappingURL=chunk-XYUY6WQB.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  importWebSocket,
3
3
  logger
4
- } from "./chunk-A6YIZWTK.js";
4
+ } from "./chunk-ZMZNIOTG.js";
5
5
  import {
6
6
  CURRENT_VERSION,
7
7
  EncodingSchema,
@@ -36,10 +36,10 @@ import {
36
36
  serializeWithEncoding,
37
37
  tryParseEndpoint,
38
38
  uint8ArrayToBase64
39
- } from "./chunk-M2T62AZQ.js";
39
+ } from "./chunk-WUXPLV6G.js";
40
40
  import {
41
41
  assertUnreachable as assertUnreachable2
42
- } from "./chunk-T5YCUGVS.js";
42
+ } from "./chunk-CIXKJYPF.js";
43
43
  import {
44
44
  VERSION,
45
45
  assertUnreachable,
@@ -58,7 +58,7 @@ import {
58
58
  noopNext,
59
59
  promiseWithResolvers,
60
60
  stringifyError
61
- } from "./chunk-6LIBPELE.js";
61
+ } from "./chunk-E2WWZFTQ.js";
62
62
  import {
63
63
  ActorNotFound,
64
64
  InvalidRequest
@@ -2654,4 +2654,4 @@ export {
2654
2654
  RemoteManagerDriver,
2655
2655
  createClient
2656
2656
  };
2657
- //# sourceMappingURL=chunk-DIGBC2VI.js.map
2657
+ //# sourceMappingURL=chunk-YLYT7WSZ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getLogger
3
- } from "./chunk-6LIBPELE.js";
3
+ } from "./chunk-E2WWZFTQ.js";
4
4
 
5
5
  // src/client/log.ts
6
6
  function logger() {
@@ -46,4 +46,4 @@ export {
46
46
  logger,
47
47
  importWebSocket
48
48
  };
49
- //# sourceMappingURL=chunk-A6YIZWTK.js.map
49
+ //# sourceMappingURL=chunk-ZMZNIOTG.js.map
@@ -8,14 +8,14 @@
8
8
 
9
9
 
10
10
 
11
- var _chunkSSEP6DHPcjs = require('../chunk-SSEP6DHP.cjs');
12
- require('../chunk-TPGXWFQT.cjs');
13
- require('../chunk-F6JYU5IK.cjs');
11
+ var _chunk5CI72Y5Gcjs = require('../chunk-5CI72Y5G.cjs');
12
+ require('../chunk-DQFZ5S3X.cjs');
13
+ require('../chunk-LBUMYRTK.cjs');
14
14
  require('../chunk-NIYZDWMW.cjs');
15
15
 
16
16
 
17
- var _chunkHIDX4C5Ycjs = require('../chunk-HIDX4C5Y.cjs');
18
- require('../chunk-LW6KLR7A.cjs');
17
+ var _chunkRYSCONN4cjs = require('../chunk-RYSCONN4.cjs');
18
+ require('../chunk-UN5D22OI.cjs');
19
19
  require('../chunk-L47L3ZWJ.cjs');
20
20
  require('../chunk-HDQ2JUQT.cjs');
21
21
 
@@ -29,5 +29,5 @@ require('../chunk-HDQ2JUQT.cjs');
29
29
 
30
30
 
31
31
 
32
- exports.ActorClientError = _chunkSSEP6DHPcjs.ActorClientError; exports.ActorConnDisposed = _chunkSSEP6DHPcjs.ActorConnDisposed; exports.ActorConnRaw = _chunkSSEP6DHPcjs.ActorConnRaw; exports.ActorError = _chunkSSEP6DHPcjs.ActorError; exports.ActorHandleRaw = _chunkSSEP6DHPcjs.ActorHandleRaw; exports.InternalError = _chunkSSEP6DHPcjs.InternalError; exports.KV_KEYS = _chunkHIDX4C5Ycjs.KEYS; exports.MalformedResponseMessage = _chunkSSEP6DHPcjs.MalformedResponseMessage; exports.ManagerError = _chunkSSEP6DHPcjs.ManagerError; exports.createClient = _chunkSSEP6DHPcjs.createClient;
32
+ exports.ActorClientError = _chunk5CI72Y5Gcjs.ActorClientError; exports.ActorConnDisposed = _chunk5CI72Y5Gcjs.ActorConnDisposed; exports.ActorConnRaw = _chunk5CI72Y5Gcjs.ActorConnRaw; exports.ActorError = _chunk5CI72Y5Gcjs.ActorError; exports.ActorHandleRaw = _chunk5CI72Y5Gcjs.ActorHandleRaw; exports.InternalError = _chunk5CI72Y5Gcjs.InternalError; exports.KV_KEYS = _chunkRYSCONN4cjs.KEYS; exports.MalformedResponseMessage = _chunk5CI72Y5Gcjs.MalformedResponseMessage; exports.ManagerError = _chunk5CI72Y5Gcjs.ManagerError; exports.createClient = _chunk5CI72Y5Gcjs.createClient;
33
33
  //# sourceMappingURL=mod.cjs.map
@@ -8,14 +8,14 @@ import {
8
8
  MalformedResponseMessage,
9
9
  ManagerError,
10
10
  createClient
11
- } from "../chunk-DIGBC2VI.js";
12
- import "../chunk-A6YIZWTK.js";
13
- import "../chunk-M2T62AZQ.js";
11
+ } from "../chunk-YLYT7WSZ.js";
12
+ import "../chunk-ZMZNIOTG.js";
13
+ import "../chunk-WUXPLV6G.js";
14
14
  import "../chunk-LXUQ667X.js";
15
15
  import {
16
16
  KEYS
17
- } from "../chunk-T5YCUGVS.js";
18
- import "../chunk-6LIBPELE.js";
17
+ } from "../chunk-CIXKJYPF.js";
18
+ import "../chunk-E2WWZFTQ.js";
19
19
  import "../chunk-7HTNH26M.js";
20
20
  import "../chunk-424PT5DM.js";
21
21
  export {
@@ -6,7 +6,7 @@
6
6
 
7
7
 
8
8
 
9
- var _chunkLW6KLR7Acjs = require('../chunk-LW6KLR7A.cjs');
9
+ var _chunkUN5D22OIcjs = require('../chunk-UN5D22OI.cjs');
10
10
  require('../chunk-L47L3ZWJ.cjs');
11
11
  require('../chunk-HDQ2JUQT.cjs');
12
12
 
@@ -17,5 +17,5 @@ require('../chunk-HDQ2JUQT.cjs');
17
17
 
18
18
 
19
19
 
20
- exports.LogLevelSchema = _chunkLW6KLR7Acjs.LogLevelSchema; exports.configureBaseLogger = _chunkLW6KLR7Acjs.configureBaseLogger; exports.configureDefaultLogger = _chunkLW6KLR7Acjs.configureDefaultLogger; exports.getBaseLogger = _chunkLW6KLR7Acjs.getBaseLogger; exports.getIncludeTarget = _chunkLW6KLR7Acjs.getIncludeTarget; exports.getLogger = _chunkLW6KLR7Acjs.getLogger; exports.getPinoLevel = _chunkLW6KLR7Acjs.getPinoLevel;
20
+ exports.LogLevelSchema = _chunkUN5D22OIcjs.LogLevelSchema; exports.configureBaseLogger = _chunkUN5D22OIcjs.configureBaseLogger; exports.configureDefaultLogger = _chunkUN5D22OIcjs.configureDefaultLogger; exports.getBaseLogger = _chunkUN5D22OIcjs.getBaseLogger; exports.getIncludeTarget = _chunkUN5D22OIcjs.getIncludeTarget; exports.getLogger = _chunkUN5D22OIcjs.getLogger; exports.getPinoLevel = _chunkUN5D22OIcjs.getPinoLevel;
21
21
  //# sourceMappingURL=log.cjs.map
@@ -6,7 +6,7 @@ import {
6
6
  getIncludeTarget,
7
7
  getLogger,
8
8
  getPinoLevel
9
- } from "../chunk-6LIBPELE.js";
9
+ } from "../chunk-E2WWZFTQ.js";
10
10
  import "../chunk-7HTNH26M.js";
11
11
  import "../chunk-424PT5DM.js";
12
12
  export {