rivetkit 2.1.2 → 2.1.3
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.js +1 -1
- package/dist/browser/client.js.map +1 -1
- package/dist/browser/inspector/client.js +1 -1
- package/dist/browser/inspector/client.js.map +1 -1
- package/dist/inspector.tar.gz +0 -0
- package/dist/tsup/{chunk-NXEHFUDB.cjs → chunk-5AZ6UPEF.cjs} +24 -21
- package/dist/tsup/chunk-5AZ6UPEF.cjs.map +1 -0
- package/dist/tsup/{chunk-YQ5P6KMN.js → chunk-6LHZQSWJ.js} +8 -5
- package/dist/tsup/{chunk-YQ5P6KMN.js.map → chunk-6LHZQSWJ.js.map} +1 -1
- package/dist/tsup/{chunk-BFI4LYS2.js → chunk-6T3WSP5M.js} +4 -4
- package/dist/tsup/{chunk-772NPMTY.cjs → chunk-BMNB6YRQ.cjs} +160 -103
- package/dist/tsup/chunk-BMNB6YRQ.cjs.map +1 -0
- package/dist/tsup/{chunk-GVQAVU7R.cjs → chunk-DADGS67O.cjs} +4 -4
- package/dist/tsup/{chunk-GVQAVU7R.cjs.map → chunk-DADGS67O.cjs.map} +1 -1
- package/dist/tsup/{chunk-RHUII57M.js → chunk-GNGRMP5E.js} +10 -6
- package/dist/tsup/chunk-GNGRMP5E.js.map +1 -0
- package/dist/tsup/{chunk-PZAV6PP2.cjs → chunk-HPAX7L72.cjs} +152 -152
- package/dist/tsup/{chunk-PZAV6PP2.cjs.map → chunk-HPAX7L72.cjs.map} +1 -1
- package/dist/tsup/{chunk-UZV7NXC6.cjs → chunk-IJAGZS57.cjs} +30 -30
- package/dist/tsup/{chunk-UZV7NXC6.cjs.map → chunk-IJAGZS57.cjs.map} +1 -1
- package/dist/tsup/{chunk-HFWRHT5T.cjs → chunk-KSZZRTOD.cjs} +3 -3
- package/dist/tsup/{chunk-HFWRHT5T.cjs.map → chunk-KSZZRTOD.cjs.map} +1 -1
- package/dist/tsup/{chunk-PSUVV4HM.js → chunk-MAXIXG56.js} +2 -2
- package/dist/tsup/{chunk-HB4RGGMC.js → chunk-N7ASEZ2Y.js} +5 -5
- package/dist/tsup/{chunk-PW3YONDJ.js → chunk-OAOF23ZY.js} +2 -2
- package/dist/tsup/{chunk-TDFDR7AO.js → chunk-POUBQA6Z.js} +2 -2
- package/dist/tsup/{chunk-VMX4I4MP.js → chunk-QUDLEWGD.js} +3 -3
- package/dist/tsup/{chunk-MNS5LY6M.cjs → chunk-R64EFI6F.cjs} +74 -74
- package/dist/tsup/{chunk-MNS5LY6M.cjs.map → chunk-R64EFI6F.cjs.map} +1 -1
- package/dist/tsup/{chunk-QABDKI3W.cjs → chunk-T6MM5RTW.cjs} +248 -244
- package/dist/tsup/chunk-T6MM5RTW.cjs.map +1 -0
- package/dist/tsup/{chunk-ZHQDRRMY.cjs → chunk-U6VWVHVW.cjs} +3 -3
- package/dist/tsup/{chunk-ZHQDRRMY.cjs.map → chunk-U6VWVHVW.cjs.map} +1 -1
- package/dist/tsup/{chunk-WUXR722E.js → chunk-YET3IZD6.js} +2 -2
- package/dist/tsup/{chunk-WUXR722E.js.map → chunk-YET3IZD6.js.map} +1 -1
- package/dist/tsup/{chunk-BSIJG3LG.js → chunk-YLDDENCZ.js} +69 -12
- package/dist/tsup/chunk-YLDDENCZ.js.map +1 -0
- package/dist/tsup/{chunk-RMJJE43B.cjs → chunk-ZSJ2OTY4.cjs} +2 -2
- package/dist/tsup/{chunk-RMJJE43B.cjs.map → chunk-ZSJ2OTY4.cjs.map} +1 -1
- package/dist/tsup/client/mod.cjs +6 -6
- package/dist/tsup/client/mod.js +5 -5
- package/dist/tsup/common/log.cjs +2 -2
- package/dist/tsup/common/log.js +1 -1
- package/dist/tsup/common/websocket.cjs +3 -3
- package/dist/tsup/common/websocket.js +2 -2
- package/dist/tsup/driver-helpers/mod.cjs +4 -4
- package/dist/tsup/driver-helpers/mod.js +3 -3
- package/dist/tsup/driver-test-suite/mod.cjs +425 -338
- package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
- package/dist/tsup/driver-test-suite/mod.js +376 -289
- package/dist/tsup/driver-test-suite/mod.js.map +1 -1
- package/dist/tsup/inspector/mod.cjs +3 -3
- package/dist/tsup/inspector/mod.js +2 -2
- package/dist/tsup/mod.cjs +8 -8
- package/dist/tsup/mod.js +7 -7
- package/dist/tsup/serve-test-suite/mod.cjs +111 -99
- package/dist/tsup/serve-test-suite/mod.cjs.map +1 -1
- package/dist/tsup/serve-test-suite/mod.js +22 -10
- package/dist/tsup/serve-test-suite/mod.js.map +1 -1
- package/dist/tsup/test/mod.cjs +10 -10
- package/dist/tsup/test/mod.js +6 -6
- package/dist/tsup/utils.cjs +2 -2
- package/dist/tsup/utils.js +1 -1
- package/dist/tsup/workflow/mod.cjs +5 -5
- package/dist/tsup/workflow/mod.js +4 -4
- package/package.json +5 -5
- package/src/actor/instance/mod.ts +13 -2
- package/src/driver-test-suite/tests/actor-db.ts +299 -216
- package/src/driver-test-suite/tests/actor-queue.ts +10 -9
- package/src/driver-test-suite/tests/actor-workflow.ts +12 -2
- package/src/driver-test-suite/utils.ts +8 -8
- package/src/drivers/engine/actor-driver.ts +77 -7
- package/src/workflow/driver.ts +4 -1
- package/dist/tsup/chunk-772NPMTY.cjs.map +0 -1
- package/dist/tsup/chunk-BSIJG3LG.js.map +0 -1
- package/dist/tsup/chunk-NXEHFUDB.cjs.map +0 -1
- package/dist/tsup/chunk-QABDKI3W.cjs.map +0 -1
- package/dist/tsup/chunk-RHUII57M.js.map +0 -1
- /package/dist/tsup/{chunk-BFI4LYS2.js.map → chunk-6T3WSP5M.js.map} +0 -0
- /package/dist/tsup/{chunk-PSUVV4HM.js.map → chunk-MAXIXG56.js.map} +0 -0
- /package/dist/tsup/{chunk-HB4RGGMC.js.map → chunk-N7ASEZ2Y.js.map} +0 -0
- /package/dist/tsup/{chunk-PW3YONDJ.js.map → chunk-OAOF23ZY.js.map} +0 -0
- /package/dist/tsup/{chunk-TDFDR7AO.js.map → chunk-POUBQA6Z.js.map} +0 -0
- /package/dist/tsup/{chunk-VMX4I4MP.js.map → chunk-QUDLEWGD.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../schemas/actor-inspector/v3.ts","../../../src/schemas/actor-inspector/versioned.ts","../../schemas/actor-inspector/v1.ts","../../schemas/actor-inspector/v2.ts","../../schemas/transport/v1.ts","../../../package.json","../../../src/utils.ts","../../../src/inspector/transport.ts"],"sourcesContent":["// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type TraceQueryRequest = {\n readonly id: uint,\n readonly startMs: uint,\n readonly endMs: uint,\n readonly limit: uint,\n}\n\nexport function readTraceQueryRequest(bc: bare.ByteCursor): TraceQueryRequest {\n return {\n id: bare.readUint(bc),\n startMs: bare.readUint(bc),\n endMs: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeTraceQueryRequest(bc: bare.ByteCursor, x: TraceQueryRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.startMs)\n bare.writeUint(bc, x.endMs)\n bare.writeUint(bc, x.limit)\n}\n\nexport type QueueRequest = {\n readonly id: uint,\n readonly limit: uint,\n}\n\nexport function readQueueRequest(bc: bare.ByteCursor): QueueRequest {\n return {\n id: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeQueueRequest(bc: bare.ByteCursor, x: QueueRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.limit)\n}\n\nexport type WorkflowHistoryRequest = {\n readonly id: uint,\n}\n\nexport function readWorkflowHistoryRequest(bc: bare.ByteCursor): WorkflowHistoryRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeWorkflowHistoryRequest(bc: bare.ByteCursor, x: WorkflowHistoryRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type DatabaseSchemaRequest = {\n readonly id: uint,\n}\n\nexport function readDatabaseSchemaRequest(bc: bare.ByteCursor): DatabaseSchemaRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeDatabaseSchemaRequest(bc: bare.ByteCursor, x: DatabaseSchemaRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type DatabaseTableRowsRequest = {\n readonly id: uint,\n readonly table: string,\n readonly limit: uint,\n readonly offset: uint,\n}\n\nexport function readDatabaseTableRowsRequest(bc: bare.ByteCursor): DatabaseTableRowsRequest {\n return {\n id: bare.readUint(bc),\n table: bare.readString(bc),\n limit: bare.readUint(bc),\n offset: bare.readUint(bc),\n }\n}\n\nexport function writeDatabaseTableRowsRequest(bc: bare.ByteCursor, x: DatabaseTableRowsRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.table)\n bare.writeUint(bc, x.limit)\n bare.writeUint(bc, x.offset)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n | { readonly tag: \"TraceQueryRequest\", readonly val: TraceQueryRequest }\n | { readonly tag: \"QueueRequest\", readonly val: QueueRequest }\n | { readonly tag: \"WorkflowHistoryRequest\", readonly val: WorkflowHistoryRequest }\n | { readonly tag: \"DatabaseSchemaRequest\", readonly val: DatabaseSchemaRequest }\n | { readonly tag: \"DatabaseTableRowsRequest\", readonly val: DatabaseTableRowsRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n case 5:\n return { tag: \"TraceQueryRequest\", val: readTraceQueryRequest(bc) }\n case 6:\n return { tag: \"QueueRequest\", val: readQueueRequest(bc) }\n case 7:\n return { tag: \"WorkflowHistoryRequest\", val: readWorkflowHistoryRequest(bc) }\n case 8:\n return { tag: \"DatabaseSchemaRequest\", val: readDatabaseSchemaRequest(bc) }\n case 9:\n return { tag: \"DatabaseTableRowsRequest\", val: readDatabaseTableRowsRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 4)\n writeRpcsListRequest(bc, x.val)\n break\n }\n case \"TraceQueryRequest\": {\n bare.writeU8(bc, 5)\n writeTraceQueryRequest(bc, x.val)\n break\n }\n case \"QueueRequest\": {\n bare.writeU8(bc, 6)\n writeQueueRequest(bc, x.val)\n break\n }\n case \"WorkflowHistoryRequest\": {\n bare.writeU8(bc, 7)\n writeWorkflowHistoryRequest(bc, x.val)\n break\n }\n case \"DatabaseSchemaRequest\": {\n bare.writeU8(bc, 8)\n writeDatabaseSchemaRequest(bc, x.val)\n break\n }\n case \"DatabaseTableRowsRequest\": {\n bare.writeU8(bc, 9)\n writeDatabaseTableRowsRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type WorkflowHistory = ArrayBuffer\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n bare.writeData(bc, x)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): WorkflowHistory | null {\n return bare.readBool(bc)\n ? readWorkflowHistory(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: WorkflowHistory | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowHistory(bc, x)\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n readonly queueSize: uint,\n readonly workflowHistory: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read2(bc),\n isDatabaseEnabled: bare.readBool(bc),\n queueSize: bare.readUint(bc),\n workflowHistory: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write2(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n bare.writeUint(bc, x.queueSize)\n write3(bc, x.workflowHistory)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type TraceQueryResponse = {\n readonly rid: uint,\n readonly payload: ArrayBuffer,\n}\n\nexport function readTraceQueryResponse(bc: bare.ByteCursor): TraceQueryResponse {\n return {\n rid: bare.readUint(bc),\n payload: bare.readData(bc),\n }\n}\n\nexport function writeTraceQueryResponse(bc: bare.ByteCursor, x: TraceQueryResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.payload)\n}\n\nexport type QueueMessageSummary = {\n readonly id: uint,\n readonly name: string,\n readonly createdAtMs: uint,\n}\n\nexport function readQueueMessageSummary(bc: bare.ByteCursor): QueueMessageSummary {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n createdAtMs: bare.readUint(bc),\n }\n}\n\nexport function writeQueueMessageSummary(bc: bare.ByteCursor, x: QueueMessageSummary): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeUint(bc, x.createdAtMs)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly QueueMessageSummary[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readQueueMessageSummary(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readQueueMessageSummary(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly QueueMessageSummary[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeQueueMessageSummary(bc, x[i])\n }\n}\n\nexport type QueueStatus = {\n readonly size: uint,\n readonly maxSize: uint,\n readonly messages: readonly QueueMessageSummary[],\n readonly truncated: boolean,\n}\n\nexport function readQueueStatus(bc: bare.ByteCursor): QueueStatus {\n return {\n size: bare.readUint(bc),\n maxSize: bare.readUint(bc),\n messages: read4(bc),\n truncated: bare.readBool(bc),\n }\n}\n\nexport function writeQueueStatus(bc: bare.ByteCursor, x: QueueStatus): void {\n bare.writeUint(bc, x.size)\n bare.writeUint(bc, x.maxSize)\n write4(bc, x.messages)\n bare.writeBool(bc, x.truncated)\n}\n\nexport type QueueResponse = {\n readonly rid: uint,\n readonly status: QueueStatus,\n}\n\nexport function readQueueResponse(bc: bare.ByteCursor): QueueResponse {\n return {\n rid: bare.readUint(bc),\n status: readQueueStatus(bc),\n }\n}\n\nexport function writeQueueResponse(bc: bare.ByteCursor, x: QueueResponse): void {\n bare.writeUint(bc, x.rid)\n writeQueueStatus(bc, x.status)\n}\n\nexport type WorkflowHistoryResponse = {\n readonly rid: uint,\n readonly history: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readWorkflowHistoryResponse(bc: bare.ByteCursor): WorkflowHistoryResponse {\n return {\n rid: bare.readUint(bc),\n history: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeWorkflowHistoryResponse(bc: bare.ByteCursor, x: WorkflowHistoryResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.history)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type DatabaseSchemaResponse = {\n readonly rid: uint,\n readonly schema: ArrayBuffer,\n}\n\nexport function readDatabaseSchemaResponse(bc: bare.ByteCursor): DatabaseSchemaResponse {\n return {\n rid: bare.readUint(bc),\n schema: bare.readData(bc),\n }\n}\n\nexport function writeDatabaseSchemaResponse(bc: bare.ByteCursor, x: DatabaseSchemaResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.schema)\n}\n\nexport type DatabaseTableRowsResponse = {\n readonly rid: uint,\n readonly result: ArrayBuffer,\n}\n\nexport function readDatabaseTableRowsResponse(bc: bare.ByteCursor): DatabaseTableRowsResponse {\n return {\n rid: bare.readUint(bc),\n result: bare.readData(bc),\n }\n}\n\nexport function writeDatabaseTableRowsResponse(bc: bare.ByteCursor, x: DatabaseTableRowsResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.result)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type QueueUpdated = {\n readonly queueSize: uint,\n}\n\nexport function readQueueUpdated(bc: bare.ByteCursor): QueueUpdated {\n return {\n queueSize: bare.readUint(bc),\n }\n}\n\nexport function writeQueueUpdated(bc: bare.ByteCursor, x: QueueUpdated): void {\n bare.writeUint(bc, x.queueSize)\n}\n\nexport type WorkflowHistoryUpdated = {\n readonly history: WorkflowHistory,\n}\n\nexport function readWorkflowHistoryUpdated(bc: bare.ByteCursor): WorkflowHistoryUpdated {\n return {\n history: readWorkflowHistory(bc),\n }\n}\n\nexport function writeWorkflowHistoryUpdated(bc: bare.ByteCursor, x: WorkflowHistoryUpdated): void {\n writeWorkflowHistory(bc, x.history)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read2(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"QueueUpdated\", readonly val: QueueUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"WorkflowHistoryUpdated\", readonly val: WorkflowHistoryUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"TraceQueryResponse\", readonly val: TraceQueryResponse }\n | { readonly tag: \"QueueResponse\", readonly val: QueueResponse }\n | { readonly tag: \"WorkflowHistoryResponse\", readonly val: WorkflowHistoryResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n | { readonly tag: \"DatabaseSchemaResponse\", readonly val: DatabaseSchemaResponse }\n | { readonly tag: \"DatabaseTableRowsResponse\", readonly val: DatabaseTableRowsResponse }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 3:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 4:\n return { tag: \"QueueUpdated\", val: readQueueUpdated(bc) }\n case 5:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 6:\n return { tag: \"WorkflowHistoryUpdated\", val: readWorkflowHistoryUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"TraceQueryResponse\", val: readTraceQueryResponse(bc) }\n case 9:\n return { tag: \"QueueResponse\", val: readQueueResponse(bc) }\n case 10:\n return { tag: \"WorkflowHistoryResponse\", val: readWorkflowHistoryResponse(bc) }\n case 11:\n return { tag: \"Error\", val: readError(bc) }\n case 12:\n return { tag: \"Init\", val: readInit(bc) }\n case 13:\n return { tag: \"DatabaseSchemaResponse\", val: readDatabaseSchemaResponse(bc) }\n case 14:\n return { tag: \"DatabaseTableRowsResponse\", val: readDatabaseTableRowsResponse(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 2)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 3)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"QueueUpdated\": {\n bare.writeU8(bc, 4)\n writeQueueUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 5)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"WorkflowHistoryUpdated\": {\n bare.writeU8(bc, 6)\n writeWorkflowHistoryUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"TraceQueryResponse\": {\n bare.writeU8(bc, 8)\n writeTraceQueryResponse(bc, x.val)\n break\n }\n case \"QueueResponse\": {\n bare.writeU8(bc, 9)\n writeQueueResponse(bc, x.val)\n break\n }\n case \"WorkflowHistoryResponse\": {\n bare.writeU8(bc, 10)\n writeWorkflowHistoryResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 11)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 12)\n writeInit(bc, x.val)\n break\n }\n case \"DatabaseSchemaResponse\": {\n bare.writeU8(bc, 13)\n writeDatabaseSchemaResponse(bc, x.val)\n break\n }\n case \"DatabaseTableRowsResponse\": {\n bare.writeU8(bc, 14)\n writeDatabaseTableRowsResponse(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","import { createVersionedDataHandler } from \"vbare\";\n\nimport * as v1 from \"../../../dist/schemas/actor-inspector/v1\";\nimport * as v2 from \"../../../dist/schemas/actor-inspector/v2\";\nimport * as v3 from \"../../../dist/schemas/actor-inspector/v3\";\n\nexport const CURRENT_VERSION = 3;\n\nconst EVENTS_DROPPED_ERROR = \"inspector.events_dropped\";\nconst WORKFLOW_HISTORY_DROPPED_ERROR = \"inspector.workflow_history_dropped\";\nconst QUEUE_DROPPED_ERROR = \"inspector.queue_dropped\";\nconst TRACE_DROPPED_ERROR = \"inspector.trace_dropped\";\nconst DATABASE_DROPPED_ERROR = \"inspector.database_dropped\";\n\n// Converter from v1 to v2: Drop events in Init and add new fields\nconst v1ToClientToV2 = (v1Data: v1.ToClient): v2.ToClient => {\n\tif (v1Data.body.tag === \"Init\") {\n\t\tconst init = v1Data.body.val as v1.Init;\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Init\",\n\t\t\t\tval: {\n\t\t\t\t\tconnections: init.connections,\n\t\t\t\t\tstate: init.state,\n\t\t\t\t\tisStateEnabled: init.isStateEnabled,\n\t\t\t\t\trpcs: init.rpcs,\n\t\t\t\t\tisDatabaseEnabled: init.isDatabaseEnabled,\n\t\t\t\t\tqueueSize: 0n,\n\t\t\t\t\tworkflowHistory: null,\n\t\t\t\t\tisWorkflowEnabled: false,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (\n\t\tv1Data.body.tag === \"EventsUpdated\" ||\n\t\tv1Data.body.tag === \"EventsResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: EVENTS_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v1Data as unknown as v2.ToClient;\n};\n\n// Converter from v2 to v1: Add empty events to Init, drop newer updates\nconst v2ToClientToV1 = (v2Data: v2.ToClient): v1.ToClient => {\n\tif (v2Data.body.tag === \"Init\") {\n\t\tconst init = v2Data.body.val;\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Init\",\n\t\t\t\tval: {\n\t\t\t\t\tconnections: init.connections,\n\t\t\t\t\tevents: [],\n\t\t\t\t\tstate: init.state,\n\t\t\t\t\tisStateEnabled: init.isStateEnabled,\n\t\t\t\t\trpcs: init.rpcs,\n\t\t\t\t\tisDatabaseEnabled: init.isDatabaseEnabled,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (\n\t\tv2Data.body.tag === \"WorkflowHistoryUpdated\" ||\n\t\tv2Data.body.tag === \"WorkflowHistoryResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: WORKFLOW_HISTORY_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"QueueUpdated\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: QUEUE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"QueueResponse\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: QUEUE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"TraceQueryResponse\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: TRACE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v2Data as unknown as v1.ToClient;\n};\n\n// Converter from v2 to v3: v2 messages are a subset of v3\nconst v2ToClientToV3 = (v2Data: v2.ToClient): v3.ToClient => {\n\treturn v2Data as unknown as v3.ToClient;\n};\n\n// Converter from v3 to v2: Drop database responses\nconst v3ToClientToV2 = (v3Data: v3.ToClient): v2.ToClient => {\n\tif (\n\t\tv3Data.body.tag === \"DatabaseSchemaResponse\" ||\n\t\tv3Data.body.tag === \"DatabaseTableRowsResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: DATABASE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v3Data as unknown as v2.ToClient;\n};\n\n// Converter from v1 to v2: Drop events requests\nconst v1ToServerToV2 = (v1Data: v1.ToServer): v2.ToServer => {\n\tif (\n\t\tv1Data.body.tag === \"EventsRequest\" ||\n\t\tv1Data.body.tag === \"ClearEventsRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert events requests to v2\");\n\t}\n\treturn v1Data as unknown as v2.ToServer;\n};\n\n// Converter from v2 to v1: Drop newer requests\nconst v2ToServerToV1 = (v2Data: v2.ToServer): v1.ToServer => {\n\tif (\n\t\tv2Data.body.tag === \"TraceQueryRequest\" ||\n\t\tv2Data.body.tag === \"QueueRequest\" ||\n\t\tv2Data.body.tag === \"WorkflowHistoryRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert v2-only requests to v1\");\n\t}\n\treturn v2Data as unknown as v1.ToServer;\n};\n\n// Converter from v2 to v3: v2 messages are a subset of v3\nconst v2ToServerToV3 = (v2Data: v2.ToServer): v3.ToServer => {\n\treturn v2Data as unknown as v3.ToServer;\n};\n\n// Converter from v3 to v2: Drop database requests\nconst v3ToServerToV2 = (v3Data: v3.ToServer): v2.ToServer => {\n\tif (\n\t\tv3Data.body.tag === \"DatabaseSchemaRequest\" ||\n\t\tv3Data.body.tag === \"DatabaseTableRowsRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert v3-only database requests to v2\");\n\t}\n\treturn v3Data as unknown as v2.ToServer;\n};\n\nexport const TO_SERVER_VERSIONED = createVersionedDataHandler<v3.ToServer>({\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodeToServer(data as v1.ToServer);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodeToServer(data as v2.ToServer);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeToServer(data as v3.ToServer);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodeToServer(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodeToServer(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeToServer(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToServerToV2, v2ToServerToV3],\n\tserializeConverters: () => [v3ToServerToV2, v2ToServerToV1],\n});\n\nexport const TO_CLIENT_VERSIONED = createVersionedDataHandler<v3.ToClient>({\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodeToClient(data as v1.ToClient);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodeToClient(data as v2.ToClient);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeToClient(data as v3.ToClient);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodeToClient(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodeToClient(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeToClient(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToClientToV2, v2ToClientToV3],\n\tserializeConverters: () => [v3ToClientToV2, v2ToClientToV1],\n});\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type EventsRequest = {\n readonly id: uint,\n}\n\nexport function readEventsRequest(bc: bare.ByteCursor): EventsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeEventsRequest(bc: bare.ByteCursor, x: EventsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ClearEventsRequest = {\n readonly id: uint,\n}\n\nexport function readClearEventsRequest(bc: bare.ByteCursor): ClearEventsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeClearEventsRequest(bc: bare.ByteCursor, x: ClearEventsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"EventsRequest\", readonly val: EventsRequest }\n | { readonly tag: \"ClearEventsRequest\", readonly val: ClearEventsRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"EventsRequest\", val: readEventsRequest(bc) }\n case 5:\n return { tag: \"ClearEventsRequest\", val: readClearEventsRequest(bc) }\n case 6:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"EventsRequest\": {\n bare.writeU8(bc, 4)\n writeEventsRequest(bc, x.val)\n break\n }\n case \"ClearEventsRequest\": {\n bare.writeU8(bc, 5)\n writeClearEventsRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 6)\n writeRpcsListRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type ActionEvent = {\n readonly name: string,\n readonly args: ArrayBuffer,\n readonly connId: string,\n}\n\nexport function readActionEvent(bc: bare.ByteCursor): ActionEvent {\n return {\n name: bare.readString(bc),\n args: bare.readData(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeActionEvent(bc: bare.ByteCursor, x: ActionEvent): void {\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n bare.writeString(bc, x.connId)\n}\n\nexport type BroadcastEvent = {\n readonly eventName: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readBroadcastEvent(bc: bare.ByteCursor): BroadcastEvent {\n return {\n eventName: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeBroadcastEvent(bc: bare.ByteCursor, x: BroadcastEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeData(bc, x.args)\n}\n\nexport type SubscribeEvent = {\n readonly eventName: string,\n readonly connId: string,\n}\n\nexport function readSubscribeEvent(bc: bare.ByteCursor): SubscribeEvent {\n return {\n eventName: bare.readString(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeSubscribeEvent(bc: bare.ByteCursor, x: SubscribeEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeString(bc, x.connId)\n}\n\nexport type UnSubscribeEvent = {\n readonly eventName: string,\n readonly connId: string,\n}\n\nexport function readUnSubscribeEvent(bc: bare.ByteCursor): UnSubscribeEvent {\n return {\n eventName: bare.readString(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeUnSubscribeEvent(bc: bare.ByteCursor, x: UnSubscribeEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeString(bc, x.connId)\n}\n\nexport type FiredEvent = {\n readonly eventName: string,\n readonly args: ArrayBuffer,\n readonly connId: string,\n}\n\nexport function readFiredEvent(bc: bare.ByteCursor): FiredEvent {\n return {\n eventName: bare.readString(bc),\n args: bare.readData(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeFiredEvent(bc: bare.ByteCursor, x: FiredEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeData(bc, x.args)\n bare.writeString(bc, x.connId)\n}\n\nexport type EventBody =\n | { readonly tag: \"ActionEvent\", readonly val: ActionEvent }\n | { readonly tag: \"BroadcastEvent\", readonly val: BroadcastEvent }\n | { readonly tag: \"SubscribeEvent\", readonly val: SubscribeEvent }\n | { readonly tag: \"UnSubscribeEvent\", readonly val: UnSubscribeEvent }\n | { readonly tag: \"FiredEvent\", readonly val: FiredEvent }\n\nexport function readEventBody(bc: bare.ByteCursor): EventBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"ActionEvent\", val: readActionEvent(bc) }\n case 1:\n return { tag: \"BroadcastEvent\", val: readBroadcastEvent(bc) }\n case 2:\n return { tag: \"SubscribeEvent\", val: readSubscribeEvent(bc) }\n case 3:\n return { tag: \"UnSubscribeEvent\", val: readUnSubscribeEvent(bc) }\n case 4:\n return { tag: \"FiredEvent\", val: readFiredEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeEventBody(bc: bare.ByteCursor, x: EventBody): void {\n switch (x.tag) {\n case \"ActionEvent\": {\n bare.writeU8(bc, 0)\n writeActionEvent(bc, x.val)\n break\n }\n case \"BroadcastEvent\": {\n bare.writeU8(bc, 1)\n writeBroadcastEvent(bc, x.val)\n break\n }\n case \"SubscribeEvent\": {\n bare.writeU8(bc, 2)\n writeSubscribeEvent(bc, x.val)\n break\n }\n case \"UnSubscribeEvent\": {\n bare.writeU8(bc, 3)\n writeUnSubscribeEvent(bc, x.val)\n break\n }\n case \"FiredEvent\": {\n bare.writeU8(bc, 4)\n writeFiredEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type Event = {\n readonly id: string,\n readonly timestamp: uint,\n readonly body: EventBody,\n}\n\nexport function readEvent(bc: bare.ByteCursor): Event {\n return {\n id: bare.readString(bc),\n timestamp: bare.readUint(bc),\n body: readEventBody(bc),\n }\n}\n\nexport function writeEvent(bc: bare.ByteCursor, x: Event): void {\n bare.writeString(bc, x.id)\n bare.writeUint(bc, x.timestamp)\n writeEventBody(bc, x.body)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): readonly Event[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readEvent(bc)\n }\n return result\n}\n\nfunction write1(bc: bare.ByteCursor, x: readonly Event[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeEvent(bc, x[i])\n }\n}\n\nfunction read2(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write2(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly events: readonly Event[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n events: read1(bc),\n state: read2(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read3(bc),\n isDatabaseEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.events)\n write2(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write3(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read2(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type EventsResponse = {\n readonly rid: uint,\n readonly events: readonly Event[],\n}\n\nexport function readEventsResponse(bc: bare.ByteCursor): EventsResponse {\n return {\n rid: bare.readUint(bc),\n events: read1(bc),\n }\n}\n\nexport function writeEventsResponse(bc: bare.ByteCursor, x: EventsResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.events)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type EventsUpdated = {\n readonly events: readonly Event[],\n}\n\nexport function readEventsUpdated(bc: bare.ByteCursor): EventsUpdated {\n return {\n events: read1(bc),\n }\n}\n\nexport function writeEventsUpdated(bc: bare.ByteCursor, x: EventsUpdated): void {\n write1(bc, x.events)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read3(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"EventsResponse\", readonly val: EventsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"EventsUpdated\", readonly val: EventsUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"EventsResponse\", val: readEventsResponse(bc) }\n case 3:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 4:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 5:\n return { tag: \"EventsUpdated\", val: readEventsUpdated(bc) }\n case 6:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"Error\", val: readError(bc) }\n case 9:\n return { tag: \"Init\", val: readInit(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"EventsResponse\": {\n bare.writeU8(bc, 2)\n writeEventsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 3)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 4)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"EventsUpdated\": {\n bare.writeU8(bc, 5)\n writeEventsUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 6)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 8)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 9)\n writeInit(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type TraceQueryRequest = {\n readonly id: uint,\n readonly startMs: uint,\n readonly endMs: uint,\n readonly limit: uint,\n}\n\nexport function readTraceQueryRequest(bc: bare.ByteCursor): TraceQueryRequest {\n return {\n id: bare.readUint(bc),\n startMs: bare.readUint(bc),\n endMs: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeTraceQueryRequest(bc: bare.ByteCursor, x: TraceQueryRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.startMs)\n bare.writeUint(bc, x.endMs)\n bare.writeUint(bc, x.limit)\n}\n\nexport type QueueRequest = {\n readonly id: uint,\n readonly limit: uint,\n}\n\nexport function readQueueRequest(bc: bare.ByteCursor): QueueRequest {\n return {\n id: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeQueueRequest(bc: bare.ByteCursor, x: QueueRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.limit)\n}\n\nexport type WorkflowHistoryRequest = {\n readonly id: uint,\n}\n\nexport function readWorkflowHistoryRequest(bc: bare.ByteCursor): WorkflowHistoryRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeWorkflowHistoryRequest(bc: bare.ByteCursor, x: WorkflowHistoryRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n | { readonly tag: \"TraceQueryRequest\", readonly val: TraceQueryRequest }\n | { readonly tag: \"QueueRequest\", readonly val: QueueRequest }\n | { readonly tag: \"WorkflowHistoryRequest\", readonly val: WorkflowHistoryRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n case 5:\n return { tag: \"TraceQueryRequest\", val: readTraceQueryRequest(bc) }\n case 6:\n return { tag: \"QueueRequest\", val: readQueueRequest(bc) }\n case 7:\n return { tag: \"WorkflowHistoryRequest\", val: readWorkflowHistoryRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 4)\n writeRpcsListRequest(bc, x.val)\n break\n }\n case \"TraceQueryRequest\": {\n bare.writeU8(bc, 5)\n writeTraceQueryRequest(bc, x.val)\n break\n }\n case \"QueueRequest\": {\n bare.writeU8(bc, 6)\n writeQueueRequest(bc, x.val)\n break\n }\n case \"WorkflowHistoryRequest\": {\n bare.writeU8(bc, 7)\n writeWorkflowHistoryRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type WorkflowHistory = ArrayBuffer\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n bare.writeData(bc, x)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): WorkflowHistory | null {\n return bare.readBool(bc)\n ? readWorkflowHistory(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: WorkflowHistory | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowHistory(bc, x)\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n readonly queueSize: uint,\n readonly workflowHistory: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read2(bc),\n isDatabaseEnabled: bare.readBool(bc),\n queueSize: bare.readUint(bc),\n workflowHistory: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write2(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n bare.writeUint(bc, x.queueSize)\n write3(bc, x.workflowHistory)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type TraceQueryResponse = {\n readonly rid: uint,\n readonly payload: ArrayBuffer,\n}\n\nexport function readTraceQueryResponse(bc: bare.ByteCursor): TraceQueryResponse {\n return {\n rid: bare.readUint(bc),\n payload: bare.readData(bc),\n }\n}\n\nexport function writeTraceQueryResponse(bc: bare.ByteCursor, x: TraceQueryResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.payload)\n}\n\nexport type QueueMessageSummary = {\n readonly id: uint,\n readonly name: string,\n readonly createdAtMs: uint,\n}\n\nexport function readQueueMessageSummary(bc: bare.ByteCursor): QueueMessageSummary {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n createdAtMs: bare.readUint(bc),\n }\n}\n\nexport function writeQueueMessageSummary(bc: bare.ByteCursor, x: QueueMessageSummary): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeUint(bc, x.createdAtMs)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly QueueMessageSummary[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readQueueMessageSummary(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readQueueMessageSummary(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly QueueMessageSummary[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeQueueMessageSummary(bc, x[i])\n }\n}\n\nexport type QueueStatus = {\n readonly size: uint,\n readonly maxSize: uint,\n readonly messages: readonly QueueMessageSummary[],\n readonly truncated: boolean,\n}\n\nexport function readQueueStatus(bc: bare.ByteCursor): QueueStatus {\n return {\n size: bare.readUint(bc),\n maxSize: bare.readUint(bc),\n messages: read4(bc),\n truncated: bare.readBool(bc),\n }\n}\n\nexport function writeQueueStatus(bc: bare.ByteCursor, x: QueueStatus): void {\n bare.writeUint(bc, x.size)\n bare.writeUint(bc, x.maxSize)\n write4(bc, x.messages)\n bare.writeBool(bc, x.truncated)\n}\n\nexport type QueueResponse = {\n readonly rid: uint,\n readonly status: QueueStatus,\n}\n\nexport function readQueueResponse(bc: bare.ByteCursor): QueueResponse {\n return {\n rid: bare.readUint(bc),\n status: readQueueStatus(bc),\n }\n}\n\nexport function writeQueueResponse(bc: bare.ByteCursor, x: QueueResponse): void {\n bare.writeUint(bc, x.rid)\n writeQueueStatus(bc, x.status)\n}\n\nexport type WorkflowHistoryResponse = {\n readonly rid: uint,\n readonly history: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readWorkflowHistoryResponse(bc: bare.ByteCursor): WorkflowHistoryResponse {\n return {\n rid: bare.readUint(bc),\n history: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeWorkflowHistoryResponse(bc: bare.ByteCursor, x: WorkflowHistoryResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.history)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type QueueUpdated = {\n readonly queueSize: uint,\n}\n\nexport function readQueueUpdated(bc: bare.ByteCursor): QueueUpdated {\n return {\n queueSize: bare.readUint(bc),\n }\n}\n\nexport function writeQueueUpdated(bc: bare.ByteCursor, x: QueueUpdated): void {\n bare.writeUint(bc, x.queueSize)\n}\n\nexport type WorkflowHistoryUpdated = {\n readonly history: WorkflowHistory,\n}\n\nexport function readWorkflowHistoryUpdated(bc: bare.ByteCursor): WorkflowHistoryUpdated {\n return {\n history: readWorkflowHistory(bc),\n }\n}\n\nexport function writeWorkflowHistoryUpdated(bc: bare.ByteCursor, x: WorkflowHistoryUpdated): void {\n writeWorkflowHistory(bc, x.history)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read2(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"QueueUpdated\", readonly val: QueueUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"WorkflowHistoryUpdated\", readonly val: WorkflowHistoryUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"TraceQueryResponse\", readonly val: TraceQueryResponse }\n | { readonly tag: \"QueueResponse\", readonly val: QueueResponse }\n | { readonly tag: \"WorkflowHistoryResponse\", readonly val: WorkflowHistoryResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 3:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 4:\n return { tag: \"QueueUpdated\", val: readQueueUpdated(bc) }\n case 5:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 6:\n return { tag: \"WorkflowHistoryUpdated\", val: readWorkflowHistoryUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"TraceQueryResponse\", val: readTraceQueryResponse(bc) }\n case 9:\n return { tag: \"QueueResponse\", val: readQueueResponse(bc) }\n case 10:\n return { tag: \"WorkflowHistoryResponse\", val: readWorkflowHistoryResponse(bc) }\n case 11:\n return { tag: \"Error\", val: readError(bc) }\n case 12:\n return { tag: \"Init\", val: readInit(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 2)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 3)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"QueueUpdated\": {\n bare.writeU8(bc, 4)\n writeQueueUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 5)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"WorkflowHistoryUpdated\": {\n bare.writeU8(bc, 6)\n writeWorkflowHistoryUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"TraceQueryResponse\": {\n bare.writeU8(bc, 8)\n writeTraceQueryResponse(bc, x.val)\n break\n }\n case \"QueueResponse\": {\n bare.writeU8(bc, 9)\n writeQueueResponse(bc, x.val)\n break\n }\n case \"WorkflowHistoryResponse\": {\n bare.writeU8(bc, 10)\n writeWorkflowHistoryResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 11)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 12)\n writeInit(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u32 = number\nexport type u64 = bigint\n\nexport type WorkflowCbor = ArrayBuffer\n\nexport function readWorkflowCbor(bc: bare.ByteCursor): WorkflowCbor {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowCbor(bc: bare.ByteCursor, x: WorkflowCbor): void {\n bare.writeData(bc, x)\n}\n\nexport type WorkflowNameIndex = u32\n\nexport function readWorkflowNameIndex(bc: bare.ByteCursor): WorkflowNameIndex {\n return bare.readU32(bc)\n}\n\nexport function writeWorkflowNameIndex(bc: bare.ByteCursor, x: WorkflowNameIndex): void {\n bare.writeU32(bc, x)\n}\n\nexport type WorkflowLoopIterationMarker = {\n readonly loop: WorkflowNameIndex,\n readonly iteration: u32,\n}\n\nexport function readWorkflowLoopIterationMarker(bc: bare.ByteCursor): WorkflowLoopIterationMarker {\n return {\n loop: readWorkflowNameIndex(bc),\n iteration: bare.readU32(bc),\n }\n}\n\nexport function writeWorkflowLoopIterationMarker(bc: bare.ByteCursor, x: WorkflowLoopIterationMarker): void {\n writeWorkflowNameIndex(bc, x.loop)\n bare.writeU32(bc, x.iteration)\n}\n\nexport type WorkflowPathSegment =\n | { readonly tag: \"WorkflowNameIndex\", readonly val: WorkflowNameIndex }\n | { readonly tag: \"WorkflowLoopIterationMarker\", readonly val: WorkflowLoopIterationMarker }\n\nexport function readWorkflowPathSegment(bc: bare.ByteCursor): WorkflowPathSegment {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"WorkflowNameIndex\", val: readWorkflowNameIndex(bc) }\n case 1:\n return { tag: \"WorkflowLoopIterationMarker\", val: readWorkflowLoopIterationMarker(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowPathSegment(bc: bare.ByteCursor, x: WorkflowPathSegment): void {\n switch (x.tag) {\n case \"WorkflowNameIndex\": {\n bare.writeU8(bc, 0)\n writeWorkflowNameIndex(bc, x.val)\n break\n }\n case \"WorkflowLoopIterationMarker\": {\n bare.writeU8(bc, 1)\n writeWorkflowLoopIterationMarker(bc, x.val)\n break\n }\n }\n}\n\nexport type WorkflowLocation = readonly WorkflowPathSegment[]\n\nexport function readWorkflowLocation(bc: bare.ByteCursor): WorkflowLocation {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readWorkflowPathSegment(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readWorkflowPathSegment(bc)\n }\n return result\n}\n\nexport function writeWorkflowLocation(bc: bare.ByteCursor, x: WorkflowLocation): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeWorkflowPathSegment(bc, x[i])\n }\n}\n\nexport enum WorkflowEntryStatus {\n PENDING = \"PENDING\",\n RUNNING = \"RUNNING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n EXHAUSTED = \"EXHAUSTED\",\n}\n\nexport function readWorkflowEntryStatus(bc: bare.ByteCursor): WorkflowEntryStatus {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowEntryStatus.PENDING\n case 1:\n return WorkflowEntryStatus.RUNNING\n case 2:\n return WorkflowEntryStatus.COMPLETED\n case 3:\n return WorkflowEntryStatus.FAILED\n case 4:\n return WorkflowEntryStatus.EXHAUSTED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowEntryStatus(bc: bare.ByteCursor, x: WorkflowEntryStatus): void {\n switch (x) {\n case WorkflowEntryStatus.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowEntryStatus.RUNNING: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowEntryStatus.COMPLETED: {\n bare.writeU8(bc, 2)\n break\n }\n case WorkflowEntryStatus.FAILED: {\n bare.writeU8(bc, 3)\n break\n }\n case WorkflowEntryStatus.EXHAUSTED: {\n bare.writeU8(bc, 4)\n break\n }\n }\n}\n\nexport enum WorkflowSleepState {\n PENDING = \"PENDING\",\n COMPLETED = \"COMPLETED\",\n INTERRUPTED = \"INTERRUPTED\",\n}\n\nexport function readWorkflowSleepState(bc: bare.ByteCursor): WorkflowSleepState {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowSleepState.PENDING\n case 1:\n return WorkflowSleepState.COMPLETED\n case 2:\n return WorkflowSleepState.INTERRUPTED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowSleepState(bc: bare.ByteCursor, x: WorkflowSleepState): void {\n switch (x) {\n case WorkflowSleepState.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowSleepState.COMPLETED: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowSleepState.INTERRUPTED: {\n bare.writeU8(bc, 2)\n break\n }\n }\n}\n\nexport enum WorkflowBranchStatusType {\n PENDING = \"PENDING\",\n RUNNING = \"RUNNING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n CANCELLED = \"CANCELLED\",\n}\n\nexport function readWorkflowBranchStatusType(bc: bare.ByteCursor): WorkflowBranchStatusType {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowBranchStatusType.PENDING\n case 1:\n return WorkflowBranchStatusType.RUNNING\n case 2:\n return WorkflowBranchStatusType.COMPLETED\n case 3:\n return WorkflowBranchStatusType.FAILED\n case 4:\n return WorkflowBranchStatusType.CANCELLED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowBranchStatusType(bc: bare.ByteCursor, x: WorkflowBranchStatusType): void {\n switch (x) {\n case WorkflowBranchStatusType.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowBranchStatusType.RUNNING: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowBranchStatusType.COMPLETED: {\n bare.writeU8(bc, 2)\n break\n }\n case WorkflowBranchStatusType.FAILED: {\n bare.writeU8(bc, 3)\n break\n }\n case WorkflowBranchStatusType.CANCELLED: {\n bare.writeU8(bc, 4)\n break\n }\n }\n}\n\nfunction read0(bc: bare.ByteCursor): WorkflowCbor | null {\n return bare.readBool(bc)\n ? readWorkflowCbor(bc)\n : null\n}\n\nfunction write0(bc: bare.ByteCursor, x: WorkflowCbor | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowCbor(bc, x)\n }\n}\n\nfunction read1(bc: bare.ByteCursor): string | null {\n return bare.readBool(bc)\n ? bare.readString(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: string | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeString(bc, x)\n }\n}\n\nexport type WorkflowStepEntry = {\n readonly output: WorkflowCbor | null,\n readonly error: string | null,\n}\n\nexport function readWorkflowStepEntry(bc: bare.ByteCursor): WorkflowStepEntry {\n return {\n output: read0(bc),\n error: read1(bc),\n }\n}\n\nexport function writeWorkflowStepEntry(bc: bare.ByteCursor, x: WorkflowStepEntry): void {\n write0(bc, x.output)\n write1(bc, x.error)\n}\n\nexport type WorkflowLoopEntry = {\n readonly state: WorkflowCbor,\n readonly iteration: u32,\n readonly output: WorkflowCbor | null,\n}\n\nexport function readWorkflowLoopEntry(bc: bare.ByteCursor): WorkflowLoopEntry {\n return {\n state: readWorkflowCbor(bc),\n iteration: bare.readU32(bc),\n output: read0(bc),\n }\n}\n\nexport function writeWorkflowLoopEntry(bc: bare.ByteCursor, x: WorkflowLoopEntry): void {\n writeWorkflowCbor(bc, x.state)\n bare.writeU32(bc, x.iteration)\n write0(bc, x.output)\n}\n\nexport type WorkflowSleepEntry = {\n readonly deadline: u64,\n readonly state: WorkflowSleepState,\n}\n\nexport function readWorkflowSleepEntry(bc: bare.ByteCursor): WorkflowSleepEntry {\n return {\n deadline: bare.readU64(bc),\n state: readWorkflowSleepState(bc),\n }\n}\n\nexport function writeWorkflowSleepEntry(bc: bare.ByteCursor, x: WorkflowSleepEntry): void {\n bare.writeU64(bc, x.deadline)\n writeWorkflowSleepState(bc, x.state)\n}\n\nexport type WorkflowMessageEntry = {\n readonly name: string,\n readonly messageData: WorkflowCbor,\n}\n\nexport function readWorkflowMessageEntry(bc: bare.ByteCursor): WorkflowMessageEntry {\n return {\n name: bare.readString(bc),\n messageData: readWorkflowCbor(bc),\n }\n}\n\nexport function writeWorkflowMessageEntry(bc: bare.ByteCursor, x: WorkflowMessageEntry): void {\n bare.writeString(bc, x.name)\n writeWorkflowCbor(bc, x.messageData)\n}\n\nexport type WorkflowRollbackCheckpointEntry = {\n readonly name: string,\n}\n\nexport function readWorkflowRollbackCheckpointEntry(bc: bare.ByteCursor): WorkflowRollbackCheckpointEntry {\n return {\n name: bare.readString(bc),\n }\n}\n\nexport function writeWorkflowRollbackCheckpointEntry(bc: bare.ByteCursor, x: WorkflowRollbackCheckpointEntry): void {\n bare.writeString(bc, x.name)\n}\n\nexport type WorkflowBranchStatus = {\n readonly status: WorkflowBranchStatusType,\n readonly output: WorkflowCbor | null,\n readonly error: string | null,\n}\n\nexport function readWorkflowBranchStatus(bc: bare.ByteCursor): WorkflowBranchStatus {\n return {\n status: readWorkflowBranchStatusType(bc),\n output: read0(bc),\n error: read1(bc),\n }\n}\n\nexport function writeWorkflowBranchStatus(bc: bare.ByteCursor, x: WorkflowBranchStatus): void {\n writeWorkflowBranchStatusType(bc, x.status)\n write0(bc, x.output)\n write1(bc, x.error)\n}\n\nfunction read2(bc: bare.ByteCursor): ReadonlyMap<string, WorkflowBranchStatus> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, WorkflowBranchStatus>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, readWorkflowBranchStatus(bc))\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: ReadonlyMap<string, WorkflowBranchStatus>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n writeWorkflowBranchStatus(bc, kv[1])\n }\n}\n\nexport type WorkflowJoinEntry = {\n readonly branches: ReadonlyMap<string, WorkflowBranchStatus>,\n}\n\nexport function readWorkflowJoinEntry(bc: bare.ByteCursor): WorkflowJoinEntry {\n return {\n branches: read2(bc),\n }\n}\n\nexport function writeWorkflowJoinEntry(bc: bare.ByteCursor, x: WorkflowJoinEntry): void {\n write2(bc, x.branches)\n}\n\nexport type WorkflowRaceEntry = {\n readonly winner: string | null,\n readonly branches: ReadonlyMap<string, WorkflowBranchStatus>,\n}\n\nexport function readWorkflowRaceEntry(bc: bare.ByteCursor): WorkflowRaceEntry {\n return {\n winner: read1(bc),\n branches: read2(bc),\n }\n}\n\nexport function writeWorkflowRaceEntry(bc: bare.ByteCursor, x: WorkflowRaceEntry): void {\n write1(bc, x.winner)\n write2(bc, x.branches)\n}\n\nexport type WorkflowRemovedEntry = {\n readonly originalType: string,\n readonly originalName: string | null,\n}\n\nexport function readWorkflowRemovedEntry(bc: bare.ByteCursor): WorkflowRemovedEntry {\n return {\n originalType: bare.readString(bc),\n originalName: read1(bc),\n }\n}\n\nexport function writeWorkflowRemovedEntry(bc: bare.ByteCursor, x: WorkflowRemovedEntry): void {\n bare.writeString(bc, x.originalType)\n write1(bc, x.originalName)\n}\n\nexport type WorkflowEntryKind =\n | { readonly tag: \"WorkflowStepEntry\", readonly val: WorkflowStepEntry }\n | { readonly tag: \"WorkflowLoopEntry\", readonly val: WorkflowLoopEntry }\n | { readonly tag: \"WorkflowSleepEntry\", readonly val: WorkflowSleepEntry }\n | { readonly tag: \"WorkflowMessageEntry\", readonly val: WorkflowMessageEntry }\n | { readonly tag: \"WorkflowRollbackCheckpointEntry\", readonly val: WorkflowRollbackCheckpointEntry }\n | { readonly tag: \"WorkflowJoinEntry\", readonly val: WorkflowJoinEntry }\n | { readonly tag: \"WorkflowRaceEntry\", readonly val: WorkflowRaceEntry }\n | { readonly tag: \"WorkflowRemovedEntry\", readonly val: WorkflowRemovedEntry }\n\nexport function readWorkflowEntryKind(bc: bare.ByteCursor): WorkflowEntryKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"WorkflowStepEntry\", val: readWorkflowStepEntry(bc) }\n case 1:\n return { tag: \"WorkflowLoopEntry\", val: readWorkflowLoopEntry(bc) }\n case 2:\n return { tag: \"WorkflowSleepEntry\", val: readWorkflowSleepEntry(bc) }\n case 3:\n return { tag: \"WorkflowMessageEntry\", val: readWorkflowMessageEntry(bc) }\n case 4:\n return { tag: \"WorkflowRollbackCheckpointEntry\", val: readWorkflowRollbackCheckpointEntry(bc) }\n case 5:\n return { tag: \"WorkflowJoinEntry\", val: readWorkflowJoinEntry(bc) }\n case 6:\n return { tag: \"WorkflowRaceEntry\", val: readWorkflowRaceEntry(bc) }\n case 7:\n return { tag: \"WorkflowRemovedEntry\", val: readWorkflowRemovedEntry(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowEntryKind(bc: bare.ByteCursor, x: WorkflowEntryKind): void {\n switch (x.tag) {\n case \"WorkflowStepEntry\": {\n bare.writeU8(bc, 0)\n writeWorkflowStepEntry(bc, x.val)\n break\n }\n case \"WorkflowLoopEntry\": {\n bare.writeU8(bc, 1)\n writeWorkflowLoopEntry(bc, x.val)\n break\n }\n case \"WorkflowSleepEntry\": {\n bare.writeU8(bc, 2)\n writeWorkflowSleepEntry(bc, x.val)\n break\n }\n case \"WorkflowMessageEntry\": {\n bare.writeU8(bc, 3)\n writeWorkflowMessageEntry(bc, x.val)\n break\n }\n case \"WorkflowRollbackCheckpointEntry\": {\n bare.writeU8(bc, 4)\n writeWorkflowRollbackCheckpointEntry(bc, x.val)\n break\n }\n case \"WorkflowJoinEntry\": {\n bare.writeU8(bc, 5)\n writeWorkflowJoinEntry(bc, x.val)\n break\n }\n case \"WorkflowRaceEntry\": {\n bare.writeU8(bc, 6)\n writeWorkflowRaceEntry(bc, x.val)\n break\n }\n case \"WorkflowRemovedEntry\": {\n bare.writeU8(bc, 7)\n writeWorkflowRemovedEntry(bc, x.val)\n break\n }\n }\n}\n\nexport type WorkflowEntry = {\n readonly id: string,\n readonly location: WorkflowLocation,\n readonly kind: WorkflowEntryKind,\n}\n\nexport function readWorkflowEntry(bc: bare.ByteCursor): WorkflowEntry {\n return {\n id: bare.readString(bc),\n location: readWorkflowLocation(bc),\n kind: readWorkflowEntryKind(bc),\n }\n}\n\nexport function writeWorkflowEntry(bc: bare.ByteCursor, x: WorkflowEntry): void {\n bare.writeString(bc, x.id)\n writeWorkflowLocation(bc, x.location)\n writeWorkflowEntryKind(bc, x.kind)\n}\n\nfunction read3(bc: bare.ByteCursor): u64 | null {\n return bare.readBool(bc)\n ? bare.readU64(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: u64 | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeU64(bc, x)\n }\n}\n\nexport type WorkflowEntryMetadata = {\n readonly status: WorkflowEntryStatus,\n readonly error: string | null,\n readonly attempts: u32,\n readonly lastAttemptAt: u64,\n readonly createdAt: u64,\n readonly completedAt: u64 | null,\n readonly rollbackCompletedAt: u64 | null,\n readonly rollbackError: string | null,\n}\n\nexport function readWorkflowEntryMetadata(bc: bare.ByteCursor): WorkflowEntryMetadata {\n return {\n status: readWorkflowEntryStatus(bc),\n error: read1(bc),\n attempts: bare.readU32(bc),\n lastAttemptAt: bare.readU64(bc),\n createdAt: bare.readU64(bc),\n completedAt: read3(bc),\n rollbackCompletedAt: read3(bc),\n rollbackError: read1(bc),\n }\n}\n\nexport function writeWorkflowEntryMetadata(bc: bare.ByteCursor, x: WorkflowEntryMetadata): void {\n writeWorkflowEntryStatus(bc, x.status)\n write1(bc, x.error)\n bare.writeU32(bc, x.attempts)\n bare.writeU64(bc, x.lastAttemptAt)\n bare.writeU64(bc, x.createdAt)\n write3(bc, x.completedAt)\n write3(bc, x.rollbackCompletedAt)\n write1(bc, x.rollbackError)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read5(bc: bare.ByteCursor): readonly WorkflowEntry[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readWorkflowEntry(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readWorkflowEntry(bc)\n }\n return result\n}\n\nfunction write5(bc: bare.ByteCursor, x: readonly WorkflowEntry[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeWorkflowEntry(bc, x[i])\n }\n}\n\nfunction read6(bc: bare.ByteCursor): ReadonlyMap<string, WorkflowEntryMetadata> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, WorkflowEntryMetadata>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, readWorkflowEntryMetadata(bc))\n }\n return result\n}\n\nfunction write6(bc: bare.ByteCursor, x: ReadonlyMap<string, WorkflowEntryMetadata>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n writeWorkflowEntryMetadata(bc, kv[1])\n }\n}\n\nexport type WorkflowHistory = {\n readonly nameRegistry: readonly string[],\n readonly entries: readonly WorkflowEntry[],\n readonly entryMetadata: ReadonlyMap<string, WorkflowEntryMetadata>,\n}\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return {\n nameRegistry: read4(bc),\n entries: read5(bc),\n entryMetadata: read6(bc),\n }\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n write4(bc, x.nameRegistry)\n write5(bc, x.entries)\n write6(bc, x.entryMetadata)\n}\n\nexport function encodeWorkflowHistory(x: WorkflowHistory): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeWorkflowHistory(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeWorkflowHistory(bytes: Uint8Array): WorkflowHistory {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readWorkflowHistory(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","{\n\t\"name\": \"rivetkit\",\n\t\"version\": \"2.1.2\",\n\t\"description\": \"Lightweight libraries for building stateful actors on edge platforms\",\n\t\"license\": \"Apache-2.0\",\n\t\"keywords\": [\n\t\t\"rivetkit\",\n\t\t\"stateful\",\n\t\t\"serverless\",\n\t\t\"actors\",\n\t\t\"agents\",\n\t\t\"realtime\",\n\t\t\"websocket\",\n\t\t\"actors\",\n\t\t\"framework\"\n\t],\n\t\"files\": [\n\t\t\"dist\",\n\t\t\"src\",\n\t\t\"deno.json\",\n\t\t\"bun.json\",\n\t\t\"package.json\"\n\t],\n\t\"type\": \"module\",\n\t\"exports\": {\n\t\t\".\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./workflow\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/workflow/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/workflow/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/workflow/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/workflow/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./client\": {\n\t\t\t\"import\": {\n\t\t\t\t\"browser\": {\n\t\t\t\t\t\"types\": \"./dist/browser/client.d.ts\",\n\t\t\t\t\t\"default\": \"./dist/browser/client.js\"\n\t\t\t\t},\n\t\t\t\t\"types\": \"./dist/tsup/client/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/client/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/client/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/client/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./log\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/log.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/log.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/log.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/log.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./errors\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/actor/errors.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/actor/errors.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/actor/errors.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/actor/errors.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./utils\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/utils.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/utils.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/utils.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/utils.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-helpers\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-helpers/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-helpers/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-helpers/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-helpers/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-helpers/websocket\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/websocket.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/websocket.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/websocket.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/websocket.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-test-suite\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-test-suite/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-test-suite/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-test-suite/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-test-suite/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./serve-test-suite\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/serve-test-suite/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/serve-test-suite/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/serve-test-suite/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/serve-test-suite/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./topologies/coordinate\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/coordinate/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/coordinate/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/coordinate/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/coordinate/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./topologies/partition\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/partition/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/partition/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/partition/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/partition/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./test\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/test/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/test/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/test/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/test/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./inspector\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/inspector/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/inspector/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/inspector/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/inspector/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./inspector/client\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/browser/inspector/client.d.ts\",\n\t\t\t\t\"default\": \"./dist/browser/inspector/client.js\"\n\t\t\t}\n\t\t},\n\t\t\"./db\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./db/drizzle\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/drizzle/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/drizzle/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/drizzle/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/drizzle/mod.cjs\"\n\t\t\t}\n\t\t}\n\t},\n\t\"engines\": {\n\t\t\"node\": \">=22.0.0\"\n\t},\n\t\"sideEffects\": [\n\t\t\"./dist/tsup/chunk-*.js\",\n\t\t\"./dist/tsup/chunk-*.cjs\"\n\t],\n\t\"scripts\": {\n \t\t\"build\": \"tsup src/mod.ts src/client/mod.ts src/common/log.ts src/common/websocket.ts src/actor/errors.ts src/topologies/coordinate/mod.ts src/topologies/partition/mod.ts src/utils.ts src/driver-helpers/mod.ts src/driver-test-suite/mod.ts src/serve-test-suite/mod.ts src/test/mod.ts src/inspector/mod.ts src/workflow/mod.ts src/db/mod.ts src/db/drizzle/mod.ts\",\n\t\t\"build:browser\": \"tsup --config tsup.browser.config.ts\",\n\t\t\"build:schema\": \"./scripts/compile-bare.ts compile schemas/client-protocol/v1.bare -o dist/schemas/client-protocol/v1.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v2.bare -o dist/schemas/client-protocol/v2.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v3.bare -o dist/schemas/client-protocol/v3.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v1.bare -o dist/schemas/file-system-driver/v1.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v2.bare -o dist/schemas/file-system-driver/v2.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v3.bare -o dist/schemas/file-system-driver/v3.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v1.bare -o dist/schemas/actor-persist/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v2.bare -o dist/schemas/actor-persist/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v3.bare -o dist/schemas/actor-persist/v3.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v4.bare -o dist/schemas/actor-persist/v4.ts && ./scripts/compile-bare.ts compile schemas/persist/v1.bare -o dist/schemas/persist/v1.ts && ./scripts/compile-bare.ts compile schemas/transport/v1.bare -o dist/schemas/transport/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v1.bare -o dist/schemas/actor-inspector/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v2.bare -o dist/schemas/actor-inspector/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v3.bare -o dist/schemas/actor-inspector/v3.ts\",\n\t\t\"check-types\": \"tsc --noEmit\",\n\t\t\"lint\": \"biome check .\",\n\t\t\"lint:fix\": \"biome check --write .\",\n\t\t\"format\": \"biome format .\",\n\t\t\"format:write\": \"biome format --write .\",\n\t\t\"test\": \"vitest run\",\n\t\t\"test:watch\": \"vitest\",\n\t\t\"manager-openapi-gen\": \"tsx scripts/manager-openapi-gen.ts\",\n\t\t\"dump-asyncapi\": \"tsx scripts/dump-asyncapi.ts\",\n\t\t\"registry-config-schema-gen\": \"tsx scripts/registry-config-schema-gen.ts\",\n\t\t\"actor-config-schema-gen\": \"tsx scripts/actor-config-schema-gen.ts\",\n\t\t\"build:pack-inspector\": \"tsx scripts/pack-inspector.ts\"\n\t},\n\t\"dependencies\": {\n\t\t\"@hono/standard-validator\": \"^0.1.3\",\n\t\t\"@hono/zod-openapi\": \"^1.1.5\",\n\t\t\"@rivetkit/bare-ts\": \"^0.6.2\",\n\t\t\"@rivetkit/engine-runner\": \"workspace:*\",\n\t\t\"@rivetkit/fast-json-patch\": \"^3.1.2\",\n\t\t\"@rivetkit/on-change\": \"^6.0.2-rc.1\",\n\t\t\"@rivetkit/sqlite-vfs\": \"workspace:*\",\n\t\t\"@rivetkit/traces\": \"workspace:*\",\n\t\t\"@rivetkit/virtual-websocket\": \"workspace:*\",\n\t\t\"@rivetkit/workflow-engine\": \"workspace:*\",\n\t\t\"cbor-x\": \"^1.6.0\",\n\t\t\"get-port\": \"^7.1.0\",\n\t\t\"hono\": \"^4.7.0\",\n\t\t\"invariant\": \"^2.2.4\",\n\t\t\"nanoevents\": \"^9.1.0\",\n\t\t\"p-retry\": \"^6.2.1\",\n\t\t\"pino\": \"^9.5.0\",\n\t\t\"tar\": \"^7.5.0\",\n\t\t\"uuid\": \"^12.0.0\",\n\t\t\"vbare\": \"^0.0.4\",\n\t\t\"@rivetkit/sqlite\": \"^0.1.1\",\n\t\t\"zod\": \"^4.1.0\"\n\t},\n\t\"devDependencies\": {\n\t\t\"@bare-ts/tools\": \"^0.13.0\",\n\t\t\"@biomejs/biome\": \"^2.3\",\n\t\t\"@hono/node-server\": \"^1.18.2\",\n\t\t\"@hono/node-ws\": \"^1.1.1\",\n\t\t\"@standard-schema/spec\": \"^1.0.0\",\n\t\t\"@types/invariant\": \"^2\",\n\t\t\"@types/node\": \"^22.13.1\",\n\t\t\"@types/ws\": \"^8\",\n\t\t\"@vitest/ui\": \"3.1.1\",\n\t\t\"cli-table3\": \"^0.6.5\",\n\t\t\"commander\": \"^12.1.0\",\n\t\t\"eventsource\": \"^4.0.0\",\n\t\t\"local-pkg\": \"^0.5.1\",\n\t\t\"tsup\": \"^8.4.0\",\n\t\t\"tsx\": \"^4.19.4\",\n\t\t\"typescript\": \"^5.7.3\",\n\t\t\"vite-tsconfig-paths\": \"^5.1.4\",\n\t\t\"vitest\": \"^3.1.1\",\n\t\t\"ws\": \"^8.18.1\",\n\t\t\"zod-to-json-schema\": \"^3.25.0\"\n\t},\n\t\"peerDependencies\": {\n\t\t\"@hono/node-server\": \"^1.14.0\",\n\t\t\"@hono/node-ws\": \"^1.1.1\",\n\t\t\"drizzle-kit\": \"^0.31.2\",\n\t\t\"drizzle-orm\": \"^0.44.2\",\n\t\t\"eventsource\": \"^4.0.0\",\n\t\t\"ws\": \"^8.0.0\"\n\t},\n\t\"peerDependenciesMeta\": {\n\t\t\"@hono/node-server\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"@hono/node-ws\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"drizzle-kit\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"drizzle-orm\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"eventsource\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"ws\": {\n\t\t\t\"optional\": true\n\t\t}\n\t},\n\t\"stableVersion\": \"0.8.0\"\n}\n","import { stringifyError } from \"@/common/utils\";\nimport type { Context as HonoContext, Handler as HonoHandler } from \"hono\";\nimport { stringify as uuidstringify } from \"uuid\";\nimport pkgJson from \"../package.json\" with { type: \"json\" };\nimport { getLogger } from \"./common/log\";\nimport { assertUnreachable } from \"./common/utils\";\n\n/** @experimental */\nexport { stringifyError };\n\n/** @experimental */\nexport { assertUnreachable };\n\n/**\n * Joins multiple abort signals into one.\n *\n * The returned signal aborts when the first input signal aborts.\n * Uses `AbortSignal.any(...)` when available, with a runtime fallback.\n *\n * @experimental\n */\nexport function joinSignals(\n\t...signals: Array<AbortSignal | undefined | null>\n): AbortSignal {\n\tconst validSignals = signals.filter(\n\t\t(signal): signal is AbortSignal => signal != null,\n\t);\n\n\tif (validSignals.length === 0) {\n\t\treturn new AbortController().signal;\n\t}\n\n\tif (validSignals.length === 1) {\n\t\treturn validSignals[0];\n\t}\n\n\tconst signalAny = (\n\t\tAbortSignal as typeof AbortSignal & {\n\t\t\tany?: (signals: AbortSignal[]) => AbortSignal;\n\t\t}\n\t).any;\n\tif (typeof signalAny === \"function\") {\n\t\treturn signalAny(validSignals);\n\t}\n\n\tconst controller = new AbortController();\n\tconst cleanups: Array<() => void> = [];\n\n\tconst abortWithSignal = (signal: AbortSignal) => {\n\t\tif (controller.signal.aborted) {\n\t\t\treturn;\n\t\t}\n\n\t\tfor (const cleanup of cleanups) {\n\t\t\tcleanup();\n\t\t}\n\n\t\tconst reason = (signal as AbortSignal & { reason?: unknown }).reason;\n\t\tcontroller.abort(reason);\n\t};\n\n\tfor (const signal of validSignals) {\n\t\tif (signal.aborted) {\n\t\t\tabortWithSignal(signal);\n\t\t\tbreak;\n\t\t}\n\n\t\tconst onAbort = () => abortWithSignal(signal);\n\t\tsignal.addEventListener(\"abort\", onAbort, { once: true });\n\t\tcleanups.push(() => signal.removeEventListener(\"abort\", onAbort));\n\t}\n\n\treturn controller.signal;\n}\n\n/**\n * Returns a promise that resolves after the given number of milliseconds.\n *\n * @experimental\n */\nexport function sleep(ms: number): Promise<void> {\n\treturn new Promise<void>((resolve) => setTimeout(resolve, ms));\n}\n\n/**\n * Creates a fixed-rate interval tick function that can be awaited in a loop.\n *\n * @example\n * const tick = interval(100);\n * while (!c.aborted) {\n * await tick();\n * if (c.aborted) break;\n * // ... game logic\n * }\n *\n * @experimental\n */\nexport function interval(ms: number): () => Promise<void> {\n\treturn () => sleep(ms);\n}\n\nexport const VERSION = pkgJson.version;\n\nlet _userAgent: string | undefined;\n\nfunction logger() {\n\treturn getLogger(\"utils\");\n}\n\n/**\n * Builds the HTTP user agent used by this library.\n *\n * @experimental\n */\nexport function httpUserAgent(): string {\n\t// Return cached value if already initialized\n\tif (_userAgent !== undefined) {\n\t\treturn _userAgent;\n\t}\n\n\t// Library\n\tlet userAgent = `RivetKit/${VERSION}`;\n\n\t// Navigator\n\tconst navigatorObj =\n\t\ttypeof navigator !== \"undefined\" ? navigator : undefined;\n\tif (navigatorObj?.userAgent) userAgent += ` ${navigatorObj.userAgent}`;\n\n\t_userAgent = userAgent;\n\n\treturn userAgent;\n}\n\nexport type UpgradeWebSocket = (\n\tcreateEvents: (c: HonoContext) => any,\n) => HonoHandler;\n\nexport type GetUpgradeWebSocket = () => UpgradeWebSocket;\n\n/**\n * Reads an environment variable from Deno or Node runtimes.\n *\n * @experimental\n */\nexport function getEnvUniversal(key: string): string | undefined {\n\tif (typeof Deno !== \"undefined\") {\n\t\treturn Deno.env.get(key);\n\t} else if (typeof process !== \"undefined\") {\n\t\t// Do this after Deno since `process` is sometimes polyfilled\n\t\treturn process.env[key];\n\t}\n}\n\n/**\n * Traces a debug value and returns it.\n *\n * @experimental\n */\nexport function dbg<T>(x: T): T {\n\tconsole.trace(`=== DEBUG ===\\n${x}`);\n\treturn x;\n}\n\n/**\n * Converts various ArrayBuffer-like types to Uint8Array.\n * Handles ArrayBuffer, ArrayBufferView (including typed arrays), and passes through existing Uint8Array.\n *\n * @param data - The ArrayBuffer or ArrayBufferView to convert\n * @returns A Uint8Array view of the data\n *\n * @experimental\n */\nexport function toUint8Array(data: ArrayBuffer | ArrayBufferView): Uint8Array {\n\tif (data instanceof Uint8Array) {\n\t\treturn data;\n\t} else if (data instanceof ArrayBuffer) {\n\t\treturn new Uint8Array(data);\n\t} else if (ArrayBuffer.isView(data)) {\n\t\t// Handle other ArrayBufferView types (Int8Array, Uint16Array, DataView, etc.)\n\t\treturn new Uint8Array(\n\t\t\tdata.buffer.slice(\n\t\t\t\tdata.byteOffset,\n\t\t\t\tdata.byteOffset + data.byteLength,\n\t\t\t),\n\t\t);\n\t} else {\n\t\tthrow new TypeError(\"Input must be ArrayBuffer or ArrayBufferView\");\n\t}\n}\n\n// Long timeouts\n//\n// JavaScript timers use a signed 32-bit integer for delays, so values above 2^31-1 (~24.8 days)\n// are not reliable and may fire immediately or overflow.\n//\n// https://developer.mozilla.org/en-US/docs/Web/API/Window/setTimeout#maximum_delay_value\nconst TIMEOUT_MAX = 2147483647; // 2^31-1\n\nexport type LongTimeoutHandle = { abort: () => void };\n\n/**\n * Polyfill for Promise.withResolvers().\n *\n * This is specifically for Cloudflare Workers. Their implementation of Promise.withResolvers does not work correctly.\n *\n * @experimental\n */\nexport function promiseWithResolvers<T>(onReject: (reason?: any) => void): {\n\tpromise: Promise<T>;\n\tresolve: (value: T | PromiseLike<T>) => void;\n\treject: (reason?: any) => void;\n} {\n\tlet resolve!: (value: T | PromiseLike<T>) => void;\n\tlet reject!: (reason?: any) => void;\n\tconst promise = new Promise<T>((res, rej) => {\n\t\tresolve = res;\n\t\treject = rej;\n\t});\n\tpromise.catch(onReject);\n\treturn { promise, resolve, reject };\n}\n\n/**\n * Sets a timeout that supports delays larger than the JavaScript timer limit.\n *\n * @experimental\n */\nexport function setLongTimeout(\n\tlistener: () => void,\n\tafter: number,\n): LongTimeoutHandle {\n\tlet timeout: ReturnType<typeof setTimeout> | undefined;\n\n\tfunction start(remaining: number) {\n\t\tif (remaining <= TIMEOUT_MAX) {\n\t\t\ttimeout = setTimeout(listener, remaining);\n\t\t} else {\n\t\t\ttimeout = setTimeout(() => {\n\t\t\t\tstart(remaining - TIMEOUT_MAX);\n\t\t\t}, TIMEOUT_MAX);\n\t\t}\n\t}\n\n\tstart(after);\n\n\treturn {\n\t\tabort: () => {\n\t\t\tif (timeout !== undefined) clearTimeout(timeout);\n\t\t},\n\t};\n}\n\n/**\n * A tiny utility that coalesces/enqueues async operations so only the latest\n * queued task runs per cycle, while callers receive a promise that resolves\n * when the task for the cycle they joined has completed.\n */\nexport class SinglePromiseQueue {\n\t/** Next operation to execute in the queue. If attempting to enqueue another op, it will override the existing op. */\n\t#queuedOp?: () => Promise<void>;\n\n\t/** The currently running promise of #drainLoop. Do not await this, instead await `pending` to await the current cycle. */\n\trunningDrainLoop?: Promise<void>;\n\n\t/** Pending resolver fro the currently queued entry. */\n\t#pending?: ReturnType<typeof promiseWithResolvers<void>>;\n\n\t/** Queue the next operation and return a promise that resolves when it flushes. */\n\tenqueue(op: () => Promise<void>): Promise<void> {\n\t\t// Replace any previously queued operation with the latest one\n\t\tthis.#queuedOp = op;\n\n\t\t// Ensure a shared resolver exists for all callers in this cycle\n\t\tif (!this.#pending) {\n\t\t\tthis.#pending = promiseWithResolvers<void>((reason) => logger().warn({ msg: \"unhandled single promise queue rejection\", reason }));\n\t\t}\n\n\t\tconst waitForThisCycle = this.#pending.promise;\n\n\t\t// Start runner if not already running\n\t\tif (!this.runningDrainLoop) {\n\t\t\tthis.runningDrainLoop = this.#drainLoop();\n\t\t}\n\n\t\treturn waitForThisCycle;\n\t}\n\n\t/** Drain queued operations sequentially until there is nothing left. */\n\tasync #drainLoop(): Promise<void> {\n\t\ttry {\n\t\t\twhile (this.#queuedOp) {\n\t\t\t\t// Capture current cycle resolver then reset for the next cycle\n\t\t\t\tconst resolver = this.#pending;\n\t\t\t\tthis.#pending = undefined;\n\n\t\t\t\t// Capture and clear the currently queued operation\n\t\t\t\tconst op = this.#queuedOp;\n\t\t\t\tthis.#queuedOp = undefined;\n\n\t\t\t\ttry {\n\t\t\t\t\tawait op();\n\t\t\t\t\t// Notify all waiters for this cycle\n\t\t\t\t\tresolver?.resolve();\n\t\t\t\t} catch (err) {\n\t\t\t\t\tlogger().error({\n\t\t\t\t\t\tmsg: \"error in SinglePromiseQueue drain loop\",\n\t\t\t\t\t\terror: stringifyError(err),\n\t\t\t\t\t});\n\t\t\t\t\t// Reject all waiters for this cycle\n\t\t\t\t\tresolver?.reject(err);\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tthis.runningDrainLoop = undefined;\n\t\t}\n\t}\n}\n\n/**\n * Converts a Buffer or Uint8Array into an ArrayBuffer view.\n *\n * @experimental\n */\nexport function bufferToArrayBuffer(buf: Buffer | Uint8Array): ArrayBuffer {\n\treturn buf.buffer.slice(\n\t\tbuf.byteOffset,\n\t\tbuf.byteOffset + buf.byteLength,\n\t) as ArrayBuffer;\n}\n\n/**\n * Properly combines a base URL endpoint with a path, preserving any base path in the endpoint.\n *\n * @example\n * combineUrlPath(\"http://localhost:8787/rivet\", \"/actors/action\")\n * // Returns: \"http://localhost:8787/rivet/actors/action\"\n *\n * @example\n * combineUrlPath(\"http://localhost:8787/rivet\", \"/actors?type=foo\", { namespace: \"test\" })\n * // Returns: \"http://localhost:8787/rivet/actors?type=foo&namespace=test\"\n *\n * @param endpoint The base URL endpoint that may contain a path component\n * @param path The path to append to the endpoint (may include query parameters)\n * @param queryParams Optional additional query parameters to append\n * @returns The properly combined URL string\n *\n * @experimental\n */\nexport function combineUrlPath(\n\tendpoint: string,\n\tpath: string,\n\tqueryParams?: Record<string, string | undefined>,\n): string {\n\tconst baseUrl = new URL(endpoint);\n\n\t// Extract path and query from the provided path\n\tconst pathParts = path.split(\"?\");\n\tconst pathOnly = pathParts[0];\n\tconst existingQuery = pathParts[1] || \"\";\n\n\t// Remove trailing slash from base path and ensure path starts with /\n\tconst basePath = baseUrl.pathname.replace(/\\/$/, \"\");\n\tconst cleanPath = pathOnly.startsWith(\"/\") ? pathOnly : `/${pathOnly}`;\n\t// Combine paths and remove any double slashes\n\tconst fullPath = (basePath + cleanPath).replace(/\\/\\//g, \"/\");\n\n\t// Build query string\n\tconst queryParts: string[] = [];\n\tif (existingQuery) {\n\t\tqueryParts.push(existingQuery);\n\t}\n\tif (queryParams) {\n\t\tfor (const [key, value] of Object.entries(queryParams)) {\n\t\t\tif (value !== undefined) {\n\t\t\t\tqueryParts.push(\n\t\t\t\t\t`${encodeURIComponent(key)}=${encodeURIComponent(value)}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst fullQuery = queryParts.length > 0 ? `?${queryParts.join(\"&\")}` : \"\";\n\treturn `${baseUrl.protocol}//${baseUrl.host}${fullPath}${fullQuery}`;\n}\n\n/**\n * Compares two ArrayBuffer values by byte content.\n *\n * @experimental\n */\nexport function arrayBuffersEqual(\n\tbuf1: ArrayBuffer,\n\tbuf2: ArrayBuffer,\n): boolean {\n\tif (buf1.byteLength !== buf2.byteLength) return false;\n\n\tconst view1 = new Uint8Array(buf1);\n\tconst view2 = new Uint8Array(buf2);\n\n\tfor (let i = 0; i < view1.length; i++) {\n\t\tif (view1[i] !== view2[i]) return false;\n\t}\n\treturn true;\n}\n\nexport const EXTRA_ERROR_LOG = {\n\tissues: \"https://github.com/rivet-dev/rivetkit/issues\",\n\tsupport: \"https://rivet.dev/discord\",\n\tversion: VERSION,\n};\n\nexport type Runtime = \"deno\" | \"bun\" | \"node\";\n\n/**\n * Detects the current JavaScript runtime from the user agent.\n *\n * @experimental\n */\nexport function detectRuntime(): Runtime {\n\tconst userAgent =\n\t\ttypeof navigator !== \"undefined\" ? navigator.userAgent : \"\";\n\tif (userAgent.includes(\"Deno\")) {\n\t\treturn \"deno\";\n\t}\n\tif (userAgent.includes(\"Bun\")) {\n\t\treturn \"bun\";\n\t}\n\treturn \"node\";\n}\n\nexport type DeepReadonly<T> = {\n\treadonly [K in keyof T]: T[K] extends object ? DeepReadonly<T[K]> : T[K];\n};\n\nexport type DeepMutable<T> = {\n\t-readonly [K in keyof T]: T[K] extends object ? DeepMutable<T[K]> : T[K];\n};\n","import type { WorkflowHistory } from \"@/schemas/transport/mod\";\nimport {\n\tdecodeWorkflowHistory,\n\tencodeWorkflowHistory,\n} from \"@/schemas/transport/mod\";\nimport { bufferToArrayBuffer, toUint8Array } from \"@/utils\";\n\nexport function encodeWorkflowHistoryTransport(\n\thistory: WorkflowHistory,\n): ArrayBuffer {\n\treturn bufferToArrayBuffer(encodeWorkflowHistory(history));\n}\n\nexport function decodeWorkflowHistoryTransport(\n\tdata: ArrayBuffer | ArrayBufferView,\n): WorkflowHistory {\n\treturn decodeWorkflowHistory(toUint8Array(data));\n}\n"],"mappings":"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","names":["bare","config","readPatchStateRequest","writePatchStateRequest","readActionRequest","writeActionRequest","readStateRequest","writeStateRequest","readConnectionsRequest","writeConnectionsRequest","readRpcsListRequest","writeRpcsListRequest","readToServerBody","writeToServerBody","readToServer","writeToServer","encodeToServer","decodeToServer","readState","writeState","readConnection","writeConnection","read0","write0","read1","write1","read2","write2","read3","write3","readInit","writeInit","readConnectionsResponse","writeConnectionsResponse","readStateResponse","writeStateResponse","readActionResponse","writeActionResponse","readStateUpdated","writeStateUpdated","readRpcsListResponse","writeRpcsListResponse","readConnectionsUpdated","writeConnectionsUpdated","readError","writeError","readToClientBody","writeToClientBody","readToClient","writeToClient","encodeToClient","decodeToClient","bare","config","readPatchStateRequest","writePatchStateRequest","readActionRequest","writeActionRequest","readStateRequest","writeStateRequest","readConnectionsRequest","writeConnectionsRequest","readRpcsListRequest","writeRpcsListRequest","readTraceQueryRequest","writeTraceQueryRequest","readQueueRequest","writeQueueRequest","readWorkflowHistoryRequest","writeWorkflowHistoryRequest","readToServerBody","writeToServerBody","readToServer","writeToServer","encodeToServer","decodeToServer","readState","writeState","readConnection","writeConnection","readWorkflowHistory","writeWorkflowHistory","read0","write0","read1","write1","read2","write2","read3","write3","readInit","writeInit","readConnectionsResponse","writeConnectionsResponse","readStateResponse","writeStateResponse","readActionResponse","writeActionResponse","readTraceQueryResponse","writeTraceQueryResponse","readQueueMessageSummary","writeQueueMessageSummary","read4","write4","readQueueStatus","writeQueueStatus","readQueueResponse","writeQueueResponse","readWorkflowHistoryResponse","writeWorkflowHistoryResponse","readStateUpdated","writeStateUpdated","readQueueUpdated","writeQueueUpdated","readWorkflowHistoryUpdated","writeWorkflowHistoryUpdated","readRpcsListResponse","writeRpcsListResponse","readConnectionsUpdated","writeConnectionsUpdated","readError","writeError","readToClientBody","writeToClientBody","readToClient","writeToClient","encodeToClient","decodeToClient","encodeToServer","decodeToServer","encodeToClient","decodeToClient","bare","config","read0","write0","read1","write1","read2","write2","read3","write3","read4","write4","readWorkflowHistory","writeWorkflowHistory","config"]}
|
|
1
|
+
{"version":3,"sources":["../../schemas/actor-inspector/v3.ts","../../../src/schemas/actor-inspector/versioned.ts","../../schemas/actor-inspector/v1.ts","../../schemas/actor-inspector/v2.ts","../../schemas/transport/v1.ts","../../../package.json","../../../src/utils.ts","../../../src/inspector/transport.ts"],"sourcesContent":["// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type TraceQueryRequest = {\n readonly id: uint,\n readonly startMs: uint,\n readonly endMs: uint,\n readonly limit: uint,\n}\n\nexport function readTraceQueryRequest(bc: bare.ByteCursor): TraceQueryRequest {\n return {\n id: bare.readUint(bc),\n startMs: bare.readUint(bc),\n endMs: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeTraceQueryRequest(bc: bare.ByteCursor, x: TraceQueryRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.startMs)\n bare.writeUint(bc, x.endMs)\n bare.writeUint(bc, x.limit)\n}\n\nexport type QueueRequest = {\n readonly id: uint,\n readonly limit: uint,\n}\n\nexport function readQueueRequest(bc: bare.ByteCursor): QueueRequest {\n return {\n id: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeQueueRequest(bc: bare.ByteCursor, x: QueueRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.limit)\n}\n\nexport type WorkflowHistoryRequest = {\n readonly id: uint,\n}\n\nexport function readWorkflowHistoryRequest(bc: bare.ByteCursor): WorkflowHistoryRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeWorkflowHistoryRequest(bc: bare.ByteCursor, x: WorkflowHistoryRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type DatabaseSchemaRequest = {\n readonly id: uint,\n}\n\nexport function readDatabaseSchemaRequest(bc: bare.ByteCursor): DatabaseSchemaRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeDatabaseSchemaRequest(bc: bare.ByteCursor, x: DatabaseSchemaRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type DatabaseTableRowsRequest = {\n readonly id: uint,\n readonly table: string,\n readonly limit: uint,\n readonly offset: uint,\n}\n\nexport function readDatabaseTableRowsRequest(bc: bare.ByteCursor): DatabaseTableRowsRequest {\n return {\n id: bare.readUint(bc),\n table: bare.readString(bc),\n limit: bare.readUint(bc),\n offset: bare.readUint(bc),\n }\n}\n\nexport function writeDatabaseTableRowsRequest(bc: bare.ByteCursor, x: DatabaseTableRowsRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.table)\n bare.writeUint(bc, x.limit)\n bare.writeUint(bc, x.offset)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n | { readonly tag: \"TraceQueryRequest\", readonly val: TraceQueryRequest }\n | { readonly tag: \"QueueRequest\", readonly val: QueueRequest }\n | { readonly tag: \"WorkflowHistoryRequest\", readonly val: WorkflowHistoryRequest }\n | { readonly tag: \"DatabaseSchemaRequest\", readonly val: DatabaseSchemaRequest }\n | { readonly tag: \"DatabaseTableRowsRequest\", readonly val: DatabaseTableRowsRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n case 5:\n return { tag: \"TraceQueryRequest\", val: readTraceQueryRequest(bc) }\n case 6:\n return { tag: \"QueueRequest\", val: readQueueRequest(bc) }\n case 7:\n return { tag: \"WorkflowHistoryRequest\", val: readWorkflowHistoryRequest(bc) }\n case 8:\n return { tag: \"DatabaseSchemaRequest\", val: readDatabaseSchemaRequest(bc) }\n case 9:\n return { tag: \"DatabaseTableRowsRequest\", val: readDatabaseTableRowsRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 4)\n writeRpcsListRequest(bc, x.val)\n break\n }\n case \"TraceQueryRequest\": {\n bare.writeU8(bc, 5)\n writeTraceQueryRequest(bc, x.val)\n break\n }\n case \"QueueRequest\": {\n bare.writeU8(bc, 6)\n writeQueueRequest(bc, x.val)\n break\n }\n case \"WorkflowHistoryRequest\": {\n bare.writeU8(bc, 7)\n writeWorkflowHistoryRequest(bc, x.val)\n break\n }\n case \"DatabaseSchemaRequest\": {\n bare.writeU8(bc, 8)\n writeDatabaseSchemaRequest(bc, x.val)\n break\n }\n case \"DatabaseTableRowsRequest\": {\n bare.writeU8(bc, 9)\n writeDatabaseTableRowsRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type WorkflowHistory = ArrayBuffer\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n bare.writeData(bc, x)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): WorkflowHistory | null {\n return bare.readBool(bc)\n ? readWorkflowHistory(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: WorkflowHistory | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowHistory(bc, x)\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n readonly queueSize: uint,\n readonly workflowHistory: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read2(bc),\n isDatabaseEnabled: bare.readBool(bc),\n queueSize: bare.readUint(bc),\n workflowHistory: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write2(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n bare.writeUint(bc, x.queueSize)\n write3(bc, x.workflowHistory)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type TraceQueryResponse = {\n readonly rid: uint,\n readonly payload: ArrayBuffer,\n}\n\nexport function readTraceQueryResponse(bc: bare.ByteCursor): TraceQueryResponse {\n return {\n rid: bare.readUint(bc),\n payload: bare.readData(bc),\n }\n}\n\nexport function writeTraceQueryResponse(bc: bare.ByteCursor, x: TraceQueryResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.payload)\n}\n\nexport type QueueMessageSummary = {\n readonly id: uint,\n readonly name: string,\n readonly createdAtMs: uint,\n}\n\nexport function readQueueMessageSummary(bc: bare.ByteCursor): QueueMessageSummary {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n createdAtMs: bare.readUint(bc),\n }\n}\n\nexport function writeQueueMessageSummary(bc: bare.ByteCursor, x: QueueMessageSummary): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeUint(bc, x.createdAtMs)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly QueueMessageSummary[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readQueueMessageSummary(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readQueueMessageSummary(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly QueueMessageSummary[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeQueueMessageSummary(bc, x[i])\n }\n}\n\nexport type QueueStatus = {\n readonly size: uint,\n readonly maxSize: uint,\n readonly messages: readonly QueueMessageSummary[],\n readonly truncated: boolean,\n}\n\nexport function readQueueStatus(bc: bare.ByteCursor): QueueStatus {\n return {\n size: bare.readUint(bc),\n maxSize: bare.readUint(bc),\n messages: read4(bc),\n truncated: bare.readBool(bc),\n }\n}\n\nexport function writeQueueStatus(bc: bare.ByteCursor, x: QueueStatus): void {\n bare.writeUint(bc, x.size)\n bare.writeUint(bc, x.maxSize)\n write4(bc, x.messages)\n bare.writeBool(bc, x.truncated)\n}\n\nexport type QueueResponse = {\n readonly rid: uint,\n readonly status: QueueStatus,\n}\n\nexport function readQueueResponse(bc: bare.ByteCursor): QueueResponse {\n return {\n rid: bare.readUint(bc),\n status: readQueueStatus(bc),\n }\n}\n\nexport function writeQueueResponse(bc: bare.ByteCursor, x: QueueResponse): void {\n bare.writeUint(bc, x.rid)\n writeQueueStatus(bc, x.status)\n}\n\nexport type WorkflowHistoryResponse = {\n readonly rid: uint,\n readonly history: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readWorkflowHistoryResponse(bc: bare.ByteCursor): WorkflowHistoryResponse {\n return {\n rid: bare.readUint(bc),\n history: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeWorkflowHistoryResponse(bc: bare.ByteCursor, x: WorkflowHistoryResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.history)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type DatabaseSchemaResponse = {\n readonly rid: uint,\n readonly schema: ArrayBuffer,\n}\n\nexport function readDatabaseSchemaResponse(bc: bare.ByteCursor): DatabaseSchemaResponse {\n return {\n rid: bare.readUint(bc),\n schema: bare.readData(bc),\n }\n}\n\nexport function writeDatabaseSchemaResponse(bc: bare.ByteCursor, x: DatabaseSchemaResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.schema)\n}\n\nexport type DatabaseTableRowsResponse = {\n readonly rid: uint,\n readonly result: ArrayBuffer,\n}\n\nexport function readDatabaseTableRowsResponse(bc: bare.ByteCursor): DatabaseTableRowsResponse {\n return {\n rid: bare.readUint(bc),\n result: bare.readData(bc),\n }\n}\n\nexport function writeDatabaseTableRowsResponse(bc: bare.ByteCursor, x: DatabaseTableRowsResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.result)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type QueueUpdated = {\n readonly queueSize: uint,\n}\n\nexport function readQueueUpdated(bc: bare.ByteCursor): QueueUpdated {\n return {\n queueSize: bare.readUint(bc),\n }\n}\n\nexport function writeQueueUpdated(bc: bare.ByteCursor, x: QueueUpdated): void {\n bare.writeUint(bc, x.queueSize)\n}\n\nexport type WorkflowHistoryUpdated = {\n readonly history: WorkflowHistory,\n}\n\nexport function readWorkflowHistoryUpdated(bc: bare.ByteCursor): WorkflowHistoryUpdated {\n return {\n history: readWorkflowHistory(bc),\n }\n}\n\nexport function writeWorkflowHistoryUpdated(bc: bare.ByteCursor, x: WorkflowHistoryUpdated): void {\n writeWorkflowHistory(bc, x.history)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read2(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"QueueUpdated\", readonly val: QueueUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"WorkflowHistoryUpdated\", readonly val: WorkflowHistoryUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"TraceQueryResponse\", readonly val: TraceQueryResponse }\n | { readonly tag: \"QueueResponse\", readonly val: QueueResponse }\n | { readonly tag: \"WorkflowHistoryResponse\", readonly val: WorkflowHistoryResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n | { readonly tag: \"DatabaseSchemaResponse\", readonly val: DatabaseSchemaResponse }\n | { readonly tag: \"DatabaseTableRowsResponse\", readonly val: DatabaseTableRowsResponse }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 3:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 4:\n return { tag: \"QueueUpdated\", val: readQueueUpdated(bc) }\n case 5:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 6:\n return { tag: \"WorkflowHistoryUpdated\", val: readWorkflowHistoryUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"TraceQueryResponse\", val: readTraceQueryResponse(bc) }\n case 9:\n return { tag: \"QueueResponse\", val: readQueueResponse(bc) }\n case 10:\n return { tag: \"WorkflowHistoryResponse\", val: readWorkflowHistoryResponse(bc) }\n case 11:\n return { tag: \"Error\", val: readError(bc) }\n case 12:\n return { tag: \"Init\", val: readInit(bc) }\n case 13:\n return { tag: \"DatabaseSchemaResponse\", val: readDatabaseSchemaResponse(bc) }\n case 14:\n return { tag: \"DatabaseTableRowsResponse\", val: readDatabaseTableRowsResponse(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 2)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 3)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"QueueUpdated\": {\n bare.writeU8(bc, 4)\n writeQueueUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 5)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"WorkflowHistoryUpdated\": {\n bare.writeU8(bc, 6)\n writeWorkflowHistoryUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"TraceQueryResponse\": {\n bare.writeU8(bc, 8)\n writeTraceQueryResponse(bc, x.val)\n break\n }\n case \"QueueResponse\": {\n bare.writeU8(bc, 9)\n writeQueueResponse(bc, x.val)\n break\n }\n case \"WorkflowHistoryResponse\": {\n bare.writeU8(bc, 10)\n writeWorkflowHistoryResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 11)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 12)\n writeInit(bc, x.val)\n break\n }\n case \"DatabaseSchemaResponse\": {\n bare.writeU8(bc, 13)\n writeDatabaseSchemaResponse(bc, x.val)\n break\n }\n case \"DatabaseTableRowsResponse\": {\n bare.writeU8(bc, 14)\n writeDatabaseTableRowsResponse(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","import { createVersionedDataHandler } from \"vbare\";\n\nimport * as v1 from \"../../../dist/schemas/actor-inspector/v1\";\nimport * as v2 from \"../../../dist/schemas/actor-inspector/v2\";\nimport * as v3 from \"../../../dist/schemas/actor-inspector/v3\";\n\nexport const CURRENT_VERSION = 3;\n\nconst EVENTS_DROPPED_ERROR = \"inspector.events_dropped\";\nconst WORKFLOW_HISTORY_DROPPED_ERROR = \"inspector.workflow_history_dropped\";\nconst QUEUE_DROPPED_ERROR = \"inspector.queue_dropped\";\nconst TRACE_DROPPED_ERROR = \"inspector.trace_dropped\";\nconst DATABASE_DROPPED_ERROR = \"inspector.database_dropped\";\n\n// Converter from v1 to v2: Drop events in Init and add new fields\nconst v1ToClientToV2 = (v1Data: v1.ToClient): v2.ToClient => {\n\tif (v1Data.body.tag === \"Init\") {\n\t\tconst init = v1Data.body.val as v1.Init;\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Init\",\n\t\t\t\tval: {\n\t\t\t\t\tconnections: init.connections,\n\t\t\t\t\tstate: init.state,\n\t\t\t\t\tisStateEnabled: init.isStateEnabled,\n\t\t\t\t\trpcs: init.rpcs,\n\t\t\t\t\tisDatabaseEnabled: init.isDatabaseEnabled,\n\t\t\t\t\tqueueSize: 0n,\n\t\t\t\t\tworkflowHistory: null,\n\t\t\t\t\tisWorkflowEnabled: false,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (\n\t\tv1Data.body.tag === \"EventsUpdated\" ||\n\t\tv1Data.body.tag === \"EventsResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: EVENTS_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v1Data as unknown as v2.ToClient;\n};\n\n// Converter from v2 to v1: Add empty events to Init, drop newer updates\nconst v2ToClientToV1 = (v2Data: v2.ToClient): v1.ToClient => {\n\tif (v2Data.body.tag === \"Init\") {\n\t\tconst init = v2Data.body.val;\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Init\",\n\t\t\t\tval: {\n\t\t\t\t\tconnections: init.connections,\n\t\t\t\t\tevents: [],\n\t\t\t\t\tstate: init.state,\n\t\t\t\t\tisStateEnabled: init.isStateEnabled,\n\t\t\t\t\trpcs: init.rpcs,\n\t\t\t\t\tisDatabaseEnabled: init.isDatabaseEnabled,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (\n\t\tv2Data.body.tag === \"WorkflowHistoryUpdated\" ||\n\t\tv2Data.body.tag === \"WorkflowHistoryResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: WORKFLOW_HISTORY_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"QueueUpdated\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: QUEUE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"QueueResponse\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: QUEUE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\tif (v2Data.body.tag === \"TraceQueryResponse\") {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: TRACE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v2Data as unknown as v1.ToClient;\n};\n\n// Converter from v2 to v3: v2 messages are a subset of v3\nconst v2ToClientToV3 = (v2Data: v2.ToClient): v3.ToClient => {\n\treturn v2Data as unknown as v3.ToClient;\n};\n\n// Converter from v3 to v2: Drop database responses\nconst v3ToClientToV2 = (v3Data: v3.ToClient): v2.ToClient => {\n\tif (\n\t\tv3Data.body.tag === \"DatabaseSchemaResponse\" ||\n\t\tv3Data.body.tag === \"DatabaseTableRowsResponse\"\n\t) {\n\t\treturn {\n\t\t\tbody: {\n\t\t\t\ttag: \"Error\",\n\t\t\t\tval: {\n\t\t\t\t\tmessage: DATABASE_DROPPED_ERROR,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\treturn v3Data as unknown as v2.ToClient;\n};\n\n// Converter from v1 to v2: Drop events requests\nconst v1ToServerToV2 = (v1Data: v1.ToServer): v2.ToServer => {\n\tif (\n\t\tv1Data.body.tag === \"EventsRequest\" ||\n\t\tv1Data.body.tag === \"ClearEventsRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert events requests to v2\");\n\t}\n\treturn v1Data as unknown as v2.ToServer;\n};\n\n// Converter from v2 to v1: Drop newer requests\nconst v2ToServerToV1 = (v2Data: v2.ToServer): v1.ToServer => {\n\tif (\n\t\tv2Data.body.tag === \"TraceQueryRequest\" ||\n\t\tv2Data.body.tag === \"QueueRequest\" ||\n\t\tv2Data.body.tag === \"WorkflowHistoryRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert v2-only requests to v1\");\n\t}\n\treturn v2Data as unknown as v1.ToServer;\n};\n\n// Converter from v2 to v3: v2 messages are a subset of v3\nconst v2ToServerToV3 = (v2Data: v2.ToServer): v3.ToServer => {\n\treturn v2Data as unknown as v3.ToServer;\n};\n\n// Converter from v3 to v2: Drop database requests\nconst v3ToServerToV2 = (v3Data: v3.ToServer): v2.ToServer => {\n\tif (\n\t\tv3Data.body.tag === \"DatabaseSchemaRequest\" ||\n\t\tv3Data.body.tag === \"DatabaseTableRowsRequest\"\n\t) {\n\t\tthrow new Error(\"Cannot convert v3-only database requests to v2\");\n\t}\n\treturn v3Data as unknown as v2.ToServer;\n};\n\nexport const TO_SERVER_VERSIONED = createVersionedDataHandler<v3.ToServer>({\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodeToServer(data as v1.ToServer);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodeToServer(data as v2.ToServer);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeToServer(data as v3.ToServer);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodeToServer(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodeToServer(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeToServer(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToServerToV2, v2ToServerToV3],\n\tserializeConverters: () => [v3ToServerToV2, v2ToServerToV1],\n});\n\nexport const TO_CLIENT_VERSIONED = createVersionedDataHandler<v3.ToClient>({\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodeToClient(data as v1.ToClient);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodeToClient(data as v2.ToClient);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeToClient(data as v3.ToClient);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodeToClient(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodeToClient(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeToClient(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToClientToV2, v2ToClientToV3],\n\tserializeConverters: () => [v3ToClientToV2, v2ToClientToV1],\n});\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type EventsRequest = {\n readonly id: uint,\n}\n\nexport function readEventsRequest(bc: bare.ByteCursor): EventsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeEventsRequest(bc: bare.ByteCursor, x: EventsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ClearEventsRequest = {\n readonly id: uint,\n}\n\nexport function readClearEventsRequest(bc: bare.ByteCursor): ClearEventsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeClearEventsRequest(bc: bare.ByteCursor, x: ClearEventsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"EventsRequest\", readonly val: EventsRequest }\n | { readonly tag: \"ClearEventsRequest\", readonly val: ClearEventsRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"EventsRequest\", val: readEventsRequest(bc) }\n case 5:\n return { tag: \"ClearEventsRequest\", val: readClearEventsRequest(bc) }\n case 6:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"EventsRequest\": {\n bare.writeU8(bc, 4)\n writeEventsRequest(bc, x.val)\n break\n }\n case \"ClearEventsRequest\": {\n bare.writeU8(bc, 5)\n writeClearEventsRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 6)\n writeRpcsListRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type ActionEvent = {\n readonly name: string,\n readonly args: ArrayBuffer,\n readonly connId: string,\n}\n\nexport function readActionEvent(bc: bare.ByteCursor): ActionEvent {\n return {\n name: bare.readString(bc),\n args: bare.readData(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeActionEvent(bc: bare.ByteCursor, x: ActionEvent): void {\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n bare.writeString(bc, x.connId)\n}\n\nexport type BroadcastEvent = {\n readonly eventName: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readBroadcastEvent(bc: bare.ByteCursor): BroadcastEvent {\n return {\n eventName: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeBroadcastEvent(bc: bare.ByteCursor, x: BroadcastEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeData(bc, x.args)\n}\n\nexport type SubscribeEvent = {\n readonly eventName: string,\n readonly connId: string,\n}\n\nexport function readSubscribeEvent(bc: bare.ByteCursor): SubscribeEvent {\n return {\n eventName: bare.readString(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeSubscribeEvent(bc: bare.ByteCursor, x: SubscribeEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeString(bc, x.connId)\n}\n\nexport type UnSubscribeEvent = {\n readonly eventName: string,\n readonly connId: string,\n}\n\nexport function readUnSubscribeEvent(bc: bare.ByteCursor): UnSubscribeEvent {\n return {\n eventName: bare.readString(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeUnSubscribeEvent(bc: bare.ByteCursor, x: UnSubscribeEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeString(bc, x.connId)\n}\n\nexport type FiredEvent = {\n readonly eventName: string,\n readonly args: ArrayBuffer,\n readonly connId: string,\n}\n\nexport function readFiredEvent(bc: bare.ByteCursor): FiredEvent {\n return {\n eventName: bare.readString(bc),\n args: bare.readData(bc),\n connId: bare.readString(bc),\n }\n}\n\nexport function writeFiredEvent(bc: bare.ByteCursor, x: FiredEvent): void {\n bare.writeString(bc, x.eventName)\n bare.writeData(bc, x.args)\n bare.writeString(bc, x.connId)\n}\n\nexport type EventBody =\n | { readonly tag: \"ActionEvent\", readonly val: ActionEvent }\n | { readonly tag: \"BroadcastEvent\", readonly val: BroadcastEvent }\n | { readonly tag: \"SubscribeEvent\", readonly val: SubscribeEvent }\n | { readonly tag: \"UnSubscribeEvent\", readonly val: UnSubscribeEvent }\n | { readonly tag: \"FiredEvent\", readonly val: FiredEvent }\n\nexport function readEventBody(bc: bare.ByteCursor): EventBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"ActionEvent\", val: readActionEvent(bc) }\n case 1:\n return { tag: \"BroadcastEvent\", val: readBroadcastEvent(bc) }\n case 2:\n return { tag: \"SubscribeEvent\", val: readSubscribeEvent(bc) }\n case 3:\n return { tag: \"UnSubscribeEvent\", val: readUnSubscribeEvent(bc) }\n case 4:\n return { tag: \"FiredEvent\", val: readFiredEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeEventBody(bc: bare.ByteCursor, x: EventBody): void {\n switch (x.tag) {\n case \"ActionEvent\": {\n bare.writeU8(bc, 0)\n writeActionEvent(bc, x.val)\n break\n }\n case \"BroadcastEvent\": {\n bare.writeU8(bc, 1)\n writeBroadcastEvent(bc, x.val)\n break\n }\n case \"SubscribeEvent\": {\n bare.writeU8(bc, 2)\n writeSubscribeEvent(bc, x.val)\n break\n }\n case \"UnSubscribeEvent\": {\n bare.writeU8(bc, 3)\n writeUnSubscribeEvent(bc, x.val)\n break\n }\n case \"FiredEvent\": {\n bare.writeU8(bc, 4)\n writeFiredEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type Event = {\n readonly id: string,\n readonly timestamp: uint,\n readonly body: EventBody,\n}\n\nexport function readEvent(bc: bare.ByteCursor): Event {\n return {\n id: bare.readString(bc),\n timestamp: bare.readUint(bc),\n body: readEventBody(bc),\n }\n}\n\nexport function writeEvent(bc: bare.ByteCursor, x: Event): void {\n bare.writeString(bc, x.id)\n bare.writeUint(bc, x.timestamp)\n writeEventBody(bc, x.body)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): readonly Event[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readEvent(bc)\n }\n return result\n}\n\nfunction write1(bc: bare.ByteCursor, x: readonly Event[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeEvent(bc, x[i])\n }\n}\n\nfunction read2(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write2(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly events: readonly Event[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n events: read1(bc),\n state: read2(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read3(bc),\n isDatabaseEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.events)\n write2(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write3(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read2(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type EventsResponse = {\n readonly rid: uint,\n readonly events: readonly Event[],\n}\n\nexport function readEventsResponse(bc: bare.ByteCursor): EventsResponse {\n return {\n rid: bare.readUint(bc),\n events: read1(bc),\n }\n}\n\nexport function writeEventsResponse(bc: bare.ByteCursor, x: EventsResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.events)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type EventsUpdated = {\n readonly events: readonly Event[],\n}\n\nexport function readEventsUpdated(bc: bare.ByteCursor): EventsUpdated {\n return {\n events: read1(bc),\n }\n}\n\nexport function writeEventsUpdated(bc: bare.ByteCursor, x: EventsUpdated): void {\n write1(bc, x.events)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read3(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"EventsResponse\", readonly val: EventsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"EventsUpdated\", readonly val: EventsUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"EventsResponse\", val: readEventsResponse(bc) }\n case 3:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 4:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 5:\n return { tag: \"EventsUpdated\", val: readEventsUpdated(bc) }\n case 6:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"Error\", val: readError(bc) }\n case 9:\n return { tag: \"Init\", val: readInit(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"EventsResponse\": {\n bare.writeU8(bc, 2)\n writeEventsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 3)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 4)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"EventsUpdated\": {\n bare.writeU8(bc, 5)\n writeEventsUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 6)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 8)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 9)\n writeInit(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type uint = bigint\n\nexport type PatchStateRequest = {\n readonly state: ArrayBuffer,\n}\n\nexport function readPatchStateRequest(bc: bare.ByteCursor): PatchStateRequest {\n return {\n state: bare.readData(bc),\n }\n}\n\nexport function writePatchStateRequest(bc: bare.ByteCursor, x: PatchStateRequest): void {\n bare.writeData(bc, x.state)\n}\n\nexport type ActionRequest = {\n readonly id: uint,\n readonly name: string,\n readonly args: ArrayBuffer,\n}\n\nexport function readActionRequest(bc: bare.ByteCursor): ActionRequest {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n args: bare.readData(bc),\n }\n}\n\nexport function writeActionRequest(bc: bare.ByteCursor, x: ActionRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeData(bc, x.args)\n}\n\nexport type StateRequest = {\n readonly id: uint,\n}\n\nexport function readStateRequest(bc: bare.ByteCursor): StateRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeStateRequest(bc: bare.ByteCursor, x: StateRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ConnectionsRequest = {\n readonly id: uint,\n}\n\nexport function readConnectionsRequest(bc: bare.ByteCursor): ConnectionsRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeConnectionsRequest(bc: bare.ByteCursor, x: ConnectionsRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type RpcsListRequest = {\n readonly id: uint,\n}\n\nexport function readRpcsListRequest(bc: bare.ByteCursor): RpcsListRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeRpcsListRequest(bc: bare.ByteCursor, x: RpcsListRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type TraceQueryRequest = {\n readonly id: uint,\n readonly startMs: uint,\n readonly endMs: uint,\n readonly limit: uint,\n}\n\nexport function readTraceQueryRequest(bc: bare.ByteCursor): TraceQueryRequest {\n return {\n id: bare.readUint(bc),\n startMs: bare.readUint(bc),\n endMs: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeTraceQueryRequest(bc: bare.ByteCursor, x: TraceQueryRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.startMs)\n bare.writeUint(bc, x.endMs)\n bare.writeUint(bc, x.limit)\n}\n\nexport type QueueRequest = {\n readonly id: uint,\n readonly limit: uint,\n}\n\nexport function readQueueRequest(bc: bare.ByteCursor): QueueRequest {\n return {\n id: bare.readUint(bc),\n limit: bare.readUint(bc),\n }\n}\n\nexport function writeQueueRequest(bc: bare.ByteCursor, x: QueueRequest): void {\n bare.writeUint(bc, x.id)\n bare.writeUint(bc, x.limit)\n}\n\nexport type WorkflowHistoryRequest = {\n readonly id: uint,\n}\n\nexport function readWorkflowHistoryRequest(bc: bare.ByteCursor): WorkflowHistoryRequest {\n return {\n id: bare.readUint(bc),\n }\n}\n\nexport function writeWorkflowHistoryRequest(bc: bare.ByteCursor, x: WorkflowHistoryRequest): void {\n bare.writeUint(bc, x.id)\n}\n\nexport type ToServerBody =\n | { readonly tag: \"PatchStateRequest\", readonly val: PatchStateRequest }\n | { readonly tag: \"StateRequest\", readonly val: StateRequest }\n | { readonly tag: \"ConnectionsRequest\", readonly val: ConnectionsRequest }\n | { readonly tag: \"ActionRequest\", readonly val: ActionRequest }\n | { readonly tag: \"RpcsListRequest\", readonly val: RpcsListRequest }\n | { readonly tag: \"TraceQueryRequest\", readonly val: TraceQueryRequest }\n | { readonly tag: \"QueueRequest\", readonly val: QueueRequest }\n | { readonly tag: \"WorkflowHistoryRequest\", readonly val: WorkflowHistoryRequest }\n\nexport function readToServerBody(bc: bare.ByteCursor): ToServerBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"PatchStateRequest\", val: readPatchStateRequest(bc) }\n case 1:\n return { tag: \"StateRequest\", val: readStateRequest(bc) }\n case 2:\n return { tag: \"ConnectionsRequest\", val: readConnectionsRequest(bc) }\n case 3:\n return { tag: \"ActionRequest\", val: readActionRequest(bc) }\n case 4:\n return { tag: \"RpcsListRequest\", val: readRpcsListRequest(bc) }\n case 5:\n return { tag: \"TraceQueryRequest\", val: readTraceQueryRequest(bc) }\n case 6:\n return { tag: \"QueueRequest\", val: readQueueRequest(bc) }\n case 7:\n return { tag: \"WorkflowHistoryRequest\", val: readWorkflowHistoryRequest(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToServerBody(bc: bare.ByteCursor, x: ToServerBody): void {\n switch (x.tag) {\n case \"PatchStateRequest\": {\n bare.writeU8(bc, 0)\n writePatchStateRequest(bc, x.val)\n break\n }\n case \"StateRequest\": {\n bare.writeU8(bc, 1)\n writeStateRequest(bc, x.val)\n break\n }\n case \"ConnectionsRequest\": {\n bare.writeU8(bc, 2)\n writeConnectionsRequest(bc, x.val)\n break\n }\n case \"ActionRequest\": {\n bare.writeU8(bc, 3)\n writeActionRequest(bc, x.val)\n break\n }\n case \"RpcsListRequest\": {\n bare.writeU8(bc, 4)\n writeRpcsListRequest(bc, x.val)\n break\n }\n case \"TraceQueryRequest\": {\n bare.writeU8(bc, 5)\n writeTraceQueryRequest(bc, x.val)\n break\n }\n case \"QueueRequest\": {\n bare.writeU8(bc, 6)\n writeQueueRequest(bc, x.val)\n break\n }\n case \"WorkflowHistoryRequest\": {\n bare.writeU8(bc, 7)\n writeWorkflowHistoryRequest(bc, x.val)\n break\n }\n }\n}\n\nexport type ToServer = {\n readonly body: ToServerBody,\n}\n\nexport function readToServer(bc: bare.ByteCursor): ToServer {\n return {\n body: readToServerBody(bc),\n }\n}\n\nexport function writeToServer(bc: bare.ByteCursor, x: ToServer): void {\n writeToServerBody(bc, x.body)\n}\n\nexport function encodeToServer(x: ToServer): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToServer(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToServer(bytes: Uint8Array): ToServer {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToServer(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type State = ArrayBuffer\n\nexport function readState(bc: bare.ByteCursor): State {\n return bare.readData(bc)\n}\n\nexport function writeState(bc: bare.ByteCursor, x: State): void {\n bare.writeData(bc, x)\n}\n\nexport type Connection = {\n readonly id: string,\n readonly details: ArrayBuffer,\n}\n\nexport function readConnection(bc: bare.ByteCursor): Connection {\n return {\n id: bare.readString(bc),\n details: bare.readData(bc),\n }\n}\n\nexport function writeConnection(bc: bare.ByteCursor, x: Connection): void {\n bare.writeString(bc, x.id)\n bare.writeData(bc, x.details)\n}\n\nexport type WorkflowHistory = ArrayBuffer\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n bare.writeData(bc, x)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Connection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readConnection(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Connection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeConnection(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): State | null {\n return bare.readBool(bc)\n ? readState(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: State | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeState(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): WorkflowHistory | null {\n return bare.readBool(bc)\n ? readWorkflowHistory(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: WorkflowHistory | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowHistory(bc, x)\n }\n}\n\nexport type Init = {\n readonly connections: readonly Connection[],\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n readonly rpcs: readonly string[],\n readonly isDatabaseEnabled: boolean,\n readonly queueSize: uint,\n readonly workflowHistory: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readInit(bc: bare.ByteCursor): Init {\n return {\n connections: read0(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n rpcs: read2(bc),\n isDatabaseEnabled: bare.readBool(bc),\n queueSize: bare.readUint(bc),\n workflowHistory: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeInit(bc: bare.ByteCursor, x: Init): void {\n write0(bc, x.connections)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n write2(bc, x.rpcs)\n bare.writeBool(bc, x.isDatabaseEnabled)\n bare.writeUint(bc, x.queueSize)\n write3(bc, x.workflowHistory)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type ConnectionsResponse = {\n readonly rid: uint,\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsResponse(bc: bare.ByteCursor): ConnectionsResponse {\n return {\n rid: bare.readUint(bc),\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsResponse(bc: bare.ByteCursor, x: ConnectionsResponse): void {\n bare.writeUint(bc, x.rid)\n write0(bc, x.connections)\n}\n\nexport type StateResponse = {\n readonly rid: uint,\n readonly state: State | null,\n readonly isStateEnabled: boolean,\n}\n\nexport function readStateResponse(bc: bare.ByteCursor): StateResponse {\n return {\n rid: bare.readUint(bc),\n state: read1(bc),\n isStateEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeStateResponse(bc: bare.ByteCursor, x: StateResponse): void {\n bare.writeUint(bc, x.rid)\n write1(bc, x.state)\n bare.writeBool(bc, x.isStateEnabled)\n}\n\nexport type ActionResponse = {\n readonly rid: uint,\n readonly output: ArrayBuffer,\n}\n\nexport function readActionResponse(bc: bare.ByteCursor): ActionResponse {\n return {\n rid: bare.readUint(bc),\n output: bare.readData(bc),\n }\n}\n\nexport function writeActionResponse(bc: bare.ByteCursor, x: ActionResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.output)\n}\n\nexport type TraceQueryResponse = {\n readonly rid: uint,\n readonly payload: ArrayBuffer,\n}\n\nexport function readTraceQueryResponse(bc: bare.ByteCursor): TraceQueryResponse {\n return {\n rid: bare.readUint(bc),\n payload: bare.readData(bc),\n }\n}\n\nexport function writeTraceQueryResponse(bc: bare.ByteCursor, x: TraceQueryResponse): void {\n bare.writeUint(bc, x.rid)\n bare.writeData(bc, x.payload)\n}\n\nexport type QueueMessageSummary = {\n readonly id: uint,\n readonly name: string,\n readonly createdAtMs: uint,\n}\n\nexport function readQueueMessageSummary(bc: bare.ByteCursor): QueueMessageSummary {\n return {\n id: bare.readUint(bc),\n name: bare.readString(bc),\n createdAtMs: bare.readUint(bc),\n }\n}\n\nexport function writeQueueMessageSummary(bc: bare.ByteCursor, x: QueueMessageSummary): void {\n bare.writeUint(bc, x.id)\n bare.writeString(bc, x.name)\n bare.writeUint(bc, x.createdAtMs)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly QueueMessageSummary[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readQueueMessageSummary(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readQueueMessageSummary(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly QueueMessageSummary[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeQueueMessageSummary(bc, x[i])\n }\n}\n\nexport type QueueStatus = {\n readonly size: uint,\n readonly maxSize: uint,\n readonly messages: readonly QueueMessageSummary[],\n readonly truncated: boolean,\n}\n\nexport function readQueueStatus(bc: bare.ByteCursor): QueueStatus {\n return {\n size: bare.readUint(bc),\n maxSize: bare.readUint(bc),\n messages: read4(bc),\n truncated: bare.readBool(bc),\n }\n}\n\nexport function writeQueueStatus(bc: bare.ByteCursor, x: QueueStatus): void {\n bare.writeUint(bc, x.size)\n bare.writeUint(bc, x.maxSize)\n write4(bc, x.messages)\n bare.writeBool(bc, x.truncated)\n}\n\nexport type QueueResponse = {\n readonly rid: uint,\n readonly status: QueueStatus,\n}\n\nexport function readQueueResponse(bc: bare.ByteCursor): QueueResponse {\n return {\n rid: bare.readUint(bc),\n status: readQueueStatus(bc),\n }\n}\n\nexport function writeQueueResponse(bc: bare.ByteCursor, x: QueueResponse): void {\n bare.writeUint(bc, x.rid)\n writeQueueStatus(bc, x.status)\n}\n\nexport type WorkflowHistoryResponse = {\n readonly rid: uint,\n readonly history: WorkflowHistory | null,\n readonly isWorkflowEnabled: boolean,\n}\n\nexport function readWorkflowHistoryResponse(bc: bare.ByteCursor): WorkflowHistoryResponse {\n return {\n rid: bare.readUint(bc),\n history: read3(bc),\n isWorkflowEnabled: bare.readBool(bc),\n }\n}\n\nexport function writeWorkflowHistoryResponse(bc: bare.ByteCursor, x: WorkflowHistoryResponse): void {\n bare.writeUint(bc, x.rid)\n write3(bc, x.history)\n bare.writeBool(bc, x.isWorkflowEnabled)\n}\n\nexport type StateUpdated = {\n readonly state: State,\n}\n\nexport function readStateUpdated(bc: bare.ByteCursor): StateUpdated {\n return {\n state: readState(bc),\n }\n}\n\nexport function writeStateUpdated(bc: bare.ByteCursor, x: StateUpdated): void {\n writeState(bc, x.state)\n}\n\nexport type QueueUpdated = {\n readonly queueSize: uint,\n}\n\nexport function readQueueUpdated(bc: bare.ByteCursor): QueueUpdated {\n return {\n queueSize: bare.readUint(bc),\n }\n}\n\nexport function writeQueueUpdated(bc: bare.ByteCursor, x: QueueUpdated): void {\n bare.writeUint(bc, x.queueSize)\n}\n\nexport type WorkflowHistoryUpdated = {\n readonly history: WorkflowHistory,\n}\n\nexport function readWorkflowHistoryUpdated(bc: bare.ByteCursor): WorkflowHistoryUpdated {\n return {\n history: readWorkflowHistory(bc),\n }\n}\n\nexport function writeWorkflowHistoryUpdated(bc: bare.ByteCursor, x: WorkflowHistoryUpdated): void {\n writeWorkflowHistory(bc, x.history)\n}\n\nexport type RpcsListResponse = {\n readonly rid: uint,\n readonly rpcs: readonly string[],\n}\n\nexport function readRpcsListResponse(bc: bare.ByteCursor): RpcsListResponse {\n return {\n rid: bare.readUint(bc),\n rpcs: read2(bc),\n }\n}\n\nexport function writeRpcsListResponse(bc: bare.ByteCursor, x: RpcsListResponse): void {\n bare.writeUint(bc, x.rid)\n write2(bc, x.rpcs)\n}\n\nexport type ConnectionsUpdated = {\n readonly connections: readonly Connection[],\n}\n\nexport function readConnectionsUpdated(bc: bare.ByteCursor): ConnectionsUpdated {\n return {\n connections: read0(bc),\n }\n}\n\nexport function writeConnectionsUpdated(bc: bare.ByteCursor, x: ConnectionsUpdated): void {\n write0(bc, x.connections)\n}\n\nexport type Error = {\n readonly message: string,\n}\n\nexport function readError(bc: bare.ByteCursor): Error {\n return {\n message: bare.readString(bc),\n }\n}\n\nexport function writeError(bc: bare.ByteCursor, x: Error): void {\n bare.writeString(bc, x.message)\n}\n\nexport type ToClientBody =\n | { readonly tag: \"StateResponse\", readonly val: StateResponse }\n | { readonly tag: \"ConnectionsResponse\", readonly val: ConnectionsResponse }\n | { readonly tag: \"ActionResponse\", readonly val: ActionResponse }\n | { readonly tag: \"ConnectionsUpdated\", readonly val: ConnectionsUpdated }\n | { readonly tag: \"QueueUpdated\", readonly val: QueueUpdated }\n | { readonly tag: \"StateUpdated\", readonly val: StateUpdated }\n | { readonly tag: \"WorkflowHistoryUpdated\", readonly val: WorkflowHistoryUpdated }\n | { readonly tag: \"RpcsListResponse\", readonly val: RpcsListResponse }\n | { readonly tag: \"TraceQueryResponse\", readonly val: TraceQueryResponse }\n | { readonly tag: \"QueueResponse\", readonly val: QueueResponse }\n | { readonly tag: \"WorkflowHistoryResponse\", readonly val: WorkflowHistoryResponse }\n | { readonly tag: \"Error\", readonly val: Error }\n | { readonly tag: \"Init\", readonly val: Init }\n\nexport function readToClientBody(bc: bare.ByteCursor): ToClientBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"StateResponse\", val: readStateResponse(bc) }\n case 1:\n return { tag: \"ConnectionsResponse\", val: readConnectionsResponse(bc) }\n case 2:\n return { tag: \"ActionResponse\", val: readActionResponse(bc) }\n case 3:\n return { tag: \"ConnectionsUpdated\", val: readConnectionsUpdated(bc) }\n case 4:\n return { tag: \"QueueUpdated\", val: readQueueUpdated(bc) }\n case 5:\n return { tag: \"StateUpdated\", val: readStateUpdated(bc) }\n case 6:\n return { tag: \"WorkflowHistoryUpdated\", val: readWorkflowHistoryUpdated(bc) }\n case 7:\n return { tag: \"RpcsListResponse\", val: readRpcsListResponse(bc) }\n case 8:\n return { tag: \"TraceQueryResponse\", val: readTraceQueryResponse(bc) }\n case 9:\n return { tag: \"QueueResponse\", val: readQueueResponse(bc) }\n case 10:\n return { tag: \"WorkflowHistoryResponse\", val: readWorkflowHistoryResponse(bc) }\n case 11:\n return { tag: \"Error\", val: readError(bc) }\n case 12:\n return { tag: \"Init\", val: readInit(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeToClientBody(bc: bare.ByteCursor, x: ToClientBody): void {\n switch (x.tag) {\n case \"StateResponse\": {\n bare.writeU8(bc, 0)\n writeStateResponse(bc, x.val)\n break\n }\n case \"ConnectionsResponse\": {\n bare.writeU8(bc, 1)\n writeConnectionsResponse(bc, x.val)\n break\n }\n case \"ActionResponse\": {\n bare.writeU8(bc, 2)\n writeActionResponse(bc, x.val)\n break\n }\n case \"ConnectionsUpdated\": {\n bare.writeU8(bc, 3)\n writeConnectionsUpdated(bc, x.val)\n break\n }\n case \"QueueUpdated\": {\n bare.writeU8(bc, 4)\n writeQueueUpdated(bc, x.val)\n break\n }\n case \"StateUpdated\": {\n bare.writeU8(bc, 5)\n writeStateUpdated(bc, x.val)\n break\n }\n case \"WorkflowHistoryUpdated\": {\n bare.writeU8(bc, 6)\n writeWorkflowHistoryUpdated(bc, x.val)\n break\n }\n case \"RpcsListResponse\": {\n bare.writeU8(bc, 7)\n writeRpcsListResponse(bc, x.val)\n break\n }\n case \"TraceQueryResponse\": {\n bare.writeU8(bc, 8)\n writeTraceQueryResponse(bc, x.val)\n break\n }\n case \"QueueResponse\": {\n bare.writeU8(bc, 9)\n writeQueueResponse(bc, x.val)\n break\n }\n case \"WorkflowHistoryResponse\": {\n bare.writeU8(bc, 10)\n writeWorkflowHistoryResponse(bc, x.val)\n break\n }\n case \"Error\": {\n bare.writeU8(bc, 11)\n writeError(bc, x.val)\n break\n }\n case \"Init\": {\n bare.writeU8(bc, 12)\n writeInit(bc, x.val)\n break\n }\n }\n}\n\nexport type ToClient = {\n readonly body: ToClientBody,\n}\n\nexport function readToClient(bc: bare.ByteCursor): ToClient {\n return {\n body: readToClientBody(bc),\n }\n}\n\nexport function writeToClient(bc: bare.ByteCursor, x: ToClient): void {\n writeToClientBody(bc, x.body)\n}\n\nexport function encodeToClient(x: ToClient): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeToClient(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeToClient(bytes: Uint8Array): ToClient {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readToClient(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u32 = number\nexport type u64 = bigint\n\nexport type WorkflowCbor = ArrayBuffer\n\nexport function readWorkflowCbor(bc: bare.ByteCursor): WorkflowCbor {\n return bare.readData(bc)\n}\n\nexport function writeWorkflowCbor(bc: bare.ByteCursor, x: WorkflowCbor): void {\n bare.writeData(bc, x)\n}\n\nexport type WorkflowNameIndex = u32\n\nexport function readWorkflowNameIndex(bc: bare.ByteCursor): WorkflowNameIndex {\n return bare.readU32(bc)\n}\n\nexport function writeWorkflowNameIndex(bc: bare.ByteCursor, x: WorkflowNameIndex): void {\n bare.writeU32(bc, x)\n}\n\nexport type WorkflowLoopIterationMarker = {\n readonly loop: WorkflowNameIndex,\n readonly iteration: u32,\n}\n\nexport function readWorkflowLoopIterationMarker(bc: bare.ByteCursor): WorkflowLoopIterationMarker {\n return {\n loop: readWorkflowNameIndex(bc),\n iteration: bare.readU32(bc),\n }\n}\n\nexport function writeWorkflowLoopIterationMarker(bc: bare.ByteCursor, x: WorkflowLoopIterationMarker): void {\n writeWorkflowNameIndex(bc, x.loop)\n bare.writeU32(bc, x.iteration)\n}\n\nexport type WorkflowPathSegment =\n | { readonly tag: \"WorkflowNameIndex\", readonly val: WorkflowNameIndex }\n | { readonly tag: \"WorkflowLoopIterationMarker\", readonly val: WorkflowLoopIterationMarker }\n\nexport function readWorkflowPathSegment(bc: bare.ByteCursor): WorkflowPathSegment {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"WorkflowNameIndex\", val: readWorkflowNameIndex(bc) }\n case 1:\n return { tag: \"WorkflowLoopIterationMarker\", val: readWorkflowLoopIterationMarker(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowPathSegment(bc: bare.ByteCursor, x: WorkflowPathSegment): void {\n switch (x.tag) {\n case \"WorkflowNameIndex\": {\n bare.writeU8(bc, 0)\n writeWorkflowNameIndex(bc, x.val)\n break\n }\n case \"WorkflowLoopIterationMarker\": {\n bare.writeU8(bc, 1)\n writeWorkflowLoopIterationMarker(bc, x.val)\n break\n }\n }\n}\n\nexport type WorkflowLocation = readonly WorkflowPathSegment[]\n\nexport function readWorkflowLocation(bc: bare.ByteCursor): WorkflowLocation {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readWorkflowPathSegment(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readWorkflowPathSegment(bc)\n }\n return result\n}\n\nexport function writeWorkflowLocation(bc: bare.ByteCursor, x: WorkflowLocation): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeWorkflowPathSegment(bc, x[i])\n }\n}\n\nexport enum WorkflowEntryStatus {\n PENDING = \"PENDING\",\n RUNNING = \"RUNNING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n EXHAUSTED = \"EXHAUSTED\",\n}\n\nexport function readWorkflowEntryStatus(bc: bare.ByteCursor): WorkflowEntryStatus {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowEntryStatus.PENDING\n case 1:\n return WorkflowEntryStatus.RUNNING\n case 2:\n return WorkflowEntryStatus.COMPLETED\n case 3:\n return WorkflowEntryStatus.FAILED\n case 4:\n return WorkflowEntryStatus.EXHAUSTED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowEntryStatus(bc: bare.ByteCursor, x: WorkflowEntryStatus): void {\n switch (x) {\n case WorkflowEntryStatus.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowEntryStatus.RUNNING: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowEntryStatus.COMPLETED: {\n bare.writeU8(bc, 2)\n break\n }\n case WorkflowEntryStatus.FAILED: {\n bare.writeU8(bc, 3)\n break\n }\n case WorkflowEntryStatus.EXHAUSTED: {\n bare.writeU8(bc, 4)\n break\n }\n }\n}\n\nexport enum WorkflowSleepState {\n PENDING = \"PENDING\",\n COMPLETED = \"COMPLETED\",\n INTERRUPTED = \"INTERRUPTED\",\n}\n\nexport function readWorkflowSleepState(bc: bare.ByteCursor): WorkflowSleepState {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowSleepState.PENDING\n case 1:\n return WorkflowSleepState.COMPLETED\n case 2:\n return WorkflowSleepState.INTERRUPTED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowSleepState(bc: bare.ByteCursor, x: WorkflowSleepState): void {\n switch (x) {\n case WorkflowSleepState.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowSleepState.COMPLETED: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowSleepState.INTERRUPTED: {\n bare.writeU8(bc, 2)\n break\n }\n }\n}\n\nexport enum WorkflowBranchStatusType {\n PENDING = \"PENDING\",\n RUNNING = \"RUNNING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n CANCELLED = \"CANCELLED\",\n}\n\nexport function readWorkflowBranchStatusType(bc: bare.ByteCursor): WorkflowBranchStatusType {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return WorkflowBranchStatusType.PENDING\n case 1:\n return WorkflowBranchStatusType.RUNNING\n case 2:\n return WorkflowBranchStatusType.COMPLETED\n case 3:\n return WorkflowBranchStatusType.FAILED\n case 4:\n return WorkflowBranchStatusType.CANCELLED\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowBranchStatusType(bc: bare.ByteCursor, x: WorkflowBranchStatusType): void {\n switch (x) {\n case WorkflowBranchStatusType.PENDING: {\n bare.writeU8(bc, 0)\n break\n }\n case WorkflowBranchStatusType.RUNNING: {\n bare.writeU8(bc, 1)\n break\n }\n case WorkflowBranchStatusType.COMPLETED: {\n bare.writeU8(bc, 2)\n break\n }\n case WorkflowBranchStatusType.FAILED: {\n bare.writeU8(bc, 3)\n break\n }\n case WorkflowBranchStatusType.CANCELLED: {\n bare.writeU8(bc, 4)\n break\n }\n }\n}\n\nfunction read0(bc: bare.ByteCursor): WorkflowCbor | null {\n return bare.readBool(bc)\n ? readWorkflowCbor(bc)\n : null\n}\n\nfunction write0(bc: bare.ByteCursor, x: WorkflowCbor | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeWorkflowCbor(bc, x)\n }\n}\n\nfunction read1(bc: bare.ByteCursor): string | null {\n return bare.readBool(bc)\n ? bare.readString(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: string | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeString(bc, x)\n }\n}\n\nexport type WorkflowStepEntry = {\n readonly output: WorkflowCbor | null,\n readonly error: string | null,\n}\n\nexport function readWorkflowStepEntry(bc: bare.ByteCursor): WorkflowStepEntry {\n return {\n output: read0(bc),\n error: read1(bc),\n }\n}\n\nexport function writeWorkflowStepEntry(bc: bare.ByteCursor, x: WorkflowStepEntry): void {\n write0(bc, x.output)\n write1(bc, x.error)\n}\n\nexport type WorkflowLoopEntry = {\n readonly state: WorkflowCbor,\n readonly iteration: u32,\n readonly output: WorkflowCbor | null,\n}\n\nexport function readWorkflowLoopEntry(bc: bare.ByteCursor): WorkflowLoopEntry {\n return {\n state: readWorkflowCbor(bc),\n iteration: bare.readU32(bc),\n output: read0(bc),\n }\n}\n\nexport function writeWorkflowLoopEntry(bc: bare.ByteCursor, x: WorkflowLoopEntry): void {\n writeWorkflowCbor(bc, x.state)\n bare.writeU32(bc, x.iteration)\n write0(bc, x.output)\n}\n\nexport type WorkflowSleepEntry = {\n readonly deadline: u64,\n readonly state: WorkflowSleepState,\n}\n\nexport function readWorkflowSleepEntry(bc: bare.ByteCursor): WorkflowSleepEntry {\n return {\n deadline: bare.readU64(bc),\n state: readWorkflowSleepState(bc),\n }\n}\n\nexport function writeWorkflowSleepEntry(bc: bare.ByteCursor, x: WorkflowSleepEntry): void {\n bare.writeU64(bc, x.deadline)\n writeWorkflowSleepState(bc, x.state)\n}\n\nexport type WorkflowMessageEntry = {\n readonly name: string,\n readonly messageData: WorkflowCbor,\n}\n\nexport function readWorkflowMessageEntry(bc: bare.ByteCursor): WorkflowMessageEntry {\n return {\n name: bare.readString(bc),\n messageData: readWorkflowCbor(bc),\n }\n}\n\nexport function writeWorkflowMessageEntry(bc: bare.ByteCursor, x: WorkflowMessageEntry): void {\n bare.writeString(bc, x.name)\n writeWorkflowCbor(bc, x.messageData)\n}\n\nexport type WorkflowRollbackCheckpointEntry = {\n readonly name: string,\n}\n\nexport function readWorkflowRollbackCheckpointEntry(bc: bare.ByteCursor): WorkflowRollbackCheckpointEntry {\n return {\n name: bare.readString(bc),\n }\n}\n\nexport function writeWorkflowRollbackCheckpointEntry(bc: bare.ByteCursor, x: WorkflowRollbackCheckpointEntry): void {\n bare.writeString(bc, x.name)\n}\n\nexport type WorkflowBranchStatus = {\n readonly status: WorkflowBranchStatusType,\n readonly output: WorkflowCbor | null,\n readonly error: string | null,\n}\n\nexport function readWorkflowBranchStatus(bc: bare.ByteCursor): WorkflowBranchStatus {\n return {\n status: readWorkflowBranchStatusType(bc),\n output: read0(bc),\n error: read1(bc),\n }\n}\n\nexport function writeWorkflowBranchStatus(bc: bare.ByteCursor, x: WorkflowBranchStatus): void {\n writeWorkflowBranchStatusType(bc, x.status)\n write0(bc, x.output)\n write1(bc, x.error)\n}\n\nfunction read2(bc: bare.ByteCursor): ReadonlyMap<string, WorkflowBranchStatus> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, WorkflowBranchStatus>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, readWorkflowBranchStatus(bc))\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: ReadonlyMap<string, WorkflowBranchStatus>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n writeWorkflowBranchStatus(bc, kv[1])\n }\n}\n\nexport type WorkflowJoinEntry = {\n readonly branches: ReadonlyMap<string, WorkflowBranchStatus>,\n}\n\nexport function readWorkflowJoinEntry(bc: bare.ByteCursor): WorkflowJoinEntry {\n return {\n branches: read2(bc),\n }\n}\n\nexport function writeWorkflowJoinEntry(bc: bare.ByteCursor, x: WorkflowJoinEntry): void {\n write2(bc, x.branches)\n}\n\nexport type WorkflowRaceEntry = {\n readonly winner: string | null,\n readonly branches: ReadonlyMap<string, WorkflowBranchStatus>,\n}\n\nexport function readWorkflowRaceEntry(bc: bare.ByteCursor): WorkflowRaceEntry {\n return {\n winner: read1(bc),\n branches: read2(bc),\n }\n}\n\nexport function writeWorkflowRaceEntry(bc: bare.ByteCursor, x: WorkflowRaceEntry): void {\n write1(bc, x.winner)\n write2(bc, x.branches)\n}\n\nexport type WorkflowRemovedEntry = {\n readonly originalType: string,\n readonly originalName: string | null,\n}\n\nexport function readWorkflowRemovedEntry(bc: bare.ByteCursor): WorkflowRemovedEntry {\n return {\n originalType: bare.readString(bc),\n originalName: read1(bc),\n }\n}\n\nexport function writeWorkflowRemovedEntry(bc: bare.ByteCursor, x: WorkflowRemovedEntry): void {\n bare.writeString(bc, x.originalType)\n write1(bc, x.originalName)\n}\n\nexport type WorkflowEntryKind =\n | { readonly tag: \"WorkflowStepEntry\", readonly val: WorkflowStepEntry }\n | { readonly tag: \"WorkflowLoopEntry\", readonly val: WorkflowLoopEntry }\n | { readonly tag: \"WorkflowSleepEntry\", readonly val: WorkflowSleepEntry }\n | { readonly tag: \"WorkflowMessageEntry\", readonly val: WorkflowMessageEntry }\n | { readonly tag: \"WorkflowRollbackCheckpointEntry\", readonly val: WorkflowRollbackCheckpointEntry }\n | { readonly tag: \"WorkflowJoinEntry\", readonly val: WorkflowJoinEntry }\n | { readonly tag: \"WorkflowRaceEntry\", readonly val: WorkflowRaceEntry }\n | { readonly tag: \"WorkflowRemovedEntry\", readonly val: WorkflowRemovedEntry }\n\nexport function readWorkflowEntryKind(bc: bare.ByteCursor): WorkflowEntryKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"WorkflowStepEntry\", val: readWorkflowStepEntry(bc) }\n case 1:\n return { tag: \"WorkflowLoopEntry\", val: readWorkflowLoopEntry(bc) }\n case 2:\n return { tag: \"WorkflowSleepEntry\", val: readWorkflowSleepEntry(bc) }\n case 3:\n return { tag: \"WorkflowMessageEntry\", val: readWorkflowMessageEntry(bc) }\n case 4:\n return { tag: \"WorkflowRollbackCheckpointEntry\", val: readWorkflowRollbackCheckpointEntry(bc) }\n case 5:\n return { tag: \"WorkflowJoinEntry\", val: readWorkflowJoinEntry(bc) }\n case 6:\n return { tag: \"WorkflowRaceEntry\", val: readWorkflowRaceEntry(bc) }\n case 7:\n return { tag: \"WorkflowRemovedEntry\", val: readWorkflowRemovedEntry(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeWorkflowEntryKind(bc: bare.ByteCursor, x: WorkflowEntryKind): void {\n switch (x.tag) {\n case \"WorkflowStepEntry\": {\n bare.writeU8(bc, 0)\n writeWorkflowStepEntry(bc, x.val)\n break\n }\n case \"WorkflowLoopEntry\": {\n bare.writeU8(bc, 1)\n writeWorkflowLoopEntry(bc, x.val)\n break\n }\n case \"WorkflowSleepEntry\": {\n bare.writeU8(bc, 2)\n writeWorkflowSleepEntry(bc, x.val)\n break\n }\n case \"WorkflowMessageEntry\": {\n bare.writeU8(bc, 3)\n writeWorkflowMessageEntry(bc, x.val)\n break\n }\n case \"WorkflowRollbackCheckpointEntry\": {\n bare.writeU8(bc, 4)\n writeWorkflowRollbackCheckpointEntry(bc, x.val)\n break\n }\n case \"WorkflowJoinEntry\": {\n bare.writeU8(bc, 5)\n writeWorkflowJoinEntry(bc, x.val)\n break\n }\n case \"WorkflowRaceEntry\": {\n bare.writeU8(bc, 6)\n writeWorkflowRaceEntry(bc, x.val)\n break\n }\n case \"WorkflowRemovedEntry\": {\n bare.writeU8(bc, 7)\n writeWorkflowRemovedEntry(bc, x.val)\n break\n }\n }\n}\n\nexport type WorkflowEntry = {\n readonly id: string,\n readonly location: WorkflowLocation,\n readonly kind: WorkflowEntryKind,\n}\n\nexport function readWorkflowEntry(bc: bare.ByteCursor): WorkflowEntry {\n return {\n id: bare.readString(bc),\n location: readWorkflowLocation(bc),\n kind: readWorkflowEntryKind(bc),\n }\n}\n\nexport function writeWorkflowEntry(bc: bare.ByteCursor, x: WorkflowEntry): void {\n bare.writeString(bc, x.id)\n writeWorkflowLocation(bc, x.location)\n writeWorkflowEntryKind(bc, x.kind)\n}\n\nfunction read3(bc: bare.ByteCursor): u64 | null {\n return bare.readBool(bc)\n ? bare.readU64(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: u64 | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeU64(bc, x)\n }\n}\n\nexport type WorkflowEntryMetadata = {\n readonly status: WorkflowEntryStatus,\n readonly error: string | null,\n readonly attempts: u32,\n readonly lastAttemptAt: u64,\n readonly createdAt: u64,\n readonly completedAt: u64 | null,\n readonly rollbackCompletedAt: u64 | null,\n readonly rollbackError: string | null,\n}\n\nexport function readWorkflowEntryMetadata(bc: bare.ByteCursor): WorkflowEntryMetadata {\n return {\n status: readWorkflowEntryStatus(bc),\n error: read1(bc),\n attempts: bare.readU32(bc),\n lastAttemptAt: bare.readU64(bc),\n createdAt: bare.readU64(bc),\n completedAt: read3(bc),\n rollbackCompletedAt: read3(bc),\n rollbackError: read1(bc),\n }\n}\n\nexport function writeWorkflowEntryMetadata(bc: bare.ByteCursor, x: WorkflowEntryMetadata): void {\n writeWorkflowEntryStatus(bc, x.status)\n write1(bc, x.error)\n bare.writeU32(bc, x.attempts)\n bare.writeU64(bc, x.lastAttemptAt)\n bare.writeU64(bc, x.createdAt)\n write3(bc, x.completedAt)\n write3(bc, x.rollbackCompletedAt)\n write1(bc, x.rollbackError)\n}\n\nfunction read4(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read5(bc: bare.ByteCursor): readonly WorkflowEntry[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readWorkflowEntry(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readWorkflowEntry(bc)\n }\n return result\n}\n\nfunction write5(bc: bare.ByteCursor, x: readonly WorkflowEntry[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeWorkflowEntry(bc, x[i])\n }\n}\n\nfunction read6(bc: bare.ByteCursor): ReadonlyMap<string, WorkflowEntryMetadata> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, WorkflowEntryMetadata>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, readWorkflowEntryMetadata(bc))\n }\n return result\n}\n\nfunction write6(bc: bare.ByteCursor, x: ReadonlyMap<string, WorkflowEntryMetadata>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n writeWorkflowEntryMetadata(bc, kv[1])\n }\n}\n\nexport type WorkflowHistory = {\n readonly nameRegistry: readonly string[],\n readonly entries: readonly WorkflowEntry[],\n readonly entryMetadata: ReadonlyMap<string, WorkflowEntryMetadata>,\n}\n\nexport function readWorkflowHistory(bc: bare.ByteCursor): WorkflowHistory {\n return {\n nameRegistry: read4(bc),\n entries: read5(bc),\n entryMetadata: read6(bc),\n }\n}\n\nexport function writeWorkflowHistory(bc: bare.ByteCursor, x: WorkflowHistory): void {\n write4(bc, x.nameRegistry)\n write5(bc, x.entries)\n write6(bc, x.entryMetadata)\n}\n\nexport function encodeWorkflowHistory(x: WorkflowHistory): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeWorkflowHistory(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeWorkflowHistory(bytes: Uint8Array): WorkflowHistory {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readWorkflowHistory(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n","{\n\t\"name\": \"rivetkit\",\n\t\"version\": \"2.1.3\",\n\t\"description\": \"Lightweight libraries for building stateful actors on edge platforms\",\n\t\"license\": \"Apache-2.0\",\n\t\"keywords\": [\n\t\t\"rivetkit\",\n\t\t\"stateful\",\n\t\t\"serverless\",\n\t\t\"actors\",\n\t\t\"agents\",\n\t\t\"realtime\",\n\t\t\"websocket\",\n\t\t\"actors\",\n\t\t\"framework\"\n\t],\n\t\"files\": [\n\t\t\"dist\",\n\t\t\"src\",\n\t\t\"deno.json\",\n\t\t\"bun.json\",\n\t\t\"package.json\"\n\t],\n\t\"type\": \"module\",\n\t\"exports\": {\n\t\t\".\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./workflow\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/workflow/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/workflow/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/workflow/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/workflow/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./client\": {\n\t\t\t\"import\": {\n\t\t\t\t\"browser\": {\n\t\t\t\t\t\"types\": \"./dist/browser/client.d.ts\",\n\t\t\t\t\t\"default\": \"./dist/browser/client.js\"\n\t\t\t\t},\n\t\t\t\t\"types\": \"./dist/tsup/client/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/client/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/client/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/client/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./log\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/log.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/log.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/log.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/log.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./errors\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/actor/errors.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/actor/errors.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/actor/errors.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/actor/errors.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./utils\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/utils.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/utils.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/utils.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/utils.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-helpers\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-helpers/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-helpers/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-helpers/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-helpers/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-helpers/websocket\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/websocket.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/websocket.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/common/websocket.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/common/websocket.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./driver-test-suite\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-test-suite/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-test-suite/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/driver-test-suite/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/driver-test-suite/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./serve-test-suite\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/serve-test-suite/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/serve-test-suite/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/serve-test-suite/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/serve-test-suite/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./topologies/coordinate\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/coordinate/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/coordinate/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/coordinate/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/coordinate/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./topologies/partition\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/partition/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/partition/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/topologies/partition/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/topologies/partition/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./test\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/test/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/test/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/test/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/test/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./inspector\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/inspector/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/inspector/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/inspector/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/inspector/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./inspector/client\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/browser/inspector/client.d.ts\",\n\t\t\t\t\"default\": \"./dist/browser/inspector/client.js\"\n\t\t\t}\n\t\t},\n\t\t\"./db\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/mod.cjs\"\n\t\t\t}\n\t\t},\n\t\t\"./db/drizzle\": {\n\t\t\t\"import\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/drizzle/mod.d.ts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/drizzle/mod.js\"\n\t\t\t},\n\t\t\t\"require\": {\n\t\t\t\t\"types\": \"./dist/tsup/db/drizzle/mod.d.cts\",\n\t\t\t\t\"default\": \"./dist/tsup/db/drizzle/mod.cjs\"\n\t\t\t}\n\t\t}\n\t},\n\t\"engines\": {\n\t\t\"node\": \">=22.0.0\"\n\t},\n\t\"sideEffects\": [\n\t\t\"./dist/tsup/chunk-*.js\",\n\t\t\"./dist/tsup/chunk-*.cjs\"\n\t],\n\t\"scripts\": {\n \t\t\"build\": \"tsup src/mod.ts src/client/mod.ts src/common/log.ts src/common/websocket.ts src/actor/errors.ts src/topologies/coordinate/mod.ts src/topologies/partition/mod.ts src/utils.ts src/driver-helpers/mod.ts src/driver-test-suite/mod.ts src/serve-test-suite/mod.ts src/test/mod.ts src/inspector/mod.ts src/workflow/mod.ts src/db/mod.ts src/db/drizzle/mod.ts\",\n\t\t\"build:browser\": \"tsup --config tsup.browser.config.ts\",\n\t\t\"build:schema\": \"./scripts/compile-bare.ts compile schemas/client-protocol/v1.bare -o dist/schemas/client-protocol/v1.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v2.bare -o dist/schemas/client-protocol/v2.ts && ./scripts/compile-bare.ts compile schemas/client-protocol/v3.bare -o dist/schemas/client-protocol/v3.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v1.bare -o dist/schemas/file-system-driver/v1.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v2.bare -o dist/schemas/file-system-driver/v2.ts && ./scripts/compile-bare.ts compile schemas/file-system-driver/v3.bare -o dist/schemas/file-system-driver/v3.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v1.bare -o dist/schemas/actor-persist/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v2.bare -o dist/schemas/actor-persist/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v3.bare -o dist/schemas/actor-persist/v3.ts && ./scripts/compile-bare.ts compile schemas/actor-persist/v4.bare -o dist/schemas/actor-persist/v4.ts && ./scripts/compile-bare.ts compile schemas/persist/v1.bare -o dist/schemas/persist/v1.ts && ./scripts/compile-bare.ts compile schemas/transport/v1.bare -o dist/schemas/transport/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v1.bare -o dist/schemas/actor-inspector/v1.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v2.bare -o dist/schemas/actor-inspector/v2.ts && ./scripts/compile-bare.ts compile schemas/actor-inspector/v3.bare -o dist/schemas/actor-inspector/v3.ts\",\n\t\t\"check-types\": \"tsc --noEmit\",\n\t\t\"lint\": \"biome check .\",\n\t\t\"lint:fix\": \"biome check --write .\",\n\t\t\"format\": \"biome format .\",\n\t\t\"format:write\": \"biome format --write .\",\n\t\t\"test\": \"vitest run\",\n\t\t\"test:watch\": \"vitest\",\n\t\t\"manager-openapi-gen\": \"tsx scripts/manager-openapi-gen.ts\",\n\t\t\"dump-asyncapi\": \"tsx scripts/dump-asyncapi.ts\",\n\t\t\"registry-config-schema-gen\": \"tsx scripts/registry-config-schema-gen.ts\",\n\t\t\"actor-config-schema-gen\": \"tsx scripts/actor-config-schema-gen.ts\",\n\t\t\"build:pack-inspector\": \"tsx scripts/pack-inspector.ts\"\n\t},\n\t\"dependencies\": {\n\t\t\"@hono/standard-validator\": \"^0.1.3\",\n\t\t\"@hono/zod-openapi\": \"^1.1.5\",\n\t\t\"@rivetkit/bare-ts\": \"^0.6.2\",\n\t\t\"@rivetkit/engine-runner\": \"workspace:*\",\n\t\t\"@rivetkit/fast-json-patch\": \"^3.1.2\",\n\t\t\"@rivetkit/on-change\": \"^6.0.2-rc.1\",\n\t\t\"@rivetkit/sqlite-vfs\": \"workspace:*\",\n\t\t\"@rivetkit/traces\": \"workspace:*\",\n\t\t\"@rivetkit/virtual-websocket\": \"workspace:*\",\n\t\t\"@rivetkit/workflow-engine\": \"workspace:*\",\n\t\t\"cbor-x\": \"^1.6.0\",\n\t\t\"get-port\": \"^7.1.0\",\n\t\t\"hono\": \"^4.7.0\",\n\t\t\"invariant\": \"^2.2.4\",\n\t\t\"nanoevents\": \"^9.1.0\",\n\t\t\"p-retry\": \"^6.2.1\",\n\t\t\"pino\": \"^9.5.0\",\n\t\t\"tar\": \"^7.5.0\",\n\t\t\"uuid\": \"^12.0.0\",\n\t\t\"vbare\": \"^0.0.4\",\n\t\t\"@rivetkit/sqlite\": \"^0.1.1\",\n\t\t\"zod\": \"^4.1.0\"\n\t},\n\t\"devDependencies\": {\n\t\t\"@bare-ts/tools\": \"^0.13.0\",\n\t\t\"@biomejs/biome\": \"^2.3\",\n\t\t\"@hono/node-server\": \"^1.18.2\",\n\t\t\"@hono/node-ws\": \"^1.1.1\",\n\t\t\"@standard-schema/spec\": \"^1.0.0\",\n\t\t\"@types/invariant\": \"^2\",\n\t\t\"@types/node\": \"^22.13.1\",\n\t\t\"@types/ws\": \"^8\",\n\t\t\"@vitest/ui\": \"3.1.1\",\n\t\t\"cli-table3\": \"^0.6.5\",\n\t\t\"commander\": \"^12.1.0\",\n\t\t\"eventsource\": \"^4.0.0\",\n\t\t\"local-pkg\": \"^0.5.1\",\n\t\t\"tsup\": \"^8.4.0\",\n\t\t\"tsx\": \"^4.19.4\",\n\t\t\"typescript\": \"^5.7.3\",\n\t\t\"vite-tsconfig-paths\": \"^5.1.4\",\n\t\t\"vitest\": \"^3.1.1\",\n\t\t\"ws\": \"^8.18.1\",\n\t\t\"zod-to-json-schema\": \"^3.25.0\"\n\t},\n\t\"peerDependencies\": {\n\t\t\"@hono/node-server\": \"^1.14.0\",\n\t\t\"@hono/node-ws\": \"^1.1.1\",\n\t\t\"drizzle-kit\": \"^0.31.2\",\n\t\t\"drizzle-orm\": \"^0.44.2\",\n\t\t\"eventsource\": \"^4.0.0\",\n\t\t\"ws\": \"^8.0.0\"\n\t},\n\t\"peerDependenciesMeta\": {\n\t\t\"@hono/node-server\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"@hono/node-ws\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"drizzle-kit\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"drizzle-orm\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"eventsource\": {\n\t\t\t\"optional\": true\n\t\t},\n\t\t\"ws\": {\n\t\t\t\"optional\": true\n\t\t}\n\t},\n\t\"stableVersion\": \"0.8.0\"\n}\n","import { stringifyError } from \"@/common/utils\";\nimport type { Context as HonoContext, Handler as HonoHandler } from \"hono\";\nimport { stringify as uuidstringify } from \"uuid\";\nimport pkgJson from \"../package.json\" with { type: \"json\" };\nimport { getLogger } from \"./common/log\";\nimport { assertUnreachable } from \"./common/utils\";\n\n/** @experimental */\nexport { stringifyError };\n\n/** @experimental */\nexport { assertUnreachable };\n\n/**\n * Joins multiple abort signals into one.\n *\n * The returned signal aborts when the first input signal aborts.\n * Uses `AbortSignal.any(...)` when available, with a runtime fallback.\n *\n * @experimental\n */\nexport function joinSignals(\n\t...signals: Array<AbortSignal | undefined | null>\n): AbortSignal {\n\tconst validSignals = signals.filter(\n\t\t(signal): signal is AbortSignal => signal != null,\n\t);\n\n\tif (validSignals.length === 0) {\n\t\treturn new AbortController().signal;\n\t}\n\n\tif (validSignals.length === 1) {\n\t\treturn validSignals[0];\n\t}\n\n\tconst signalAny = (\n\t\tAbortSignal as typeof AbortSignal & {\n\t\t\tany?: (signals: AbortSignal[]) => AbortSignal;\n\t\t}\n\t).any;\n\tif (typeof signalAny === \"function\") {\n\t\treturn signalAny(validSignals);\n\t}\n\n\tconst controller = new AbortController();\n\tconst cleanups: Array<() => void> = [];\n\n\tconst abortWithSignal = (signal: AbortSignal) => {\n\t\tif (controller.signal.aborted) {\n\t\t\treturn;\n\t\t}\n\n\t\tfor (const cleanup of cleanups) {\n\t\t\tcleanup();\n\t\t}\n\n\t\tconst reason = (signal as AbortSignal & { reason?: unknown }).reason;\n\t\tcontroller.abort(reason);\n\t};\n\n\tfor (const signal of validSignals) {\n\t\tif (signal.aborted) {\n\t\t\tabortWithSignal(signal);\n\t\t\tbreak;\n\t\t}\n\n\t\tconst onAbort = () => abortWithSignal(signal);\n\t\tsignal.addEventListener(\"abort\", onAbort, { once: true });\n\t\tcleanups.push(() => signal.removeEventListener(\"abort\", onAbort));\n\t}\n\n\treturn controller.signal;\n}\n\n/**\n * Returns a promise that resolves after the given number of milliseconds.\n *\n * @experimental\n */\nexport function sleep(ms: number): Promise<void> {\n\treturn new Promise<void>((resolve) => setTimeout(resolve, ms));\n}\n\n/**\n * Creates a fixed-rate interval tick function that can be awaited in a loop.\n *\n * @example\n * const tick = interval(100);\n * while (!c.aborted) {\n * await tick();\n * if (c.aborted) break;\n * // ... game logic\n * }\n *\n * @experimental\n */\nexport function interval(ms: number): () => Promise<void> {\n\treturn () => sleep(ms);\n}\n\nexport const VERSION = pkgJson.version;\n\nlet _userAgent: string | undefined;\n\nfunction logger() {\n\treturn getLogger(\"utils\");\n}\n\n/**\n * Builds the HTTP user agent used by this library.\n *\n * @experimental\n */\nexport function httpUserAgent(): string {\n\t// Return cached value if already initialized\n\tif (_userAgent !== undefined) {\n\t\treturn _userAgent;\n\t}\n\n\t// Library\n\tlet userAgent = `RivetKit/${VERSION}`;\n\n\t// Navigator\n\tconst navigatorObj =\n\t\ttypeof navigator !== \"undefined\" ? navigator : undefined;\n\tif (navigatorObj?.userAgent) userAgent += ` ${navigatorObj.userAgent}`;\n\n\t_userAgent = userAgent;\n\n\treturn userAgent;\n}\n\nexport type UpgradeWebSocket = (\n\tcreateEvents: (c: HonoContext) => any,\n) => HonoHandler;\n\nexport type GetUpgradeWebSocket = () => UpgradeWebSocket;\n\n/**\n * Reads an environment variable from Deno or Node runtimes.\n *\n * @experimental\n */\nexport function getEnvUniversal(key: string): string | undefined {\n\tif (typeof Deno !== \"undefined\") {\n\t\treturn Deno.env.get(key);\n\t} else if (typeof process !== \"undefined\") {\n\t\t// Do this after Deno since `process` is sometimes polyfilled\n\t\treturn process.env[key];\n\t}\n}\n\n/**\n * Traces a debug value and returns it.\n *\n * @experimental\n */\nexport function dbg<T>(x: T): T {\n\tconsole.trace(`=== DEBUG ===\\n${x}`);\n\treturn x;\n}\n\n/**\n * Converts various ArrayBuffer-like types to Uint8Array.\n * Handles ArrayBuffer, ArrayBufferView (including typed arrays), and passes through existing Uint8Array.\n *\n * @param data - The ArrayBuffer or ArrayBufferView to convert\n * @returns A Uint8Array view of the data\n *\n * @experimental\n */\nexport function toUint8Array(data: ArrayBuffer | ArrayBufferView): Uint8Array {\n\tif (data instanceof Uint8Array) {\n\t\treturn data;\n\t} else if (data instanceof ArrayBuffer) {\n\t\treturn new Uint8Array(data);\n\t} else if (ArrayBuffer.isView(data)) {\n\t\t// Handle other ArrayBufferView types (Int8Array, Uint16Array, DataView, etc.)\n\t\treturn new Uint8Array(\n\t\t\tdata.buffer.slice(\n\t\t\t\tdata.byteOffset,\n\t\t\t\tdata.byteOffset + data.byteLength,\n\t\t\t),\n\t\t);\n\t} else {\n\t\tthrow new TypeError(\"Input must be ArrayBuffer or ArrayBufferView\");\n\t}\n}\n\n// Long timeouts\n//\n// JavaScript timers use a signed 32-bit integer for delays, so values above 2^31-1 (~24.8 days)\n// are not reliable and may fire immediately or overflow.\n//\n// https://developer.mozilla.org/en-US/docs/Web/API/Window/setTimeout#maximum_delay_value\nconst TIMEOUT_MAX = 2147483647; // 2^31-1\n\nexport type LongTimeoutHandle = { abort: () => void };\n\n/**\n * Polyfill for Promise.withResolvers().\n *\n * This is specifically for Cloudflare Workers. Their implementation of Promise.withResolvers does not work correctly.\n *\n * @experimental\n */\nexport function promiseWithResolvers<T>(onReject: (reason?: any) => void): {\n\tpromise: Promise<T>;\n\tresolve: (value: T | PromiseLike<T>) => void;\n\treject: (reason?: any) => void;\n} {\n\tlet resolve!: (value: T | PromiseLike<T>) => void;\n\tlet reject!: (reason?: any) => void;\n\tconst promise = new Promise<T>((res, rej) => {\n\t\tresolve = res;\n\t\treject = rej;\n\t});\n\tpromise.catch(onReject);\n\treturn { promise, resolve, reject };\n}\n\n/**\n * Sets a timeout that supports delays larger than the JavaScript timer limit.\n *\n * @experimental\n */\nexport function setLongTimeout(\n\tlistener: () => void,\n\tafter: number,\n): LongTimeoutHandle {\n\tlet timeout: ReturnType<typeof setTimeout> | undefined;\n\n\tfunction start(remaining: number) {\n\t\tif (remaining <= TIMEOUT_MAX) {\n\t\t\ttimeout = setTimeout(listener, remaining);\n\t\t} else {\n\t\t\ttimeout = setTimeout(() => {\n\t\t\t\tstart(remaining - TIMEOUT_MAX);\n\t\t\t}, TIMEOUT_MAX);\n\t\t}\n\t}\n\n\tstart(after);\n\n\treturn {\n\t\tabort: () => {\n\t\t\tif (timeout !== undefined) clearTimeout(timeout);\n\t\t},\n\t};\n}\n\n/**\n * A tiny utility that coalesces/enqueues async operations so only the latest\n * queued task runs per cycle, while callers receive a promise that resolves\n * when the task for the cycle they joined has completed.\n */\nexport class SinglePromiseQueue {\n\t/** Next operation to execute in the queue. If attempting to enqueue another op, it will override the existing op. */\n\t#queuedOp?: () => Promise<void>;\n\n\t/** The currently running promise of #drainLoop. Do not await this, instead await `pending` to await the current cycle. */\n\trunningDrainLoop?: Promise<void>;\n\n\t/** Pending resolver fro the currently queued entry. */\n\t#pending?: ReturnType<typeof promiseWithResolvers<void>>;\n\n\t/** Queue the next operation and return a promise that resolves when it flushes. */\n\tenqueue(op: () => Promise<void>): Promise<void> {\n\t\t// Replace any previously queued operation with the latest one\n\t\tthis.#queuedOp = op;\n\n\t\t// Ensure a shared resolver exists for all callers in this cycle\n\t\tif (!this.#pending) {\n\t\t\tthis.#pending = promiseWithResolvers<void>((reason) => logger().warn({ msg: \"unhandled single promise queue rejection\", reason }));\n\t\t}\n\n\t\tconst waitForThisCycle = this.#pending.promise;\n\n\t\t// Start runner if not already running\n\t\tif (!this.runningDrainLoop) {\n\t\t\tthis.runningDrainLoop = this.#drainLoop();\n\t\t}\n\n\t\treturn waitForThisCycle;\n\t}\n\n\t/** Drain queued operations sequentially until there is nothing left. */\n\tasync #drainLoop(): Promise<void> {\n\t\ttry {\n\t\t\twhile (this.#queuedOp) {\n\t\t\t\t// Capture current cycle resolver then reset for the next cycle\n\t\t\t\tconst resolver = this.#pending;\n\t\t\t\tthis.#pending = undefined;\n\n\t\t\t\t// Capture and clear the currently queued operation\n\t\t\t\tconst op = this.#queuedOp;\n\t\t\t\tthis.#queuedOp = undefined;\n\n\t\t\t\ttry {\n\t\t\t\t\tawait op();\n\t\t\t\t\t// Notify all waiters for this cycle\n\t\t\t\t\tresolver?.resolve();\n\t\t\t\t} catch (err) {\n\t\t\t\t\tlogger().error({\n\t\t\t\t\t\tmsg: \"error in SinglePromiseQueue drain loop\",\n\t\t\t\t\t\terror: stringifyError(err),\n\t\t\t\t\t});\n\t\t\t\t\t// Reject all waiters for this cycle\n\t\t\t\t\tresolver?.reject(err);\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tthis.runningDrainLoop = undefined;\n\t\t}\n\t}\n}\n\n/**\n * Converts a Buffer or Uint8Array into an ArrayBuffer view.\n *\n * @experimental\n */\nexport function bufferToArrayBuffer(buf: Buffer | Uint8Array): ArrayBuffer {\n\treturn buf.buffer.slice(\n\t\tbuf.byteOffset,\n\t\tbuf.byteOffset + buf.byteLength,\n\t) as ArrayBuffer;\n}\n\n/**\n * Properly combines a base URL endpoint with a path, preserving any base path in the endpoint.\n *\n * @example\n * combineUrlPath(\"http://localhost:8787/rivet\", \"/actors/action\")\n * // Returns: \"http://localhost:8787/rivet/actors/action\"\n *\n * @example\n * combineUrlPath(\"http://localhost:8787/rivet\", \"/actors?type=foo\", { namespace: \"test\" })\n * // Returns: \"http://localhost:8787/rivet/actors?type=foo&namespace=test\"\n *\n * @param endpoint The base URL endpoint that may contain a path component\n * @param path The path to append to the endpoint (may include query parameters)\n * @param queryParams Optional additional query parameters to append\n * @returns The properly combined URL string\n *\n * @experimental\n */\nexport function combineUrlPath(\n\tendpoint: string,\n\tpath: string,\n\tqueryParams?: Record<string, string | undefined>,\n): string {\n\tconst baseUrl = new URL(endpoint);\n\n\t// Extract path and query from the provided path\n\tconst pathParts = path.split(\"?\");\n\tconst pathOnly = pathParts[0];\n\tconst existingQuery = pathParts[1] || \"\";\n\n\t// Remove trailing slash from base path and ensure path starts with /\n\tconst basePath = baseUrl.pathname.replace(/\\/$/, \"\");\n\tconst cleanPath = pathOnly.startsWith(\"/\") ? pathOnly : `/${pathOnly}`;\n\t// Combine paths and remove any double slashes\n\tconst fullPath = (basePath + cleanPath).replace(/\\/\\//g, \"/\");\n\n\t// Build query string\n\tconst queryParts: string[] = [];\n\tif (existingQuery) {\n\t\tqueryParts.push(existingQuery);\n\t}\n\tif (queryParams) {\n\t\tfor (const [key, value] of Object.entries(queryParams)) {\n\t\t\tif (value !== undefined) {\n\t\t\t\tqueryParts.push(\n\t\t\t\t\t`${encodeURIComponent(key)}=${encodeURIComponent(value)}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst fullQuery = queryParts.length > 0 ? `?${queryParts.join(\"&\")}` : \"\";\n\treturn `${baseUrl.protocol}//${baseUrl.host}${fullPath}${fullQuery}`;\n}\n\n/**\n * Compares two ArrayBuffer values by byte content.\n *\n * @experimental\n */\nexport function arrayBuffersEqual(\n\tbuf1: ArrayBuffer,\n\tbuf2: ArrayBuffer,\n): boolean {\n\tif (buf1.byteLength !== buf2.byteLength) return false;\n\n\tconst view1 = new Uint8Array(buf1);\n\tconst view2 = new Uint8Array(buf2);\n\n\tfor (let i = 0; i < view1.length; i++) {\n\t\tif (view1[i] !== view2[i]) return false;\n\t}\n\treturn true;\n}\n\nexport const EXTRA_ERROR_LOG = {\n\tissues: \"https://github.com/rivet-dev/rivetkit/issues\",\n\tsupport: \"https://rivet.dev/discord\",\n\tversion: VERSION,\n};\n\nexport type Runtime = \"deno\" | \"bun\" | \"node\";\n\n/**\n * Detects the current JavaScript runtime from the user agent.\n *\n * @experimental\n */\nexport function detectRuntime(): Runtime {\n\tconst userAgent =\n\t\ttypeof navigator !== \"undefined\" ? navigator.userAgent : \"\";\n\tif (userAgent.includes(\"Deno\")) {\n\t\treturn \"deno\";\n\t}\n\tif (userAgent.includes(\"Bun\")) {\n\t\treturn \"bun\";\n\t}\n\treturn \"node\";\n}\n\nexport type DeepReadonly<T> = {\n\treadonly [K in keyof T]: T[K] extends object ? DeepReadonly<T[K]> : T[K];\n};\n\nexport type DeepMutable<T> = {\n\t-readonly [K in keyof T]: T[K] extends object ? DeepMutable<T[K]> : T[K];\n};\n","import type { WorkflowHistory } from \"@/schemas/transport/mod\";\nimport {\n\tdecodeWorkflowHistory,\n\tencodeWorkflowHistory,\n} from \"@/schemas/transport/mod\";\nimport { bufferToArrayBuffer, toUint8Array } from \"@/utils\";\n\nexport function encodeWorkflowHistoryTransport(\n\thistory: WorkflowHistory,\n): ArrayBuffer {\n\treturn bufferToArrayBuffer(encodeWorkflowHistory(history));\n}\n\nexport function decodeWorkflowHistoryTransport(\n\tdata: ArrayBuffer | ArrayBufferView,\n): WorkflowHistory {\n\treturn decodeWorkflowHistory(toUint8Array(data));\n}\n"],"mappings":"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","names":["bare","config","readPatchStateRequest","writePatchStateRequest","readActionRequest","writeActionRequest","readStateRequest","writeStateRequest","readConnectionsRequest","writeConnectionsRequest","readRpcsListRequest","writeRpcsListRequest","readToServerBody","writeToServerBody","readToServer","writeToServer","encodeToServer","decodeToServer","readState","writeState","readConnection","writeConnection","read0","write0","read1","write1","read2","write2","read3","write3","readInit","writeInit","readConnectionsResponse","writeConnectionsResponse","readStateResponse","writeStateResponse","readActionResponse","writeActionResponse","readStateUpdated","writeStateUpdated","readRpcsListResponse","writeRpcsListResponse","readConnectionsUpdated","writeConnectionsUpdated","readError","writeError","readToClientBody","writeToClientBody","readToClient","writeToClient","encodeToClient","decodeToClient","bare","config","readPatchStateRequest","writePatchStateRequest","readActionRequest","writeActionRequest","readStateRequest","writeStateRequest","readConnectionsRequest","writeConnectionsRequest","readRpcsListRequest","writeRpcsListRequest","readTraceQueryRequest","writeTraceQueryRequest","readQueueRequest","writeQueueRequest","readWorkflowHistoryRequest","writeWorkflowHistoryRequest","readToServerBody","writeToServerBody","readToServer","writeToServer","encodeToServer","decodeToServer","readState","writeState","readConnection","writeConnection","readWorkflowHistory","writeWorkflowHistory","read0","write0","read1","write1","read2","write2","read3","write3","readInit","writeInit","readConnectionsResponse","writeConnectionsResponse","readStateResponse","writeStateResponse","readActionResponse","writeActionResponse","readTraceQueryResponse","writeTraceQueryResponse","readQueueMessageSummary","writeQueueMessageSummary","read4","write4","readQueueStatus","writeQueueStatus","readQueueResponse","writeQueueResponse","readWorkflowHistoryResponse","writeWorkflowHistoryResponse","readStateUpdated","writeStateUpdated","readQueueUpdated","writeQueueUpdated","readWorkflowHistoryUpdated","writeWorkflowHistoryUpdated","readRpcsListResponse","writeRpcsListResponse","readConnectionsUpdated","writeConnectionsUpdated","readError","writeError","readToClientBody","writeToClientBody","readToClient","writeToClient","encodeToClient","decodeToClient","encodeToServer","decodeToServer","encodeToClient","decodeToClient","bare","config","read0","write0","read1","write1","read2","write2","read3","write3","read4","write4","readWorkflowHistory","writeWorkflowHistory","config"]}
|