rivetkit 2.3.20 → 2.3.22
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/browser/client.d.ts +43 -5
- package/dist/browser/client.js +315 -63
- package/dist/browser/client.js.map +1 -1
- package/dist/browser/inspector/client.js +2 -1
- package/dist/browser/inspector/client.js.map +1 -1
- package/dist/tsup/actor/errors.cjs +2 -2
- package/dist/tsup/actor/errors.cjs.map +1 -1
- package/dist/tsup/actor/errors.d.cts +1 -1
- package/dist/tsup/actor/errors.d.ts +1 -1
- package/dist/tsup/actor/errors.js +1 -1
- package/dist/tsup/agent-os/index.cjs +2 -1
- package/dist/tsup/agent-os/index.cjs.map +1 -1
- package/dist/tsup/agent-os/index.d.cts +32 -4
- package/dist/tsup/agent-os/index.d.ts +32 -4
- package/dist/tsup/agent-os/index.js +2 -1
- package/dist/tsup/agent-os/index.js.map +1 -1
- package/dist/tsup/{chunk-553CIQJY.js → chunk-47FSGXYN.js} +2 -2
- package/dist/tsup/{chunk-2NXLTFWI.js → chunk-4DTWJFIZ.js} +3 -3
- package/dist/tsup/chunk-4DTWJFIZ.js.map +1 -0
- package/dist/tsup/{chunk-2CE5UNWK.cjs → chunk-BDKVTNJF.cjs} +11 -10
- package/dist/tsup/chunk-BDKVTNJF.cjs.map +1 -0
- package/dist/tsup/{chunk-DHWZTUKA.js → chunk-DE2IFYJK.js} +4 -3
- package/dist/tsup/chunk-DE2IFYJK.js.map +1 -0
- package/dist/tsup/{chunk-DMQUERRN.js → chunk-GINS4O73.js} +2 -2
- package/dist/tsup/{chunk-3WS7Z64U.cjs → chunk-GZZNJGXY.cjs} +3 -3
- package/dist/tsup/chunk-GZZNJGXY.cjs.map +1 -0
- package/dist/tsup/{chunk-A36FMKOV.cjs → chunk-HEY27WZX.cjs} +479 -230
- package/dist/tsup/chunk-HEY27WZX.cjs.map +1 -0
- package/dist/tsup/{chunk-WAISW7KR.cjs → chunk-KEAUN5F5.cjs} +10 -10
- package/dist/tsup/chunk-KEAUN5F5.cjs.map +1 -0
- package/dist/tsup/chunk-KVFIONKQ.cjs.map +1 -1
- package/dist/tsup/{chunk-CVLNRT7O.cjs → chunk-LUMROGNM.cjs} +3 -3
- package/dist/tsup/chunk-LUMROGNM.cjs.map +1 -0
- package/dist/tsup/{chunk-JX2ITWAV.cjs → chunk-MGI2VVF6.cjs} +14 -4
- package/dist/tsup/chunk-MGI2VVF6.cjs.map +1 -0
- package/dist/tsup/chunk-MYWZCDML.cjs.map +1 -1
- package/dist/tsup/chunk-NWCAIWHL.cjs.map +1 -1
- package/dist/tsup/{chunk-RSIOGT2U.cjs → chunk-QOQA4JPN.cjs} +7 -7
- package/dist/tsup/chunk-QOQA4JPN.cjs.map +1 -0
- package/dist/tsup/{chunk-TZVAVPGJ.js → chunk-QXBNHJH5.js} +4 -4
- package/dist/tsup/{chunk-W2PXGWMR.js → chunk-RIPVNPR6.js} +2 -2
- package/dist/tsup/{chunk-5G2J26VM.js → chunk-VD47X7KQ.js} +318 -69
- package/dist/tsup/chunk-VD47X7KQ.js.map +1 -0
- package/dist/tsup/{chunk-76YTS32R.cjs → chunk-WLRGUAMW.cjs} +4 -4
- package/dist/tsup/chunk-WLRGUAMW.cjs.map +1 -0
- package/dist/tsup/{chunk-IHKDFKM4.cjs → chunk-WMNXGH25.cjs} +3 -3
- package/dist/tsup/chunk-WMNXGH25.cjs.map +1 -0
- package/dist/tsup/{chunk-SNNVRHLX.js → chunk-XZBDVEQN.js} +2 -2
- package/dist/tsup/{chunk-P2OFXH4G.js → chunk-ZOVJDAOW.js} +14 -4
- package/dist/tsup/chunk-ZOVJDAOW.js.map +1 -0
- package/dist/tsup/client/mod.cjs +6 -6
- package/dist/tsup/client/mod.cjs.map +1 -1
- package/dist/tsup/client/mod.d.cts +15 -6
- package/dist/tsup/client/mod.d.ts +15 -6
- package/dist/tsup/client/mod.js +5 -5
- package/dist/tsup/common/log.cjs +3 -3
- package/dist/tsup/common/log.cjs.map +1 -1
- package/dist/tsup/common/log.js +2 -2
- package/dist/tsup/common/websocket.cjs +4 -4
- package/dist/tsup/common/websocket.cjs.map +1 -1
- package/dist/tsup/common/websocket.js +3 -3
- package/dist/tsup/{config-Be-VOHaX.d.ts → config-Cv6pjCt-.d.ts} +37 -7
- package/dist/tsup/{config-Ct5uXxXk.d.cts → config-osdJqQwX.d.cts} +37 -7
- package/dist/tsup/{context-CXLa0BIM.d.ts → context-CoVbKBuk.d.ts} +1 -1
- package/dist/tsup/{context-Cw-11Q-B.d.cts → context-DpjrM7n7.d.cts} +1 -1
- package/dist/tsup/db/drizzle.cjs +3 -3
- package/dist/tsup/db/drizzle.cjs.map +1 -1
- package/dist/tsup/db/drizzle.js +2 -2
- package/dist/tsup/db/mod.cjs +4 -4
- package/dist/tsup/db/mod.cjs.map +1 -1
- package/dist/tsup/db/mod.js +3 -3
- package/dist/tsup/dynamic/mod.cjs.map +1 -1
- package/dist/tsup/dynamic/mod.d.cts +4 -3
- package/dist/tsup/dynamic/mod.d.ts +4 -3
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.cjs.map +1 -1
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/inspector/workflow.cjs +5 -5
- package/dist/tsup/inspector/workflow.cjs.map +1 -1
- package/dist/tsup/inspector/workflow.js +4 -4
- package/dist/tsup/inspector-tab/mod.cjs.map +1 -1
- package/dist/tsup/inspector-tab/mod.d.cts +5 -4
- package/dist/tsup/inspector-tab/mod.d.ts +5 -4
- package/dist/tsup/mod.cjs +170 -158
- package/dist/tsup/mod.cjs.map +1 -1
- package/dist/tsup/mod.d.cts +6 -5
- package/dist/tsup/mod.d.ts +6 -5
- package/dist/tsup/mod.js +56 -44
- package/dist/tsup/mod.js.map +1 -1
- package/dist/tsup/test/mod.cjs +7 -7
- package/dist/tsup/test/mod.cjs.map +1 -1
- package/dist/tsup/test/mod.d.cts +4 -3
- package/dist/tsup/test/mod.d.ts +4 -3
- package/dist/tsup/test/mod.js +5 -5
- package/dist/tsup/unstable/migrations.cjs.map +1 -1
- package/dist/tsup/{utils-DsoDinPz.d.ts → utils-3rsE0JvI.d.cts} +12 -2
- package/dist/tsup/{utils-DsoDinPz.d.cts → utils-3rsE0JvI.d.ts} +12 -2
- package/dist/tsup/{utils-OQHBjfcM.d.ts → utils-C1O-SklO.d.ts} +1 -1
- package/dist/tsup/{utils-CNFeS-Dk.d.cts → utils-C6b0aYUM.d.cts} +1 -1
- package/dist/tsup/utils.cjs +3 -3
- package/dist/tsup/utils.cjs.map +1 -1
- package/dist/tsup/utils.d.cts +2 -2
- package/dist/tsup/utils.d.ts +2 -2
- package/dist/tsup/utils.js +2 -2
- package/dist/tsup/workflow/mod.cjs +11 -11
- package/dist/tsup/workflow/mod.cjs.map +1 -1
- package/dist/tsup/workflow/mod.d.cts +6 -5
- package/dist/tsup/workflow/mod.d.ts +6 -5
- package/dist/tsup/workflow/mod.js +5 -5
- package/package.json +10 -9
- package/src/actor/errors.ts +27 -4
- package/src/client/actor-conn.ts +34 -1
- package/src/client/actor-handle.ts +29 -1
- package/src/client/auth.ts +37 -0
- package/src/client/client.ts +10 -2
- package/src/client/config.ts +12 -1
- package/src/client/mod.ts +9 -0
- package/src/client/token-provider.test.ts +86 -0
- package/src/client/token-provider.ts +93 -0
- package/src/client/utils.ts +1 -0
- package/src/engine-client/actor-websocket-client.ts +2 -1
- package/src/engine-client/api-endpoints.ts +28 -0
- package/src/engine-client/driver.ts +4 -0
- package/src/engine-client/mod.ts +201 -64
- package/src/registry/config/envoy.ts +1 -17
- package/src/registry/config/index.test.ts +2 -2
- package/src/registry/config/index.ts +7 -2
- package/src/registry/index.ts +28 -0
- package/src/registry/native.ts +31 -3
- package/dist/tsup/chunk-2CE5UNWK.cjs.map +0 -1
- package/dist/tsup/chunk-2NXLTFWI.js.map +0 -1
- package/dist/tsup/chunk-3WS7Z64U.cjs.map +0 -1
- package/dist/tsup/chunk-5G2J26VM.js.map +0 -1
- package/dist/tsup/chunk-76YTS32R.cjs.map +0 -1
- package/dist/tsup/chunk-A36FMKOV.cjs.map +0 -1
- package/dist/tsup/chunk-CVLNRT7O.cjs.map +0 -1
- package/dist/tsup/chunk-DHWZTUKA.js.map +0 -1
- package/dist/tsup/chunk-IHKDFKM4.cjs.map +0 -1
- package/dist/tsup/chunk-JX2ITWAV.cjs.map +0 -1
- package/dist/tsup/chunk-P2OFXH4G.js.map +0 -1
- package/dist/tsup/chunk-RSIOGT2U.cjs.map +0 -1
- package/dist/tsup/chunk-WAISW7KR.cjs.map +0 -1
- package/src/registry/process-metrics.ts +0 -250
- /package/dist/tsup/{chunk-553CIQJY.js.map → chunk-47FSGXYN.js.map} +0 -0
- /package/dist/tsup/{chunk-DMQUERRN.js.map → chunk-GINS4O73.js.map} +0 -0
- /package/dist/tsup/{chunk-TZVAVPGJ.js.map → chunk-QXBNHJH5.js.map} +0 -0
- /package/dist/tsup/{chunk-W2PXGWMR.js.map → chunk-RIPVNPR6.js.map} +0 -0
- /package/dist/tsup/{chunk-SNNVRHLX.js.map → chunk-XZBDVEQN.js.map} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
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
|
-
var
|
|
3
|
+
var _chunkWMNXGH25cjs = require('./chunk-WMNXGH25.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkWLRGUAMWcjs = require('./chunk-WLRGUAMW.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkBDKVTNJFcjs = require('./chunk-BDKVTNJF.cjs');
|
|
10
10
|
|
|
11
11
|
// src/workflow/inspector.ts
|
|
12
12
|
function createHistoryEmitter() {
|
|
@@ -38,7 +38,7 @@ function createWorkflowInspectorAdapter() {
|
|
|
38
38
|
};
|
|
39
39
|
const update = (snapshot) => {
|
|
40
40
|
const transportHistory = toWorkflowHistory(snapshot);
|
|
41
|
-
const next =
|
|
41
|
+
const next = _chunkWLRGUAMWcjs.encodeWorkflowHistoryTransport.call(void 0, transportHistory);
|
|
42
42
|
history = next;
|
|
43
43
|
emitter.emit(next);
|
|
44
44
|
};
|
|
@@ -54,7 +54,7 @@ function createWorkflowInspectorAdapter() {
|
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
function encodeCbor(value) {
|
|
57
|
-
return
|
|
57
|
+
return _chunkWMNXGH25cjs.encodeWorkflowInspectorValue.call(void 0, value);
|
|
58
58
|
}
|
|
59
59
|
function encodeOptionalCbor(value) {
|
|
60
60
|
if (value === void 0) {
|
|
@@ -151,7 +151,7 @@ function toWorkflowEntryKind(kind) {
|
|
|
151
151
|
}
|
|
152
152
|
};
|
|
153
153
|
default:
|
|
154
|
-
|
|
154
|
+
_chunkBDKVTNJFcjs.assertUnreachable.call(void 0, kind);
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
function toWorkflowEntry(entry) {
|
|
@@ -174,7 +174,7 @@ function toWorkflowEntryStatus(status) {
|
|
|
174
174
|
case "exhausted":
|
|
175
175
|
return "EXHAUSTED" /* EXHAUSTED */;
|
|
176
176
|
default:
|
|
177
|
-
|
|
177
|
+
_chunkBDKVTNJFcjs.assertUnreachable.call(void 0, status);
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
function toWorkflowSleepState(state) {
|
|
@@ -186,7 +186,7 @@ function toWorkflowSleepState(state) {
|
|
|
186
186
|
case "interrupted":
|
|
187
187
|
return "INTERRUPTED" /* INTERRUPTED */;
|
|
188
188
|
default:
|
|
189
|
-
|
|
189
|
+
_chunkBDKVTNJFcjs.assertUnreachable.call(void 0, state);
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
function toWorkflowBranchStatusType(status) {
|
|
@@ -202,7 +202,7 @@ function toWorkflowBranchStatusType(status) {
|
|
|
202
202
|
case "cancelled":
|
|
203
203
|
return "CANCELLED" /* CANCELLED */;
|
|
204
204
|
default:
|
|
205
|
-
|
|
205
|
+
_chunkBDKVTNJFcjs.assertUnreachable.call(void 0, status);
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
function toWorkflowBranchStatus(status) {
|
|
@@ -249,4 +249,4 @@ function toWorkflowHistory(snapshot) {
|
|
|
249
249
|
|
|
250
250
|
|
|
251
251
|
exports.createWorkflowInspectorAdapter = createWorkflowInspectorAdapter;
|
|
252
|
-
//# sourceMappingURL=chunk-
|
|
252
|
+
//# sourceMappingURL=chunk-KEAUN5F5.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-KEAUN5F5.cjs","../../src/workflow/inspector.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-KEAUN5F5.cjs","sourcesContent":[null,"import type {\n\tBranchStatus,\n\tBranchStatusType,\n\tEntryKind,\n\tEntryStatus,\n\tLocation,\n\tSleepState,\n\tWorkflowEntryMetadataSnapshot,\n\tWorkflowHistoryEntry,\n\tWorkflowHistorySnapshot,\n\tWorkflowState,\n} from \"@rivetkit/workflow-engine\";\nimport * as transport from \"@/inspector/workflow\";\nimport {\n\tencodeWorkflowHistoryTransport,\n\tencodeWorkflowInspectorValue,\n\ttype WorkflowInspectorAdapter as PublicWorkflowInspectorAdapter,\n\ttype WorkflowHistoryBytes,\n} from \"@/inspector/workflow\";\nimport { assertUnreachable } from \"@/utils\";\n\ntype HistoryListener = (history: WorkflowHistoryBytes) => void;\n\nfunction createHistoryEmitter() {\n\tconst listeners = new Set<HistoryListener>();\n\n\treturn {\n\t\ton: (listener: HistoryListener) => {\n\t\t\tlisteners.add(listener);\n\t\t\treturn () => listeners.delete(listener);\n\t\t},\n\t\temit: (history: WorkflowHistoryBytes) => {\n\t\t\tfor (const listener of listeners) {\n\t\t\t\tlistener(history);\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport type WorkflowInspectorAdapter = PublicWorkflowInspectorAdapter;\n\nexport function createWorkflowInspectorAdapter(): {\n\tadapter: WorkflowInspectorAdapter;\n\tupdate: (snapshot: WorkflowHistorySnapshot) => void;\n\tsetGetState: (fn: () => Promise<WorkflowState | null>) => void;\n\tsetReplayFromStep: (\n\t\tfn: (entryId?: string) => Promise<WorkflowHistoryBytes | null>,\n\t) => void;\n} {\n\tconst emitter = createHistoryEmitter();\n\tlet history: WorkflowHistoryBytes | null = null;\n\tlet getState: () => Promise<WorkflowState | null> = async () => null;\n\tlet replayFromStep: (\n\t\tentryId?: string,\n\t) => Promise<WorkflowHistoryBytes | null> = async () => {\n\t\tthrow new Error(\"Workflow replay controls are not initialized\");\n\t};\n\n\tconst adapter: WorkflowInspectorAdapter = {\n\t\tgetHistory: () => history,\n\t\tgetState: async () => await getState(),\n\t\tonHistoryUpdated: (listener) => emitter.on(listener),\n\t\treplayFromStep: async (entryId) => await replayFromStep(entryId),\n\t};\n\n\tconst update = (snapshot: WorkflowHistorySnapshot) => {\n\t\tconst transportHistory = toWorkflowHistory(snapshot);\n\t\tconst next = encodeWorkflowHistoryTransport(transportHistory);\n\t\thistory = next;\n\t\temitter.emit(next);\n\t};\n\n\treturn {\n\t\tadapter,\n\t\tupdate,\n\t\tsetGetState: (fn) => {\n\t\t\tgetState = fn;\n\t\t},\n\t\tsetReplayFromStep: (fn) => {\n\t\t\treplayFromStep = fn;\n\t\t},\n\t};\n}\n\nfunction encodeCbor(value: unknown): ArrayBuffer {\n\treturn encodeWorkflowInspectorValue(value);\n}\n\nfunction encodeOptionalCbor(value: unknown): ArrayBuffer | null {\n\tif (value === undefined) {\n\t\treturn null;\n\t}\n\treturn encodeCbor(value);\n}\n\nfunction toU64(value: number): bigint {\n\treturn BigInt(Math.max(0, Math.floor(value)));\n}\n\nfunction toWorkflowLocation(location: Location): transport.WorkflowLocation {\n\treturn location.map((segment) => {\n\t\tif (typeof segment === \"number\") {\n\t\t\treturn { tag: \"WorkflowNameIndex\", val: segment };\n\t\t}\n\t\treturn {\n\t\t\ttag: \"WorkflowLoopIterationMarker\",\n\t\t\tval: {\n\t\t\t\tloop: segment.loop,\n\t\t\t\titeration: segment.iteration,\n\t\t\t},\n\t\t};\n\t});\n}\n\nfunction toWorkflowEntryKind(kind: EntryKind): transport.WorkflowEntryKind {\n\tswitch (kind.type) {\n\t\tcase \"step\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowStepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t\terror: kind.data.error ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"loop\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowLoopEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tstate: encodeCbor(kind.data.state),\n\t\t\t\t\titeration: kind.data.iteration,\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"sleep\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowSleepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tdeadline: toU64(kind.data.deadline),\n\t\t\t\t\tstate: toWorkflowSleepState(kind.data.state),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"message\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowMessageEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tname: kind.data.name,\n\t\t\t\t\tmessageData: encodeCbor(kind.data.data),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"rollback_checkpoint\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRollbackCheckpointEntry\",\n\t\t\t\tval: { name: kind.data.name },\n\t\t\t};\n\t\tcase \"join\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowJoinEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"race\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRaceEntry\",\n\t\t\t\tval: {\n\t\t\t\t\twinner: kind.data.winner ?? null,\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"removed\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRemovedEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toriginalType: kind.data.originalType,\n\t\t\t\t\toriginalName: kind.data.originalName ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"version_check\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowVersionCheckEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tresolved: kind.data.resolved,\n\t\t\t\t\tlatest: kind.data.latest,\n\t\t\t\t},\n\t\t\t};\n\t\tdefault:\n\t\t\tassertUnreachable(kind as never);\n\t}\n}\n\nfunction toWorkflowEntry(entry: WorkflowHistoryEntry): transport.WorkflowEntry {\n\treturn {\n\t\tid: entry.id,\n\t\tlocation: toWorkflowLocation(entry.location),\n\t\tkind: toWorkflowEntryKind(entry.kind),\n\t};\n}\n\nfunction toWorkflowEntryStatus(\n\tstatus: EntryStatus,\n): transport.WorkflowEntryStatus {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowEntryStatus.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowEntryStatus.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowEntryStatus.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowEntryStatus.FAILED;\n\t\tcase \"exhausted\":\n\t\t\treturn transport.WorkflowEntryStatus.EXHAUSTED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowSleepState(state: SleepState): transport.WorkflowSleepState {\n\tswitch (state) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowSleepState.PENDING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowSleepState.COMPLETED;\n\t\tcase \"interrupted\":\n\t\t\treturn transport.WorkflowSleepState.INTERRUPTED;\n\t\tdefault:\n\t\t\tassertUnreachable(state as never);\n\t}\n}\n\nfunction toWorkflowBranchStatusType(\n\tstatus: BranchStatusType,\n): transport.WorkflowBranchStatusType {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowBranchStatusType.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowBranchStatusType.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowBranchStatusType.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowBranchStatusType.FAILED;\n\t\tcase \"cancelled\":\n\t\t\treturn transport.WorkflowBranchStatusType.CANCELLED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowBranchStatus(\n\tstatus: BranchStatus,\n): transport.WorkflowBranchStatus {\n\treturn {\n\t\tstatus: toWorkflowBranchStatusType(status.status),\n\t\toutput: encodeOptionalCbor(status.output),\n\t\terror: status.error ?? null,\n\t};\n}\n\nfunction toWorkflowBranchStatusMap(\n\tbranches: Record<string, BranchStatus>,\n): ReadonlyMap<string, transport.WorkflowBranchStatus> {\n\treturn new Map(\n\t\tObject.entries(branches).map(([name, status]) => [\n\t\t\tname,\n\t\t\ttoWorkflowBranchStatus(status),\n\t\t]),\n\t);\n}\n\nfunction toWorkflowEntryMetadata(\n\tmetadata: WorkflowEntryMetadataSnapshot,\n): transport.WorkflowEntryMetadata {\n\tconst rollbackCompletedAt = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackCompletedAt?: number;\n\t\t}\n\t).rollbackCompletedAt;\n\tconst rollbackError = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackError?: string | null;\n\t\t}\n\t).rollbackError;\n\n\treturn {\n\t\tstatus: toWorkflowEntryStatus(metadata.status),\n\t\terror: metadata.error ?? null,\n\t\tattempts: metadata.attempts,\n\t\tlastAttemptAt: toU64(metadata.lastAttemptAt),\n\t\tcreatedAt: toU64(metadata.createdAt),\n\t\tcompletedAt:\n\t\t\tmetadata.completedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(metadata.completedAt),\n\t\trollbackCompletedAt:\n\t\t\trollbackCompletedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(rollbackCompletedAt),\n\t\trollbackError: rollbackError ?? null,\n\t};\n}\n\nfunction toWorkflowHistory(\n\tsnapshot: WorkflowHistorySnapshot,\n): transport.WorkflowHistory {\n\tconst entryMetadata = new Map<string, transport.WorkflowEntryMetadata>();\n\tfor (const [id, metadata] of snapshot.entryMetadata) {\n\t\tentryMetadata.set(id, toWorkflowEntryMetadata(metadata));\n\t}\n\n\treturn {\n\t\tnameRegistry: [...snapshot.nameRegistry],\n\t\tentries: snapshot.entries.map(toWorkflowEntry),\n\t\tentryMetadata,\n\t};\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-KVFIONKQ.cjs","../../src/common/database/shared.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-KVFIONKQ.cjs","sourcesContent":[null,"import type { SqliteBindings } from \"./config\";\n\n/** Migrations may legitimately do substantially more work than request transactions. */\nexport const MIGRATION_TRANSACTION_TIMEOUT_MS = 5 * 60_000;\n\nexport function isManualTransactionControl(query: string): boolean {\n\treturn /^\\s*(?:BEGIN|SAVEPOINT|COMMIT|END|ROLLBACK)\\b/i.test(query);\n}\n\nexport function validateTransactionTimeout(timeout: number | undefined): void {\n\tif (timeout !== undefined && (!Number.isFinite(timeout) || timeout <= 0)) {\n\t\tthrow new Error(\n\t\t\t\"db.transaction() timeout must be a positive finite number of milliseconds\",\n\t\t);\n\t}\n}\n\nexport function validateTransactionName(name: string | undefined): void {\n\tif (name === undefined) {\n\t\treturn;\n\t}\n\tif (name.length === 0) {\n\t\tthrow new Error(\"db.transaction() name must not be empty\");\n\t}\n}\n\ntype SqliteBindingObject = Record<string, unknown>;\n\nfunction isSqliteBindingValue(value: unknown): boolean {\n\tif (\n\t\tvalue === null ||\n\t\ttypeof value === \"number\" ||\n\t\ttypeof value === \"string\" ||\n\t\ttypeof value === \"bigint\" ||\n\t\tvalue instanceof Uint8Array\n\t) {\n\t\treturn true;\n\t}\n\n\tif (Array.isArray(value)) {\n\t\treturn value.every((item) => typeof item === \"number\");\n\t}\n\n\treturn false;\n}\n\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\n\tif (!value || typeof value !== \"object\" || Array.isArray(value)) {\n\t\treturn false;\n\t}\n\treturn Object.getPrototypeOf(value) === Object.prototype;\n}\n\nexport function isSqliteBindingObject(\n\tvalue: unknown,\n): value is SqliteBindingObject {\n\tif (!isPlainObject(value)) {\n\t\treturn false;\n\t}\n\n\treturn Object.values(value).every((entry) => isSqliteBindingValue(entry));\n}\n\nexport function isSqliteBindingArray(value: unknown): value is unknown[] {\n\treturn (\n\t\tArray.isArray(value) &&\n\t\tvalue.every((entry) => isSqliteBindingValue(entry))\n\t);\n}\n\nexport function toSqliteBindings(\n\tinput: unknown[] | SqliteBindingObject,\n): SqliteBindings {\n\tif (Array.isArray(input)) {\n\t\tfor (const value of input) {\n\t\t\tif (!isSqliteBindingValue(value)) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`unsupported sqlite binding type: ${typeof value}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn input as SqliteBindings;\n\t}\n\n\tif (isSqliteBindingObject(input)) {\n\t\treturn input as SqliteBindings;\n\t}\n\n\tthrow new Error(\"unsupported sqlite binding collection\");\n}\n\n/**\n * Serialize async operations on a shared non-reentrant resource.\n */\nexport class AsyncMutex {\n\t#locked = false;\n\t#waiting: (() => void)[] = [];\n\n\tasync acquire(): Promise<void> {\n\t\twhile (this.#locked) {\n\t\t\tawait new Promise<void>((resolve) => this.#waiting.push(resolve));\n\t\t}\n\t\tthis.#locked = true;\n\t}\n\n\trelease(): void {\n\t\tthis.#locked = false;\n\t\tconst next = this.#waiting.shift();\n\t\tif (next) {\n\t\t\tnext();\n\t\t}\n\t}\n\n\tasync run<T>(fn: () => Promise<T>): Promise<T> {\n\t\tawait this.acquire();\n\t\ttry {\n\t\t\treturn await fn();\n\t\t} finally {\n\t\t\tthis.release();\n\t\t}\n\t}\n}\n"]}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
var _chunkKVFIONKQcjs = require('./chunk-KVFIONKQ.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkBDKVTNJFcjs = require('./chunk-BDKVTNJF.cjs');
|
|
12
12
|
|
|
13
13
|
// src/common/database/mod.ts
|
|
14
14
|
var nativeStateTransactionOpeners = /* @__PURE__ */ new WeakMap();
|
|
@@ -59,7 +59,7 @@ function db({
|
|
|
59
59
|
ensureOpen();
|
|
60
60
|
if (!transactionScoped && warnOnManualTransactions && !manualTransactionWarned && !hasMultipleStatements(query) && _chunkKVFIONKQcjs.isManualTransactionControl.call(void 0, query)) {
|
|
61
61
|
manualTransactionWarned = true;
|
|
62
|
-
|
|
62
|
+
_chunkBDKVTNJFcjs.getLogger.call(void 0, "database").warn(
|
|
63
63
|
{ actorId: ctx.actorId },
|
|
64
64
|
"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning."
|
|
65
65
|
);
|
|
@@ -240,4 +240,4 @@ async function withMigrationSavepoint(client, callback) {
|
|
|
240
240
|
|
|
241
241
|
|
|
242
242
|
exports.registerNativeStateTransactionOpener = registerNativeStateTransactionOpener; exports.bindNativeStateTransactionContext = bindNativeStateTransactionContext; exports.db = db;
|
|
243
|
-
//# sourceMappingURL=chunk-
|
|
243
|
+
//# sourceMappingURL=chunk-LUMROGNM.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-LUMROGNM.cjs","../../src/common/database/mod.ts"],"names":["db","client"],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-LUMROGNM.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\nimport type {\n\tDatabaseProvider,\n\tNativeDatabaseProvider,\n\tRawAccess,\n\tSqliteDatabase,\n\tSqliteProfilingOptions,\n\tSqliteTransactionDatabase,\n\tSqliteTransactionOptions,\n} from \"./config\";\nimport {\n\tisManualTransactionControl,\n\tisSqliteBindingObject,\n\tMIGRATION_TRANSACTION_TIMEOUT_MS,\n\ttoSqliteBindings,\n\tvalidateTransactionName,\n\tvalidateTransactionTimeout,\n} from \"./shared\";\n\nexport type { RawAccess } from \"./config\";\n\nexport interface DatabaseFactoryConfig {\n\tonMigrate?: (db: RawAccess) => Promise<void> | void;\n\twarnOnManualTransactions?: boolean;\n\t/**\n\t * SQLite profiling configuration.\n\t *\n\t * @experimental This entire configuration surface is experimental and\n\t * subject to change without notice.\n\t */\n\tprofiling?: SqliteProfilingOptions;\n}\nconst nativeStateTransactionOpeners = new WeakMap<\n\tNativeDatabaseProvider,\n\t(\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>\n>();\ntype NativeStateTransactionContext = {\n\tenter(): Promise<unknown>;\n\texit(scope: unknown): void;\n};\nconst nativeStateTransactionClientBinders = new WeakMap<\n\tobject,\n\t(context: NativeStateTransactionContext) => object\n>();\n\n/** @internal */\nexport function registerNativeStateTransactionOpener<\n\tT extends NativeDatabaseProvider,\n>(\n\tprovider: T,\n\topener: (\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>,\n): T {\n\tnativeStateTransactionOpeners.set(provider, opener);\n\treturn provider;\n}\n\n/** @internal */\nexport function bindNativeStateTransactionContext<T>(\n\tclient: T,\n\tcontext: NativeStateTransactionContext,\n): T {\n\tif (\n\t\t(typeof client !== \"object\" || client === null) &&\n\t\ttypeof client !== \"function\"\n\t) {\n\t\treturn client;\n\t}\n\tconst bind = nativeStateTransactionClientBinders.get(client as object);\n\treturn (bind?.(context) ?? client) as T;\n}\n\nfunction hasMultipleStatements(query: string): boolean {\n\tconst trimmed = query.trim().replace(/;+$/, \"\").trimEnd();\n\treturn trimmed.includes(\";\");\n}\n\nexport function db({\n\tonMigrate,\n\twarnOnManualTransactions = true,\n\tprofiling,\n}: DatabaseFactoryConfig = {}): DatabaseProvider<RawAccess> {\n\tconst provider: DatabaseProvider<RawAccess> = {\n\t\tsqliteProfiling: profiling,\n\t\tcreateClient: async (ctx) => {\n\t\t\tconst nativeDatabaseProvider = ctx.nativeDatabaseProvider;\n\t\t\tif (!nativeDatabaseProvider) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"native SQLite is required, but the current runtime did not provide a native database provider\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst db = await nativeDatabaseProvider.open(ctx.actorId);\n\t\t\tlet closed = false;\n\t\t\tlet manualTransactionWarned = false;\n\t\t\tconst ensureOpen = () => {\n\t\t\t\tif (closed) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down.\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst createClient = (\n\t\t\t\ttarget: SqliteDatabase | SqliteTransactionDatabase,\n\t\t\t\ttransactionScoped = false,\n\t\t\t\tstateTransactionContext?: NativeStateTransactionContext,\n\t\t\t): RawAccess => {\n\t\t\t\tconst client: RawAccess = {\n\t\t\t\t\texecute: async <\n\t\t\t\t\t\tTRow extends Record<string, unknown> = Record<\n\t\t\t\t\t\t\tstring,\n\t\t\t\t\t\t\tunknown\n\t\t\t\t\t\t>,\n\t\t\t\t\t>(\n\t\t\t\t\t\tquery: string,\n\t\t\t\t\t\t...args: unknown[]\n\t\t\t\t\t): Promise<TRow[]> => {\n\t\t\t\t\t\tensureOpen();\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!transactionScoped &&\n\t\t\t\t\t\t\twarnOnManualTransactions &&\n\t\t\t\t\t\t\t!manualTransactionWarned &&\n\t\t\t\t\t\t\t!hasMultipleStatements(query) &&\n\t\t\t\t\t\t\tisManualTransactionControl(query)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tmanualTransactionWarned = true;\n\t\t\t\t\t\t\tgetLogger(\"database\").warn(\n\t\t\t\t\t\t\t\t{ actorId: ctx.actorId },\n\t\t\t\t\t\t\t\t\"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning.\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst kvReadsBefore = ctx.metrics?.totalKvReads ?? 0;\n\t\t\t\t\t\tconst kvWritesBefore = ctx.metrics?.totalKvWrites ?? 0;\n\t\t\t\t\t\tconst start = performance.now();\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\t\t\tconst bindings =\n\t\t\t\t\t\t\t\t\targs.length === 1 &&\n\t\t\t\t\t\t\t\t\tisSqliteBindingObject(args[0])\n\t\t\t\t\t\t\t\t\t\t? toSqliteBindings(args[0])\n\t\t\t\t\t\t\t\t\t\t: toSqliteBindings(args);\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tbindings,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (!hasMultipleStatements(query)) {\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn await execMultiStatement<TRow>(\n\t\t\t\t\t\t\t\ttarget,\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tconst durationMs = performance.now() - start;\n\t\t\t\t\t\t\tctx.metrics?.trackSql(query, durationMs);\n\t\t\t\t\t\t\tif (ctx.metrics) {\n\t\t\t\t\t\t\t\tconst kvReads =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvReads - kvReadsBefore;\n\t\t\t\t\t\t\t\tconst kvWrites =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvWrites - kvWritesBefore;\n\t\t\t\t\t\t\t\tctx.log?.debug({\n\t\t\t\t\t\t\t\t\tmsg: \"sql query\",\n\t\t\t\t\t\t\t\t\tquery: query.slice(0, 120),\n\t\t\t\t\t\t\t\t\tdurationMs,\n\t\t\t\t\t\t\t\t\tkvReads,\n\t\t\t\t\t\t\t\t\tkvWrites,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\ttransaction: async <T>(\n\t\t\t\t\t\tcallback: (tx: RawAccess) => Promise<T> | T,\n\t\t\t\t\t\toptions?: SqliteTransactionOptions,\n\t\t\t\t\t): Promise<T> => {\n\t\t\t\t\t\tvalidateTransactionTimeout(options?.timeout);\n\t\t\t\t\t\tvalidateTransactionName(options?.name);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\ttransactionScoped &&\n\t\t\t\t\t\t\toptions?.experimental?.includeState\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\"experimental.includeState is not supported for nested transactions\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst includeState =\n\t\t\t\t\t\t\toptions?.experimental?.includeState === true;\n\t\t\t\t\t\tconst stateScope =\n\t\t\t\t\t\t\tincludeState && stateTransactionContext\n\t\t\t\t\t\t\t\t? await stateTransactionContext.enter()\n\t\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst transaction = includeState\n\t\t\t\t\t\t\t\t? await (() => {\n\t\t\t\t\t\t\t\t\t\tconst beginStateTransaction =\n\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider &&\n\t\t\t\t\t\t\t\t\t\t\tnativeStateTransactionOpeners.get(\n\t\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider,\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tif (!beginStateTransaction) {\n\t\t\t\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t\t\t\t\"experimental.includeState is only supported by RivetKit's embedded database provider\",\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn beginStateTransaction(\n\t\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\t\tstateScope,\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})()\n\t\t\t\t\t\t\t\t: await db.beginTransaction(\n\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\toptions?.name,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst tx = createClient(transaction, true);\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tconst result = await callback(tx);\n\t\t\t\t\t\t\t\tawait transaction.commit();\n\t\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tawait transaction.rollback();\n\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t// Preserve the callback or commit error after expiry cleanup.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tif (stateScope !== undefined) {\n\t\t\t\t\t\t\t\tstateTransactionContext?.exit(stateScope);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tclose: async () => {\n\t\t\t\t\t\tif (!closed) {\n\t\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\t\tawait db.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tnativeMetrics: () => db.nativeMetrics?.() ?? null,\n\t\t\t\t};\n\t\t\t\tif (!transactionScoped) {\n\t\t\t\t\tnativeStateTransactionClientBinders.set(client, (context) =>\n\t\t\t\t\t\tcreateClient(target, false, context),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn client;\n\t\t\t};\n\t\t\tconst client = createClient(db);\n\t\t\treturn client;\n\t\t},\n\t\tonMigrate: async (client) => {\n\t\t\tif (onMigrate) {\n\t\t\t\tawait withMigrationSavepoint(client, (leased) =>\n\t\t\t\t\tonMigrate(leased),\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t};\n\treturn provider;\n}\n\nfunction rowToObject<TRow extends Record<string, unknown>>(\n\trow: unknown[],\n\tcolumns: string[],\n): TRow {\n\tconst rowObj: Record<string, unknown> = {};\n\tfor (let i = 0; i < columns.length; i++) {\n\t\trowObj[columns[i]] = row[i];\n\t}\n\treturn rowObj as TRow;\n}\n\nasync function execMultiStatement<TRow extends Record<string, unknown>>(\n\tdb: Pick<SqliteDatabase, \"exec\">,\n\tquery: string,\n): Promise<TRow[]> {\n\tconst results: Record<string, unknown>[] = [];\n\tlet columnNames: string[] | null = null;\n\tawait db.exec(query, (row: unknown[], columns: string[]) => {\n\t\tif (!columnNames) {\n\t\t\tcolumnNames = columns;\n\t\t}\n\t\tresults.push(rowToObject(row, columnNames));\n\t});\n\treturn results as TRow[];\n}\n\nasync function withMigrationSavepoint<T>(\n\tclient: RawAccess,\n\tcallback: (leased: RawAccess) => Promise<T> | T,\n): Promise<T> {\n\treturn await client.transaction(\n\t\tasync (transaction) => {\n\t\t\tawait transaction.execute(\"SAVEPOINT __rivet_on_migrate\");\n\t\t\ttry {\n\t\t\t\tconst result = await callback(transaction);\n\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t);\n\t\t\t\treturn result;\n\t\t\t} catch (error) {\n\t\t\t\ttry {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"ROLLBACK TO SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t} finally {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tname: \"rivetkit-migration\",\n\t\t\ttimeout: MIGRATION_TRANSACTION_TIMEOUT_MS,\n\t\t},\n\t);\n}\n"]}
|
|
@@ -102,7 +102,7 @@ function toRivetError(error, fallback) {
|
|
|
102
102
|
);
|
|
103
103
|
}
|
|
104
104
|
function encodeBridgeRivetError(error) {
|
|
105
|
-
|
|
105
|
+
const payload = {
|
|
106
106
|
group: error.group,
|
|
107
107
|
code: error.code,
|
|
108
108
|
message: error.message,
|
|
@@ -111,11 +111,21 @@ function encodeBridgeRivetError(error) {
|
|
|
111
111
|
public: error.public,
|
|
112
112
|
statusCode: error.statusCode,
|
|
113
113
|
actor: error.actor
|
|
114
|
-
}
|
|
114
|
+
};
|
|
115
|
+
try {
|
|
116
|
+
return {
|
|
117
|
+
encoded: `${BRIDGE_RIVET_ERROR_PREFIX}${JSON.stringify(payload)}`
|
|
118
|
+
};
|
|
119
|
+
} catch (cause) {
|
|
120
|
+
return {
|
|
121
|
+
encoded: `${BRIDGE_RIVET_ERROR_PREFIX}${JSON.stringify({ ...payload, metadata: void 0 })}`,
|
|
122
|
+
droppedMetadataCause: cause
|
|
123
|
+
};
|
|
124
|
+
}
|
|
115
125
|
}
|
|
116
126
|
function encodeErrorForBridge(error) {
|
|
117
127
|
if (isCanonicalStructuredRivetError(error)) {
|
|
118
|
-
return encodeBridgeRivetError(error);
|
|
128
|
+
return encodeBridgeRivetError(error).encoded;
|
|
119
129
|
}
|
|
120
130
|
return String(error);
|
|
121
131
|
}
|
|
@@ -268,4 +278,4 @@ function unsupportedFeature(feature) {
|
|
|
268
278
|
|
|
269
279
|
|
|
270
280
|
exports.INTERNAL_ERROR_CODE = INTERNAL_ERROR_CODE; exports.INTERNAL_ERROR_DESCRIPTION = INTERNAL_ERROR_DESCRIPTION; exports.USER_ERROR_CODE = USER_ERROR_CODE; exports.BRIDGE_RIVET_ERROR_PREFIX = BRIDGE_RIVET_ERROR_PREFIX; exports.isRivetErrorLike = isRivetErrorLike; exports.isActorAbortedError = isActorAbortedError; exports.RivetError = RivetError; exports.UserError = UserError; exports.toRivetError = toRivetError; exports.encodeBridgeRivetError = encodeBridgeRivetError; exports.encodeErrorForBridge = encodeErrorForBridge; exports.isCanonicalStructuredRivetError = isCanonicalStructuredRivetError; exports.decodeBridgeRivetErrorPayload = decodeBridgeRivetErrorPayload; exports.decodeBridgeRivetError = decodeBridgeRivetError; exports.isRivetErrorCode = isRivetErrorCode; exports.internalError = internalError; exports.invalidEncoding = invalidEncoding; exports.invalidRequest = invalidRequest; exports.actorNotFound = actorNotFound; exports.actorStopping = actorStopping; exports.actorRestarting = actorRestarting; exports.forbiddenError = forbiddenError; exports.unsupportedFeature = unsupportedFeature;
|
|
271
|
-
//# sourceMappingURL=chunk-
|
|
281
|
+
//# sourceMappingURL=chunk-MGI2VVF6.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MGI2VVF6.cjs","../../src/actor/errors.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MGI2VVF6.cjs","sourcesContent":[null,"import type { DeconstructedError } from \"@/common/utils\";\n\nexport const INTERNAL_ERROR_CODE = \"internal_error\";\nexport const INTERNAL_ERROR_DESCRIPTION = \"An internal error occurred\";\nexport type InternalErrorMetadata = Record<string, never>;\n\nexport const USER_ERROR_CODE = \"user_error\";\nexport const BRIDGE_RIVET_ERROR_PREFIX = \"__RIVET_ERROR_JSON__:\";\n\nexport interface RivetErrorOptions extends ErrorOptions {\n\t/** Error data can safely be serialized in a response to the client. */\n\tpublic?: boolean;\n\t/** Metadata associated with this error. */\n\tmetadata?: unknown;\n\t/** Request identifier used to correlate this error with engine logs. */\n\trayId?: string;\n\t/** Explicit HTTP status override for router responses. */\n\tstatusCode?: number;\n\t/** Actor context associated with this error. */\n\tactor?: ActorSpecifier;\n}\n\n/** Identifies the actor that was handling work when an error was produced. */\nexport interface ActorSpecifier {\n\tactorId: string;\n\tgeneration: number;\n\tkey?: string;\n}\n\nexport interface RivetErrorLike {\n\t__type?: \"ActorError\" | \"RivetError\";\n\tgroup: string;\n\tcode: string;\n\tmessage: string;\n\tmetadata?: unknown;\n\trayId?: string;\n\tpublic?: boolean;\n\tstatusCode?: number;\n\tactor?: ActorSpecifier;\n}\n\nexport interface BridgeRivetErrorPayload extends RivetErrorLike {}\n\n/**\n * Shape as it arrives from the native bridge, where an absent ray ID serializes\n * to null. Normalized to a BridgeRivetErrorPayload before validation.\n */\ninterface NativeBridgeErrorPayload\n\textends Omit<BridgeRivetErrorPayload, \"rayId\"> {\n\trayId?: string | null;\n}\n\nexport interface UserErrorOptions extends ErrorOptions {\n\t/**\n\t * Machine readable code for this error. Useful for catching different types of\n\t * errors in try-catch.\n\t */\n\tcode?: string;\n\t/**\n\t * Additional metadata related to the error. Useful for understanding context\n\t * about the error.\n\t */\n\tmetadata?: unknown;\n}\n\nfunction looksLikeRivetErrorOptions(\n\tvalue: unknown,\n): value is RivetErrorOptions {\n\treturn (\n\t\ttypeof value === \"object\" &&\n\t\tvalue !== null &&\n\t\t(\"public\" in value ||\n\t\t\t\"metadata\" in value ||\n\t\t\t\"rayId\" in value ||\n\t\t\t\"statusCode\" in value ||\n\t\t\t\"actor\" in value ||\n\t\t\t\"cause\" in value)\n\t);\n}\n\nfunction isTypedErrorTag(value: unknown): value is \"ActorError\" | \"RivetError\" {\n\treturn value === \"ActorError\" || value === \"RivetError\";\n}\n\nfunction errorMessage(error: unknown, fallback = String(error)): string {\n\tif (\n\t\terror &&\n\t\ttypeof error === \"object\" &&\n\t\t\"message\" in error &&\n\t\ttypeof error.message === \"string\"\n\t) {\n\t\treturn error.message;\n\t}\n\n\treturn fallback;\n}\n\nexport function isRivetErrorLike(\n\terror: unknown,\n): error is RivetError | DeconstructedError | RivetErrorLike {\n\treturn (\n\t\ttypeof error === \"object\" &&\n\t\terror !== null &&\n\t\t\"group\" in error &&\n\t\ttypeof error.group === \"string\" &&\n\t\t\"code\" in error &&\n\t\ttypeof error.code === \"string\" &&\n\t\t\"message\" in error &&\n\t\ttypeof error.message === \"string\" &&\n\t\t(!(\"rayId\" in error) ||\n\t\t\terror.rayId === undefined ||\n\t\t\ttypeof error.rayId === \"string\") &&\n\t\t(!(\"__type\" in error) || isTypedErrorTag(error.__type))\n\t);\n}\n\n// Matches the `actor`/`aborted` error that core raises when an in-flight queue\n// wait is interrupted because the actor is going to sleep. This is the expected\n// way a parked `run` handler unwinds during sleep, not a failure.\nexport function isActorAbortedError(error: unknown): boolean {\n\treturn (\n\t\tisRivetErrorLike(error) &&\n\t\terror.group === \"actor\" &&\n\t\terror.code === \"aborted\"\n\t);\n}\n\nfunction isActorSpecifier(value: unknown): value is ActorSpecifier {\n\treturn (\n\t\ttypeof value === \"object\" &&\n\t\tvalue !== null &&\n\t\t\"actorId\" in value &&\n\t\ttypeof value.actorId === \"string\" &&\n\t\t\"generation\" in value &&\n\t\ttypeof value.generation === \"number\" &&\n\t\t(!(\"key\" in value) ||\n\t\t\tvalue.key === undefined ||\n\t\t\ttypeof value.key === \"string\")\n\t);\n}\n\nexport class RivetError extends Error {\n\t__type = \"RivetError\" as const;\n\n\tpublic public: boolean;\n\tpublic metadata?: unknown;\n\tpublic readonly rayId?: string;\n\tpublic statusCode: number;\n\tpublic actor?: ActorSpecifier;\n\tpublic readonly group: string;\n\tpublic readonly code: string;\n\n\tpublic static isRivetError(\n\t\terror: unknown,\n\t): error is RivetError | DeconstructedError {\n\t\treturn isRivetErrorLike(error);\n\t}\n\n\tpublic static isActorError(\n\t\terror: unknown,\n\t): error is RivetError | DeconstructedError {\n\t\treturn isRivetErrorLike(error);\n\t}\n\n\tconstructor(\n\t\tgroup: string,\n\t\tcode: string,\n\t\tmessage: string,\n\t\toptions?: RivetErrorOptions | unknown,\n\t) {\n\t\tconst normalized = looksLikeRivetErrorOptions(options)\n\t\t\t? options\n\t\t\t: { metadata: options };\n\n\t\tsuper(message, { cause: normalized.cause });\n\t\tthis.name = \"RivetError\";\n\t\tthis.group = group;\n\t\tthis.code = code;\n\t\tthis.public = normalized.public ?? false;\n\t\tthis.metadata = normalized.metadata;\n\t\tthis.rayId = normalized.rayId ?? undefined;\n\t\tthis.statusCode = normalized.statusCode ?? (this.public ? 400 : 500);\n\t\tthis.actor = normalized.actor;\n\t}\n\n\ttoString() {\n\t\treturn this.message;\n\t}\n}\n\nexport { RivetError as ActorError };\n\nexport class UserError extends RivetError {\n\tconstructor(message: string, options?: UserErrorOptions) {\n\t\tsuper(\"user\", options?.code ?? USER_ERROR_CODE, message, {\n\t\t\tpublic: true,\n\t\t\tmetadata: options?.metadata,\n\t\t\tcause: options?.cause,\n\t\t});\n\t}\n}\n\nexport function toRivetError(\n\terror: unknown,\n\tfallback?: Partial<RivetErrorLike>,\n): RivetError {\n\tif (typeof error === \"string\") {\n\t\tconst bridged = decodeBridgeRivetError(error);\n\t\tif (bridged) {\n\t\t\treturn bridged;\n\t\t}\n\t}\n\n\tif (error instanceof Error) {\n\t\tconst bridged = decodeBridgeRivetError(error.message);\n\t\tif (bridged) {\n\t\t\treturn bridged;\n\t\t}\n\t}\n\n\tif (isRivetErrorLike(error)) {\n\t\treturn new RivetError(error.group, error.code, error.message, {\n\t\t\tpublic: error.public,\n\t\t\tstatusCode: error.statusCode,\n\t\t\tmetadata: error.metadata,\n\t\t\trayId: error.rayId,\n\t\t\tactor: error.actor,\n\t\t\tcause: error instanceof Error ? error.cause : undefined,\n\t\t});\n\t}\n\n\treturn new RivetError(\n\t\tfallback?.group ?? \"actor\",\n\t\tfallback?.code ?? INTERNAL_ERROR_CODE,\n\t\terrorMessage(error, fallback?.message ?? \"Unknown error\"),\n\t\t{\n\t\t\tpublic: fallback?.public,\n\t\t\tstatusCode: fallback?.statusCode,\n\t\t\tmetadata: fallback?.metadata,\n\t\t\trayId: fallback?.rayId,\n\t\t\tactor: fallback?.actor,\n\t\t\tcause: error instanceof Error ? error : undefined,\n\t\t},\n\t);\n}\n\n/** A structured error encoded for the bridge to Core. */\nexport interface EncodedBridgeError {\n\treadonly encoded: string;\n\t/** Set when JSON could not encode the metadata, which was dropped. */\n\treadonly droppedMetadataCause?: unknown;\n}\n\n/**\n * Encodes a structured error for the bridge to Core. Metadata that JSON cannot\n * encode, such as a `bigint`, is dropped so the error itself still crosses.\n */\nexport function encodeBridgeRivetError(\n\terror: RivetErrorLike,\n): EncodedBridgeError {\n\tconst payload = {\n\t\tgroup: error.group,\n\t\tcode: error.code,\n\t\tmessage: error.message,\n\t\tmetadata: error.metadata,\n\t\trayId: error.rayId,\n\t\tpublic: error.public,\n\t\tstatusCode: error.statusCode,\n\t\tactor: error.actor,\n\t};\n\ttry {\n\t\treturn {\n\t\t\tencoded: `${BRIDGE_RIVET_ERROR_PREFIX}${JSON.stringify(payload)}`,\n\t\t};\n\t} catch (cause) {\n\t\treturn {\n\t\t\tencoded: `${BRIDGE_RIVET_ERROR_PREFIX}${JSON.stringify({ ...payload, metadata: undefined })}`,\n\t\t\tdroppedMetadataCause: cause,\n\t\t};\n\t}\n}\n\n/**\n * Encodes an error for the telemetry bridge. A structured error crosses with\n * its group and code. Anything else crosses as text so Core classifies it,\n * which is the same rule that keeps raw messages out of every span.\n */\nexport function encodeErrorForBridge(error: unknown): string {\n\tif (isCanonicalStructuredRivetError(error)) {\n\t\treturn encodeBridgeRivetError(error).encoded;\n\t}\n\treturn String(error);\n}\n\n/** A `RivetError` instance, or a plain object carrying its full tagged shape. */\nexport function isCanonicalStructuredRivetError(\n\terror: unknown,\n): error is RivetErrorLike {\n\treturn (\n\t\terror instanceof RivetError ||\n\t\t(typeof error === \"object\" &&\n\t\t\terror !== null &&\n\t\t\t\"__type\" in error &&\n\t\t\terror.__type === \"RivetError\" &&\n\t\t\t\"group\" in error &&\n\t\t\ttypeof error.group === \"string\" &&\n\t\t\t\"code\" in error &&\n\t\t\ttypeof error.code === \"string\" &&\n\t\t\t\"message\" in error &&\n\t\t\ttypeof error.message === \"string\")\n\t);\n}\n\nexport function decodeBridgeRivetErrorPayload(\n\tvalue: string,\n): BridgeRivetErrorPayload | undefined {\n\tif (!value.startsWith(BRIDGE_RIVET_ERROR_PREFIX)) {\n\t\treturn undefined;\n\t}\n\n\ttry {\n\t\tconst raw = JSON.parse(\n\t\t\tvalue.slice(BRIDGE_RIVET_ERROR_PREFIX.length),\n\t\t) as NativeBridgeErrorPayload;\n\t\t// Coerce the native bridge's null ray ID to undefined before validation.\n\t\tconst payload: BridgeRivetErrorPayload = {\n\t\t\t...raw,\n\t\t\trayId: raw.rayId ?? undefined,\n\t\t};\n\t\tif (!isRivetErrorLike(payload)) {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (\n\t\t\tpayload.actor !== undefined &&\n\t\t\tpayload.actor !== null &&\n\t\t\t!isActorSpecifier(payload.actor)\n\t\t) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn payload;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nexport function decodeBridgeRivetError(value: string): RivetError | undefined {\n\tconst payload = decodeBridgeRivetErrorPayload(value);\n\tif (!payload) {\n\t\treturn undefined;\n\t}\n\n\treturn new RivetError(payload.group, payload.code, payload.message, {\n\t\tmetadata: payload.metadata,\n\t\trayId: payload.rayId,\n\t\tpublic: payload.public,\n\t\tstatusCode: payload.statusCode,\n\t\tactor: payload.actor ?? undefined,\n\t});\n}\n\nexport function isRivetErrorCode(\n\terror: unknown,\n\tgroup: string,\n\tcode: string,\n): error is RivetError {\n\treturn (\n\t\tisRivetErrorLike(error) && error.group === group && error.code === code\n\t);\n}\n\nexport function internalError(\n\tmessage: string,\n\toptions?: Partial<RivetErrorOptions> & {\n\t\tgroup?: string;\n\t\tcode?: string;\n\t},\n): RivetError {\n\treturn new RivetError(\n\t\toptions?.group ?? \"actor\",\n\t\toptions?.code ?? INTERNAL_ERROR_CODE,\n\t\tmessage,\n\t\t{\n\t\t\tpublic: options?.public,\n\t\t\tstatusCode: options?.statusCode,\n\t\t\tmetadata: options?.metadata,\n\t\t\trayId: options?.rayId,\n\t\t\tactor: options?.actor,\n\t\t\tcause: options?.cause,\n\t\t},\n\t);\n}\n\nexport function invalidEncoding(format?: string): RivetError {\n\treturn new RivetError(\n\t\t\"encoding\",\n\t\t\"invalid\",\n\t\t`Invalid encoding \\`${format}\\`. (https://www.rivet.dev/docs/clients/javascript)`,\n\t\t{\n\t\t\tpublic: true,\n\t\t},\n\t);\n}\n\nexport function invalidRequest(error?: unknown): RivetError {\n\treturn new RivetError(\n\t\t\"request\",\n\t\t\"invalid\",\n\t\t`Invalid request: ${errorMessage(error, String(error))}`,\n\t\t{\n\t\t\tpublic: true,\n\t\t\tcause: error instanceof Error ? error : undefined,\n\t\t},\n\t);\n}\n\nexport function actorNotFound(identifier?: string): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"not_found\",\n\t\tidentifier\n\t\t\t? `Actor not found: ${identifier} (https://www.rivet.dev/docs/clients/javascript)`\n\t\t\t: \"Actor not found (https://www.rivet.dev/docs/clients/javascript)\",\n\t\t{ public: true },\n\t);\n}\n\nexport function actorStopping(identifier?: string): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"stopping\",\n\t\tidentifier ? `Actor stopping: ${identifier}` : \"Actor stopping\",\n\t\t{ public: true },\n\t);\n}\n\nexport interface ActorRestartingOptions {\n\tphase?: \"stopping\" | \"sleeping\" | \"waking\" | \"runner_shutdown\";\n\tretryAfterMs?: number;\n}\n\nexport function actorRestarting(opts?: ActorRestartingOptions): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"restarting\",\n\t\t\"Actor is restarting. Retry the request.\",\n\t\t{\n\t\t\tpublic: true,\n\t\t\tstatusCode: 503,\n\t\t\tmetadata: {\n\t\t\t\tretryable: true,\n\t\t\t\t...(opts?.phase ? { phase: opts.phase } : {}),\n\t\t\t\t...(opts?.retryAfterMs !== undefined\n\t\t\t\t\t? { retryAfterMs: opts.retryAfterMs }\n\t\t\t\t\t: {}),\n\t\t\t},\n\t\t},\n\t);\n}\n\nexport function forbiddenError(): RivetError {\n\treturn new RivetError(\"auth\", \"forbidden\", \"Forbidden\", {\n\t\tpublic: true,\n\t\tstatusCode: 403,\n\t});\n}\n\nexport function unsupportedFeature(feature: string): RivetError {\n\treturn new RivetError(\n\t\t\"feature\",\n\t\t\"unsupported\",\n\t\t`Unsupported feature: ${feature}`,\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MYWZCDML.cjs","../../src/actor/keys.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MYWZCDML.cjs","sourcesContent":[null,"import type { ActorKey } from \"@/mod\";\n\nexport const EMPTY_KEY = \"/\";\nexport const KEY_SEPARATOR = \"/\";\nexport const KEYS = {\n\tPERSIST_DATA: Uint8Array.from([1]),\n\tCONN_PREFIX: Uint8Array.from([2]),\n\tINSPECTOR_TOKEN: Uint8Array.from([3]),\n\tKV: Uint8Array.from([4]),\n\tQUEUE_PREFIX: Uint8Array.from([5]),\n\tLAST_PUSHED_ALARM: Uint8Array.from([6]),\n\tWORKFLOW_PREFIX: Uint8Array.from([6]),\n\tTRACES_PREFIX: Uint8Array.from([7]),\n};\n\nexport const STORAGE_VERSION = {\n\tQUEUE: 1,\n\tWORKFLOW: 1,\n\tTRACES: 1,\n} as const;\n\nconst STORAGE_VERSION_BYTES = {\n\tQUEUE: Uint8Array.from([STORAGE_VERSION.QUEUE]),\n\tWORKFLOW: Uint8Array.from([STORAGE_VERSION.WORKFLOW]),\n\tTRACES: Uint8Array.from([STORAGE_VERSION.TRACES]),\n} as const;\n\nconst QUEUE_NAMESPACE = {\n\tMETADATA: Uint8Array.from([1]),\n\tMESSAGES: Uint8Array.from([2]),\n} as const;\n\nconst QUEUE_ID_BYTES = 8;\n\nfunction concatPrefix(prefix: Uint8Array, suffix: Uint8Array): Uint8Array {\n\tconst merged = new Uint8Array(prefix.length + suffix.length);\n\tmerged.set(prefix, 0);\n\tmerged.set(suffix, prefix.length);\n\treturn merged;\n}\n\nconst QUEUE_STORAGE_PREFIX = concatPrefix(\n\tKEYS.QUEUE_PREFIX,\n\tSTORAGE_VERSION_BYTES.QUEUE,\n);\nconst QUEUE_METADATA_KEY = concatPrefix(\n\tQUEUE_STORAGE_PREFIX,\n\tQUEUE_NAMESPACE.METADATA,\n);\nconst QUEUE_MESSAGES_PREFIX = concatPrefix(\n\tQUEUE_STORAGE_PREFIX,\n\tQUEUE_NAMESPACE.MESSAGES,\n);\nconst WORKFLOW_STORAGE_PREFIX = concatPrefix(\n\tKEYS.WORKFLOW_PREFIX,\n\tSTORAGE_VERSION_BYTES.WORKFLOW,\n);\nconst TRACES_STORAGE_PREFIX = concatPrefix(\n\tKEYS.TRACES_PREFIX,\n\tSTORAGE_VERSION_BYTES.TRACES,\n);\n\nexport function serializeActorKey(key: ActorKey): string {\n\t// Use a special marker for empty key arrays\n\tif (key.length === 0) {\n\t\treturn EMPTY_KEY;\n\t}\n\n\t// Escape each key part to handle the separator and the empty key marker\n\tconst escapedParts = key.map((part) => {\n\t\t// Handle empty strings by using a special marker\n\t\tif (part === \"\") {\n\t\t\treturn \"\\\\0\"; // Use \\0 as a marker for empty strings\n\t\t}\n\n\t\t// Escape backslashes first to avoid conflicts with our markers\n\t\tlet escaped = part.replace(/\\\\/g, \"\\\\\\\\\");\n\n\t\t// Then escape separators\n\t\tescaped = escaped.replace(/\\//g, `\\\\${KEY_SEPARATOR}`);\n\n\t\treturn escaped;\n\t});\n\n\treturn escapedParts.join(KEY_SEPARATOR);\n}\n\nexport function deserializeActorKey(keyString: string | undefined): ActorKey {\n\t// Check for special empty key marker\n\tif (\n\t\tkeyString === undefined ||\n\t\tkeyString === null ||\n\t\tkeyString === EMPTY_KEY\n\t) {\n\t\treturn [];\n\t}\n\n\t// Split by unescaped separators and unescape the escaped characters\n\tconst parts: string[] = [];\n\tlet currentPart = \"\";\n\tlet escaping = false;\n\tlet isEmptyStringMarker = false;\n\n\tfor (let i = 0; i < keyString.length; i++) {\n\t\tconst char = keyString[i];\n\n\t\tif (escaping) {\n\t\t\t// Handle special escape sequences\n\t\t\tif (char === \"0\") {\n\t\t\t\t// \\0 represents an empty string marker\n\t\t\t\tisEmptyStringMarker = true;\n\t\t\t} else {\n\t\t\t\t// This is an escaped character, add it directly\n\t\t\t\tcurrentPart += char;\n\t\t\t}\n\t\t\tescaping = false;\n\t\t} else if (char === \"\\\\\") {\n\t\t\t// Start of an escape sequence\n\t\t\tescaping = true;\n\t\t} else if (char === KEY_SEPARATOR) {\n\t\t\t// This is a separator\n\t\t\tif (isEmptyStringMarker) {\n\t\t\t\tparts.push(\"\");\n\t\t\t\tisEmptyStringMarker = false;\n\t\t\t} else {\n\t\t\t\tparts.push(currentPart);\n\t\t\t}\n\t\t\tcurrentPart = \"\";\n\t\t} else {\n\t\t\t// Regular character\n\t\t\tcurrentPart += char;\n\t\t}\n\t}\n\n\t// Add the last part\n\tif (escaping) {\n\t\t// Incomplete escape at the end - treat as literal backslash\n\t\tparts.push(`${currentPart}\\\\`);\n\t} else if (isEmptyStringMarker) {\n\t\tparts.push(\"\");\n\t} else if (currentPart !== \"\" || parts.length > 0) {\n\t\tparts.push(currentPart);\n\t}\n\n\treturn parts;\n}\n\nexport function makePrefixedKey(key: Uint8Array): Uint8Array {\n\tconst prefixed = new Uint8Array(KEYS.KV.length + key.length);\n\tprefixed.set(KEYS.KV, 0);\n\tprefixed.set(key, KEYS.KV.length);\n\treturn prefixed;\n}\n\nexport function removePrefixFromKey(prefixedKey: Uint8Array): Uint8Array {\n\treturn prefixedKey.slice(KEYS.KV.length);\n}\n\nexport function makeWorkflowKey(key: Uint8Array): Uint8Array {\n\treturn concatPrefix(WORKFLOW_STORAGE_PREFIX, key);\n}\n\nexport function makeTracesKey(key: Uint8Array): Uint8Array {\n\treturn concatPrefix(TRACES_STORAGE_PREFIX, key);\n}\n\nexport function workflowStoragePrefix(): Uint8Array {\n\treturn Uint8Array.from(WORKFLOW_STORAGE_PREFIX);\n}\n\nexport function tracesStoragePrefix(): Uint8Array {\n\treturn Uint8Array.from(TRACES_STORAGE_PREFIX);\n}\n\nexport function queueStoragePrefix(): Uint8Array {\n\treturn Uint8Array.from(QUEUE_STORAGE_PREFIX);\n}\n\nexport function queueMetadataKey(): Uint8Array {\n\treturn Uint8Array.from(QUEUE_METADATA_KEY);\n}\n\nexport function queueMessagesPrefix(): Uint8Array {\n\treturn Uint8Array.from(QUEUE_MESSAGES_PREFIX);\n}\n\nexport function makeConnKey(connId: string): Uint8Array {\n\tconst encoder = new TextEncoder();\n\tconst connIdBytes = encoder.encode(connId);\n\tconst key = new Uint8Array(KEYS.CONN_PREFIX.length + connIdBytes.length);\n\tkey.set(KEYS.CONN_PREFIX, 0);\n\tkey.set(connIdBytes, KEYS.CONN_PREFIX.length);\n\treturn key;\n}\n\nexport function makeQueueMessageKey(id: bigint): Uint8Array {\n\tconst key = new Uint8Array(QUEUE_MESSAGES_PREFIX.length + QUEUE_ID_BYTES);\n\tkey.set(QUEUE_MESSAGES_PREFIX, 0);\n\tconst view = new DataView(key.buffer, key.byteOffset, key.byteLength);\n\tview.setBigUint64(QUEUE_MESSAGES_PREFIX.length, id, false);\n\treturn key;\n}\n\nexport function decodeQueueMessageKey(key: Uint8Array): bigint {\n\tconst offset = QUEUE_MESSAGES_PREFIX.length;\n\tif (key.length < offset + QUEUE_ID_BYTES) {\n\t\tthrow new Error(\"Queue key is too short\");\n\t}\n\tfor (let i = 0; i < QUEUE_MESSAGES_PREFIX.length; i++) {\n\t\tif (key[i] !== QUEUE_MESSAGES_PREFIX[i]) {\n\t\t\tthrow new Error(\"Queue key has invalid prefix\");\n\t\t}\n\t}\n\tconst view = new DataView(\n\t\tkey.buffer,\n\t\tkey.byteOffset + offset,\n\t\tQUEUE_ID_BYTES,\n\t);\n\treturn view.getBigUint64(0, false);\n}\n"]}
|