rivetkit 2.0.7 → 2.0.9
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.
- package/dist/tsup/{chunk-OSK2VSJF.cjs → chunk-2MJYYF2Q.cjs} +12 -12
- package/dist/tsup/{chunk-OSK2VSJF.cjs.map → chunk-2MJYYF2Q.cjs.map} +1 -1
- package/dist/tsup/{chunk-NUA6LOOJ.cjs → chunk-4PSLOAXR.cjs} +216 -204
- package/dist/tsup/chunk-4PSLOAXR.cjs.map +1 -0
- package/dist/tsup/{chunk-F7YL5G7Q.cjs → chunk-4YV6RDZL.cjs} +255 -229
- package/dist/tsup/chunk-4YV6RDZL.cjs.map +1 -0
- package/dist/tsup/{chunk-3ALZ7EGX.cjs → chunk-7OMMIAWP.cjs} +11 -11
- package/dist/tsup/{chunk-3ALZ7EGX.cjs.map → chunk-7OMMIAWP.cjs.map} +1 -1
- package/dist/tsup/{chunk-GWJTWY3G.cjs → chunk-A44TWAS5.cjs} +6 -6
- package/dist/tsup/{chunk-GWJTWY3G.cjs.map → chunk-A44TWAS5.cjs.map} +1 -1
- package/dist/tsup/{chunk-B6N6VM37.js → chunk-APHV6WXU.js} +2 -2
- package/dist/tsup/{chunk-ETDWYT2P.cjs → chunk-DL7TPF63.cjs} +7 -7
- package/dist/tsup/{chunk-ETDWYT2P.cjs.map → chunk-DL7TPF63.cjs.map} +1 -1
- package/dist/tsup/{chunk-YL4VZMMT.js → chunk-DLPIL3VC.js} +2 -2
- package/dist/tsup/{chunk-VAF63BEI.cjs → chunk-DZZQG7VH.cjs} +3 -3
- package/dist/tsup/{chunk-VAF63BEI.cjs.map → chunk-DZZQG7VH.cjs.map} +1 -1
- package/dist/tsup/{chunk-RLBM6D4L.js → chunk-E63WU5PL.js} +3 -3
- package/dist/tsup/chunk-E63WU5PL.js.map +1 -0
- package/dist/tsup/{chunk-DIHKN7NM.js → chunk-F2YZNUPU.js} +3 -3
- package/dist/tsup/{chunk-KHRZPP5T.js → chunk-FZP2IBIX.js} +94 -68
- package/dist/tsup/chunk-FZP2IBIX.js.map +1 -0
- package/dist/tsup/{chunk-NII4KKHD.js → chunk-KHZ2QSQ4.js} +28 -16
- package/dist/tsup/chunk-KHZ2QSQ4.js.map +1 -0
- package/dist/tsup/{chunk-4EXJ4ITR.cjs → chunk-QGRYH6TU.cjs} +3 -3
- package/dist/tsup/{chunk-4EXJ4ITR.cjs.map → chunk-QGRYH6TU.cjs.map} +1 -1
- package/dist/tsup/{chunk-NRELKXIX.js → chunk-R7OP5N25.js} +56 -46
- package/dist/tsup/chunk-R7OP5N25.js.map +1 -0
- package/dist/tsup/{chunk-NDCVQZBS.cjs → chunk-SDXTJDDR.cjs} +62 -52
- package/dist/tsup/chunk-SDXTJDDR.cjs.map +1 -0
- package/dist/tsup/{chunk-7OOBMCQI.cjs → chunk-SOC4HWCG.cjs} +23 -22
- package/dist/tsup/chunk-SOC4HWCG.cjs.map +1 -0
- package/dist/tsup/{chunk-LXAVET4A.cjs → chunk-U2IXX6DY.cjs} +3 -3
- package/dist/tsup/{chunk-LXAVET4A.cjs.map → chunk-U2IXX6DY.cjs.map} +1 -1
- package/dist/tsup/{chunk-2NL3KGJ7.js → chunk-VVCL5DXN.js} +5 -4
- package/dist/tsup/chunk-VVCL5DXN.js.map +1 -0
- package/dist/tsup/{chunk-54MAHBLL.js → chunk-WBSPHV5V.js} +2 -2
- package/dist/tsup/{chunk-WAT5AE7S.js → chunk-WRSWUDFA.js} +5 -5
- package/dist/tsup/{chunk-PD6HCAJE.js → chunk-YR2VY4XS.js} +2 -2
- package/dist/tsup/client/mod.cjs +9 -9
- package/dist/tsup/client/mod.d.cts +2 -2
- package/dist/tsup/client/mod.d.ts +2 -2
- package/dist/tsup/client/mod.js +8 -8
- package/dist/tsup/common/log.cjs +3 -3
- package/dist/tsup/common/log.js +2 -2
- package/dist/tsup/common/websocket.cjs +4 -4
- package/dist/tsup/common/websocket.js +3 -3
- package/dist/tsup/{conn-DCSQgIlw.d.ts → conn-Bt8rkUzm.d.ts} +19 -1
- package/dist/tsup/{conn-DdzHTm2E.d.cts → conn-CEh3WKbA.d.cts} +19 -1
- package/dist/tsup/driver-helpers/mod.cjs +7 -5
- package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
- package/dist/tsup/driver-helpers/mod.d.cts +4 -2
- package/dist/tsup/driver-helpers/mod.d.ts +4 -2
- package/dist/tsup/driver-helpers/mod.js +7 -5
- package/dist/tsup/driver-test-suite/mod.cjs +103 -113
- package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
- package/dist/tsup/driver-test-suite/mod.d.cts +3 -1
- package/dist/tsup/driver-test-suite/mod.d.ts +3 -1
- package/dist/tsup/driver-test-suite/mod.js +45 -55
- package/dist/tsup/driver-test-suite/mod.js.map +1 -1
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.d.cts +2 -2
- package/dist/tsup/inspector/mod.d.ts +2 -2
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/mod.cjs +10 -10
- package/dist/tsup/mod.d.cts +5 -5
- package/dist/tsup/mod.d.ts +5 -5
- package/dist/tsup/mod.js +9 -9
- package/dist/tsup/test/mod.cjs +11 -11
- package/dist/tsup/test/mod.d.cts +1 -1
- package/dist/tsup/test/mod.d.ts +1 -1
- package/dist/tsup/test/mod.js +10 -10
- package/dist/tsup/utils.cjs +2 -2
- package/dist/tsup/utils.js +1 -1
- package/package.json +2 -2
- package/src/actor/instance.ts +20 -7
- package/src/actor/router-endpoints.ts +2 -1
- package/src/actor/router.ts +27 -24
- package/src/client/actor-conn.ts +5 -1
- package/src/client/config.ts +2 -0
- package/src/driver-helpers/mod.ts +1 -0
- package/src/driver-test-suite/mod.ts +11 -2
- package/src/driver-test-suite/tests/actor-schedule.ts +14 -37
- package/src/driver-test-suite/tests/actor-sleep.ts +18 -18
- package/src/drivers/engine/actor-driver.ts +39 -10
- package/src/drivers/file-system/manager.ts +5 -1
- package/src/manager/driver.ts +1 -1
- package/src/manager/router.ts +49 -41
- package/src/registry/mod.ts +11 -2
- package/src/remote-manager-driver/mod.ts +3 -2
- package/src/serde.ts +15 -0
- package/dist/tsup/chunk-2NL3KGJ7.js.map +0 -1
- package/dist/tsup/chunk-7OOBMCQI.cjs.map +0 -1
- package/dist/tsup/chunk-F7YL5G7Q.cjs.map +0 -1
- package/dist/tsup/chunk-KHRZPP5T.js.map +0 -1
- package/dist/tsup/chunk-NDCVQZBS.cjs.map +0 -1
- package/dist/tsup/chunk-NII4KKHD.js.map +0 -1
- package/dist/tsup/chunk-NRELKXIX.js.map +0 -1
- package/dist/tsup/chunk-NUA6LOOJ.cjs.map +0 -1
- package/dist/tsup/chunk-RLBM6D4L.js.map +0 -1
- /package/dist/tsup/{chunk-B6N6VM37.js.map → chunk-APHV6WXU.js.map} +0 -0
- /package/dist/tsup/{chunk-YL4VZMMT.js.map → chunk-DLPIL3VC.js.map} +0 -0
- /package/dist/tsup/{chunk-DIHKN7NM.js.map → chunk-F2YZNUPU.js.map} +0 -0
- /package/dist/tsup/{chunk-54MAHBLL.js.map → chunk-WBSPHV5V.js.map} +0 -0
- /package/dist/tsup/{chunk-WAT5AE7S.js.map → chunk-WRSWUDFA.js.map} +0 -0
- /package/dist/tsup/{chunk-PD6HCAJE.js.map → chunk-YR2VY4XS.js.map} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkQGRYH6TUcjs = require('./chunk-QGRYH6TU.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
@@ -14,10 +14,10 @@ var _chunk4EXJ4ITRcjs = require('./chunk-4EXJ4ITR.cjs');
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunk4PSLOAXRcjs = require('./chunk-4PSLOAXR.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunk2MJYYF2Qcjs = require('./chunk-2MJYYF2Q.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
|
|
@@ -28,7 +28,7 @@ var _chunkOSK2VSJFcjs = require('./chunk-OSK2VSJF.cjs');
|
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
var
|
|
31
|
+
var _chunkSOC4HWCGcjs = require('./chunk-SOC4HWCG.cjs');
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
@@ -54,12 +54,12 @@ var _chunk7OOBMCQIcjs = require('./chunk-7OOBMCQI.cjs');
|
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
|
|
57
|
-
var
|
|
57
|
+
var _chunkSDXTJDDRcjs = require('./chunk-SDXTJDDR.cjs');
|
|
58
58
|
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
62
|
-
var
|
|
62
|
+
var _chunkDL7TPF63cjs = require('./chunk-DL7TPF63.cjs');
|
|
63
63
|
|
|
64
64
|
|
|
65
65
|
|
|
@@ -69,7 +69,7 @@ var _chunkETDWYT2Pcjs = require('./chunk-ETDWYT2P.cjs');
|
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
|
|
72
|
-
var
|
|
72
|
+
var _chunkU2IXX6DYcjs = require('./chunk-U2IXX6DY.cjs');
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
|
|
@@ -151,7 +151,7 @@ var _streaming = require('hono/streaming');
|
|
|
151
151
|
|
|
152
152
|
// src/manager/log.ts
|
|
153
153
|
function logger() {
|
|
154
|
-
return
|
|
154
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "actor-manager");
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
// src/manager/hono-websocket-adapter.ts
|
|
@@ -439,14 +439,14 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
439
439
|
promise: handlersPromise,
|
|
440
440
|
resolve: handlersResolve,
|
|
441
441
|
reject: handlersReject
|
|
442
|
-
} =
|
|
442
|
+
} = _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, );
|
|
443
443
|
let actor2;
|
|
444
444
|
try {
|
|
445
445
|
actor2 = await actorDriver.loadActor(actorId);
|
|
446
446
|
} catch (error) {
|
|
447
447
|
return {
|
|
448
448
|
onOpen: (_evt, ws) => {
|
|
449
|
-
const { code } =
|
|
449
|
+
const { code } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
450
450
|
error,
|
|
451
451
|
actor2.rLog,
|
|
452
452
|
{
|
|
@@ -465,8 +465,8 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
465
465
|
}
|
|
466
466
|
};
|
|
467
467
|
}
|
|
468
|
-
const closePromise =
|
|
469
|
-
const socketId =
|
|
468
|
+
const closePromise = _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, );
|
|
469
|
+
const socketId = _chunk4PSLOAXRcjs.generateConnSocketId.call(void 0, );
|
|
470
470
|
return {
|
|
471
471
|
onOpen: (_evt, ws) => {
|
|
472
472
|
actor2.rLog.debug("actor websocket open");
|
|
@@ -497,7 +497,7 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
497
497
|
handlersResolve({ conn, actor: actor2, connId: conn.id });
|
|
498
498
|
} catch (error) {
|
|
499
499
|
handlersReject(error);
|
|
500
|
-
const { code } =
|
|
500
|
+
const { code } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
501
501
|
error,
|
|
502
502
|
actor2.rLog,
|
|
503
503
|
{
|
|
@@ -513,12 +513,12 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
513
513
|
handlersPromise.then(({ conn, actor: actor3 }) => {
|
|
514
514
|
actor3.rLog.debug({ msg: "received message" });
|
|
515
515
|
const value = evt.data.valueOf();
|
|
516
|
-
|
|
516
|
+
_chunkSOC4HWCGcjs.parseMessage.call(void 0, value, {
|
|
517
517
|
encoding,
|
|
518
518
|
maxIncomingMessageSize: runConfig.maxIncomingMessageSize
|
|
519
519
|
}).then((message) => {
|
|
520
520
|
actor3.processMessage(message, conn).catch((error) => {
|
|
521
|
-
const { code } =
|
|
521
|
+
const { code } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
522
522
|
error,
|
|
523
523
|
actor3.rLog,
|
|
524
524
|
{
|
|
@@ -529,7 +529,7 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
529
529
|
ws.close(1011, code);
|
|
530
530
|
});
|
|
531
531
|
}).catch((error) => {
|
|
532
|
-
const { code } =
|
|
532
|
+
const { code } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
533
533
|
error,
|
|
534
534
|
actor3.rLog,
|
|
535
535
|
{
|
|
@@ -540,7 +540,7 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
540
540
|
ws.close(1011, code);
|
|
541
541
|
});
|
|
542
542
|
}).catch((error) => {
|
|
543
|
-
const { code } =
|
|
543
|
+
const { code } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
544
544
|
error,
|
|
545
545
|
actor2.rLog,
|
|
546
546
|
{
|
|
@@ -571,9 +571,10 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
571
571
|
}
|
|
572
572
|
ws.close(1e3, "hack_force_close");
|
|
573
573
|
handlersPromise.then(({ conn, actor: actor3 }) => {
|
|
574
|
-
|
|
574
|
+
const wasClean = event.wasClean || event.code === 1e3;
|
|
575
|
+
actor3.__connDisconnected(conn, wasClean, socketId);
|
|
575
576
|
}).catch((error) => {
|
|
576
|
-
|
|
577
|
+
_chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
577
578
|
error,
|
|
578
579
|
actor2.rLog,
|
|
579
580
|
{ wsEvent: "close" },
|
|
@@ -585,7 +586,7 @@ async function handleWebSocketConnect(req, runConfig, actorDriver, actorId, enco
|
|
|
585
586
|
try {
|
|
586
587
|
actor2.rLog.warn({ msg: "websocket error" });
|
|
587
588
|
} catch (error) {
|
|
588
|
-
|
|
589
|
+
_chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
589
590
|
error,
|
|
590
591
|
actor2.rLog,
|
|
591
592
|
{ wsEvent: "error" },
|
|
@@ -599,9 +600,9 @@ async function handleSseConnect(c, _runConfig, actorDriver, actorId) {
|
|
|
599
600
|
c.header("Content-Encoding", "Identity");
|
|
600
601
|
const encoding = getRequestEncoding(c.req);
|
|
601
602
|
const parameters = getRequestConnParams(c.req);
|
|
602
|
-
const socketId =
|
|
603
|
-
const connId = c.req.header(
|
|
604
|
-
const connToken = c.req.header(
|
|
603
|
+
const socketId = _chunk4PSLOAXRcjs.generateConnSocketId.call(void 0, );
|
|
604
|
+
const connId = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_ID);
|
|
605
|
+
const connToken = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_TOKEN);
|
|
605
606
|
return _streaming.streamSSE.call(void 0, c, async (stream) => {
|
|
606
607
|
let actor2;
|
|
607
608
|
let conn;
|
|
@@ -626,12 +627,12 @@ async function handleSseConnect(c, _runConfig, actorDriver, actorId) {
|
|
|
626
627
|
connId,
|
|
627
628
|
connToken
|
|
628
629
|
);
|
|
629
|
-
const abortResolver =
|
|
630
|
+
const abortResolver = _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, );
|
|
630
631
|
stream.onAbort(() => {
|
|
631
632
|
});
|
|
632
633
|
c.req.raw.signal.addEventListener("abort", async () => {
|
|
633
634
|
_invariant2.default.call(void 0, actor2, "actor should exist");
|
|
634
|
-
const rLog = _nullishCoalesce(actor2.rLog, () => (
|
|
635
|
+
const rLog = _nullishCoalesce(actor2.rLog, () => ( _chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, )));
|
|
635
636
|
try {
|
|
636
637
|
rLog.debug("sse stream aborted");
|
|
637
638
|
if (conn) {
|
|
@@ -656,7 +657,7 @@ async function handleSseConnect(c, _runConfig, actorDriver, actorId) {
|
|
|
656
657
|
await stream.sleep(SSE_PING_INTERVAL);
|
|
657
658
|
}
|
|
658
659
|
} catch (error) {
|
|
659
|
-
|
|
660
|
+
_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, ).error({ msg: "error in sse connection", error });
|
|
660
661
|
if (conn && actor2 !== void 0) {
|
|
661
662
|
actor2.__connDisconnected(conn, false, socketId);
|
|
662
663
|
}
|
|
@@ -668,13 +669,13 @@ async function handleAction(c, _runConfig, actorDriver, actionName, actorId) {
|
|
|
668
669
|
const encoding = getRequestEncoding(c.req);
|
|
669
670
|
const parameters = getRequestConnParams(c.req);
|
|
670
671
|
const arrayBuffer = await c.req.arrayBuffer();
|
|
671
|
-
const request =
|
|
672
|
+
const request = _chunkSDXTJDDRcjs.deserializeWithEncoding.call(void 0,
|
|
672
673
|
encoding,
|
|
673
674
|
new Uint8Array(arrayBuffer),
|
|
674
|
-
|
|
675
|
+
_chunkSOC4HWCGcjs.HTTP_ACTION_REQUEST_VERSIONED
|
|
675
676
|
);
|
|
676
677
|
const actionArgs = cbor.decode(new Uint8Array(request.args));
|
|
677
|
-
const socketId =
|
|
678
|
+
const socketId = _chunk4PSLOAXRcjs.generateConnSocketId.call(void 0, );
|
|
678
679
|
let actor2;
|
|
679
680
|
let conn;
|
|
680
681
|
let output;
|
|
@@ -689,7 +690,7 @@ async function handleAction(c, _runConfig, actorDriver, actionName, actorId) {
|
|
|
689
690
|
parameters,
|
|
690
691
|
c.req.raw
|
|
691
692
|
);
|
|
692
|
-
const ctx = new (0,
|
|
693
|
+
const ctx = new (0, _chunkSOC4HWCGcjs.ActionContext)(actor2.actorContext, conn);
|
|
693
694
|
output = await actor2.executeAction(ctx, actionName, actionArgs);
|
|
694
695
|
} finally {
|
|
695
696
|
if (conn) {
|
|
@@ -697,24 +698,24 @@ async function handleAction(c, _runConfig, actorDriver, actionName, actorId) {
|
|
|
697
698
|
}
|
|
698
699
|
}
|
|
699
700
|
const responseData = {
|
|
700
|
-
output:
|
|
701
|
+
output: _chunkU2IXX6DYcjs.bufferToArrayBuffer.call(void 0, cbor.encode(output))
|
|
701
702
|
};
|
|
702
|
-
const serialized =
|
|
703
|
+
const serialized = _chunkSDXTJDDRcjs.serializeWithEncoding.call(void 0,
|
|
703
704
|
encoding,
|
|
704
705
|
responseData,
|
|
705
|
-
|
|
706
|
+
_chunkSOC4HWCGcjs.HTTP_ACTION_RESPONSE_VERSIONED
|
|
706
707
|
);
|
|
707
708
|
return c.body(serialized, 200, {
|
|
708
|
-
"Content-Type":
|
|
709
|
+
"Content-Type": _chunkSDXTJDDRcjs.contentTypeForEncoding.call(void 0, encoding)
|
|
709
710
|
});
|
|
710
711
|
}
|
|
711
712
|
async function handleConnectionMessage(c, _runConfig, actorDriver, connId, connToken, actorId) {
|
|
712
713
|
const encoding = getRequestEncoding(c.req);
|
|
713
714
|
const arrayBuffer = await c.req.arrayBuffer();
|
|
714
|
-
const message =
|
|
715
|
+
const message = _chunkSDXTJDDRcjs.deserializeWithEncoding.call(void 0,
|
|
715
716
|
encoding,
|
|
716
717
|
new Uint8Array(arrayBuffer),
|
|
717
|
-
|
|
718
|
+
_chunkSOC4HWCGcjs.TO_SERVER_VERSIONED
|
|
718
719
|
);
|
|
719
720
|
const actor2 = await actorDriver.loadActor(actorId);
|
|
720
721
|
const conn = actor2.conns.get(connId);
|
|
@@ -795,11 +796,11 @@ async function handleRawWebSocketHandler(req, path3, actorDriver, actorId) {
|
|
|
795
796
|
};
|
|
796
797
|
}
|
|
797
798
|
function getRequestEncoding(req) {
|
|
798
|
-
const encodingParam = req.header(
|
|
799
|
+
const encodingParam = req.header(_chunkSDXTJDDRcjs.HEADER_ENCODING);
|
|
799
800
|
if (!encodingParam) {
|
|
800
801
|
throw new (0, _chunk5QGQK44Lcjs.InvalidEncoding)("undefined");
|
|
801
802
|
}
|
|
802
|
-
const result =
|
|
803
|
+
const result = _chunkSDXTJDDRcjs.EncodingSchema.safeParse(encodingParam);
|
|
803
804
|
if (!result.success) {
|
|
804
805
|
throw new (0, _chunk5QGQK44Lcjs.InvalidEncoding)(encodingParam);
|
|
805
806
|
}
|
|
@@ -809,7 +810,7 @@ function getRequestExposeInternalError(_req) {
|
|
|
809
810
|
return false;
|
|
810
811
|
}
|
|
811
812
|
function getRequestConnParams(req) {
|
|
812
|
-
const paramsParam = req.header(
|
|
813
|
+
const paramsParam = req.header(_chunkSDXTJDDRcjs.HEADER_CONN_PARAMS);
|
|
813
814
|
if (!paramsParam) {
|
|
814
815
|
return null;
|
|
815
816
|
}
|
|
@@ -817,7 +818,7 @@ function getRequestConnParams(req) {
|
|
|
817
818
|
return JSON.parse(paramsParam);
|
|
818
819
|
} catch (err) {
|
|
819
820
|
throw new (0, _chunk5QGQK44Lcjs.InvalidParams)(
|
|
820
|
-
`Invalid params JSON: ${
|
|
821
|
+
`Invalid params JSON: ${_chunkU2IXX6DYcjs.stringifyError.call(void 0, err)}`
|
|
821
822
|
);
|
|
822
823
|
}
|
|
823
824
|
}
|
|
@@ -825,7 +826,7 @@ function getRequestConnParams(req) {
|
|
|
825
826
|
// src/common/router.ts
|
|
826
827
|
|
|
827
828
|
function logger2() {
|
|
828
|
-
return
|
|
829
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "router");
|
|
829
830
|
}
|
|
830
831
|
function loggerMiddleware(logger7) {
|
|
831
832
|
return async (c, next) => {
|
|
@@ -851,7 +852,7 @@ function handleRouteNotFound(c) {
|
|
|
851
852
|
}
|
|
852
853
|
function handleRouteError(error, c) {
|
|
853
854
|
const exposeInternalError = getRequestExposeInternalError(c.req.raw);
|
|
854
|
-
const { statusCode, group, code, message, metadata } =
|
|
855
|
+
const { statusCode, group, code, message, metadata } = _chunkU2IXX6DYcjs.deconstructError.call(void 0,
|
|
855
856
|
error,
|
|
856
857
|
logger2(),
|
|
857
858
|
{
|
|
@@ -866,24 +867,24 @@ function handleRouteError(error, c) {
|
|
|
866
867
|
} catch (_) {
|
|
867
868
|
encoding = "json";
|
|
868
869
|
}
|
|
869
|
-
const output =
|
|
870
|
+
const output = _chunkSDXTJDDRcjs.serializeWithEncoding.call(void 0,
|
|
870
871
|
encoding,
|
|
871
872
|
{
|
|
872
873
|
group,
|
|
873
874
|
code,
|
|
874
875
|
message,
|
|
875
876
|
// TODO: Cannot serialize non-binary meta since it requires ArrayBuffer atm
|
|
876
|
-
metadata:
|
|
877
|
+
metadata: _chunkSDXTJDDRcjs.encodingIsBinary.call(void 0, encoding) ? _chunkU2IXX6DYcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(metadata)) : null
|
|
877
878
|
},
|
|
878
|
-
|
|
879
|
+
_chunkSOC4HWCGcjs.HTTP_RESPONSE_ERROR_VERSIONED
|
|
879
880
|
);
|
|
880
881
|
return c.body(output, { status: statusCode });
|
|
881
882
|
}
|
|
882
883
|
|
|
883
884
|
// src/actor/router.ts
|
|
884
|
-
function createActorRouter(runConfig, actorDriver) {
|
|
885
|
+
function createActorRouter(runConfig, actorDriver, isTest) {
|
|
885
886
|
const router = new (0, _hono.Hono)({ strict: false });
|
|
886
|
-
router.use("*", loggerMiddleware(
|
|
887
|
+
router.use("*", loggerMiddleware(_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, )));
|
|
887
888
|
router.get("/", (c) => {
|
|
888
889
|
return c.text(
|
|
889
890
|
"This is an RivetKit actor.\n\nLearn more at https://rivetkit.org"
|
|
@@ -892,27 +893,29 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
892
893
|
router.get("/health", (c) => {
|
|
893
894
|
return c.text("ok");
|
|
894
895
|
});
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
896
|
+
if (isTest) {
|
|
897
|
+
router.post("/.test/force-disconnect", async (c) => {
|
|
898
|
+
const connId = c.req.query("conn");
|
|
899
|
+
if (!connId) {
|
|
900
|
+
return c.text("Missing conn query parameter", 400);
|
|
901
|
+
}
|
|
902
|
+
const actor2 = await actorDriver.loadActor(c.env.actorId);
|
|
903
|
+
const conn = actor2.__getConnForId(connId);
|
|
904
|
+
if (!conn) {
|
|
905
|
+
return c.text(`Connection not found: ${connId}`, 404);
|
|
906
|
+
}
|
|
907
|
+
const driverState = conn.__driverState;
|
|
908
|
+
if (driverState && 0 /* WEBSOCKET */ in driverState) {
|
|
909
|
+
const ws = driverState[0 /* WEBSOCKET */].websocket;
|
|
910
|
+
ws.raw.terminate();
|
|
911
|
+
} else if (driverState && 1 /* SSE */ in driverState) {
|
|
912
|
+
const stream = driverState[1 /* SSE */].stream;
|
|
913
|
+
stream.abort();
|
|
914
|
+
}
|
|
915
|
+
return c.json({ success: true });
|
|
916
|
+
});
|
|
917
|
+
}
|
|
918
|
+
router.get(_chunkSDXTJDDRcjs.PATH_CONNECT_WEBSOCKET, async (c) => {
|
|
916
919
|
var _a;
|
|
917
920
|
const upgradeWebSocket = (_a = runConfig.getUpgradeWebSocket) == null ? void 0 : _a.call(runConfig);
|
|
918
921
|
if (upgradeWebSocket) {
|
|
@@ -925,20 +928,20 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
925
928
|
if (protocols) {
|
|
926
929
|
const protocolList = protocols.split(",").map((p) => p.trim());
|
|
927
930
|
for (const protocol of protocolList) {
|
|
928
|
-
if (protocol.startsWith(
|
|
929
|
-
encodingRaw = protocol.substring(
|
|
930
|
-
} else if (protocol.startsWith(
|
|
931
|
+
if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING)) {
|
|
932
|
+
encodingRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING.length);
|
|
933
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS)) {
|
|
931
934
|
connParamsRaw = decodeURIComponent(
|
|
932
|
-
protocol.substring(
|
|
935
|
+
protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS.length)
|
|
933
936
|
);
|
|
934
|
-
} else if (protocol.startsWith(
|
|
935
|
-
connIdRaw = protocol.substring(
|
|
936
|
-
} else if (protocol.startsWith(
|
|
937
|
-
connTokenRaw = protocol.substring(
|
|
937
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID)) {
|
|
938
|
+
connIdRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID.length);
|
|
939
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN)) {
|
|
940
|
+
connTokenRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN.length);
|
|
938
941
|
}
|
|
939
942
|
}
|
|
940
943
|
}
|
|
941
|
-
const encoding =
|
|
944
|
+
const encoding = _chunkSDXTJDDRcjs.EncodingSchema.parse(encodingRaw);
|
|
942
945
|
const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
|
|
943
946
|
return await handleWebSocketConnect(
|
|
944
947
|
c2.req.raw,
|
|
@@ -950,7 +953,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
950
953
|
connIdRaw,
|
|
951
954
|
connTokenRaw
|
|
952
955
|
);
|
|
953
|
-
})(c,
|
|
956
|
+
})(c, _chunkU2IXX6DYcjs.noopNext.call(void 0, ));
|
|
954
957
|
} else {
|
|
955
958
|
return c.text(
|
|
956
959
|
"WebSockets are not enabled for this driver. Use SSE instead.",
|
|
@@ -966,8 +969,8 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
966
969
|
return handleAction(c, runConfig, actorDriver, actionName, c.env.actorId);
|
|
967
970
|
});
|
|
968
971
|
router.post("/connections/message", async (c) => {
|
|
969
|
-
const connId = c.req.header(
|
|
970
|
-
const connToken = c.req.header(
|
|
972
|
+
const connId = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_ID);
|
|
973
|
+
const connToken = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_TOKEN);
|
|
971
974
|
if (!connId || !connToken) {
|
|
972
975
|
throw new Error("Missing required parameters");
|
|
973
976
|
}
|
|
@@ -981,8 +984,8 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
981
984
|
);
|
|
982
985
|
});
|
|
983
986
|
router.post("/connections/close", async (c) => {
|
|
984
|
-
const connId = c.req.header(
|
|
985
|
-
const connToken = c.req.header(
|
|
987
|
+
const connId = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_ID);
|
|
988
|
+
const connToken = c.req.header(_chunkSDXTJDDRcjs.HEADER_CONN_TOKEN);
|
|
986
989
|
if (!connId || !connToken) {
|
|
987
990
|
throw new Error("Missing required parameters");
|
|
988
991
|
}
|
|
@@ -1006,7 +1009,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
1006
1009
|
body: c.req.raw.body,
|
|
1007
1010
|
duplex: "half"
|
|
1008
1011
|
});
|
|
1009
|
-
|
|
1012
|
+
_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, ).debug({
|
|
1010
1013
|
msg: "rewriting http url",
|
|
1011
1014
|
from: c.req.url,
|
|
1012
1015
|
to: correctedRequest.url
|
|
@@ -1017,14 +1020,14 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
1017
1020
|
}
|
|
1018
1021
|
return response;
|
|
1019
1022
|
});
|
|
1020
|
-
router.get(`${
|
|
1023
|
+
router.get(`${_chunkSDXTJDDRcjs.PATH_RAW_WEBSOCKET_PREFIX}*`, async (c) => {
|
|
1021
1024
|
var _a;
|
|
1022
1025
|
const upgradeWebSocket = (_a = runConfig.getUpgradeWebSocket) == null ? void 0 : _a.call(runConfig);
|
|
1023
1026
|
if (upgradeWebSocket) {
|
|
1024
1027
|
return upgradeWebSocket(async (c2) => {
|
|
1025
1028
|
const url = new URL(c2.req.url);
|
|
1026
1029
|
const pathWithQuery = c2.req.path + url.search;
|
|
1027
|
-
|
|
1030
|
+
_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, ).debug({
|
|
1028
1031
|
msg: "actor router raw websocket",
|
|
1029
1032
|
path: c2.req.path,
|
|
1030
1033
|
url: c2.req.url,
|
|
@@ -1037,7 +1040,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
1037
1040
|
actorDriver,
|
|
1038
1041
|
c2.env.actorId
|
|
1039
1042
|
);
|
|
1040
|
-
})(c,
|
|
1043
|
+
})(c, _chunkU2IXX6DYcjs.noopNext.call(void 0, ));
|
|
1041
1044
|
} else {
|
|
1042
1045
|
return c.text(
|
|
1043
1046
|
"WebSockets are not enabled for this driver. Use SSE instead.",
|
|
@@ -1045,19 +1048,19 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
1045
1048
|
);
|
|
1046
1049
|
}
|
|
1047
1050
|
});
|
|
1048
|
-
if (
|
|
1051
|
+
if (_chunkQGRYH6TUcjs.isInspectorEnabled.call(void 0, runConfig, "actor")) {
|
|
1049
1052
|
router.route(
|
|
1050
1053
|
"/inspect",
|
|
1051
1054
|
new (0, _hono.Hono)().use(
|
|
1052
1055
|
_cors.cors.call(void 0, runConfig.inspector.cors),
|
|
1053
|
-
|
|
1056
|
+
_chunkQGRYH6TUcjs.secureInspector.call(void 0, runConfig),
|
|
1054
1057
|
async (c, next) => {
|
|
1055
1058
|
const inspector = (await actorDriver.loadActor(c.env.actorId)).inspector;
|
|
1056
1059
|
_invariant2.default.call(void 0, inspector, "inspector not supported on this platform");
|
|
1057
1060
|
c.set("inspector", inspector);
|
|
1058
1061
|
return next();
|
|
1059
1062
|
}
|
|
1060
|
-
).route("/",
|
|
1063
|
+
).route("/", _chunk4PSLOAXRcjs.createActorInspectorRouter.call(void 0, ))
|
|
1061
1064
|
);
|
|
1062
1065
|
}
|
|
1063
1066
|
router.notFound(handleRouteNotFound);
|
|
@@ -1068,13 +1071,13 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
1068
1071
|
// src/actor/mod.ts
|
|
1069
1072
|
function actor(input) {
|
|
1070
1073
|
const config2 = ActorConfigSchema.parse(input);
|
|
1071
|
-
return new (0,
|
|
1074
|
+
return new (0, _chunk4PSLOAXRcjs.ActorDefinition)(config2);
|
|
1072
1075
|
}
|
|
1073
1076
|
|
|
1074
1077
|
// src/common/inline-websocket-adapter2.ts
|
|
1075
1078
|
var _ws2 = require('hono/ws');
|
|
1076
1079
|
function logger3() {
|
|
1077
|
-
return
|
|
1080
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "fake-event-source2");
|
|
1078
1081
|
}
|
|
1079
1082
|
var InlineWebSocketAdapter2 = (_class2 = class {
|
|
1080
1083
|
// WebSocket readyState values
|
|
@@ -1422,7 +1425,7 @@ var KEYS = {
|
|
|
1422
1425
|
|
|
1423
1426
|
// src/drivers/engine/log.ts
|
|
1424
1427
|
function logger4() {
|
|
1425
|
-
return
|
|
1428
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "driver-engine");
|
|
1426
1429
|
}
|
|
1427
1430
|
|
|
1428
1431
|
// src/drivers/engine/actor-driver.ts
|
|
@@ -1437,6 +1440,7 @@ var EngineActorDriver = class {
|
|
|
1437
1440
|
#actorRouter;
|
|
1438
1441
|
#version = 1;
|
|
1439
1442
|
// Version for the runner protocol
|
|
1443
|
+
#alarmTimeout;
|
|
1440
1444
|
#runnerStarted = Promise.withResolvers();
|
|
1441
1445
|
#runnerStopped = Promise.withResolvers();
|
|
1442
1446
|
constructor(registryConfig, runConfig, managerDriver, inlineClient, config2) {
|
|
@@ -1445,15 +1449,19 @@ var EngineActorDriver = class {
|
|
|
1445
1449
|
this.#managerDriver = managerDriver;
|
|
1446
1450
|
this.#inlineClient = inlineClient;
|
|
1447
1451
|
this.#config = config2;
|
|
1448
|
-
this.#actorRouter = createActorRouter(
|
|
1452
|
+
this.#actorRouter = createActorRouter(
|
|
1453
|
+
runConfig,
|
|
1454
|
+
this,
|
|
1455
|
+
registryConfig.test.enabled
|
|
1456
|
+
);
|
|
1449
1457
|
let hasDisconnected = false;
|
|
1450
1458
|
const runnerConfig = {
|
|
1451
1459
|
version: this.#version,
|
|
1452
1460
|
endpoint: config2.endpoint,
|
|
1453
|
-
token: config2.token,
|
|
1461
|
+
token: _nullishCoalesce(runConfig.token, () => ( config2.token)),
|
|
1454
1462
|
pegboardEndpoint: config2.pegboardEndpoint,
|
|
1455
1463
|
namespace: config2.namespace,
|
|
1456
|
-
totalSlots: config2.totalSlots,
|
|
1464
|
+
totalSlots: _nullishCoalesce(runConfig.totalSlots, () => ( config2.totalSlots)),
|
|
1457
1465
|
runnerName: config2.runnerName,
|
|
1458
1466
|
runnerKey: config2.runnerKey,
|
|
1459
1467
|
metadata: {
|
|
@@ -1496,7 +1504,7 @@ var EngineActorDriver = class {
|
|
|
1496
1504
|
websocket: this.#runnerWebSocket.bind(this),
|
|
1497
1505
|
onActorStart: this.#runnerOnActorStart.bind(this),
|
|
1498
1506
|
onActorStop: this.#runnerOnActorStop.bind(this),
|
|
1499
|
-
logger:
|
|
1507
|
+
logger: _chunkDL7TPF63cjs.getLogger.call(void 0, "engine-runner")
|
|
1500
1508
|
};
|
|
1501
1509
|
this.#runner = new (0, _enginerunner.Runner)(runnerConfig);
|
|
1502
1510
|
this.#runner.start();
|
|
@@ -1541,6 +1549,16 @@ var EngineActorDriver = class {
|
|
|
1541
1549
|
await this.#runner.kvPut(actorId, [[KEYS.PERSIST_DATA, data]]);
|
|
1542
1550
|
}
|
|
1543
1551
|
async setAlarm(actor2, timestamp) {
|
|
1552
|
+
if (this.#alarmTimeout) {
|
|
1553
|
+
this.#alarmTimeout.abort();
|
|
1554
|
+
this.#alarmTimeout = void 0;
|
|
1555
|
+
}
|
|
1556
|
+
const delay = Math.max(0, timestamp - Date.now());
|
|
1557
|
+
this.#alarmTimeout = _chunkU2IXX6DYcjs.setLongTimeout.call(void 0, () => {
|
|
1558
|
+
actor2._onAlarm();
|
|
1559
|
+
this.#alarmTimeout = void 0;
|
|
1560
|
+
}, delay);
|
|
1561
|
+
this.#runner.setAlarm(actor2.id, timestamp);
|
|
1544
1562
|
}
|
|
1545
1563
|
async getDatabase(_actorId) {
|
|
1546
1564
|
return void 0;
|
|
@@ -1562,15 +1580,15 @@ var EngineActorDriver = class {
|
|
|
1562
1580
|
let handler = this.#actors.get(actorId);
|
|
1563
1581
|
if (!handler) {
|
|
1564
1582
|
handler = {
|
|
1565
|
-
actorStartPromise:
|
|
1566
|
-
persistedData:
|
|
1583
|
+
actorStartPromise: _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, ),
|
|
1584
|
+
persistedData: _chunkSOC4HWCGcjs.serializeEmptyPersistData.call(void 0, input)
|
|
1567
1585
|
};
|
|
1568
1586
|
this.#actors.set(actorId, handler);
|
|
1569
1587
|
}
|
|
1570
1588
|
const name = config2.name;
|
|
1571
1589
|
_invariant2.default.call(void 0, config2.key, "actor should have a key");
|
|
1572
|
-
const key =
|
|
1573
|
-
const definition =
|
|
1590
|
+
const key = _chunk4PSLOAXRcjs.deserializeActorKey.call(void 0, config2.key);
|
|
1591
|
+
const definition = _chunk4PSLOAXRcjs.lookupInRegistry.call(void 0,
|
|
1574
1592
|
this.#registryConfig,
|
|
1575
1593
|
config2.name
|
|
1576
1594
|
// TODO: Remove cast
|
|
@@ -1619,19 +1637,19 @@ var EngineActorDriver = class {
|
|
|
1619
1637
|
if (protocols) {
|
|
1620
1638
|
const protocolList = protocols.split(",").map((p) => p.trim());
|
|
1621
1639
|
for (const protocol of protocolList) {
|
|
1622
|
-
if (protocol.startsWith(
|
|
1623
|
-
encodingRaw = protocol.substring(
|
|
1624
|
-
} else if (protocol.startsWith(
|
|
1640
|
+
if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING)) {
|
|
1641
|
+
encodingRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING.length);
|
|
1642
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS)) {
|
|
1625
1643
|
connParamsRaw = decodeURIComponent(
|
|
1626
|
-
protocol.substring(
|
|
1644
|
+
protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS.length)
|
|
1627
1645
|
);
|
|
1628
1646
|
}
|
|
1629
1647
|
}
|
|
1630
1648
|
}
|
|
1631
|
-
const encoding =
|
|
1649
|
+
const encoding = _chunkSDXTJDDRcjs.EncodingSchema.parse(encodingRaw);
|
|
1632
1650
|
const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
|
|
1633
1651
|
let wsHandlerPromise;
|
|
1634
|
-
if (url.pathname ===
|
|
1652
|
+
if (url.pathname === _chunkSDXTJDDRcjs.PATH_CONNECT_WEBSOCKET) {
|
|
1635
1653
|
wsHandlerPromise = handleWebSocketConnect(
|
|
1636
1654
|
request,
|
|
1637
1655
|
this.#runConfig,
|
|
@@ -1643,7 +1661,7 @@ var EngineActorDriver = class {
|
|
|
1643
1661
|
void 0,
|
|
1644
1662
|
void 0
|
|
1645
1663
|
);
|
|
1646
|
-
} else if (url.pathname.startsWith(
|
|
1664
|
+
} else if (url.pathname.startsWith(_chunkSDXTJDDRcjs.PATH_RAW_WEBSOCKET_PREFIX)) {
|
|
1647
1665
|
wsHandlerPromise = handleRawWebSocketHandler(
|
|
1648
1666
|
request,
|
|
1649
1667
|
url.pathname + url.search,
|
|
@@ -1700,9 +1718,9 @@ var EngineActorDriver = class {
|
|
|
1700
1718
|
async serverlessHandleStart(c) {
|
|
1701
1719
|
await this.#runnerStarted.promise;
|
|
1702
1720
|
return _streaming.streamSSE.call(void 0, c, async (stream) => {
|
|
1703
|
-
const
|
|
1704
|
-
_invariant2.default.call(void 0,
|
|
1705
|
-
stream.writeSSE({ data:
|
|
1721
|
+
const payload = this.#runner.getServerlessInitPacket();
|
|
1722
|
+
_invariant2.default.call(void 0, payload, "runnerId not set");
|
|
1723
|
+
stream.writeSSE({ data: payload });
|
|
1706
1724
|
return this.#runnerStopped.promise;
|
|
1707
1725
|
});
|
|
1708
1726
|
}
|
|
@@ -1713,15 +1731,15 @@ var EngineActorDriver = class {
|
|
|
1713
1731
|
var ConfigSchema = _zod.z.object({
|
|
1714
1732
|
app: _zod.z.custom().optional(),
|
|
1715
1733
|
endpoint: _zod.z.string().default(
|
|
1716
|
-
() => _nullishCoalesce(
|
|
1734
|
+
() => _nullishCoalesce(_chunkU2IXX6DYcjs.getEnvUniversal.call(void 0, "RIVET_ENGINE"), () => ( "http://localhost:6420"))
|
|
1717
1735
|
),
|
|
1718
|
-
token: _zod.z.string().optional().transform((val) => _nullishCoalesce(val, () => (
|
|
1736
|
+
token: _zod.z.string().optional().transform((val) => _nullishCoalesce(val, () => ( _chunkU2IXX6DYcjs.getEnvUniversal.call(void 0, "RIVET_TOKEN")))),
|
|
1719
1737
|
pegboardEndpoint: _zod.z.string().optional(),
|
|
1720
|
-
namespace: _zod.z.string().default(() => _nullishCoalesce(
|
|
1721
|
-
runnerName: _zod.z.string().default(() => _nullishCoalesce(
|
|
1738
|
+
namespace: _zod.z.string().default(() => _nullishCoalesce(_chunkU2IXX6DYcjs.getEnvUniversal.call(void 0, "RIVET_NAMESPACE"), () => ( "default"))),
|
|
1739
|
+
runnerName: _zod.z.string().default(() => _nullishCoalesce(_chunkU2IXX6DYcjs.getEnvUniversal.call(void 0, "RIVET_RUNNER"), () => ( "rivetkit"))),
|
|
1722
1740
|
// TODO: Automatically attempt to determine key by common env vars (e.g. k8s pod name)
|
|
1723
1741
|
runnerKey: _zod.z.string().default(
|
|
1724
|
-
() => _nullishCoalesce(
|
|
1742
|
+
() => _nullishCoalesce(_chunkU2IXX6DYcjs.getEnvUniversal.call(void 0, "RIVET_RUNNER_KEY"), () => ( crypto.randomUUID()))
|
|
1725
1743
|
),
|
|
1726
1744
|
totalSlots: _zod.z.number().default(1e5)
|
|
1727
1745
|
}).default({});
|
|
@@ -1732,7 +1750,7 @@ function createEngineDriver(inputConfig) {
|
|
|
1732
1750
|
return {
|
|
1733
1751
|
name: "engine",
|
|
1734
1752
|
manager: (_registryConfig, runConfig) => {
|
|
1735
|
-
return new (0,
|
|
1753
|
+
return new (0, _chunk4PSLOAXRcjs.RemoteManagerDriver)(runConfig);
|
|
1736
1754
|
},
|
|
1737
1755
|
actor: (registryConfig, runConfig, managerDriver, inlineClient) => {
|
|
1738
1756
|
return new EngineActorDriver(
|
|
@@ -1787,7 +1805,7 @@ var FileSystemActorDriver = class {
|
|
|
1787
1805
|
const state = await this.#state.loadActorStateOrError(actorId);
|
|
1788
1806
|
await this.#state.writeActor(actorId, {
|
|
1789
1807
|
...state,
|
|
1790
|
-
persistedData:
|
|
1808
|
+
persistedData: _chunkU2IXX6DYcjs.bufferToArrayBuffer.call(void 0, data)
|
|
1791
1809
|
});
|
|
1792
1810
|
}
|
|
1793
1811
|
async setAlarm(actor2, timestamp) {
|
|
@@ -1890,13 +1908,13 @@ function decodeActorAlarm(bytes) {
|
|
|
1890
1908
|
// src/schemas/file-system-driver/versioned.ts
|
|
1891
1909
|
var CURRENT_VERSION = 1;
|
|
1892
1910
|
var migrations = /* @__PURE__ */ new Map();
|
|
1893
|
-
var ACTOR_STATE_VERSIONED =
|
|
1911
|
+
var ACTOR_STATE_VERSIONED = _chunkSOC4HWCGcjs.createVersionedDataHandler.call(void 0, {
|
|
1894
1912
|
currentVersion: CURRENT_VERSION,
|
|
1895
1913
|
migrations,
|
|
1896
1914
|
serializeVersion: (data) => encodeActorState(data),
|
|
1897
1915
|
deserializeVersion: (bytes) => decodeActorState(bytes)
|
|
1898
1916
|
});
|
|
1899
|
-
var ACTOR_ALARM_VERSIONED =
|
|
1917
|
+
var ACTOR_ALARM_VERSIONED = _chunkSOC4HWCGcjs.createVersionedDataHandler.call(void 0, {
|
|
1900
1918
|
currentVersion: CURRENT_VERSION,
|
|
1901
1919
|
migrations,
|
|
1902
1920
|
serializeVersion: (data) => encodeActorAlarm(data),
|
|
@@ -1905,7 +1923,7 @@ var ACTOR_ALARM_VERSIONED = _chunk7OOBMCQIcjs.createVersionedDataHandler.call(vo
|
|
|
1905
1923
|
|
|
1906
1924
|
// src/drivers/file-system/log.ts
|
|
1907
1925
|
function logger5() {
|
|
1908
|
-
return
|
|
1926
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "driver-fs");
|
|
1909
1927
|
}
|
|
1910
1928
|
|
|
1911
1929
|
// src/drivers/file-system/utils.ts
|
|
@@ -2075,7 +2093,7 @@ var FileSystemGlobalState = class {
|
|
|
2075
2093
|
name,
|
|
2076
2094
|
key,
|
|
2077
2095
|
createdAt: BigInt(Date.now()),
|
|
2078
|
-
persistedData:
|
|
2096
|
+
persistedData: _chunkU2IXX6DYcjs.bufferToArrayBuffer.call(void 0, _chunkSOC4HWCGcjs.serializeEmptyPersistData.call(void 0, input))
|
|
2079
2097
|
};
|
|
2080
2098
|
await this.writeActor(actorId, entry.state);
|
|
2081
2099
|
return entry;
|
|
@@ -2123,7 +2141,7 @@ var FileSystemGlobalState = class {
|
|
|
2123
2141
|
name,
|
|
2124
2142
|
key,
|
|
2125
2143
|
createdAt: BigInt(Date.now()),
|
|
2126
|
-
persistedData:
|
|
2144
|
+
persistedData: _chunkU2IXX6DYcjs.bufferToArrayBuffer.call(void 0, _chunkSOC4HWCGcjs.serializeEmptyPersistData.call(void 0, input))
|
|
2127
2145
|
};
|
|
2128
2146
|
await this.writeActor(actorId, entry.state);
|
|
2129
2147
|
}
|
|
@@ -2247,9 +2265,9 @@ var FileSystemGlobalState = class {
|
|
|
2247
2265
|
if (entry.actor) {
|
|
2248
2266
|
return entry.actor;
|
|
2249
2267
|
}
|
|
2250
|
-
entry.startPromise =
|
|
2268
|
+
entry.startPromise = _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, );
|
|
2251
2269
|
try {
|
|
2252
|
-
const definition =
|
|
2270
|
+
const definition = _chunk4PSLOAXRcjs.lookupInRegistry.call(void 0, registryConfig, entry.state.name);
|
|
2253
2271
|
entry.actor = definition.instantiate();
|
|
2254
2272
|
await entry.actor.start(
|
|
2255
2273
|
actorDriver,
|
|
@@ -2309,7 +2327,7 @@ var FileSystemGlobalState = class {
|
|
|
2309
2327
|
logger5().error({
|
|
2310
2328
|
msg: "failed to read alarm file",
|
|
2311
2329
|
file,
|
|
2312
|
-
error:
|
|
2330
|
+
error: _chunkU2IXX6DYcjs.stringifyError.call(void 0, err)
|
|
2313
2331
|
});
|
|
2314
2332
|
}
|
|
2315
2333
|
}
|
|
@@ -2336,7 +2354,7 @@ var FileSystemGlobalState = class {
|
|
|
2336
2354
|
(_a = entry.alarmTimeout) == null ? void 0 : _a.abort();
|
|
2337
2355
|
entry.alarmTimestamp = timestamp;
|
|
2338
2356
|
const delay = Math.max(0, timestamp - Date.now());
|
|
2339
|
-
entry.alarmTimeout =
|
|
2357
|
+
entry.alarmTimeout = _chunkU2IXX6DYcjs.setLongTimeout.call(void 0, async () => {
|
|
2340
2358
|
entry.alarmTimestamp = void 0;
|
|
2341
2359
|
if (this.#persist) {
|
|
2342
2360
|
try {
|
|
@@ -2346,7 +2364,7 @@ var FileSystemGlobalState = class {
|
|
|
2346
2364
|
logger5().debug({
|
|
2347
2365
|
msg: "failed to remove alarm file",
|
|
2348
2366
|
actorId,
|
|
2349
|
-
error:
|
|
2367
|
+
error: _chunkU2IXX6DYcjs.stringifyError.call(void 0, err)
|
|
2350
2368
|
});
|
|
2351
2369
|
}
|
|
2352
2370
|
}
|
|
@@ -2372,7 +2390,7 @@ var FileSystemGlobalState = class {
|
|
|
2372
2390
|
logger5().error({
|
|
2373
2391
|
msg: "failed to handle alarm",
|
|
2374
2392
|
actorId,
|
|
2375
|
-
error:
|
|
2393
|
+
error: _chunkU2IXX6DYcjs.stringifyError.call(void 0, err)
|
|
2376
2394
|
});
|
|
2377
2395
|
}
|
|
2378
2396
|
}, delay);
|
|
@@ -2382,7 +2400,7 @@ var FileSystemGlobalState = class {
|
|
|
2382
2400
|
if (fsSync2.existsSync(tokenPath)) {
|
|
2383
2401
|
return fsSync2.readFileSync(tokenPath, "utf-8");
|
|
2384
2402
|
}
|
|
2385
|
-
const newToken =
|
|
2403
|
+
const newToken = _chunkSDXTJDDRcjs.generateRandomString.call(void 0, );
|
|
2386
2404
|
fsSync2.writeFileSync(tokenPath, newToken);
|
|
2387
2405
|
return newToken;
|
|
2388
2406
|
}
|
|
@@ -2444,10 +2462,10 @@ function createManagerInspectorRouter() {
|
|
|
2444
2462
|
});
|
|
2445
2463
|
return c.json(actors, 200);
|
|
2446
2464
|
} catch (error) {
|
|
2447
|
-
|
|
2465
|
+
_chunkQGRYH6TUcjs.inspectorLogger.call(void 0, ).error({ msg: "Failed to fetch actors", error });
|
|
2448
2466
|
return c.json("Failed to fetch actors", 500);
|
|
2449
2467
|
}
|
|
2450
|
-
}).post("/actors", _standardvalidator.sValidator.call(void 0, "json",
|
|
2468
|
+
}).post("/actors", _standardvalidator.sValidator.call(void 0, "json", _chunk2MJYYF2Qcjs.CreateActorSchema), async (c) => {
|
|
2451
2469
|
const actor2 = await c.var.inspector.accessors.createActor(
|
|
2452
2470
|
c.req.valid("json")
|
|
2453
2471
|
);
|
|
@@ -2473,7 +2491,7 @@ var ManagerInspector = class {
|
|
|
2473
2491
|
|
|
2474
2492
|
constructor(accessors) {
|
|
2475
2493
|
this.accessors = accessors();
|
|
2476
|
-
|
|
2494
|
+
_chunkQGRYH6TUcjs.inspectorLogger.call(void 0, ).debug({ msg: "Manager Inspector enabled and ready" });
|
|
2477
2495
|
}
|
|
2478
2496
|
};
|
|
2479
2497
|
|
|
@@ -2548,14 +2566,18 @@ var FileSystemManagerDriver = class {
|
|
|
2548
2566
|
};
|
|
2549
2567
|
});
|
|
2550
2568
|
}
|
|
2551
|
-
const inlineClient =
|
|
2569
|
+
const inlineClient = _chunk4PSLOAXRcjs.createClientWithDriver.call(void 0, this);
|
|
2552
2570
|
this.#actorDriver = this.#driverConfig.actor(
|
|
2553
2571
|
registryConfig,
|
|
2554
2572
|
runConfig,
|
|
2555
2573
|
this,
|
|
2556
2574
|
inlineClient
|
|
2557
2575
|
);
|
|
2558
|
-
this.#actorRouter = createActorRouter(
|
|
2576
|
+
this.#actorRouter = createActorRouter(
|
|
2577
|
+
this.#runConfig,
|
|
2578
|
+
this.#actorDriver,
|
|
2579
|
+
registryConfig.test.enabled
|
|
2580
|
+
);
|
|
2559
2581
|
}
|
|
2560
2582
|
async sendRequest(actorId, actorRequest) {
|
|
2561
2583
|
return await this.#actorRouter.fetch(actorRequest, {
|
|
@@ -2565,7 +2587,7 @@ var FileSystemManagerDriver = class {
|
|
|
2565
2587
|
async openWebSocket(path3, actorId, encoding, params, connId, connToken) {
|
|
2566
2588
|
const pathOnly = path3.split("?")[0];
|
|
2567
2589
|
const normalizedPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
|
|
2568
|
-
if (normalizedPath ===
|
|
2590
|
+
if (normalizedPath === _chunkSDXTJDDRcjs.PATH_CONNECT_WEBSOCKET) {
|
|
2569
2591
|
const wsHandler = await handleWebSocketConnect(
|
|
2570
2592
|
void 0,
|
|
2571
2593
|
this.#runConfig,
|
|
@@ -2577,7 +2599,7 @@ var FileSystemManagerDriver = class {
|
|
|
2577
2599
|
connToken
|
|
2578
2600
|
);
|
|
2579
2601
|
return new InlineWebSocketAdapter2(wsHandler);
|
|
2580
|
-
} else if (normalizedPath.startsWith(
|
|
2602
|
+
} else if (normalizedPath.startsWith(_chunkSDXTJDDRcjs.PATH_RAW_WEBSOCKET_PREFIX) || normalizedPath === "/raw/websocket") {
|
|
2581
2603
|
const wsHandler = await handleRawWebSocketHandler(
|
|
2582
2604
|
void 0,
|
|
2583
2605
|
path3,
|
|
@@ -2600,7 +2622,7 @@ var FileSystemManagerDriver = class {
|
|
|
2600
2622
|
_invariant2.default.call(void 0, upgradeWebSocket, "missing getUpgradeWebSocket");
|
|
2601
2623
|
const pathOnly = path3.split("?")[0];
|
|
2602
2624
|
const normalizedPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
|
|
2603
|
-
if (normalizedPath ===
|
|
2625
|
+
if (normalizedPath === _chunkSDXTJDDRcjs.PATH_CONNECT_WEBSOCKET) {
|
|
2604
2626
|
const wsHandler = await handleWebSocketConnect(
|
|
2605
2627
|
c.req.raw,
|
|
2606
2628
|
this.#runConfig,
|
|
@@ -2611,15 +2633,15 @@ var FileSystemManagerDriver = class {
|
|
|
2611
2633
|
connId,
|
|
2612
2634
|
connToken
|
|
2613
2635
|
);
|
|
2614
|
-
return upgradeWebSocket(() => wsHandler)(c,
|
|
2615
|
-
} else if (normalizedPath.startsWith(
|
|
2636
|
+
return upgradeWebSocket(() => wsHandler)(c, _chunkU2IXX6DYcjs.noopNext.call(void 0, ));
|
|
2637
|
+
} else if (normalizedPath.startsWith(_chunkSDXTJDDRcjs.PATH_RAW_WEBSOCKET_PREFIX) || normalizedPath === "/raw/websocket") {
|
|
2616
2638
|
const wsHandler = await handleRawWebSocketHandler(
|
|
2617
2639
|
c.req.raw,
|
|
2618
2640
|
path3,
|
|
2619
2641
|
this.#actorDriver,
|
|
2620
2642
|
actorId
|
|
2621
2643
|
);
|
|
2622
|
-
return upgradeWebSocket(() => wsHandler)(c,
|
|
2644
|
+
return upgradeWebSocket(() => wsHandler)(c, _chunkU2IXX6DYcjs.noopNext.call(void 0, ));
|
|
2623
2645
|
} else {
|
|
2624
2646
|
throw new Error(`Unreachable path: ${path3}`);
|
|
2625
2647
|
}
|
|
@@ -2742,7 +2764,7 @@ function chooseDefaultDriver(runConfig) {
|
|
|
2742
2764
|
return runConfig.driver;
|
|
2743
2765
|
}
|
|
2744
2766
|
if (runConfig.endpoint) {
|
|
2745
|
-
|
|
2767
|
+
_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, ).debug({
|
|
2746
2768
|
msg: "using rivet engine driver",
|
|
2747
2769
|
endpoint: runConfig.endpoint
|
|
2748
2770
|
});
|
|
@@ -2751,7 +2773,7 @@ function chooseDefaultDriver(runConfig) {
|
|
|
2751
2773
|
token: runConfig.token
|
|
2752
2774
|
});
|
|
2753
2775
|
}
|
|
2754
|
-
|
|
2776
|
+
_chunkSDXTJDDRcjs.loggerWithoutContext.call(void 0, ).debug({ msg: "using default file system driver" });
|
|
2755
2777
|
return createFileSystemOrMemoryDriver(true);
|
|
2756
2778
|
}
|
|
2757
2779
|
|
|
@@ -2762,7 +2784,6 @@ var _zodopenapi = require('@hono/zod-openapi');
|
|
|
2762
2784
|
|
|
2763
2785
|
|
|
2764
2786
|
|
|
2765
|
-
var _factory = require('hono/factory');
|
|
2766
2787
|
|
|
2767
2788
|
|
|
2768
2789
|
|
|
@@ -2838,20 +2859,20 @@ async function handleWebSocketGateway(runConfig, managerDriver, c) {
|
|
|
2838
2859
|
if (protocols) {
|
|
2839
2860
|
const protocolList = protocols.split(",").map((p) => p.trim());
|
|
2840
2861
|
for (const protocol of protocolList) {
|
|
2841
|
-
if (protocol.startsWith(
|
|
2842
|
-
target = protocol.substring(
|
|
2843
|
-
} else if (protocol.startsWith(
|
|
2844
|
-
actorId = protocol.substring(
|
|
2845
|
-
} else if (protocol.startsWith(
|
|
2846
|
-
encodingRaw = protocol.substring(
|
|
2847
|
-
} else if (protocol.startsWith(
|
|
2862
|
+
if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_TARGET)) {
|
|
2863
|
+
target = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_TARGET.length);
|
|
2864
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ACTOR)) {
|
|
2865
|
+
actorId = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_ACTOR.length);
|
|
2866
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING)) {
|
|
2867
|
+
encodingRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING.length);
|
|
2868
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS)) {
|
|
2848
2869
|
connParamsRaw = decodeURIComponent(
|
|
2849
|
-
protocol.substring(
|
|
2870
|
+
protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS.length)
|
|
2850
2871
|
);
|
|
2851
|
-
} else if (protocol.startsWith(
|
|
2852
|
-
connIdRaw = protocol.substring(
|
|
2853
|
-
} else if (protocol.startsWith(
|
|
2854
|
-
connTokenRaw = protocol.substring(
|
|
2872
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID)) {
|
|
2873
|
+
connIdRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID.length);
|
|
2874
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN)) {
|
|
2875
|
+
connTokenRaw = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN.length);
|
|
2855
2876
|
}
|
|
2856
2877
|
}
|
|
2857
2878
|
}
|
|
@@ -2882,8 +2903,8 @@ async function handleWebSocketGateway(runConfig, managerDriver, c) {
|
|
|
2882
2903
|
);
|
|
2883
2904
|
}
|
|
2884
2905
|
async function handleHttpGateway(managerDriver, c, next) {
|
|
2885
|
-
const target = c.req.header(
|
|
2886
|
-
const actorId = c.req.header(
|
|
2906
|
+
const target = c.req.header(_chunkSDXTJDDRcjs.HEADER_RIVET_TARGET);
|
|
2907
|
+
const actorId = c.req.header(_chunkSDXTJDDRcjs.HEADER_RIVET_ACTOR);
|
|
2887
2908
|
if (target !== "actor") {
|
|
2888
2909
|
return next();
|
|
2889
2910
|
}
|
|
@@ -2897,8 +2918,8 @@ async function handleHttpGateway(managerDriver, c, next) {
|
|
|
2897
2918
|
method: c.req.method
|
|
2898
2919
|
});
|
|
2899
2920
|
const proxyHeaders = new Headers(c.req.raw.headers);
|
|
2900
|
-
proxyHeaders.delete(
|
|
2901
|
-
proxyHeaders.delete(
|
|
2921
|
+
proxyHeaders.delete(_chunkSDXTJDDRcjs.HEADER_RIVET_TARGET);
|
|
2922
|
+
proxyHeaders.delete(_chunkSDXTJDDRcjs.HEADER_RIVET_ACTOR);
|
|
2902
2923
|
const url = new URL(c.req.url);
|
|
2903
2924
|
const proxyUrl = new URL(`http://actor${url.pathname}${url.search}`);
|
|
2904
2925
|
const proxyRequest = new Request(proxyUrl, {
|
|
@@ -2915,7 +2936,7 @@ async function createTestWebSocketProxy(clientWsPromise) {
|
|
|
2915
2936
|
promise: serverWsPromise,
|
|
2916
2937
|
resolve: serverWsResolve,
|
|
2917
2938
|
reject: serverWsReject
|
|
2918
|
-
} =
|
|
2939
|
+
} = _chunkU2IXX6DYcjs.promiseWithResolvers.call(void 0, );
|
|
2919
2940
|
try {
|
|
2920
2941
|
logger().debug({ msg: "awaiting client websocket promise" });
|
|
2921
2942
|
const ws = await clientWsPromise;
|
|
@@ -3105,45 +3126,62 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, serverles
|
|
|
3105
3126
|
runConfig.basePath
|
|
3106
3127
|
);
|
|
3107
3128
|
router.use("*", loggerMiddleware(logger()));
|
|
3108
|
-
const cors2 = runConfig.cors ? _cors.cors.call(void 0, runConfig.cors) : _factory.createMiddleware.call(void 0, (_c, next) => next());
|
|
3109
3129
|
if (serverlessActorDriverBuilder) {
|
|
3110
|
-
addServerlessRoutes(serverlessActorDriverBuilder, router
|
|
3130
|
+
addServerlessRoutes(runConfig, serverlessActorDriverBuilder, router);
|
|
3111
3131
|
} else {
|
|
3112
|
-
addManagerRoutes(registryConfig, runConfig, managerDriver, router
|
|
3132
|
+
addManagerRoutes(registryConfig, runConfig, managerDriver, router);
|
|
3113
3133
|
}
|
|
3114
3134
|
router.notFound(handleRouteNotFound);
|
|
3115
3135
|
router.onError(handleRouteError);
|
|
3116
|
-
return { router, openapi: router
|
|
3136
|
+
return { router, openapi: router };
|
|
3117
3137
|
}
|
|
3118
|
-
function addServerlessRoutes(serverlessActorDriverBuilder, router
|
|
3119
|
-
router.
|
|
3138
|
+
function addServerlessRoutes(runConfig, serverlessActorDriverBuilder, router) {
|
|
3139
|
+
if (runConfig.cors) router.use("*", _cors.cors.call(void 0, runConfig.cors));
|
|
3140
|
+
router.get("/", (c) => {
|
|
3120
3141
|
return c.text(
|
|
3121
3142
|
"This is a RivetKit server.\n\nLearn more at https://rivetkit.org"
|
|
3122
3143
|
);
|
|
3123
3144
|
});
|
|
3124
|
-
router.get("/start",
|
|
3125
|
-
const
|
|
3145
|
+
router.get("/start", async (c) => {
|
|
3146
|
+
const token = c.req.header("x-rivet-token");
|
|
3147
|
+
let totalSlots = parseInt(
|
|
3148
|
+
c.req.header("x-rivetkit-total-slots")
|
|
3149
|
+
);
|
|
3150
|
+
if (isNaN(totalSlots)) totalSlots = void 0;
|
|
3151
|
+
const actorDriver = serverlessActorDriverBuilder(token, totalSlots);
|
|
3126
3152
|
_invariant2.default.call(void 0,
|
|
3127
3153
|
actorDriver.serverlessHandleStart,
|
|
3128
3154
|
"missing serverlessHandleStart on ActorDriver"
|
|
3129
3155
|
);
|
|
3130
3156
|
return await actorDriver.serverlessHandleStart(c);
|
|
3131
3157
|
});
|
|
3132
|
-
router.get("/health",
|
|
3158
|
+
router.get("/health", (c) => {
|
|
3133
3159
|
return c.text("ok");
|
|
3134
3160
|
});
|
|
3135
3161
|
}
|
|
3136
|
-
function addManagerRoutes(registryConfig, runConfig, managerDriver, router
|
|
3162
|
+
function addManagerRoutes(registryConfig, runConfig, managerDriver, router) {
|
|
3137
3163
|
var _a;
|
|
3138
|
-
|
|
3139
|
-
|
|
3164
|
+
if (_chunkQGRYH6TUcjs.isInspectorEnabled.call(void 0, runConfig, "manager")) {
|
|
3165
|
+
if (!managerDriver.inspector) {
|
|
3166
|
+
throw new (0, _chunk5QGQK44Lcjs.Unsupported)("inspector");
|
|
3167
|
+
}
|
|
3168
|
+
router.route(
|
|
3169
|
+
"/inspect",
|
|
3170
|
+
new (0, _hono.Hono)().use(_cors.cors.call(void 0, runConfig.inspector.cors)).use(_chunkQGRYH6TUcjs.secureInspector.call(void 0, runConfig)).use((c, next) => {
|
|
3171
|
+
c.set("inspector", managerDriver.inspector);
|
|
3172
|
+
return next();
|
|
3173
|
+
}).route("/", createManagerInspectorRouter())
|
|
3174
|
+
);
|
|
3175
|
+
}
|
|
3176
|
+
if (runConfig.cors) router.use("*", _cors.cors.call(void 0, runConfig.cors));
|
|
3177
|
+
router.use("*", actorGateway.bind(void 0, runConfig, managerDriver));
|
|
3178
|
+
router.get("/", (c) => {
|
|
3140
3179
|
return c.text(
|
|
3141
3180
|
"This is a RivetKit server.\n\nLearn more at https://rivetkit.org"
|
|
3142
3181
|
);
|
|
3143
3182
|
});
|
|
3144
3183
|
{
|
|
3145
3184
|
const route = _zodopenapi.createRoute.call(void 0, {
|
|
3146
|
-
middleware: [cors2],
|
|
3147
3185
|
method: "get",
|
|
3148
3186
|
path: "/actors",
|
|
3149
3187
|
request: {
|
|
@@ -3203,7 +3241,6 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3203
3241
|
}
|
|
3204
3242
|
{
|
|
3205
3243
|
const route = _zodopenapi.createRoute.call(void 0, {
|
|
3206
|
-
middleware: [cors2],
|
|
3207
3244
|
method: "put",
|
|
3208
3245
|
path: "/actors",
|
|
3209
3246
|
request: {
|
|
@@ -3248,7 +3285,6 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3248
3285
|
}
|
|
3249
3286
|
{
|
|
3250
3287
|
const route = _zodopenapi.createRoute.call(void 0, {
|
|
3251
|
-
middleware: [cors2],
|
|
3252
3288
|
method: "post",
|
|
3253
3289
|
path: "/actors",
|
|
3254
3290
|
request: {
|
|
@@ -3293,7 +3329,7 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3293
3329
|
const output = await managerDriver[method](...args);
|
|
3294
3330
|
response = { ok: output };
|
|
3295
3331
|
} catch (rawErr) {
|
|
3296
|
-
const err =
|
|
3332
|
+
const err = _chunkU2IXX6DYcjs.deconstructError.call(void 0, rawErr, logger(), {}, true);
|
|
3297
3333
|
response = { err };
|
|
3298
3334
|
}
|
|
3299
3335
|
return c.body(cbor4.encode(response));
|
|
@@ -3313,29 +3349,29 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3313
3349
|
let connId;
|
|
3314
3350
|
let connToken;
|
|
3315
3351
|
for (const protocol of protocols) {
|
|
3316
|
-
if (protocol.startsWith(
|
|
3317
|
-
actorId = protocol.substring(
|
|
3318
|
-
} else if (protocol.startsWith(
|
|
3352
|
+
if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ACTOR)) {
|
|
3353
|
+
actorId = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_ACTOR.length);
|
|
3354
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING)) {
|
|
3319
3355
|
encoding = protocol.substring(
|
|
3320
|
-
|
|
3356
|
+
_chunkSDXTJDDRcjs.WS_PROTOCOL_ENCODING.length
|
|
3321
3357
|
);
|
|
3322
|
-
} else if (protocol.startsWith(
|
|
3358
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_TRANSPORT)) {
|
|
3323
3359
|
transport = protocol.substring(
|
|
3324
|
-
|
|
3360
|
+
_chunkSDXTJDDRcjs.WS_PROTOCOL_TRANSPORT.length
|
|
3325
3361
|
);
|
|
3326
|
-
} else if (protocol.startsWith(
|
|
3362
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_PATH)) {
|
|
3327
3363
|
path3 = decodeURIComponent(
|
|
3328
|
-
protocol.substring(
|
|
3364
|
+
protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_PATH.length)
|
|
3329
3365
|
);
|
|
3330
|
-
} else if (protocol.startsWith(
|
|
3366
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS)) {
|
|
3331
3367
|
const paramsRaw = decodeURIComponent(
|
|
3332
|
-
protocol.substring(
|
|
3368
|
+
protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_PARAMS.length)
|
|
3333
3369
|
);
|
|
3334
3370
|
params = JSON.parse(paramsRaw);
|
|
3335
|
-
} else if (protocol.startsWith(
|
|
3336
|
-
connId = protocol.substring(
|
|
3337
|
-
} else if (protocol.startsWith(
|
|
3338
|
-
connToken = protocol.substring(
|
|
3371
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID)) {
|
|
3372
|
+
connId = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_ID.length);
|
|
3373
|
+
} else if (protocol.startsWith(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN)) {
|
|
3374
|
+
connToken = protocol.substring(_chunkSDXTJDDRcjs.WS_PROTOCOL_CONN_TOKEN.length);
|
|
3339
3375
|
}
|
|
3340
3376
|
}
|
|
3341
3377
|
logger().debug({
|
|
@@ -3355,10 +3391,10 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3355
3391
|
connToken
|
|
3356
3392
|
);
|
|
3357
3393
|
return await createTestWebSocketProxy(clientWsPromise);
|
|
3358
|
-
})(c,
|
|
3394
|
+
})(c, _chunkU2IXX6DYcjs.noopNext.call(void 0, ));
|
|
3359
3395
|
});
|
|
3360
3396
|
router.all(".test/inline-driver/send-request/*", async (c) => {
|
|
3361
|
-
const actorId = c.req.header(
|
|
3397
|
+
const actorId = c.req.header(_chunkSDXTJDDRcjs.HEADER_ACTOR_ID);
|
|
3362
3398
|
if (!actorId) {
|
|
3363
3399
|
return c.text("Missing required headers", 400);
|
|
3364
3400
|
}
|
|
@@ -3385,9 +3421,9 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3385
3421
|
} catch (error) {
|
|
3386
3422
|
logger().error({
|
|
3387
3423
|
msg: "error in test inline raw http",
|
|
3388
|
-
error:
|
|
3424
|
+
error: _chunkU2IXX6DYcjs.stringifyError.call(void 0, error)
|
|
3389
3425
|
});
|
|
3390
|
-
const err =
|
|
3426
|
+
const err = _chunkU2IXX6DYcjs.deconstructError.call(void 0, error, logger(), {}, true);
|
|
3391
3427
|
return c.json(
|
|
3392
3428
|
{
|
|
3393
3429
|
error: {
|
|
@@ -3429,13 +3465,13 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3429
3465
|
} catch (error) {
|
|
3430
3466
|
logger().error({
|
|
3431
3467
|
msg: "error forcing disconnect",
|
|
3432
|
-
error:
|
|
3468
|
+
error: _chunkU2IXX6DYcjs.stringifyError.call(void 0, error)
|
|
3433
3469
|
});
|
|
3434
3470
|
return c.text(`Error: ${error}`, 500);
|
|
3435
3471
|
}
|
|
3436
3472
|
});
|
|
3437
3473
|
}
|
|
3438
|
-
router.get("/health",
|
|
3474
|
+
router.get("/health", (c) => {
|
|
3439
3475
|
return c.text("ok");
|
|
3440
3476
|
});
|
|
3441
3477
|
(_a = managerDriver.modifyManagerRouter) == null ? void 0 : _a.call(
|
|
@@ -3443,24 +3479,12 @@ function addManagerRoutes(registryConfig, runConfig, managerDriver, router, cors
|
|
|
3443
3479
|
registryConfig,
|
|
3444
3480
|
router
|
|
3445
3481
|
);
|
|
3446
|
-
if (_chunk4EXJ4ITRcjs.isInspectorEnabled.call(void 0, runConfig, "manager")) {
|
|
3447
|
-
if (!managerDriver.inspector) {
|
|
3448
|
-
throw new (0, _chunk5QGQK44Lcjs.Unsupported)("inspector");
|
|
3449
|
-
}
|
|
3450
|
-
router.route(
|
|
3451
|
-
"/inspect",
|
|
3452
|
-
new (0, _hono.Hono)().use(_cors.cors.call(void 0, runConfig.inspector.cors)).use(_chunk4EXJ4ITRcjs.secureInspector.call(void 0, runConfig)).use((c, next) => {
|
|
3453
|
-
c.set("inspector", managerDriver.inspector);
|
|
3454
|
-
return next();
|
|
3455
|
-
}).route("/", createManagerInspectorRouter())
|
|
3456
|
-
);
|
|
3457
|
-
}
|
|
3458
3482
|
}
|
|
3459
3483
|
function createApiActor(actor2) {
|
|
3460
3484
|
return {
|
|
3461
3485
|
actor_id: actor2.actorId,
|
|
3462
3486
|
name: actor2.name,
|
|
3463
|
-
key:
|
|
3487
|
+
key: _chunk4PSLOAXRcjs.serializeActorKey.call(void 0, actor2.key),
|
|
3464
3488
|
namespace_id: "default",
|
|
3465
3489
|
// Assert default namespace
|
|
3466
3490
|
runner_name_selector: "rivetkit",
|
|
@@ -3494,7 +3518,7 @@ var RegistryConfigSchema = _zod.z.object({
|
|
|
3494
3518
|
|
|
3495
3519
|
// src/registry/log.ts
|
|
3496
3520
|
function logger6() {
|
|
3497
|
-
return
|
|
3521
|
+
return _chunkDL7TPF63cjs.getLogger.call(void 0, "registry");
|
|
3498
3522
|
}
|
|
3499
3523
|
|
|
3500
3524
|
// src/registry/serve.ts
|
|
@@ -3554,11 +3578,11 @@ var Registry = class {
|
|
|
3554
3578
|
*/
|
|
3555
3579
|
start(inputConfig) {
|
|
3556
3580
|
var _a, _b, _c;
|
|
3557
|
-
const config2 =
|
|
3581
|
+
const config2 = _chunkSOC4HWCGcjs.RunConfigSchema.parse(inputConfig);
|
|
3558
3582
|
if ((_a = config2.logging) == null ? void 0 : _a.baseLogger) {
|
|
3559
|
-
|
|
3583
|
+
_chunkDL7TPF63cjs.configureBaseLogger.call(void 0, config2.logging.baseLogger);
|
|
3560
3584
|
} else {
|
|
3561
|
-
|
|
3585
|
+
_chunkDL7TPF63cjs.configureDefaultLogger.call(void 0, (_b = config2.logging) == null ? void 0 : _b.level);
|
|
3562
3586
|
}
|
|
3563
3587
|
const driver = chooseDefaultDriver(config2);
|
|
3564
3588
|
if (driver.name === "engine") {
|
|
@@ -3576,8 +3600,8 @@ var Registry = class {
|
|
|
3576
3600
|
config2.getUpgradeWebSocket = () => upgradeWebSocket;
|
|
3577
3601
|
}
|
|
3578
3602
|
const managerDriver = driver.manager(this.#config, config2);
|
|
3579
|
-
|
|
3580
|
-
const client =
|
|
3603
|
+
_chunkQGRYH6TUcjs.configureInspectorAccessToken.call(void 0, config2, managerDriver);
|
|
3604
|
+
const client = _chunk4PSLOAXRcjs.createClientWithDriver.call(void 0, managerDriver, config2);
|
|
3581
3605
|
const driverLog = _nullishCoalesce(((_c = managerDriver.extraStartupLog) == null ? void 0 : _c.call(managerDriver)), () => ( {}));
|
|
3582
3606
|
logger6().info({
|
|
3583
3607
|
msg: "rivetkit ready",
|
|
@@ -3585,20 +3609,20 @@ var Registry = class {
|
|
|
3585
3609
|
definitions: Object.keys(this.#config.use).length,
|
|
3586
3610
|
...driverLog
|
|
3587
3611
|
});
|
|
3588
|
-
if (
|
|
3589
|
-
logger6().info({ msg: "inspector ready", url:
|
|
3612
|
+
if (_chunkQGRYH6TUcjs.isInspectorEnabled.call(void 0, config2, "manager") && managerDriver.inspector) {
|
|
3613
|
+
logger6().info({ msg: "inspector ready", url: _chunkQGRYH6TUcjs.getInspectorUrl.call(void 0, config2) });
|
|
3590
3614
|
}
|
|
3591
3615
|
if (!config2.noWelcome) {
|
|
3592
3616
|
const displayInfo = managerDriver.displayInformation();
|
|
3593
3617
|
console.log();
|
|
3594
|
-
console.log(` RivetKit ${
|
|
3618
|
+
console.log(` RivetKit ${_chunkU2IXX6DYcjs.package_default.version} (${displayInfo.name})`);
|
|
3595
3619
|
console.log(` - Endpoint: http://127.0.0.1:6420`);
|
|
3596
3620
|
for (const [k, v] of Object.entries(displayInfo.properties)) {
|
|
3597
3621
|
const padding = " ".repeat(Math.max(0, 13 - k.length));
|
|
3598
3622
|
console.log(` - ${k}:${padding}${v}`);
|
|
3599
3623
|
}
|
|
3600
|
-
if (
|
|
3601
|
-
console.log(` - Inspector:
|
|
3624
|
+
if (_chunkQGRYH6TUcjs.isInspectorEnabled.call(void 0, config2, "manager") && managerDriver.inspector) {
|
|
3625
|
+
console.log(` - Inspector: ${_chunkQGRYH6TUcjs.getInspectorUrl.call(void 0, config2)}`);
|
|
3602
3626
|
}
|
|
3603
3627
|
console.log();
|
|
3604
3628
|
}
|
|
@@ -3629,11 +3653,11 @@ var Registry = class {
|
|
|
3629
3653
|
}
|
|
3630
3654
|
startServerless(inputConfig) {
|
|
3631
3655
|
var _a, _b, _c, _d, _e;
|
|
3632
|
-
const config2 =
|
|
3656
|
+
const config2 = _chunkSOC4HWCGcjs.RunConfigSchema.parse(inputConfig);
|
|
3633
3657
|
if ((_a = config2.logging) == null ? void 0 : _a.baseLogger) {
|
|
3634
|
-
|
|
3658
|
+
_chunkDL7TPF63cjs.configureBaseLogger.call(void 0, config2.logging.baseLogger);
|
|
3635
3659
|
} else {
|
|
3636
|
-
|
|
3660
|
+
_chunkDL7TPF63cjs.configureDefaultLogger.call(void 0, (_b = config2.logging) == null ? void 0 : _b.level);
|
|
3637
3661
|
}
|
|
3638
3662
|
const driver = chooseDefaultDriver(config2);
|
|
3639
3663
|
if (driver.name === "engine") {
|
|
@@ -3652,7 +3676,7 @@ var Registry = class {
|
|
|
3652
3676
|
config2.getUpgradeWebSocket = () => upgradeWebSocket;
|
|
3653
3677
|
}
|
|
3654
3678
|
const managerDriver = driver.manager(this.#config, config2);
|
|
3655
|
-
const client =
|
|
3679
|
+
const client = _chunk4PSLOAXRcjs.createClientWithDriver.call(void 0, managerDriver, config2);
|
|
3656
3680
|
const driverLog = _nullishCoalesce(((_c = managerDriver.extraStartupLog) == null ? void 0 : _c.call(managerDriver)), () => ( {}));
|
|
3657
3681
|
logger6().info({
|
|
3658
3682
|
msg: "rivetkit ready",
|
|
@@ -3661,23 +3685,25 @@ var Registry = class {
|
|
|
3661
3685
|
...driverLog
|
|
3662
3686
|
});
|
|
3663
3687
|
if (((_d = config2.inspector) == null ? void 0 : _d.enabled) && managerDriver.inspector) {
|
|
3664
|
-
logger6().info({ msg: "inspector ready", url:
|
|
3688
|
+
logger6().info({ msg: "inspector ready", url: _chunkQGRYH6TUcjs.getInspectorUrl.call(void 0, config2) });
|
|
3665
3689
|
}
|
|
3666
3690
|
if (!config2.noWelcome) {
|
|
3667
3691
|
const displayInfo = managerDriver.displayInformation();
|
|
3668
3692
|
console.log();
|
|
3669
|
-
console.log(` RivetKit ${
|
|
3693
|
+
console.log(` RivetKit ${_chunkU2IXX6DYcjs.package_default.version} (${displayInfo.name})`);
|
|
3670
3694
|
console.log(` - Endpoint: http://127.0.0.1:6420`);
|
|
3671
3695
|
for (const [k, v] of Object.entries(displayInfo.properties)) {
|
|
3672
3696
|
const padding = " ".repeat(Math.max(0, 13 - k.length));
|
|
3673
3697
|
console.log(` - ${k}:${padding}${v}`);
|
|
3674
3698
|
}
|
|
3675
3699
|
if (((_e = config2.inspector) == null ? void 0 : _e.enabled) && managerDriver.inspector) {
|
|
3676
|
-
console.log(` - Inspector: ${
|
|
3700
|
+
console.log(` - Inspector: ${_chunkQGRYH6TUcjs.getInspectorUrl.call(void 0, config2)}`);
|
|
3677
3701
|
}
|
|
3678
3702
|
console.log();
|
|
3679
3703
|
}
|
|
3680
|
-
let serverlessActorDriverBuilder = () => {
|
|
3704
|
+
let serverlessActorDriverBuilder = (token, totalSlots) => {
|
|
3705
|
+
if (token) config2.token = token;
|
|
3706
|
+
if (totalSlots) config2.totalSlots = totalSlots;
|
|
3681
3707
|
return driver.actor(this.#config, config2, managerDriver, client);
|
|
3682
3708
|
};
|
|
3683
3709
|
if (!config2.disableActorDriver) {
|
|
@@ -3723,4 +3749,4 @@ function setup(input) {
|
|
|
3723
3749
|
|
|
3724
3750
|
exports.handleWebSocketConnect = handleWebSocketConnect; exports.handleRawWebSocketHandler = handleRawWebSocketHandler; exports.createActorRouter = createActorRouter; exports.actor = actor; exports.InlineWebSocketAdapter2 = InlineWebSocketAdapter2; exports.createEngineDriver = createEngineDriver; exports.createFileSystemOrMemoryDriver = createFileSystemOrMemoryDriver; exports.createFileSystemDriver = createFileSystemDriver; exports.createMemoryDriver = createMemoryDriver; exports.createManagerRouter = createManagerRouter; exports.RegistryConfigSchema = RegistryConfigSchema; exports.Registry = Registry; exports.setup = setup;
|
|
3725
3751
|
//! These configs configs hold anything that's not platform-specific about running actors.
|
|
3726
|
-
//# sourceMappingURL=chunk-
|
|
3752
|
+
//# sourceMappingURL=chunk-4YV6RDZL.cjs.map
|