deepline 0.3.128 → 0.3.130

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 (130) hide show
  1. package/dist/bundling-sources/sdk/src/client.ts +34 -9
  2. package/dist/bundling-sources/sdk/src/http.ts +22 -0
  3. package/dist/bundling-sources/sdk/src/release.ts +1 -1
  4. package/dist/bundling-sources/shared_libs/play-data-plane/r2.ts +22 -0
  5. package/dist/bundling-sources/shared_libs/play-runtime/app-runtime-api.ts +265 -2
  6. package/dist/bundling-sources/shared_libs/play-runtime/bounded-batch-function.ts +682 -0
  7. package/dist/bundling-sources/shared_libs/play-runtime/child-execution-strategy.ts +21 -5
  8. package/dist/bundling-sources/shared_libs/play-runtime/context.ts +5390 -1732
  9. package/dist/bundling-sources/shared_libs/play-runtime/ctx-types.ts +107 -1
  10. package/dist/bundling-sources/shared_libs/play-runtime/daytona-sandbox-janitor.ts +4 -1
  11. package/dist/bundling-sources/shared_libs/play-runtime/deployment/commands/roll-execution-relay.ts +7 -0
  12. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-machines.ts +229 -7
  13. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-registry.ts +25 -4
  14. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-gateway-capacity.ts +71 -0
  15. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-gateway-drain.ts +1 -1
  16. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-topology.ts +4 -1
  17. package/dist/bundling-sources/shared_libs/play-runtime/durable-receipt-execution.ts +694 -28
  18. package/dist/bundling-sources/shared_libs/play-runtime/egress-bandwidth-probe.ts +167 -0
  19. package/dist/bundling-sources/shared_libs/play-runtime/execute-server-timing.ts +103 -0
  20. package/dist/bundling-sources/shared_libs/play-runtime/execution-gateway-receipt-output-reference.ts +34 -0
  21. package/dist/bundling-sources/shared_libs/play-runtime/execution-gateway-response-size.ts +27 -0
  22. package/dist/bundling-sources/shared_libs/play-runtime/gateway-postgres-admission.ts +66 -1
  23. package/dist/bundling-sources/shared_libs/play-runtime/governor/app-runtime-rate-state-backend.ts +425 -71
  24. package/dist/bundling-sources/shared_libs/play-runtime/governor/governor.ts +210 -32
  25. package/dist/bundling-sources/shared_libs/play-runtime/governor/in-memory-rate-state-backend.ts +27 -13
  26. package/dist/bundling-sources/shared_libs/play-runtime/governor/policy.ts +19 -6
  27. package/dist/bundling-sources/shared_libs/play-runtime/governor/rate-state-backend.ts +61 -2
  28. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/contracts.ts +33 -1
  29. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/job.ts +42 -1
  30. package/dist/bundling-sources/shared_libs/play-runtime/launch-source-policy.ts +11 -11
  31. package/dist/bundling-sources/shared_libs/play-runtime/ledger-safe-payload.ts +49 -16
  32. package/dist/bundling-sources/shared_libs/play-runtime/map-memory-limits.ts +1653 -98
  33. package/dist/bundling-sources/shared_libs/play-runtime/memory-ledger.ts +807 -0
  34. package/dist/bundling-sources/shared_libs/play-runtime/memory-pressure-signal.ts +138 -0
  35. package/dist/bundling-sources/shared_libs/play-runtime/output-size-limits.ts +85 -3
  36. package/dist/bundling-sources/shared_libs/play-runtime/persistence-latch.ts +60 -2
  37. package/dist/bundling-sources/shared_libs/play-runtime/play-run-recovery-policy.ts +46 -1
  38. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/contracts.ts +2 -0
  39. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/job.ts +1 -0
  40. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/ports.ts +1 -0
  41. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/postgres-adapter.ts +1 -0
  42. package/dist/bundling-sources/shared_libs/play-runtime/play-runtime-semantics.ts +70 -27
  43. package/dist/bundling-sources/shared_libs/play-runtime/protocol.ts +56 -0
  44. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/adaptive-provider-capacity-controller.ts +192 -0
  45. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/epoch-aimd-rate-controller.ts +194 -0
  46. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/fixture-capacity-simulator.ts +220 -0
  47. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/gradient2-concurrency-controller.ts +214 -0
  48. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/provider-capacity-policy.ts +43 -0
  49. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/provider-concurrency-policy.ts +30 -0
  50. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/provider-rate-policy.ts +95 -0
  51. package/dist/bundling-sources/shared_libs/play-runtime/provider-capacity/provider-throttle-classifier.ts +40 -0
  52. package/dist/bundling-sources/shared_libs/play-runtime/resource-governor.ts +1535 -11
  53. package/dist/bundling-sources/shared_libs/play-runtime/run-failure.ts +49 -2
  54. package/dist/bundling-sources/shared_libs/play-runtime/run-ledger.ts +6 -1
  55. package/dist/bundling-sources/shared_libs/play-runtime/run-log-buffer.ts +55 -0
  56. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/egress-probe.ts +221 -0
  57. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/index.ts +339 -29
  58. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-deadline.ts +28 -1
  59. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-progress-push.ts +192 -165
  60. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-lifecycle.ts +6 -0
  61. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-payload-transport.ts +90 -5
  62. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-runtime-watchdog.ts +281 -6
  63. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona.ts +27 -1
  64. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/local-process.ts +19 -0
  65. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/modal.ts +108 -0
  66. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/runtime-sandbox-reconciliation.ts +40 -0
  67. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/types.ts +11 -5
  68. package/dist/bundling-sources/shared_libs/play-runtime/runtime-actions.ts +30 -0
  69. package/dist/bundling-sources/shared_libs/play-runtime/runtime-api-compression.ts +276 -0
  70. package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +723 -115
  71. package/dist/bundling-sources/shared_libs/play-runtime/runtime-capacity-policy.ts +114 -4
  72. package/dist/bundling-sources/shared_libs/play-runtime/runtime-contract.ts +3 -2
  73. package/dist/bundling-sources/shared_libs/play-runtime/runtime-environment.ts +41 -4
  74. package/dist/bundling-sources/shared_libs/play-runtime/runtime-flow.ts +448 -0
  75. package/dist/bundling-sources/shared_libs/play-runtime/runtime-map-row-feed.ts +215 -0
  76. package/dist/bundling-sources/shared_libs/play-runtime/runtime-operation-contract.ts +11 -0
  77. package/dist/bundling-sources/shared_libs/play-runtime/runtime-receipt-store-adapter.ts +161 -14
  78. package/dist/bundling-sources/shared_libs/play-runtime/runtime-receipt-value.ts +184 -0
  79. package/dist/bundling-sources/shared_libs/play-runtime/runtime-receipt-writer.ts +607 -121
  80. package/dist/bundling-sources/shared_libs/play-runtime/runtime-sandbox-placement-policy.ts +4 -0
  81. package/dist/bundling-sources/shared_libs/play-runtime/runtime-sheet-row-writer.ts +21 -0
  82. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/contract.ts +15 -2
  83. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/runner-backend-adapter.ts +71 -14
  84. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-play-deploy-task.ts +2 -2
  85. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-runtime-worker.ts +288 -119
  86. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-shared.ts +8 -6
  87. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-worker-required-env.ts +28 -3
  88. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd.ts +28 -8
  89. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/canonical-integration-operation-store.ts +179 -0
  90. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/gateway-heavy-request-admission.ts +80 -2
  91. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/gateway-progress-registry.ts +31 -2
  92. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/integration-operation-store-contract.ts +104 -0
  93. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/integration-operation-value-reference.ts +47 -0
  94. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/integration-operation-value-retirement.ts +193 -0
  95. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/integration-operation-value-storage.ts +420 -0
  96. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-pool.ts +146 -15
  97. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-progress.ts +134 -3
  98. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-rate-state.ts +1657 -95
  99. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +904 -77
  100. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/receipt-completion-coalescer.ts +452 -0
  101. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/receipt-gateway.ts +601 -42
  102. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-terminal-transition.ts +1 -0
  103. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-receipt-value-storage.ts +371 -0
  104. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/worker-resource-metrics.ts +86 -7
  105. package/dist/bundling-sources/shared_libs/play-runtime/secret-redaction.ts +153 -22
  106. package/dist/bundling-sources/shared_libs/play-runtime/tool-call/index.ts +1 -0
  107. package/dist/bundling-sources/shared_libs/play-runtime/tool-call/receipt-cohort.ts +188 -38
  108. package/dist/bundling-sources/shared_libs/play-runtime/tool-call/runtime-step-receipts-adapter.ts +28 -13
  109. package/dist/bundling-sources/shared_libs/play-runtime/tool-execute-retry-policy.ts +44 -1
  110. package/dist/bundling-sources/shared_libs/play-runtime/tool-result.ts +56 -4
  111. package/dist/bundling-sources/shared_libs/play-runtime/work-receipts.ts +2 -0
  112. package/dist/bundling-sources/shared_libs/plays/authoring-contract.ts +16 -10
  113. package/dist/bundling-sources/shared_libs/plays/dataset.ts +4 -1
  114. package/dist/cli/index.js +250 -38
  115. package/dist/cli/index.mjs +250 -38
  116. package/dist/{compiler-manifest-DfSnbCTW.d.mts → compiler-manifest-BIqRyj5m.d.mts} +1 -1
  117. package/dist/{compiler-manifest-DfSnbCTW.d.ts → compiler-manifest-BIqRyj5m.d.ts} +1 -1
  118. package/dist/index.d.mts +4 -2
  119. package/dist/index.d.ts +4 -2
  120. package/dist/index.js +231 -35
  121. package/dist/index.mjs +231 -35
  122. package/dist/install-integrity.json +31 -2
  123. package/dist/plays/bundle-play-file.d.mts +2 -2
  124. package/dist/plays/bundle-play-file.d.ts +2 -2
  125. package/dist/plays/bundle-play-file.mjs +65 -1
  126. package/dist/release.d.mts +1 -1
  127. package/dist/release.d.ts +1 -1
  128. package/dist/release.js +1 -1
  129. package/dist/release.mjs +1 -1
  130. package/package.json +1 -1
@@ -21,6 +21,10 @@ export const RUNTIME_SANDBOX_PLACEMENT_POLICIES = {
21
21
  modalOnlyV1: 'modal_only@1',
22
22
  } as const;
23
23
 
24
+ /** Deployment-scoped policy selection for an isolated runtime lane. */
25
+ export const RUNTIME_SANDBOX_PLACEMENT_POLICY_ENV =
26
+ 'DEEPLINE_RUNTIME_SANDBOX_PLACEMENT_POLICY';
27
+
24
28
  export type RuntimeSandboxPlacementPolicyId =
25
29
  (typeof RUNTIME_SANDBOX_PLACEMENT_POLICIES)[keyof typeof RUNTIME_SANDBOX_PLACEMENT_POLICIES];
26
30
 
@@ -273,6 +273,20 @@ export class RuntimeSheetRowWriter<Row, Update> {
273
273
  return this.#finishPromise;
274
274
  }
275
275
 
276
+ /**
277
+ * Latch a failure that originated outside this writer's own batch flight —
278
+ * the map's persistence latch tripping on a receipt failure, or the sheet
279
+ * superseding this run. Every pending admission and commit rejects with
280
+ * `error` now, every later `settle`/`checkpoint`/`finish` rejects with it,
281
+ * and an in-progress retry backoff is cut short so no further attempt is
282
+ * made for a batch the sheet can no longer accept. The adapter call that is
283
+ * already in flight is not awaited: its outcome cannot change what the
284
+ * caller is told, and waiting on it is how a superseded run sat for hours.
285
+ */
286
+ fail(error: unknown): void {
287
+ this.#latchFailure(error);
288
+ }
289
+
276
290
  diagnostics(): RuntimeSheetRowWriterDiagnostics {
277
291
  return {
278
292
  activeKind: this.#active?.[0]?.kind ?? null,
@@ -513,12 +527,16 @@ export class RuntimeSheetRowWriter<Row, Update> {
513
527
  signal: this.#controller.signal,
514
528
  });
515
529
  } catch (error) {
530
+ // A writer that was failed from outside while this batch was in
531
+ // flight must not retry: the sheet has already rejected this run.
532
+ if (this.#failure !== null) throw this.#failure;
516
533
  const retry = this.#classifyRetryableError(error);
517
534
  if (!retry) throw error;
518
535
  await this.#sleep(
519
536
  Math.max(0, Math.ceil(retry.retryAfterMs)),
520
537
  this.#controller.signal,
521
538
  );
539
+ if (this.#failure !== null) throw this.#failure;
522
540
  }
523
541
  }
524
542
  }
@@ -566,6 +584,9 @@ export class RuntimeSheetRowWriter<Row, Update> {
566
584
  if (this.#failure !== null) return;
567
585
  this.#failure = error;
568
586
  this.#clearTimer();
587
+ // Ends a retry backoff sleep and tells an adapter that honours the signal
588
+ // to stop; a failed writer never sends the same batch again.
589
+ this.#controller.abort(error);
569
590
  for (const entry of this.#active ?? []) {
570
591
  if (entry.kind === 'terminal') {
571
592
  entry.committed.forEach((waiter) => waiter.reject(error));
@@ -6,7 +6,16 @@
6
6
  * before the runner command can be accepted.
7
7
  */
8
8
 
9
- export type SandboxProvider = 'daytona' | 'modal' | 'local';
9
+ /**
10
+ * A provider name identifies a durable physical-resource owner. The shared
11
+ * flow uses this identity for fencing, capacity, and receipts; provider
12
+ * adapters own the actual SDK calls and cleanup implementation.
13
+ */
14
+ export type SandboxProvider =
15
+ | 'daytona'
16
+ | 'modal'
17
+ | 'agentcore_runtime'
18
+ | 'local';
10
19
 
11
20
  /** A portable, credential-free description of one execution resource. */
12
21
  export type SandboxRunResource = {
@@ -184,7 +193,11 @@ export type SandboxExecutionInput<Launch, Checkpoint, Suspension> =
184
193
  * deliberately excludes provider handles, commands, credentials, and payloads.
185
194
  */
186
195
  export type SandboxExecutionResource = SandboxRunResource & {
187
- kind: 'daytona_sandbox' | 'modal_sandbox' | 'local_process';
196
+ kind:
197
+ | 'daytona_sandbox'
198
+ | 'modal_sandbox'
199
+ | 'agentcore_runtime_session'
200
+ | 'local_process';
188
201
  runtimeEnvironment?: 'preview' | 'production';
189
202
  billingEndedAtMs?: number | null;
190
203
  cpu?: number | null;
@@ -129,7 +129,7 @@ function createRunnerCallbacks(input: {
129
129
  return converted;
130
130
  };
131
131
  const requireResource = (
132
- provider: 'daytona' | 'modal',
132
+ provider: 'daytona' | 'modal' | 'agentcore_runtime',
133
133
  sandboxId: string,
134
134
  ) => {
135
135
  const resource = input.resources.get(`${provider}:${sandboxId}`);
@@ -221,14 +221,12 @@ function createRunnerCallbacks(input: {
221
221
  function toSandboxResource(
222
222
  resource: PlayRunnerRuntimeResource,
223
223
  ): SandboxExecutionResource {
224
- const isModal = resource.kind === 'modal_sandbox';
224
+ const provider = sandboxProviderForRuntimeResourceKind(resource.kind);
225
225
  return {
226
226
  kind: resource.kind,
227
- provider: isModal ? 'modal' : 'daytona',
227
+ provider,
228
228
  resourceId: resource.sandboxId,
229
- routingDomain: isModal
230
- ? (resource.modalAppId ?? null)
231
- : (resource.daytonaOrganizationId ?? null),
229
+ routingDomain: runtimeResourceRoutingDomain(resource, provider),
232
230
  billingStartedAtMs: resource.billingStartedAt,
233
231
  billingEndedAtMs: resource.billingEndedAt ?? null,
234
232
  lateAcquired: resource.lateAcquired,
@@ -258,22 +256,18 @@ function toSandboxResource(
258
256
  export function playRunnerRuntimeResourceFromSandboxExecutionResource(
259
257
  resource: SandboxExecutionResource,
260
258
  ): PlayRunnerRuntimeResource {
261
- const isModal = resource.provider === 'modal';
262
259
  if (resource.kind === 'local_process' || resource.provider === 'local') {
263
260
  throw new Error(
264
261
  'The PlayRunnerBackend Sandbox Runs Adapter cannot persist a local process as a physical runtime resource.',
265
262
  );
266
263
  }
264
+ const provider: Exclude<SandboxExecutionResource['provider'], 'local'> =
265
+ resource.provider;
267
266
  return {
268
- kind: isModal ? 'modal_sandbox' : 'daytona_sandbox',
267
+ kind: runtimeResourceKindForSandboxProvider(provider),
269
268
  sandboxId: resource.resourceId,
270
269
  runtimeEnvironment: resource.runtimeEnvironment,
271
- ...(isModal
272
- ? { modalAppId: resource.routingDomain ?? undefined }
273
- : {
274
- daytonaEnvironment: resource.runtimeEnvironment,
275
- daytonaOrganizationId: resource.routingDomain ?? undefined,
276
- }),
270
+ ...runtimeResourceRoutingFields(resource, provider),
277
271
  billingStartedAt: resource.billingStartedAtMs,
278
272
  billingEndedAt: resource.billingEndedAtMs ?? null,
279
273
  lateAcquired: resource.lateAcquired,
@@ -287,6 +281,69 @@ export function playRunnerRuntimeResourceFromSandboxExecutionResource(
287
281
  };
288
282
  }
289
283
 
284
+ function sandboxProviderForRuntimeResourceKind(
285
+ kind: PlayRunnerRuntimeResource['kind'],
286
+ ): 'daytona' | 'modal' | 'agentcore_runtime' {
287
+ switch (kind) {
288
+ case 'daytona_sandbox':
289
+ return 'daytona';
290
+ case 'modal_sandbox':
291
+ return 'modal';
292
+ case 'agentcore_runtime_session':
293
+ return 'agentcore_runtime';
294
+ }
295
+ }
296
+
297
+ function runtimeResourceRoutingDomain(
298
+ resource: PlayRunnerRuntimeResource,
299
+ provider: 'daytona' | 'modal' | 'agentcore_runtime',
300
+ ): string | null {
301
+ switch (provider) {
302
+ case 'daytona':
303
+ return resource.daytonaOrganizationId ?? null;
304
+ case 'modal':
305
+ return resource.modalAppId ?? null;
306
+ case 'agentcore_runtime':
307
+ return resource.agentcoreRuntimeArn ?? null;
308
+ }
309
+ }
310
+
311
+ function runtimeResourceKindForSandboxProvider(
312
+ provider: Exclude<SandboxExecutionResource['provider'], 'local'>,
313
+ ): PlayRunnerRuntimeResource['kind'] {
314
+ switch (provider) {
315
+ case 'daytona':
316
+ return 'daytona_sandbox';
317
+ case 'modal':
318
+ return 'modal_sandbox';
319
+ case 'agentcore_runtime':
320
+ return 'agentcore_runtime_session';
321
+ }
322
+ }
323
+
324
+ function runtimeResourceRoutingFields(
325
+ resource: SandboxExecutionResource,
326
+ provider: Exclude<SandboxExecutionResource['provider'], 'local'>,
327
+ ): Pick<
328
+ PlayRunnerRuntimeResource,
329
+ | 'daytonaEnvironment'
330
+ | 'daytonaOrganizationId'
331
+ | 'modalAppId'
332
+ | 'agentcoreRuntimeArn'
333
+ > {
334
+ switch (provider) {
335
+ case 'daytona':
336
+ return {
337
+ daytonaEnvironment: resource.runtimeEnvironment,
338
+ daytonaOrganizationId: resource.routingDomain ?? undefined,
339
+ };
340
+ case 'modal':
341
+ return { modalAppId: resource.routingDomain ?? undefined };
342
+ case 'agentcore_runtime':
343
+ return { agentcoreRuntimeArn: resource.routingDomain ?? undefined };
344
+ }
345
+ }
346
+
290
347
  function resourceKey(resource: SandboxExecutionResource): string {
291
348
  return `${resource.provider}:${resource.resourceId}`;
292
349
  }
@@ -4,7 +4,7 @@ import {
4
4
  resolveAbsurdPoolOptions,
5
5
  resolveAbsurdQueueSuffix,
6
6
  } from './absurd-shared';
7
- import { ensureAbsurdSchema } from './postgres';
7
+ import { assertAbsurdSchemaReady } from './postgres';
8
8
  import {
9
9
  acquirePgNotifyHub,
10
10
  withRuntimeSchedulerClient,
@@ -171,7 +171,7 @@ export function ensurePlayDeployQueueReady(input?: {
171
171
  if (existing) return existing;
172
172
  const promise = (async () => {
173
173
  await withRuntimeSchedulerClient(poolOptions, (client) =>
174
- ensureAbsurdSchema(client),
174
+ assertAbsurdSchemaReady(client),
175
175
  );
176
176
  const absurd = createAbsurdRuntimeClient(poolOptions, queueName);
177
177
  const existingQueues = new Set(await absurd.listQueues());