rivetkit 2.3.11-rc.2 → 2.3.11-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/browser/client.d.ts +17 -0
  2. package/dist/browser/client.js +20 -9
  3. package/dist/browser/client.js.map +1 -1
  4. package/dist/browser/inspector/client.js +1 -1
  5. package/dist/browser/inspector/client.js.map +1 -1
  6. package/dist/tsup/agent-os/index.cjs +1 -1
  7. package/dist/tsup/agent-os/index.cjs.map +1 -1
  8. package/dist/tsup/agent-os/index.d.cts +16 -0
  9. package/dist/tsup/agent-os/index.d.ts +16 -0
  10. package/dist/tsup/agent-os/index.js +1 -1
  11. package/dist/tsup/agent-os/index.js.map +1 -1
  12. package/dist/tsup/{chunk-3NPCXMJS.cjs → chunk-3BQTLF6T.cjs} +158 -147
  13. package/dist/tsup/chunk-3BQTLF6T.cjs.map +1 -0
  14. package/dist/tsup/{chunk-7TVKYMD3.cjs → chunk-3WCNDXDU.cjs} +4 -4
  15. package/dist/tsup/{chunk-7TVKYMD3.cjs.map → chunk-3WCNDXDU.cjs.map} +1 -1
  16. package/dist/tsup/{chunk-XR2KF2ZA.js → chunk-5KLTIO35.js} +25 -14
  17. package/dist/tsup/chunk-5KLTIO35.js.map +1 -0
  18. package/dist/tsup/{chunk-XWIXH7JF.js → chunk-7N4PSYCJ.js} +2 -2
  19. package/dist/tsup/{chunk-XWIXH7JF.js.map → chunk-7N4PSYCJ.js.map} +1 -1
  20. package/dist/tsup/{chunk-5SHK4JM5.cjs → chunk-DD4HSOMO.cjs} +2 -2
  21. package/dist/tsup/{chunk-5SHK4JM5.cjs.map → chunk-DD4HSOMO.cjs.map} +1 -1
  22. package/dist/tsup/{chunk-NRRWLN6D.cjs → chunk-G66RAENX.cjs} +3 -3
  23. package/dist/tsup/{chunk-NRRWLN6D.cjs.map → chunk-G66RAENX.cjs.map} +1 -1
  24. package/dist/tsup/{chunk-NLAW2MIM.js → chunk-I3OXZILZ.js} +2 -2
  25. package/dist/tsup/{chunk-J4RT6EFK.cjs → chunk-RRVTP46R.cjs} +9 -9
  26. package/dist/tsup/{chunk-J4RT6EFK.cjs.map → chunk-RRVTP46R.cjs.map} +1 -1
  27. package/dist/tsup/{chunk-RVJQMOAA.js → chunk-S26YGW4T.js} +2 -2
  28. package/dist/tsup/{chunk-75K5VACB.js → chunk-TP5MGPLS.js} +3 -3
  29. package/dist/tsup/{chunk-LPGJPAVY.cjs → chunk-VAG7L6N3.cjs} +7 -7
  30. package/dist/tsup/{chunk-LPGJPAVY.cjs.map → chunk-VAG7L6N3.cjs.map} +1 -1
  31. package/dist/tsup/{chunk-KHSNHG4G.js → chunk-ZI6TSSI4.js} +3 -3
  32. package/dist/tsup/client/mod.cjs +5 -5
  33. package/dist/tsup/client/mod.d.cts +2 -2
  34. package/dist/tsup/client/mod.d.ts +2 -2
  35. package/dist/tsup/client/mod.js +4 -4
  36. package/dist/tsup/common/log.cjs +2 -2
  37. package/dist/tsup/common/log.js +1 -1
  38. package/dist/tsup/common/websocket.cjs +3 -3
  39. package/dist/tsup/common/websocket.js +2 -2
  40. package/dist/tsup/{config-BKAMOHez.d.ts → config-CZcjyT5B.d.ts} +17 -0
  41. package/dist/tsup/{config-Caocy3Z9.d.cts → config-rGWrumlO.d.cts} +17 -0
  42. package/dist/tsup/{context-D1_m5x1D.d.cts → context-B8W8E8nW.d.cts} +1 -1
  43. package/dist/tsup/{context-AfCExwbr.d.ts → context-_UrDZhEh.d.ts} +1 -1
  44. package/dist/tsup/db/drizzle.cjs +2 -2
  45. package/dist/tsup/db/drizzle.js +1 -1
  46. package/dist/tsup/db/mod.cjs +2 -2
  47. package/dist/tsup/db/mod.js +1 -1
  48. package/dist/tsup/dynamic/mod.d.cts +1 -1
  49. package/dist/tsup/dynamic/mod.d.ts +1 -1
  50. package/dist/tsup/inspector/mod.cjs +4 -4
  51. package/dist/tsup/inspector/mod.js +3 -3
  52. package/dist/tsup/inspector-tab/mod.d.cts +2 -2
  53. package/dist/tsup/inspector-tab/mod.d.ts +2 -2
  54. package/dist/tsup/mod.cjs +65 -65
  55. package/dist/tsup/mod.d.cts +3 -3
  56. package/dist/tsup/mod.d.ts +3 -3
  57. package/dist/tsup/mod.js +4 -4
  58. package/dist/tsup/test/mod.cjs +6 -6
  59. package/dist/tsup/test/mod.d.cts +1 -1
  60. package/dist/tsup/test/mod.d.ts +1 -1
  61. package/dist/tsup/test/mod.js +4 -4
  62. package/dist/tsup/utils.cjs +2 -2
  63. package/dist/tsup/utils.js +1 -1
  64. package/dist/tsup/workflow/mod.cjs +6 -6
  65. package/dist/tsup/workflow/mod.d.cts +3 -3
  66. package/dist/tsup/workflow/mod.d.ts +3 -3
  67. package/dist/tsup/workflow/mod.js +3 -3
  68. package/package.json +8 -8
  69. package/src/client/client.ts +11 -0
  70. package/src/client/query.ts +2 -0
  71. package/src/client/resolve-gateway-target.ts +2 -0
  72. package/src/engine-client/driver.ts +4 -0
  73. package/src/engine-client/mod.ts +13 -4
  74. package/dist/tsup/chunk-3NPCXMJS.cjs.map +0 -1
  75. package/dist/tsup/chunk-XR2KF2ZA.js.map +0 -1
  76. /package/dist/tsup/{chunk-NLAW2MIM.js.map → chunk-I3OXZILZ.js.map} +0 -0
  77. /package/dist/tsup/{chunk-RVJQMOAA.js.map → chunk-S26YGW4T.js.map} +0 -0
  78. /package/dist/tsup/{chunk-75K5VACB.js.map → chunk-TP5MGPLS.js.map} +0 -0
  79. /package/dist/tsup/{chunk-KHSNHG4G.js.map → chunk-ZI6TSSI4.js.map} +0 -0
@@ -19,7 +19,7 @@
19
19
 
20
20
 
21
21
 
22
- var _chunk5SHK4JM5cjs = require('./chunk-5SHK4JM5.cjs');
22
+ var _chunkDD4HSOMOcjs = require('./chunk-DD4HSOMO.cjs');
23
23
  require('./chunk-4FC7TVS6.cjs');
24
24
 
25
25
 
@@ -42,5 +42,5 @@ require('./chunk-4FC7TVS6.cjs');
42
42
 
43
43
 
44
44
 
45
- exports.EXTRA_ERROR_LOG = _chunk5SHK4JM5cjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunk5SHK4JM5cjs.SinglePromiseQueue; exports.VERSION = _chunk5SHK4JM5cjs.VERSION; exports.arrayBuffersEqual = _chunk5SHK4JM5cjs.arrayBuffersEqual; exports.assertUnreachable = _chunk5SHK4JM5cjs.assertUnreachable; exports.bufferToArrayBuffer = _chunk5SHK4JM5cjs.bufferToArrayBuffer; exports.combineUrlPath = _chunk5SHK4JM5cjs.combineUrlPath; exports.dbg = _chunk5SHK4JM5cjs.dbg; exports.detectRuntime = _chunk5SHK4JM5cjs.detectRuntime; exports.getEnvUniversal = _chunk5SHK4JM5cjs.getEnvUniversal; exports.httpUserAgent = _chunk5SHK4JM5cjs.httpUserAgent; exports.interval = _chunk5SHK4JM5cjs.interval; exports.joinSignals = _chunk5SHK4JM5cjs.joinSignals; exports.jsonParseCompat = _chunk5SHK4JM5cjs.jsonParseCompat; exports.jsonStringifyCompat = _chunk5SHK4JM5cjs.jsonStringifyCompat; exports.promiseWithResolvers = _chunk5SHK4JM5cjs.promiseWithResolvers; exports.setLongTimeout = _chunk5SHK4JM5cjs.setLongTimeout; exports.sleep = _chunk5SHK4JM5cjs.sleep; exports.stringifyError = _chunk5SHK4JM5cjs.stringifyError; exports.toUint8Array = _chunk5SHK4JM5cjs.toUint8Array;
45
+ exports.EXTRA_ERROR_LOG = _chunkDD4HSOMOcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunkDD4HSOMOcjs.SinglePromiseQueue; exports.VERSION = _chunkDD4HSOMOcjs.VERSION; exports.arrayBuffersEqual = _chunkDD4HSOMOcjs.arrayBuffersEqual; exports.assertUnreachable = _chunkDD4HSOMOcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkDD4HSOMOcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunkDD4HSOMOcjs.combineUrlPath; exports.dbg = _chunkDD4HSOMOcjs.dbg; exports.detectRuntime = _chunkDD4HSOMOcjs.detectRuntime; exports.getEnvUniversal = _chunkDD4HSOMOcjs.getEnvUniversal; exports.httpUserAgent = _chunkDD4HSOMOcjs.httpUserAgent; exports.interval = _chunkDD4HSOMOcjs.interval; exports.joinSignals = _chunkDD4HSOMOcjs.joinSignals; exports.jsonParseCompat = _chunkDD4HSOMOcjs.jsonParseCompat; exports.jsonStringifyCompat = _chunkDD4HSOMOcjs.jsonStringifyCompat; exports.promiseWithResolvers = _chunkDD4HSOMOcjs.promiseWithResolvers; exports.setLongTimeout = _chunkDD4HSOMOcjs.setLongTimeout; exports.sleep = _chunkDD4HSOMOcjs.sleep; exports.stringifyError = _chunkDD4HSOMOcjs.stringifyError; exports.toUint8Array = _chunkDD4HSOMOcjs.toUint8Array;
46
46
  //# sourceMappingURL=utils.cjs.map
@@ -19,7 +19,7 @@ import {
19
19
  sleep,
20
20
  stringifyError,
21
21
  toUint8Array
22
- } from "./chunk-XWIXH7JF.js";
22
+ } from "./chunk-7N4PSYCJ.js";
23
23
  import "./chunk-ZZ3WBRPD.js";
24
24
  export {
25
25
  EXTRA_ERROR_LOG,
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } var _class; var _class2;
2
2
 
3
- var _chunkJ4RT6EFKcjs = require('../chunk-J4RT6EFK.cjs');
4
- require('../chunk-7TVKYMD3.cjs');
3
+ var _chunkRRVTP46Rcjs = require('../chunk-RRVTP46R.cjs');
4
+ require('../chunk-3WCNDXDU.cjs');
5
5
 
6
6
 
7
7
 
@@ -12,7 +12,7 @@ var _chunkHNHLBM3Ycjs = require('../chunk-HNHLBM3Y.cjs');
12
12
  var _chunkMYWZCDMLcjs = require('../chunk-MYWZCDML.cjs');
13
13
 
14
14
 
15
- var _chunk5SHK4JM5cjs = require('../chunk-5SHK4JM5.cjs');
15
+ var _chunkDD4HSOMOcjs = require('../chunk-DD4HSOMO.cjs');
16
16
 
17
17
 
18
18
 
@@ -716,7 +716,7 @@ function workflow(fn, options = {}) {
716
716
  function getWorkflowInspector(actorId) {
717
717
  let workflowInspector = workflowInspectors.get(actorId);
718
718
  if (!workflowInspector) {
719
- workflowInspector = _chunkJ4RT6EFKcjs.createWorkflowInspectorAdapter.call(void 0, );
719
+ workflowInspector = _chunkRRVTP46Rcjs.createWorkflowInspectorAdapter.call(void 0, );
720
720
  workflowInspectors.set(actorId, workflowInspector);
721
721
  }
722
722
  return workflowInspector;
@@ -784,13 +784,13 @@ function workflow(fn, options = {}) {
784
784
  if (shouldRethrowWorkflowError(error)) {
785
785
  runCtx.log.error({
786
786
  msg: "workflow run failed",
787
- error: _chunk5SHK4JM5cjs.stringifyError.call(void 0, error)
787
+ error: _chunkDD4HSOMOcjs.stringifyError.call(void 0, error)
788
788
  });
789
789
  throw error;
790
790
  }
791
791
  runCtx.log.warn({
792
792
  msg: "workflow failed and will sleep until woken",
793
- error: _chunk5SHK4JM5cjs.stringifyError.call(void 0, error)
793
+ error: _chunkDD4HSOMOcjs.stringifyError.call(void 0, error)
794
794
  });
795
795
  } finally {
796
796
  runCtx.abortSignal.removeEventListener("abort", onAbort);
@@ -1,9 +1,9 @@
1
1
  import { WorkflowErrorEvent } from '@rivetkit/workflow-engine';
2
2
  export { Loop, TryBlockCatchKind, TryBlockConfig, TryBlockFailure, TryBlockResult, TryStepCatchKind, TryStepConfig, TryStepFailure, TryStepResult, WorkflowError, WorkflowErrorEvent } from '@rivetkit/workflow-engine';
3
- import { E as EventSchemaConfig, Q as QueueSchemaConfig, h as RunContext } from '../config-Caocy3Z9.cjs';
3
+ import { E as EventSchemaConfig, Q as QueueSchemaConfig, h as RunContext } from '../config-rGWrumlO.cjs';
4
4
  import { A as AnyDatabaseProvider } from '../config-BxOimoGX.cjs';
5
- import { d as WorkflowContext } from '../context-D1_m5x1D.cjs';
6
- export { e as WorkflowBranchConfig, W as WorkflowBranchContextOf, a as WorkflowContextOf, f as WorkflowLoopConfig, b as WorkflowLoopContextOf, g as WorkflowStepConfig, h as WorkflowStepContext, c as WorkflowStepContextOf, i as WorkflowTryConfig, j as WorkflowTryStepConfig } from '../context-D1_m5x1D.cjs';
5
+ import { d as WorkflowContext } from '../context-B8W8E8nW.cjs';
6
+ export { e as WorkflowBranchConfig, W as WorkflowBranchContextOf, a as WorkflowContextOf, f as WorkflowLoopConfig, b as WorkflowLoopContextOf, g as WorkflowStepConfig, h as WorkflowStepContext, c as WorkflowStepContextOf, i as WorkflowTryConfig, j as WorkflowTryStepConfig } from '../context-B8W8E8nW.cjs';
7
7
  import 'zod/v4';
8
8
  import '@rivetkit/rivetkit-wasm';
9
9
  import 'zod';
@@ -1,9 +1,9 @@
1
1
  import { WorkflowErrorEvent } from '@rivetkit/workflow-engine';
2
2
  export { Loop, TryBlockCatchKind, TryBlockConfig, TryBlockFailure, TryBlockResult, TryStepCatchKind, TryStepConfig, TryStepFailure, TryStepResult, WorkflowError, WorkflowErrorEvent } from '@rivetkit/workflow-engine';
3
- import { E as EventSchemaConfig, Q as QueueSchemaConfig, h as RunContext } from '../config-BKAMOHez.js';
3
+ import { E as EventSchemaConfig, Q as QueueSchemaConfig, h as RunContext } from '../config-CZcjyT5B.js';
4
4
  import { A as AnyDatabaseProvider } from '../config-BxOimoGX.js';
5
- import { d as WorkflowContext } from '../context-AfCExwbr.js';
6
- export { e as WorkflowBranchConfig, W as WorkflowBranchContextOf, a as WorkflowContextOf, f as WorkflowLoopConfig, b as WorkflowLoopContextOf, g as WorkflowStepConfig, h as WorkflowStepContext, c as WorkflowStepContextOf, i as WorkflowTryConfig, j as WorkflowTryStepConfig } from '../context-AfCExwbr.js';
5
+ import { d as WorkflowContext } from '../context-_UrDZhEh.js';
6
+ export { e as WorkflowBranchConfig, W as WorkflowBranchContextOf, a as WorkflowContextOf, f as WorkflowLoopConfig, b as WorkflowLoopContextOf, g as WorkflowStepConfig, h as WorkflowStepContext, c as WorkflowStepContextOf, i as WorkflowTryConfig, j as WorkflowTryStepConfig } from '../context-_UrDZhEh.js';
7
7
  import 'zod/v4';
8
8
  import '@rivetkit/rivetkit-wasm';
9
9
  import 'zod';
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createWorkflowInspectorAdapter
3
- } from "../chunk-75K5VACB.js";
4
- import "../chunk-NLAW2MIM.js";
3
+ } from "../chunk-TP5MGPLS.js";
4
+ import "../chunk-I3OXZILZ.js";
5
5
  import {
6
6
  ACTOR_CONTEXT_INTERNAL_SYMBOL,
7
7
  RUN_FUNCTION_CONFIG_SYMBOL
@@ -12,7 +12,7 @@ import {
12
12
  } from "../chunk-JI6GZ2C2.js";
13
13
  import {
14
14
  stringifyError
15
- } from "../chunk-XWIXH7JF.js";
15
+ } from "../chunk-7N4PSYCJ.js";
16
16
  import {
17
17
  RivetError,
18
18
  isActorAbortedError
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rivetkit",
3
- "version": "2.3.11-rc.2",
3
+ "version": "2.3.11-rc.4",
4
4
  "description": "Lightweight libraries for building stateful actors on edge platforms",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
@@ -201,14 +201,14 @@
201
201
  "@hono/zod-openapi": "^1.1.5",
202
202
  "@rivet-dev/agent-os-core": "^0.1.1",
203
203
  "@rivetkit/bare-ts": "^0.6.2",
204
- "@rivetkit/engine-cli": "2.3.11-rc.2",
205
- "@rivetkit/engine-envoy-protocol": "2.3.11-rc.2",
204
+ "@rivetkit/engine-cli": "2.3.11-rc.4",
205
+ "@rivetkit/engine-envoy-protocol": "2.3.11-rc.4",
206
206
  "@rivetkit/on-change": "6.0.1",
207
- "@rivetkit/rivetkit-napi": "2.3.11-rc.2",
208
- "@rivetkit/rivetkit-wasm": "2.3.11-rc.2",
209
- "@rivetkit/traces": "2.3.11-rc.2",
210
- "@rivetkit/virtual-websocket": "2.3.11-rc.2",
211
- "@rivetkit/workflow-engine": "2.3.11-rc.2",
207
+ "@rivetkit/rivetkit-napi": "2.3.11-rc.4",
208
+ "@rivetkit/rivetkit-wasm": "2.3.11-rc.4",
209
+ "@rivetkit/traces": "2.3.11-rc.4",
210
+ "@rivetkit/virtual-websocket": "2.3.11-rc.4",
211
+ "@rivetkit/workflow-engine": "2.3.11-rc.4",
212
212
  "cbor-x": "^1.6.0",
213
213
  "drizzle-orm": "^0.44.2",
214
214
  "hono": "^4.7.0",
@@ -128,6 +128,11 @@ export interface GetOrCreateOptions extends QueryOptions {
128
128
  createInRegion?: string;
129
129
  /** Input data to pass to the actor. */
130
130
  createWithInput?: unknown;
131
+ /**
132
+ * Name of the envoy pool to select for this actor if it is created.
133
+ * Overrides the client's configured `poolName` for this call.
134
+ */
135
+ poolName?: string;
131
136
  }
132
137
 
133
138
  /**
@@ -140,6 +145,11 @@ export interface CreateOptions extends QueryOptions {
140
145
  region?: string;
141
146
  /** Input data to pass to the actor. */
142
147
  input?: unknown;
148
+ /**
149
+ * Name of the envoy pool to select for this actor.
150
+ * Overrides the client's configured `poolName` for this call.
151
+ */
152
+ poolName?: string;
143
153
  }
144
154
 
145
155
  /**
@@ -300,6 +310,7 @@ export class ClientRaw {
300
310
  key: keyArray,
301
311
  input: opts?.createWithInput,
302
312
  region: opts?.createInRegion,
313
+ poolName: opts?.poolName,
303
314
  },
304
315
  };
305
316
 
@@ -31,6 +31,7 @@ export const CreateRequestSchema = z.object({
31
31
  key: ActorKeySchema,
32
32
  input: z.unknown().optional(),
33
33
  region: z.string().optional(),
34
+ poolName: z.string().optional(),
34
35
  });
35
36
 
36
37
  export const GetForKeyRequestSchema = z.object({
@@ -43,6 +44,7 @@ export const GetOrCreateRequestSchema = z.object({
43
44
  key: ActorKeySchema,
44
45
  input: z.unknown().optional(),
45
46
  region: z.string().optional(),
47
+ poolName: z.string().optional(),
46
48
  });
47
49
 
48
50
  export const ActorQuerySchema = z.union([
@@ -41,6 +41,7 @@ export async function resolveGatewayTarget(
41
41
  key: target.getOrCreateForKey.key,
42
42
  input: target.getOrCreateForKey.input,
43
43
  region: target.getOrCreateForKey.region,
44
+ poolName: target.getOrCreateForKey.poolName,
44
45
  });
45
46
  return output.actorId;
46
47
  }
@@ -51,6 +52,7 @@ export async function resolveGatewayTarget(
51
52
  key: target.create.key,
52
53
  input: target.create.input,
53
54
  region: target.create.region,
55
+ poolName: target.create.poolName,
54
56
  });
55
57
  return output.actorId;
56
58
  }
@@ -86,6 +86,8 @@ export interface GetOrCreateWithKeyInput {
86
86
  input?: unknown;
87
87
  region?: string;
88
88
  crashPolicy?: CrashPolicy;
89
+ /** Overrides the client's configured pool name for this actor. */
90
+ poolName?: string;
89
91
  }
90
92
 
91
93
  export interface CreateInput {
@@ -95,6 +97,8 @@ export interface CreateInput {
95
97
  input?: unknown;
96
98
  region?: string;
97
99
  crashPolicy?: CrashPolicy;
100
+ /** Overrides the client's configured pool name for this actor. */
101
+ poolName?: string;
98
102
  }
99
103
 
100
104
  export interface ListActorsInput {
@@ -167,7 +167,14 @@ export class RemoteEngineControlClient implements EngineControlClient {
167
167
  ): Promise<ActorOutput> {
168
168
  await this.#metadataPromise;
169
169
 
170
- const { name, key, input: actorInput, region, crashPolicy } = input;
170
+ const {
171
+ name,
172
+ key,
173
+ input: actorInput,
174
+ region,
175
+ crashPolicy,
176
+ poolName,
177
+ } = input;
171
178
 
172
179
  logger().info({
173
180
  msg: "getOrCreateWithKey: getting or creating actor via engine api",
@@ -179,7 +186,7 @@ export class RemoteEngineControlClient implements EngineControlClient {
179
186
  datacenter: region,
180
187
  name,
181
188
  key: serializeActorKey(key),
182
- runner_name_selector: this.#config.poolName,
189
+ runner_name_selector: poolName ?? this.#config.poolName,
183
190
  input: actorInput
184
191
  ? uint8ArrayToBase64(
185
192
  encodeCborCompat(actorInput as JsonCompatValue),
@@ -205,6 +212,7 @@ export class RemoteEngineControlClient implements EngineControlClient {
205
212
  input,
206
213
  region,
207
214
  crashPolicy,
215
+ poolName,
208
216
  }: CreateInput): Promise<ActorOutput> {
209
217
  await this.#metadataPromise;
210
218
 
@@ -214,7 +222,7 @@ export class RemoteEngineControlClient implements EngineControlClient {
214
222
  const result = await createActor(this.#config, {
215
223
  datacenter: region,
216
224
  name,
217
- runner_name_selector: this.#config.poolName,
225
+ runner_name_selector: poolName ?? this.#config.poolName,
218
226
  key: serializeActorKey(key),
219
227
  input: input
220
228
  ? uint8ArrayToBase64(encodeCborCompat(input as JsonCompatValue))
@@ -422,7 +430,8 @@ export class RemoteEngineControlClient implements EngineControlClient {
422
430
  this.#config.maxInputSize,
423
431
  undefined,
424
432
  "getOrCreateForKey" in target
425
- ? this.#config.poolName
433
+ ? (target.getOrCreateForKey.poolName ??
434
+ this.#config.poolName)
426
435
  : undefined,
427
436
  options,
428
437
  );