@superdurable/dex 1.9.0 → 1.10.0

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.
@@ -1,9 +1,24 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
- import { type CallOptions, type ChannelCredentials, Client, type ClientOptions, type ClientReadableStream, type ClientUnaryCall, type handleServerStreamingCall, type handleUnaryCall, type Metadata, type ServiceError, type UntypedServiceImplementation } from "@grpc/grpc-js";
2
+ import { type CallOptions, type ChannelCredentials, Client, type ClientDuplexStream, type ClientOptions, type ClientReadableStream, type ClientUnaryCall, type handleBidiStreamingCall, type handleServerStreamingCall, type handleUnaryCall, type Metadata, type ServiceError, type UntypedServiceImplementation } from "@grpc/grpc-js";
3
3
  import { Duration } from "./google/protobuf/duration.js";
4
4
  import { Empty } from "./google/protobuf/empty.js";
5
5
  import { NullValue } from "./google/protobuf/struct.js";
6
6
  export declare const protobufPackage = "dex";
7
+ /** Explains why a Worker declined a task. */
8
+ export declare enum PollWorkerTaskRejectReason {
9
+ /** POLL_WORKER_TASK_REJECT_REASON_UNSPECIFIED - No rejection reason was supplied. */
10
+ POLL_WORKER_TASK_REJECT_REASON_UNSPECIFIED = 0,
11
+ /** POLL_WORKER_TASK_REJECT_REASON_NO_CAPACITY - All Worker execution slots are occupied. */
12
+ POLL_WORKER_TASK_REJECT_REASON_NO_CAPACITY = 1,
13
+ UNRECOGNIZED = -1
14
+ }
15
+ /** Distinguishes absence of a Worker from loss of an assigned Worker. */
16
+ export declare enum DispatchTaskErrorReason {
17
+ DISPATCH_TASK_ERROR_REASON_UNSPECIFIED = 0,
18
+ DISPATCH_TASK_ERROR_REASON_NO_WORKER_AVAILABLE = 1,
19
+ DISPATCH_TASK_ERROR_REASON_WORKER_DISCONNECTED = 2,
20
+ UNRECOGNIZED = -1
21
+ }
7
22
  export declare enum IndexType {
8
23
  INDEX_TYPE_UNSPECIFIED = 0,
9
24
  /** INDEX_TYPE_KEYWORD - Default for string/object when type is omitted. */
@@ -199,6 +214,200 @@ export interface ServerInfo {
199
214
  /** Newest protocol version implemented by this Server. */
200
215
  currentProtocolVersion: number;
201
216
  }
217
+ /** Carries one Worker frame on a pull stream. Register must be the first frame. */
218
+ export interface PollWorkerTaskRequest {
219
+ frame: //
220
+ /** Starts this queue stream; no other frame may precede registration. */
221
+ {
222
+ $case: "register";
223
+ value: PollWorkerTaskRegister;
224
+ } | //
225
+ /** Reports task progress or its final result. */
226
+ {
227
+ $case: "taskFrame";
228
+ value: PollWorkerTaskFrame;
229
+ } | //
230
+ /** Declines an assigned task when the Worker has no capacity. */
231
+ {
232
+ $case: "reject";
233
+ value: PollWorkerTaskReject;
234
+ } | //
235
+ /** Acknowledges a server liveness check. */
236
+ {
237
+ $case: "pong";
238
+ value: PollWorkerTaskPong;
239
+ } | undefined;
240
+ }
241
+ /** Registers one queue stream for a Worker process. */
242
+ export interface PollWorkerTaskRegister {
243
+ /** Names this stream's queue: app_worker_id or one declared flow_type. */
244
+ queue: string;
245
+ /** Identifies this Worker process across reconnects; a restart uses a new ID. */
246
+ appWorkerId: string;
247
+ /** Lists the Flow types this Worker can execute. */
248
+ flowTypes: string[];
249
+ /** Identifies the SDK implementation for diagnostics. */
250
+ sdkName: string;
251
+ /** Identifies the SDK release for diagnostics. */
252
+ sdkVersion: string;
253
+ }
254
+ /** Carries a task's heartbeat, stream write, result, or Worker error. */
255
+ export interface PollWorkerTaskFrame {
256
+ /** Matches the task_id sent by Dex on this stream. */
257
+ taskId: string;
258
+ output: //
259
+ /** Includes heartbeat, stream write, and final result variants. */
260
+ {
261
+ $case: "waitFor";
262
+ value: InvokeWaitForMethodOutput;
263
+ } | //
264
+ /** Includes heartbeat, stream write, and final result variants. */
265
+ {
266
+ $case: "execute";
267
+ value: InvokeExecuteMethodOutput;
268
+ } | //
269
+ /** Completes an RPC task. */
270
+ {
271
+ $case: "rpc";
272
+ value: InvokeWorkerRPCResponse;
273
+ } | //
274
+ /** Ends the task with a Worker error. */
275
+ {
276
+ $case: "workerError";
277
+ value: WorkerErrorResponse;
278
+ } | undefined;
279
+ }
280
+ /** Declines a task so Dex can assign it to another available Worker stream. */
281
+ export interface PollWorkerTaskReject {
282
+ /** Matches the declined task on this stream. */
283
+ taskId: string;
284
+ /** Explains why the Worker cannot accept the task. */
285
+ reason: PollWorkerTaskRejectReason;
286
+ }
287
+ /** Acknowledges a server Ping on the same stream. */
288
+ export interface PollWorkerTaskPong {
289
+ }
290
+ /** Carries one server frame on a pull stream. */
291
+ export interface PollWorkerTaskResponse {
292
+ frame: //
293
+ /** Confirms that Dex accepted this stream's queue registration. */
294
+ {
295
+ $case: "registered";
296
+ value: PollWorkerTaskRegistered;
297
+ } | //
298
+ /** Assigns work to the registered Worker. */
299
+ {
300
+ $case: "task";
301
+ value: PollWorkerTask;
302
+ } | //
303
+ /** Requests cancellation of the assigned task. */
304
+ {
305
+ $case: "cancelTask";
306
+ value: PollWorkerTaskCancelTask;
307
+ } | //
308
+ /** Requests a reconnect after the current task finishes. */
309
+ {
310
+ $case: "reconnect";
311
+ value: PollWorkerTaskReconnect;
312
+ } | //
313
+ /** Checks whether an idle stream remains responsive. */
314
+ {
315
+ $case: "ping";
316
+ value: PollWorkerTaskPing;
317
+ } | undefined;
318
+ }
319
+ /** Confirms that Dex accepted the queue registration. */
320
+ export interface PollWorkerTaskRegistered {
321
+ }
322
+ /** Assigns one task to this stream until its final result, error, or rejection. */
323
+ export interface PollWorkerTask {
324
+ /** Identifies the assignment for result and cancellation frames. */
325
+ taskId: string;
326
+ /** Bounds task execution, including Worker processing time. */
327
+ deadline: Date | undefined;
328
+ request: //
329
+ /** Runs a Step's WaitFor method. */
330
+ {
331
+ $case: "waitFor";
332
+ value: InvokeWaitForMethodRequest;
333
+ } | //
334
+ /** Runs a Step's Execute method. */
335
+ {
336
+ $case: "execute";
337
+ value: InvokeExecuteMethodRequest;
338
+ } | //
339
+ /** Runs a Worker RPC. */
340
+ {
341
+ $case: "rpc";
342
+ value: InvokeWorkerRPCRequest;
343
+ } | undefined;
344
+ }
345
+ /** Requests cancellation of the task currently assigned to this stream. */
346
+ export interface PollWorkerTaskCancelTask {
347
+ /** Matches the task currently assigned on this stream. */
348
+ taskId: string;
349
+ }
350
+ /** Asks the Worker to finish its task and reconnect for queue ownership changes or shutdown. */
351
+ export interface PollWorkerTaskReconnect {
352
+ /** Explains why Dex needs a new queue stream. */
353
+ reason: string;
354
+ }
355
+ /** Checks that an idle pull stream remains responsive. */
356
+ export interface PollWorkerTaskPing {
357
+ }
358
+ /** Describes one task dispatched to a Dex task queue. */
359
+ export interface DispatchTaskRequest {
360
+ /** Selects the initial queue: a sticky Worker ID or a Flow type. */
361
+ queue: string;
362
+ /** Names the Flow type queue after a sticky wait expires. */
363
+ fallbackQueue: string;
364
+ /** Identifies the Flow for Worker affinity within a Flow type queue. */
365
+ flowId: string;
366
+ /** Limits waiting on a sticky queue before trying fallback_queue. */
367
+ stickyWait: Duration | undefined;
368
+ /** Limits total waiting for a Worker to accept the task. */
369
+ dispatchWait: Duration | undefined;
370
+ /** Bounds task execution, including Worker processing time. */
371
+ deadline: Date | undefined;
372
+ /** Identifies this dispatch across Worker and server streams. */
373
+ taskId: string;
374
+ request: {
375
+ $case: "waitFor";
376
+ value: InvokeWaitForMethodRequest;
377
+ } | {
378
+ $case: "execute";
379
+ value: InvokeExecuteMethodRequest;
380
+ } | {
381
+ $case: "rpc";
382
+ value: InvokeWorkerRPCRequest;
383
+ } | undefined;
384
+ }
385
+ /** Relays Worker output, then ends with a result, Worker error, or dispatch error. */
386
+ export interface DispatchTaskResponse {
387
+ output: {
388
+ $case: "waitFor";
389
+ value: InvokeWaitForMethodOutput;
390
+ } | {
391
+ $case: "execute";
392
+ value: InvokeExecuteMethodOutput;
393
+ } | {
394
+ $case: "rpc";
395
+ value: InvokeWorkerRPCResponse;
396
+ } | {
397
+ $case: "workerError";
398
+ value: WorkerErrorResponse;
399
+ } | {
400
+ $case: "dispatchError";
401
+ value: DispatchTaskError;
402
+ } | undefined;
403
+ /** Identifies the Worker that produced the final result or Worker error. */
404
+ servedByAppWorkerId: string;
405
+ }
406
+ /** Reports a failure before Dex receives a Worker result. */
407
+ export interface DispatchTaskError {
408
+ reason: DispatchTaskErrorReason;
409
+ detail: string;
410
+ }
202
411
  export interface Value {
203
412
  kind: //
204
413
  /** Hydrate from blob storage, then replace with string_value. */
@@ -360,6 +569,8 @@ export interface WorkerTarget {
360
569
  /** Plaintext gRPC dial target, not an HTTP URL. */
361
570
  address: string;
362
571
  isHeadlessAddress: boolean;
572
+ /** Routes work through a connected pull Worker; mutually exclusive with address. */
573
+ isPullMode: boolean;
363
574
  }
364
575
  export interface StartFlowRequest {
365
576
  flowId: string;
@@ -926,6 +1137,8 @@ export interface WorkerErrorResponse {
926
1137
  errorType: string;
927
1138
  stackTrace: string;
928
1139
  retryAfterSeconds: number;
1140
+ /** Pull Workers set the gRPC code push mode would return; push mode uses its transport status. */
1141
+ grpcStatus: number;
929
1142
  }
930
1143
  export interface InternalActivityError {
931
1144
  serverDetail: string;
@@ -1259,6 +1472,8 @@ export interface ContinueAsNewDump {
1259
1472
  /** Stored values only; index metadata remains in backend search attributes. */
1260
1473
  attributes: KV[];
1261
1474
  pendingAttributeSyncItems: AttributeSyncItem[];
1475
+ /** Retains the last serving Worker's sticky queue across a Flow continuation. */
1476
+ dexTaskQueue: string;
1262
1477
  }
1263
1478
  export interface ContinueAsNewDump_ChannelReceivedEntry {
1264
1479
  key: string;
@@ -1280,16 +1495,6 @@ export interface InterpreterWorkflowInput {
1280
1495
  isResumeFromContinueAsNew: boolean;
1281
1496
  continueAsNewInput: ContinueAsNewInput | undefined;
1282
1497
  timeoutHandlerOptions: FlowTimeoutHandlerOptions | undefined;
1283
- /** Tenant of a multi-tenant Flow, set at start and copied to SubFlows. Empty in single-tenant mode. */
1284
- tenantId: string;
1285
- /** Verified claims of the starting tenant principal, used to check worker targets at every dispatch. */
1286
- tenantClaims: {
1287
- [key: string]: string;
1288
- };
1289
- }
1290
- export interface InterpreterWorkflowInput_TenantClaimsEntry {
1291
- key: string;
1292
- value: string;
1293
1498
  }
1294
1499
  export interface InterpreterWorkflowOutput {
1295
1500
  stepCompletionOutputs: StepCompletionOutput[];
@@ -1303,33 +1508,27 @@ export interface BlobStoreCleanupWorkflowOutput {
1303
1508
  export interface InvokeWaitForMethodActivityInput {
1304
1509
  workerTarget: WorkerTarget | undefined;
1305
1510
  request: InvokeWaitForMethodRequest | undefined;
1306
- /** Tenant of the dispatching Flow; empty in single-tenant mode. */
1307
- tenantId: string;
1308
- /** Claims of the Flow's tenant principal; empty in single-tenant mode. */
1309
- tenantClaims: {
1310
- [key: string]: string;
1311
- };
1312
- }
1313
- export interface InvokeWaitForMethodActivityInput_TenantClaimsEntry {
1314
- key: string;
1315
- value: string;
1511
+ /** Selects the sticky Worker queue; empty selects the request's Flow type queue. */
1512
+ dexTaskQueue: string;
1513
+ /** Limits total waiting for a pull Worker to accept this attempt. */
1514
+ dispatchWait: Duration | undefined;
1515
+ /** Limits waiting on the sticky queue before the Flow type queue. */
1516
+ stickyWait: Duration | undefined;
1316
1517
  }
1317
1518
  export interface InvokeWaitForMethodActivityOutput {
1318
1519
  response: InvokeWaitForMethodResponse | undefined;
1520
+ /** Identifies the Worker that completed this pull task for sticky routing. */
1521
+ servedByAppWorkerId: string;
1319
1522
  }
1320
1523
  export interface InvokeExecuteMethodActivityInput {
1321
1524
  workerTarget: WorkerTarget | undefined;
1322
1525
  request: InvokeExecuteMethodRequest | undefined;
1323
- /** Tenant of the dispatching Flow; empty in single-tenant mode. */
1324
- tenantId: string;
1325
- /** Claims of the Flow's tenant principal; empty in single-tenant mode. */
1326
- tenantClaims: {
1327
- [key: string]: string;
1328
- };
1329
- }
1330
- export interface InvokeExecuteMethodActivityInput_TenantClaimsEntry {
1331
- key: string;
1332
- value: string;
1526
+ /** Selects the sticky Worker queue; empty selects the request's Flow type queue. */
1527
+ dexTaskQueue: string;
1528
+ /** Limits total waiting for a pull Worker to accept this attempt. */
1529
+ dispatchWait: Duration | undefined;
1530
+ /** Limits waiting on the sticky queue before the Flow type queue. */
1531
+ stickyWait: Duration | undefined;
1333
1532
  }
1334
1533
  export interface RecoveryErrorInfo {
1335
1534
  detail: string;
@@ -1344,6 +1543,8 @@ export interface InternalLocalStepActivityFailure {
1344
1543
  }
1345
1544
  export interface InvokeExecuteMethodActivityOutput {
1346
1545
  response: InvokeExecuteMethodResponse | undefined;
1546
+ /** Identifies the Worker that completed this pull task for sticky routing. */
1547
+ servedByAppWorkerId: string;
1347
1548
  }
1348
1549
  export interface DumpFlowForContinueAsNewActivityInput {
1349
1550
  request: ContinueAsNewDumpRequest | undefined;
@@ -1354,21 +1555,13 @@ export interface DumpFlowForContinueAsNewActivityOutput {
1354
1555
  export interface InvokeWorkerRPCActivityInput {
1355
1556
  rpcPrep: PrepareRpcQueryResponse | undefined;
1356
1557
  request: InvokeRPCRequest | undefined;
1357
- /** Tenant of the Flow; empty in single-tenant mode. */
1358
- tenantId: string;
1359
- /** Claims of the Flow's tenant principal; empty in single-tenant mode. */
1360
- tenantClaims: {
1361
- [key: string]: string;
1362
- };
1363
- }
1364
- export interface InvokeWorkerRPCActivityInput_TenantClaimsEntry {
1365
- key: string;
1366
- value: string;
1367
1558
  }
1368
1559
  export interface InvokeWorkerRPCActivityOutput {
1369
1560
  response: InvokeWorkerRPCResponse | undefined;
1370
1561
  /** Correlates this local Activity result with its InvokeRpc Update. */
1371
1562
  requestId: string;
1563
+ /** Identifies the Worker that completed this pull task for sticky routing. */
1564
+ servedByAppWorkerId: string;
1372
1565
  }
1373
1566
  export interface CleanupBlobStoreActivityInput {
1374
1567
  storeId: string;
@@ -1391,16 +1584,6 @@ export interface StartSubFlowActivityInput {
1391
1584
  parentFlowConfig: FlowConfig | undefined;
1392
1585
  /** Source Step; activity context supplies parent Flow and run IDs. */
1393
1586
  parentStepExecutionId: string;
1394
- /** Tenant of the parent Flow, inherited by the SubFlow; empty in single-tenant mode. */
1395
- tenantId: string;
1396
- /** Claims of the Flow's tenant principal; empty in single-tenant mode. */
1397
- tenantClaims: {
1398
- [key: string]: string;
1399
- };
1400
- }
1401
- export interface StartSubFlowActivityInput_TenantClaimsEntry {
1402
- key: string;
1403
- value: string;
1404
1587
  }
1405
1588
  export interface StartSubFlowActivityOutput {
1406
1589
  immediateFlowResult: FlowResult | undefined;
@@ -1462,6 +1645,8 @@ export interface PrepareRpcQueryResponse {
1462
1645
  loadedAttributeMapInstances: string[];
1463
1646
  loadedChannelNames: string[];
1464
1647
  loadedChannelMapInstances: string[];
1648
+ /** Selects the last Worker queue for RPC dispatch. */
1649
+ dexTaskQueue: string;
1465
1650
  }
1466
1651
  export interface PrepareRpcQueryResponse_ChannelInfosEntry {
1467
1652
  key: string;
@@ -1506,38 +1691,21 @@ export interface InvokeRpcUpdateResult {
1506
1691
  export interface StepExecutionNumbers {
1507
1692
  numbers: number[];
1508
1693
  }
1509
- export interface TenantAdminState {
1510
- tenantId: string;
1511
- isTombstoned: boolean;
1512
- tombstonedTime: Date | undefined;
1513
- /** Set when a purge has found nothing left in two queries a confirmation delay apart. */
1514
- purgeDoneTime: Date | undefined;
1515
- /** After this time the tombstone is removed and the tenant ID may be reused. */
1516
- tombstoneExpiryTime: Date | undefined;
1517
- }
1518
- export interface TombstoneTenantRequest {
1519
- tenantId: string;
1520
- }
1521
- export interface TombstoneTenantResponse {
1522
- state: TenantAdminState | undefined;
1523
- }
1524
- export interface PurgeTenantRequest {
1525
- tenantId: string;
1526
- }
1527
- export interface PurgeTenantResponse {
1528
- state: TenantAdminState | undefined;
1529
- terminatedExecutions: number;
1530
- deletedExecutions: number;
1531
- deletedBlobObjects: number;
1532
- done: boolean;
1533
- }
1534
- export interface DescribeTenantRequest {
1535
- tenantId: string;
1536
- }
1537
- export interface DescribeTenantResponse {
1538
- state: TenantAdminState | undefined;
1539
- }
1540
1694
  export declare const ServerInfo: MessageFns<ServerInfo>;
1695
+ export declare const PollWorkerTaskRequest: MessageFns<PollWorkerTaskRequest>;
1696
+ export declare const PollWorkerTaskRegister: MessageFns<PollWorkerTaskRegister>;
1697
+ export declare const PollWorkerTaskFrame: MessageFns<PollWorkerTaskFrame>;
1698
+ export declare const PollWorkerTaskReject: MessageFns<PollWorkerTaskReject>;
1699
+ export declare const PollWorkerTaskPong: MessageFns<PollWorkerTaskPong>;
1700
+ export declare const PollWorkerTaskResponse: MessageFns<PollWorkerTaskResponse>;
1701
+ export declare const PollWorkerTaskRegistered: MessageFns<PollWorkerTaskRegistered>;
1702
+ export declare const PollWorkerTask: MessageFns<PollWorkerTask>;
1703
+ export declare const PollWorkerTaskCancelTask: MessageFns<PollWorkerTaskCancelTask>;
1704
+ export declare const PollWorkerTaskReconnect: MessageFns<PollWorkerTaskReconnect>;
1705
+ export declare const PollWorkerTaskPing: MessageFns<PollWorkerTaskPing>;
1706
+ export declare const DispatchTaskRequest: MessageFns<DispatchTaskRequest>;
1707
+ export declare const DispatchTaskResponse: MessageFns<DispatchTaskResponse>;
1708
+ export declare const DispatchTaskError: MessageFns<DispatchTaskError>;
1541
1709
  export declare const Value: MessageFns<Value>;
1542
1710
  export declare const EncodedObject: MessageFns<EncodedObject>;
1543
1711
  export declare const AttributeWrite: MessageFns<AttributeWrite>;
@@ -1688,29 +1856,24 @@ export declare const ContinueAsNewDump: MessageFns<ContinueAsNewDump>;
1688
1856
  export declare const ContinueAsNewDump_ChannelReceivedEntry: MessageFns<ContinueAsNewDump_ChannelReceivedEntry>;
1689
1857
  export declare const ContinueAsNewInput: MessageFns<ContinueAsNewInput>;
1690
1858
  export declare const InterpreterWorkflowInput: MessageFns<InterpreterWorkflowInput>;
1691
- export declare const InterpreterWorkflowInput_TenantClaimsEntry: MessageFns<InterpreterWorkflowInput_TenantClaimsEntry>;
1692
1859
  export declare const InterpreterWorkflowOutput: MessageFns<InterpreterWorkflowOutput>;
1693
1860
  export declare const BlobStoreCleanupWorkflowInput: MessageFns<BlobStoreCleanupWorkflowInput>;
1694
1861
  export declare const BlobStoreCleanupWorkflowOutput: MessageFns<BlobStoreCleanupWorkflowOutput>;
1695
1862
  export declare const InvokeWaitForMethodActivityInput: MessageFns<InvokeWaitForMethodActivityInput>;
1696
- export declare const InvokeWaitForMethodActivityInput_TenantClaimsEntry: MessageFns<InvokeWaitForMethodActivityInput_TenantClaimsEntry>;
1697
1863
  export declare const InvokeWaitForMethodActivityOutput: MessageFns<InvokeWaitForMethodActivityOutput>;
1698
1864
  export declare const InvokeExecuteMethodActivityInput: MessageFns<InvokeExecuteMethodActivityInput>;
1699
- export declare const InvokeExecuteMethodActivityInput_TenantClaimsEntry: MessageFns<InvokeExecuteMethodActivityInput_TenantClaimsEntry>;
1700
1865
  export declare const RecoveryErrorInfo: MessageFns<RecoveryErrorInfo>;
1701
1866
  export declare const InternalLocalStepActivityFailure: MessageFns<InternalLocalStepActivityFailure>;
1702
1867
  export declare const InvokeExecuteMethodActivityOutput: MessageFns<InvokeExecuteMethodActivityOutput>;
1703
1868
  export declare const DumpFlowForContinueAsNewActivityInput: MessageFns<DumpFlowForContinueAsNewActivityInput>;
1704
1869
  export declare const DumpFlowForContinueAsNewActivityOutput: MessageFns<DumpFlowForContinueAsNewActivityOutput>;
1705
1870
  export declare const InvokeWorkerRPCActivityInput: MessageFns<InvokeWorkerRPCActivityInput>;
1706
- export declare const InvokeWorkerRPCActivityInput_TenantClaimsEntry: MessageFns<InvokeWorkerRPCActivityInput_TenantClaimsEntry>;
1707
1871
  export declare const InvokeWorkerRPCActivityOutput: MessageFns<InvokeWorkerRPCActivityOutput>;
1708
1872
  export declare const CleanupBlobStoreActivityInput: MessageFns<CleanupBlobStoreActivityInput>;
1709
1873
  export declare const CleanupBlobStoreActivityOutput: MessageFns<CleanupBlobStoreActivityOutput>;
1710
1874
  export declare const AttributeSyncItem: MessageFns<AttributeSyncItem>;
1711
1875
  export declare const SyncAttributeBatchActivityInput: MessageFns<SyncAttributeBatchActivityInput>;
1712
1876
  export declare const StartSubFlowActivityInput: MessageFns<StartSubFlowActivityInput>;
1713
- export declare const StartSubFlowActivityInput_TenantClaimsEntry: MessageFns<StartSubFlowActivityInput_TenantClaimsEntry>;
1714
1877
  export declare const StartSubFlowActivityOutput: MessageFns<StartSubFlowActivityOutput>;
1715
1878
  export declare const SubFlowCompletionSignalRequest: MessageFns<SubFlowCompletionSignalRequest>;
1716
1879
  export declare const ReportSubFlowCompletionActivityInput: MessageFns<ReportSubFlowCompletionActivityInput>;
@@ -1732,13 +1895,6 @@ export declare const GetScheduledGreedyTimerTimesQueryResponse: MessageFns<GetSc
1732
1895
  export declare const DebugDumpResponse: MessageFns<DebugDumpResponse>;
1733
1896
  export declare const InvokeRpcUpdateResult: MessageFns<InvokeRpcUpdateResult>;
1734
1897
  export declare const StepExecutionNumbers: MessageFns<StepExecutionNumbers>;
1735
- export declare const TenantAdminState: MessageFns<TenantAdminState>;
1736
- export declare const TombstoneTenantRequest: MessageFns<TombstoneTenantRequest>;
1737
- export declare const TombstoneTenantResponse: MessageFns<TombstoneTenantResponse>;
1738
- export declare const PurgeTenantRequest: MessageFns<PurgeTenantRequest>;
1739
- export declare const PurgeTenantResponse: MessageFns<PurgeTenantResponse>;
1740
- export declare const DescribeTenantRequest: MessageFns<DescribeTenantRequest>;
1741
- export declare const DescribeTenantResponse: MessageFns<DescribeTenantResponse>;
1742
1898
  /** Hosted by Dex server; SDKs call these RPCs. */
1743
1899
  export type FlowServiceService = typeof FlowServiceService;
1744
1900
  export declare const FlowServiceService: {
@@ -2156,68 +2312,80 @@ export declare const WorkerServiceClient: {
2156
2312
  service: typeof WorkerServiceService;
2157
2313
  serviceName: string;
2158
2314
  };
2159
- /**
2160
- * Server-internal only (interpreter CAN activity → API). Not SDK-facing.
2161
- * TenantAdminService manages the tenants of a multi-tenant server. Only operator principals may call it.
2162
- * Every RPC names its tenant explicitly and never returns Flow data.
2163
- */
2164
- export type TenantAdminServiceService = typeof TenantAdminServiceService;
2165
- export declare const TenantAdminServiceService: {
2166
- /** Refuses every credential of the tenant within the tombstone refresh interval. Idempotent. */
2167
- readonly tombstoneTenant: {
2168
- readonly path: "/dex.TenantAdminService/TombstoneTenant";
2169
- readonly requestStream: false;
2170
- readonly responseStream: false;
2171
- readonly requestSerialize: (value: TombstoneTenantRequest) => Buffer;
2172
- readonly requestDeserialize: (value: Buffer) => TombstoneTenantRequest;
2173
- readonly responseSerialize: (value: TombstoneTenantResponse) => Buffer;
2174
- readonly responseDeserialize: (value: Buffer) => TombstoneTenantResponse;
2315
+ /** Hosted by Dex server; pull Workers open one queue stream for at most one task at a time. */
2316
+ export type WorkerTaskServiceService = typeof WorkerTaskServiceService;
2317
+ export declare const WorkerTaskServiceService: {
2318
+ /** Exchanges registration, task, result, and control frames for one Dex task queue. */
2319
+ readonly pollWorkerTask: {
2320
+ readonly path: "/dex.WorkerTaskService/PollWorkerTask";
2321
+ readonly requestStream: true;
2322
+ readonly responseStream: true;
2323
+ readonly requestSerialize: (value: PollWorkerTaskRequest) => Buffer;
2324
+ readonly requestDeserialize: (value: Buffer) => PollWorkerTaskRequest;
2325
+ readonly responseSerialize: (value: PollWorkerTaskResponse) => Buffer;
2326
+ readonly responseDeserialize: (value: Buffer) => PollWorkerTaskResponse;
2175
2327
  };
2176
- /** Deletes one bounded batch of the tombstoned tenant's data. Repeat until done is true. */
2177
- readonly purgeTenant: {
2178
- readonly path: "/dex.TenantAdminService/PurgeTenant";
2328
+ };
2329
+ export interface WorkerTaskServiceServer extends UntypedServiceImplementation {
2330
+ /** Exchanges registration, task, result, and control frames for one Dex task queue. */
2331
+ pollWorkerTask: handleBidiStreamingCall<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2332
+ }
2333
+ export interface WorkerTaskServiceClient extends Client {
2334
+ /** Exchanges registration, task, result, and control frames for one Dex task queue. */
2335
+ pollWorkerTask(): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2336
+ pollWorkerTask(options: Partial<CallOptions>): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2337
+ pollWorkerTask(metadata: Metadata, options?: Partial<CallOptions>): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2338
+ }
2339
+ export declare const WorkerTaskServiceClient: {
2340
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): WorkerTaskServiceClient;
2341
+ service: typeof WorkerTaskServiceService;
2342
+ serviceName: string;
2343
+ };
2344
+ /** Hosted on the internal listener; server instances route tasks and Worker streams to queue owners. */
2345
+ export type MatchingServiceService = typeof MatchingServiceService;
2346
+ export declare const MatchingServiceService: {
2347
+ /** Streams Worker output frames and a final result or dispatch error. */
2348
+ readonly dispatchTask: {
2349
+ readonly path: "/dex.MatchingService/DispatchTask";
2179
2350
  readonly requestStream: false;
2180
- readonly responseStream: false;
2181
- readonly requestSerialize: (value: PurgeTenantRequest) => Buffer;
2182
- readonly requestDeserialize: (value: Buffer) => PurgeTenantRequest;
2183
- readonly responseSerialize: (value: PurgeTenantResponse) => Buffer;
2184
- readonly responseDeserialize: (value: Buffer) => PurgeTenantResponse;
2351
+ readonly responseStream: true;
2352
+ readonly requestSerialize: (value: DispatchTaskRequest) => Buffer;
2353
+ readonly requestDeserialize: (value: Buffer) => DispatchTaskRequest;
2354
+ readonly responseSerialize: (value: DispatchTaskResponse) => Buffer;
2355
+ readonly responseDeserialize: (value: Buffer) => DispatchTaskResponse;
2185
2356
  };
2186
- readonly describeTenant: {
2187
- readonly path: "/dex.TenantAdminService/DescribeTenant";
2188
- readonly requestStream: false;
2189
- readonly responseStream: false;
2190
- readonly requestSerialize: (value: DescribeTenantRequest) => Buffer;
2191
- readonly requestDeserialize: (value: Buffer) => DescribeTenantRequest;
2192
- readonly responseSerialize: (value: DescribeTenantResponse) => Buffer;
2193
- readonly responseDeserialize: (value: Buffer) => DescribeTenantResponse;
2357
+ /** Proxies a Worker's queue stream from its receiving instance to the queue owner. */
2358
+ readonly forwardPollWorkerTask: {
2359
+ readonly path: "/dex.MatchingService/ForwardPollWorkerTask";
2360
+ readonly requestStream: true;
2361
+ readonly responseStream: true;
2362
+ readonly requestSerialize: (value: PollWorkerTaskRequest) => Buffer;
2363
+ readonly requestDeserialize: (value: Buffer) => PollWorkerTaskRequest;
2364
+ readonly responseSerialize: (value: PollWorkerTaskResponse) => Buffer;
2365
+ readonly responseDeserialize: (value: Buffer) => PollWorkerTaskResponse;
2194
2366
  };
2195
2367
  };
2196
- export interface TenantAdminServiceServer extends UntypedServiceImplementation {
2197
- /** Refuses every credential of the tenant within the tombstone refresh interval. Idempotent. */
2198
- tombstoneTenant: handleUnaryCall<TombstoneTenantRequest, TombstoneTenantResponse>;
2199
- /** Deletes one bounded batch of the tombstoned tenant's data. Repeat until done is true. */
2200
- purgeTenant: handleUnaryCall<PurgeTenantRequest, PurgeTenantResponse>;
2201
- describeTenant: handleUnaryCall<DescribeTenantRequest, DescribeTenantResponse>;
2202
- }
2203
- export interface TenantAdminServiceClient extends Client {
2204
- /** Refuses every credential of the tenant within the tombstone refresh interval. Idempotent. */
2205
- tombstoneTenant(request: TombstoneTenantRequest, callback: (error: ServiceError | null, response: TombstoneTenantResponse) => void): ClientUnaryCall;
2206
- tombstoneTenant(request: TombstoneTenantRequest, metadata: Metadata, callback: (error: ServiceError | null, response: TombstoneTenantResponse) => void): ClientUnaryCall;
2207
- tombstoneTenant(request: TombstoneTenantRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: TombstoneTenantResponse) => void): ClientUnaryCall;
2208
- /** Deletes one bounded batch of the tombstoned tenant's data. Repeat until done is true. */
2209
- purgeTenant(request: PurgeTenantRequest, callback: (error: ServiceError | null, response: PurgeTenantResponse) => void): ClientUnaryCall;
2210
- purgeTenant(request: PurgeTenantRequest, metadata: Metadata, callback: (error: ServiceError | null, response: PurgeTenantResponse) => void): ClientUnaryCall;
2211
- purgeTenant(request: PurgeTenantRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: PurgeTenantResponse) => void): ClientUnaryCall;
2212
- describeTenant(request: DescribeTenantRequest, callback: (error: ServiceError | null, response: DescribeTenantResponse) => void): ClientUnaryCall;
2213
- describeTenant(request: DescribeTenantRequest, metadata: Metadata, callback: (error: ServiceError | null, response: DescribeTenantResponse) => void): ClientUnaryCall;
2214
- describeTenant(request: DescribeTenantRequest, metadata: Metadata, options: Partial<CallOptions>, callback: (error: ServiceError | null, response: DescribeTenantResponse) => void): ClientUnaryCall;
2215
- }
2216
- export declare const TenantAdminServiceClient: {
2217
- new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): TenantAdminServiceClient;
2218
- service: typeof TenantAdminServiceService;
2368
+ export interface MatchingServiceServer extends UntypedServiceImplementation {
2369
+ /** Streams Worker output frames and a final result or dispatch error. */
2370
+ dispatchTask: handleServerStreamingCall<DispatchTaskRequest, DispatchTaskResponse>;
2371
+ /** Proxies a Worker's queue stream from its receiving instance to the queue owner. */
2372
+ forwardPollWorkerTask: handleBidiStreamingCall<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2373
+ }
2374
+ export interface MatchingServiceClient extends Client {
2375
+ /** Streams Worker output frames and a final result or dispatch error. */
2376
+ dispatchTask(request: DispatchTaskRequest, options?: Partial<CallOptions>): ClientReadableStream<DispatchTaskResponse>;
2377
+ dispatchTask(request: DispatchTaskRequest, metadata?: Metadata, options?: Partial<CallOptions>): ClientReadableStream<DispatchTaskResponse>;
2378
+ /** Proxies a Worker's queue stream from its receiving instance to the queue owner. */
2379
+ forwardPollWorkerTask(): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2380
+ forwardPollWorkerTask(options: Partial<CallOptions>): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2381
+ forwardPollWorkerTask(metadata: Metadata, options?: Partial<CallOptions>): ClientDuplexStream<PollWorkerTaskRequest, PollWorkerTaskResponse>;
2382
+ }
2383
+ export declare const MatchingServiceClient: {
2384
+ new (address: string, credentials: ChannelCredentials, options?: Partial<ClientOptions>): MatchingServiceClient;
2385
+ service: typeof MatchingServiceService;
2219
2386
  serviceName: string;
2220
2387
  };
2388
+ /** Server-internal only (interpreter CAN activity → API). Not SDK-facing. */
2221
2389
  export type InternalServiceService = typeof InternalServiceService;
2222
2390
  export declare const InternalServiceService: {
2223
2391
  readonly dumpFlowForContinueAsNew: {