@hatchet-dev/typescript-sdk 1.16.0 → 1.17.1

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 (97) hide show
  1. package/README.md +14 -2
  2. package/clients/admin/admin-client.d.ts +2 -2
  3. package/clients/dispatcher/action-listener.d.ts +3 -6
  4. package/clients/dispatcher/action-listener.js +12 -17
  5. package/clients/listeners/durable-listener/durable-listener-client.d.ts +116 -15
  6. package/clients/listeners/durable-listener/durable-listener-client.js +770 -19
  7. package/clients/listeners/durable-listener/pooled-durable-listener-client.js +1 -14
  8. package/clients/listeners/run-listener/pooled-child-listener-client.js +1 -14
  9. package/clients/rest/generated/Api.d.ts +5 -1
  10. package/clients/rest/generated/data-contracts.d.ts +16 -2
  11. package/clients/rest/generated/data-contracts.js +7 -3
  12. package/legacy/examples/affinity-workers.js +2 -2
  13. package/legacy/legacy-client.js +1 -1
  14. package/legacy/step.d.ts +2 -2
  15. package/legacy/step.js +3 -2
  16. package/legacy/workflow.d.ts +25 -25
  17. package/package.json +1 -1
  18. package/protoc/dispatcher/dispatcher.d.ts +20 -0
  19. package/protoc/dispatcher/dispatcher.js +535 -100
  20. package/protoc/events/events.js +54 -14
  21. package/protoc/google/protobuf/timestamp.js +1 -1
  22. package/protoc/v1/dispatcher.d.ts +169 -0
  23. package/protoc/v1/dispatcher.js +2096 -8
  24. package/protoc/v1/shared/condition.js +37 -11
  25. package/protoc/v1/shared/trigger.d.ts +89 -0
  26. package/protoc/v1/shared/trigger.js +524 -0
  27. package/protoc/v1/workflows.d.ts +34 -34
  28. package/protoc/v1/workflows.js +452 -254
  29. package/protoc/workflows/workflows.d.ts +2 -75
  30. package/protoc/workflows/workflows.js +157 -529
  31. package/util/abort-error.d.ts +10 -0
  32. package/util/abort-error.js +15 -0
  33. package/util/errors/eviction-not-supported-error.d.ts +5 -0
  34. package/util/errors/eviction-not-supported-error.js +18 -0
  35. package/util/errors/non-determinism-error.d.ts +7 -0
  36. package/util/errors/non-determinism-error.js +21 -0
  37. package/util/errors/task-run-terminated-error.d.ts +6 -0
  38. package/util/errors/task-run-terminated-error.js +15 -0
  39. package/util/hatchet-promise/hatchet-promise.d.ts +2 -1
  40. package/util/hatchet-promise/hatchet-promise.js +10 -1
  41. package/util/sleep.d.ts +3 -2
  42. package/util/sleep.js +6 -4
  43. package/v1/client/admin.d.ts +2 -2
  44. package/v1/client/client.js +1 -1
  45. package/v1/client/duration.d.ts +11 -1
  46. package/v1/client/duration.js +44 -0
  47. package/v1/client/features/runs.d.ts +16 -3
  48. package/v1/client/features/runs.js +38 -3
  49. package/v1/client/worker/context.d.ts +101 -6
  50. package/v1/client/worker/context.js +247 -21
  51. package/v1/client/worker/deprecated/index.d.ts +1 -1
  52. package/v1/client/worker/deprecated/index.js +2 -1
  53. package/v1/client/worker/deprecated/legacy-worker.d.ts +5 -0
  54. package/v1/client/worker/deprecated/legacy-worker.js +32 -23
  55. package/v1/client/worker/deprecated/pre-eviction.d.ts +12 -0
  56. package/v1/client/worker/deprecated/pre-eviction.js +37 -0
  57. package/v1/client/worker/engine-version.d.ts +5 -0
  58. package/v1/client/worker/engine-version.js +14 -0
  59. package/v1/client/worker/eviction/eviction-cache.d.ts +33 -0
  60. package/v1/client/worker/eviction/eviction-cache.js +139 -0
  61. package/v1/client/worker/eviction/eviction-manager.d.ts +42 -0
  62. package/v1/client/worker/eviction/eviction-manager.js +132 -0
  63. package/v1/client/worker/eviction/eviction-policy.d.ts +19 -0
  64. package/v1/client/worker/eviction/eviction-policy.js +8 -0
  65. package/v1/client/worker/eviction/index.d.ts +3 -0
  66. package/v1/client/worker/eviction/index.js +11 -0
  67. package/v1/client/worker/worker-internal.d.ts +23 -4
  68. package/v1/client/worker/worker-internal.js +177 -138
  69. package/v1/client/worker/worker.d.ts +1 -0
  70. package/v1/client/worker/worker.js +34 -1
  71. package/v1/conditions/sleep-condition.js +2 -1
  72. package/v1/conditions/transformer.js +2 -1
  73. package/v1/declaration.d.ts +5 -3
  74. package/v1/declaration.js +8 -0
  75. package/v1/examples/__e2e__/harness.d.ts +5 -0
  76. package/v1/examples/__e2e__/harness.js +13 -0
  77. package/v1/examples/concurrency_workflow_level/workflow.d.ts +1 -1
  78. package/v1/examples/concurrency_workflow_level/workflow.js +1 -1
  79. package/v1/examples/durable/workflow.d.ts +57 -0
  80. package/v1/examples/durable/workflow.js +162 -7
  81. package/v1/examples/durable-event/workflow.js +2 -7
  82. package/v1/examples/durable_event/workflow.d.ts +1 -0
  83. package/v1/examples/durable_event/workflow.js +4 -9
  84. package/v1/examples/durable_eviction/capacity-worker.d.ts +1 -0
  85. package/v1/examples/durable_eviction/capacity-worker.js +31 -0
  86. package/v1/examples/durable_eviction/worker.d.ts +1 -0
  87. package/v1/examples/durable_eviction/worker.js +34 -0
  88. package/v1/examples/durable_eviction/workflow.d.ts +44 -0
  89. package/v1/examples/durable_eviction/workflow.js +129 -0
  90. package/v1/examples/e2e-worker.js +42 -19
  91. package/v1/index.d.ts +5 -0
  92. package/v1/index.js +10 -0
  93. package/v1/parent-run-context-vars.d.ts +6 -0
  94. package/v1/task.d.ts +10 -2
  95. package/v1/task.js +2 -1
  96. package/version.d.ts +1 -1
  97. package/version.js +1 -1
@@ -0,0 +1,524 @@
1
+ "use strict";
2
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
+ // versions:
4
+ // protoc-gen-ts_proto v2.11.4
5
+ // protoc v3.19.1
6
+ // source: v1/shared/trigger.proto
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.TriggerWorkflowRequest_DesiredWorkerLabelsEntry = exports.TriggerWorkflowRequest = exports.DesiredWorkerLabels = exports.WorkerLabelComparator = exports.protobufPackage = void 0;
9
+ exports.workerLabelComparatorFromJSON = workerLabelComparatorFromJSON;
10
+ exports.workerLabelComparatorToJSON = workerLabelComparatorToJSON;
11
+ /* eslint-disable */
12
+ const wire_1 = require("@bufbuild/protobuf/wire");
13
+ exports.protobufPackage = 'v1';
14
+ var WorkerLabelComparator;
15
+ (function (WorkerLabelComparator) {
16
+ WorkerLabelComparator[WorkerLabelComparator["EQUAL"] = 0] = "EQUAL";
17
+ WorkerLabelComparator[WorkerLabelComparator["NOT_EQUAL"] = 1] = "NOT_EQUAL";
18
+ WorkerLabelComparator[WorkerLabelComparator["GREATER_THAN"] = 2] = "GREATER_THAN";
19
+ WorkerLabelComparator[WorkerLabelComparator["GREATER_THAN_OR_EQUAL"] = 3] = "GREATER_THAN_OR_EQUAL";
20
+ WorkerLabelComparator[WorkerLabelComparator["LESS_THAN"] = 4] = "LESS_THAN";
21
+ WorkerLabelComparator[WorkerLabelComparator["LESS_THAN_OR_EQUAL"] = 5] = "LESS_THAN_OR_EQUAL";
22
+ WorkerLabelComparator[WorkerLabelComparator["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
23
+ })(WorkerLabelComparator || (exports.WorkerLabelComparator = WorkerLabelComparator = {}));
24
+ function workerLabelComparatorFromJSON(object) {
25
+ switch (object) {
26
+ case 0:
27
+ case 'EQUAL':
28
+ return WorkerLabelComparator.EQUAL;
29
+ case 1:
30
+ case 'NOT_EQUAL':
31
+ return WorkerLabelComparator.NOT_EQUAL;
32
+ case 2:
33
+ case 'GREATER_THAN':
34
+ return WorkerLabelComparator.GREATER_THAN;
35
+ case 3:
36
+ case 'GREATER_THAN_OR_EQUAL':
37
+ return WorkerLabelComparator.GREATER_THAN_OR_EQUAL;
38
+ case 4:
39
+ case 'LESS_THAN':
40
+ return WorkerLabelComparator.LESS_THAN;
41
+ case 5:
42
+ case 'LESS_THAN_OR_EQUAL':
43
+ return WorkerLabelComparator.LESS_THAN_OR_EQUAL;
44
+ case -1:
45
+ case 'UNRECOGNIZED':
46
+ default:
47
+ return WorkerLabelComparator.UNRECOGNIZED;
48
+ }
49
+ }
50
+ function workerLabelComparatorToJSON(object) {
51
+ switch (object) {
52
+ case WorkerLabelComparator.EQUAL:
53
+ return 'EQUAL';
54
+ case WorkerLabelComparator.NOT_EQUAL:
55
+ return 'NOT_EQUAL';
56
+ case WorkerLabelComparator.GREATER_THAN:
57
+ return 'GREATER_THAN';
58
+ case WorkerLabelComparator.GREATER_THAN_OR_EQUAL:
59
+ return 'GREATER_THAN_OR_EQUAL';
60
+ case WorkerLabelComparator.LESS_THAN:
61
+ return 'LESS_THAN';
62
+ case WorkerLabelComparator.LESS_THAN_OR_EQUAL:
63
+ return 'LESS_THAN_OR_EQUAL';
64
+ case WorkerLabelComparator.UNRECOGNIZED:
65
+ default:
66
+ return 'UNRECOGNIZED';
67
+ }
68
+ }
69
+ function createBaseDesiredWorkerLabels() {
70
+ return {
71
+ strValue: undefined,
72
+ intValue: undefined,
73
+ required: undefined,
74
+ comparator: undefined,
75
+ weight: undefined,
76
+ };
77
+ }
78
+ exports.DesiredWorkerLabels = {
79
+ encode(message, writer = new wire_1.BinaryWriter()) {
80
+ if (message.strValue !== undefined) {
81
+ writer.uint32(10).string(message.strValue);
82
+ }
83
+ if (message.intValue !== undefined) {
84
+ writer.uint32(16).int32(message.intValue);
85
+ }
86
+ if (message.required !== undefined) {
87
+ writer.uint32(24).bool(message.required);
88
+ }
89
+ if (message.comparator !== undefined) {
90
+ writer.uint32(32).int32(message.comparator);
91
+ }
92
+ if (message.weight !== undefined) {
93
+ writer.uint32(40).int32(message.weight);
94
+ }
95
+ return writer;
96
+ },
97
+ decode(input, length) {
98
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
99
+ const end = length === undefined ? reader.len : reader.pos + length;
100
+ const message = createBaseDesiredWorkerLabels();
101
+ while (reader.pos < end) {
102
+ const tag = reader.uint32();
103
+ switch (tag >>> 3) {
104
+ case 1: {
105
+ if (tag !== 10) {
106
+ break;
107
+ }
108
+ message.strValue = reader.string();
109
+ continue;
110
+ }
111
+ case 2: {
112
+ if (tag !== 16) {
113
+ break;
114
+ }
115
+ message.intValue = reader.int32();
116
+ continue;
117
+ }
118
+ case 3: {
119
+ if (tag !== 24) {
120
+ break;
121
+ }
122
+ message.required = reader.bool();
123
+ continue;
124
+ }
125
+ case 4: {
126
+ if (tag !== 32) {
127
+ break;
128
+ }
129
+ message.comparator = reader.int32();
130
+ continue;
131
+ }
132
+ case 5: {
133
+ if (tag !== 40) {
134
+ break;
135
+ }
136
+ message.weight = reader.int32();
137
+ continue;
138
+ }
139
+ }
140
+ if ((tag & 7) === 4 || tag === 0) {
141
+ break;
142
+ }
143
+ reader.skip(tag & 7);
144
+ }
145
+ return message;
146
+ },
147
+ fromJSON(object) {
148
+ return {
149
+ strValue: isSet(object.strValue)
150
+ ? globalThis.String(object.strValue)
151
+ : isSet(object.str_value)
152
+ ? globalThis.String(object.str_value)
153
+ : undefined,
154
+ intValue: isSet(object.intValue)
155
+ ? globalThis.Number(object.intValue)
156
+ : isSet(object.int_value)
157
+ ? globalThis.Number(object.int_value)
158
+ : undefined,
159
+ required: isSet(object.required) ? globalThis.Boolean(object.required) : undefined,
160
+ comparator: isSet(object.comparator)
161
+ ? workerLabelComparatorFromJSON(object.comparator)
162
+ : undefined,
163
+ weight: isSet(object.weight) ? globalThis.Number(object.weight) : undefined,
164
+ };
165
+ },
166
+ toJSON(message) {
167
+ const obj = {};
168
+ if (message.strValue !== undefined) {
169
+ obj.strValue = message.strValue;
170
+ }
171
+ if (message.intValue !== undefined) {
172
+ obj.intValue = Math.round(message.intValue);
173
+ }
174
+ if (message.required !== undefined) {
175
+ obj.required = message.required;
176
+ }
177
+ if (message.comparator !== undefined) {
178
+ obj.comparator = workerLabelComparatorToJSON(message.comparator);
179
+ }
180
+ if (message.weight !== undefined) {
181
+ obj.weight = Math.round(message.weight);
182
+ }
183
+ return obj;
184
+ },
185
+ create(base) {
186
+ return exports.DesiredWorkerLabels.fromPartial(base !== null && base !== void 0 ? base : {});
187
+ },
188
+ fromPartial(object) {
189
+ var _a, _b, _c, _d, _e;
190
+ const message = createBaseDesiredWorkerLabels();
191
+ message.strValue = (_a = object.strValue) !== null && _a !== void 0 ? _a : undefined;
192
+ message.intValue = (_b = object.intValue) !== null && _b !== void 0 ? _b : undefined;
193
+ message.required = (_c = object.required) !== null && _c !== void 0 ? _c : undefined;
194
+ message.comparator = (_d = object.comparator) !== null && _d !== void 0 ? _d : undefined;
195
+ message.weight = (_e = object.weight) !== null && _e !== void 0 ? _e : undefined;
196
+ return message;
197
+ },
198
+ };
199
+ function createBaseTriggerWorkflowRequest() {
200
+ return {
201
+ name: '',
202
+ input: '',
203
+ parentId: undefined,
204
+ parentTaskRunExternalId: undefined,
205
+ childIndex: undefined,
206
+ childKey: undefined,
207
+ additionalMetadata: undefined,
208
+ desiredWorkerId: undefined,
209
+ priority: undefined,
210
+ desiredWorkerLabels: {},
211
+ };
212
+ }
213
+ exports.TriggerWorkflowRequest = {
214
+ encode(message, writer = new wire_1.BinaryWriter()) {
215
+ if (message.name !== '') {
216
+ writer.uint32(10).string(message.name);
217
+ }
218
+ if (message.input !== '') {
219
+ writer.uint32(18).string(message.input);
220
+ }
221
+ if (message.parentId !== undefined) {
222
+ writer.uint32(26).string(message.parentId);
223
+ }
224
+ if (message.parentTaskRunExternalId !== undefined) {
225
+ writer.uint32(34).string(message.parentTaskRunExternalId);
226
+ }
227
+ if (message.childIndex !== undefined) {
228
+ writer.uint32(40).int32(message.childIndex);
229
+ }
230
+ if (message.childKey !== undefined) {
231
+ writer.uint32(50).string(message.childKey);
232
+ }
233
+ if (message.additionalMetadata !== undefined) {
234
+ writer.uint32(58).string(message.additionalMetadata);
235
+ }
236
+ if (message.desiredWorkerId !== undefined) {
237
+ writer.uint32(66).string(message.desiredWorkerId);
238
+ }
239
+ if (message.priority !== undefined) {
240
+ writer.uint32(72).int32(message.priority);
241
+ }
242
+ globalThis.Object.entries(message.desiredWorkerLabels).forEach(([key, value]) => {
243
+ exports.TriggerWorkflowRequest_DesiredWorkerLabelsEntry.encode({ key: key, value }, writer.uint32(82).fork()).join();
244
+ });
245
+ return writer;
246
+ },
247
+ decode(input, length) {
248
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
249
+ const end = length === undefined ? reader.len : reader.pos + length;
250
+ const message = createBaseTriggerWorkflowRequest();
251
+ while (reader.pos < end) {
252
+ const tag = reader.uint32();
253
+ switch (tag >>> 3) {
254
+ case 1: {
255
+ if (tag !== 10) {
256
+ break;
257
+ }
258
+ message.name = reader.string();
259
+ continue;
260
+ }
261
+ case 2: {
262
+ if (tag !== 18) {
263
+ break;
264
+ }
265
+ message.input = reader.string();
266
+ continue;
267
+ }
268
+ case 3: {
269
+ if (tag !== 26) {
270
+ break;
271
+ }
272
+ message.parentId = reader.string();
273
+ continue;
274
+ }
275
+ case 4: {
276
+ if (tag !== 34) {
277
+ break;
278
+ }
279
+ message.parentTaskRunExternalId = reader.string();
280
+ continue;
281
+ }
282
+ case 5: {
283
+ if (tag !== 40) {
284
+ break;
285
+ }
286
+ message.childIndex = reader.int32();
287
+ continue;
288
+ }
289
+ case 6: {
290
+ if (tag !== 50) {
291
+ break;
292
+ }
293
+ message.childKey = reader.string();
294
+ continue;
295
+ }
296
+ case 7: {
297
+ if (tag !== 58) {
298
+ break;
299
+ }
300
+ message.additionalMetadata = reader.string();
301
+ continue;
302
+ }
303
+ case 8: {
304
+ if (tag !== 66) {
305
+ break;
306
+ }
307
+ message.desiredWorkerId = reader.string();
308
+ continue;
309
+ }
310
+ case 9: {
311
+ if (tag !== 72) {
312
+ break;
313
+ }
314
+ message.priority = reader.int32();
315
+ continue;
316
+ }
317
+ case 10: {
318
+ if (tag !== 82) {
319
+ break;
320
+ }
321
+ const entry10 = exports.TriggerWorkflowRequest_DesiredWorkerLabelsEntry.decode(reader, reader.uint32());
322
+ if (entry10.value !== undefined) {
323
+ message.desiredWorkerLabels[entry10.key] = entry10.value;
324
+ }
325
+ continue;
326
+ }
327
+ }
328
+ if ((tag & 7) === 4 || tag === 0) {
329
+ break;
330
+ }
331
+ reader.skip(tag & 7);
332
+ }
333
+ return message;
334
+ },
335
+ fromJSON(object) {
336
+ return {
337
+ name: isSet(object.name) ? globalThis.String(object.name) : '',
338
+ input: isSet(object.input) ? globalThis.String(object.input) : '',
339
+ parentId: isSet(object.parentId)
340
+ ? globalThis.String(object.parentId)
341
+ : isSet(object.parent_id)
342
+ ? globalThis.String(object.parent_id)
343
+ : undefined,
344
+ parentTaskRunExternalId: isSet(object.parentTaskRunExternalId)
345
+ ? globalThis.String(object.parentTaskRunExternalId)
346
+ : isSet(object.parent_task_run_external_id)
347
+ ? globalThis.String(object.parent_task_run_external_id)
348
+ : undefined,
349
+ childIndex: isSet(object.childIndex)
350
+ ? globalThis.Number(object.childIndex)
351
+ : isSet(object.child_index)
352
+ ? globalThis.Number(object.child_index)
353
+ : undefined,
354
+ childKey: isSet(object.childKey)
355
+ ? globalThis.String(object.childKey)
356
+ : isSet(object.child_key)
357
+ ? globalThis.String(object.child_key)
358
+ : undefined,
359
+ additionalMetadata: isSet(object.additionalMetadata)
360
+ ? globalThis.String(object.additionalMetadata)
361
+ : isSet(object.additional_metadata)
362
+ ? globalThis.String(object.additional_metadata)
363
+ : undefined,
364
+ desiredWorkerId: isSet(object.desiredWorkerId)
365
+ ? globalThis.String(object.desiredWorkerId)
366
+ : isSet(object.desired_worker_id)
367
+ ? globalThis.String(object.desired_worker_id)
368
+ : undefined,
369
+ priority: isSet(object.priority) ? globalThis.Number(object.priority) : undefined,
370
+ desiredWorkerLabels: isObject(object.desiredWorkerLabels)
371
+ ? globalThis.Object.entries(object.desiredWorkerLabels).reduce((acc, [key, value]) => {
372
+ acc[key] = exports.DesiredWorkerLabels.fromJSON(value);
373
+ return acc;
374
+ }, {})
375
+ : isObject(object.desired_worker_labels)
376
+ ? globalThis.Object.entries(object.desired_worker_labels).reduce((acc, [key, value]) => {
377
+ acc[key] = exports.DesiredWorkerLabels.fromJSON(value);
378
+ return acc;
379
+ }, {})
380
+ : {},
381
+ };
382
+ },
383
+ toJSON(message) {
384
+ const obj = {};
385
+ if (message.name !== '') {
386
+ obj.name = message.name;
387
+ }
388
+ if (message.input !== '') {
389
+ obj.input = message.input;
390
+ }
391
+ if (message.parentId !== undefined) {
392
+ obj.parentId = message.parentId;
393
+ }
394
+ if (message.parentTaskRunExternalId !== undefined) {
395
+ obj.parentTaskRunExternalId = message.parentTaskRunExternalId;
396
+ }
397
+ if (message.childIndex !== undefined) {
398
+ obj.childIndex = Math.round(message.childIndex);
399
+ }
400
+ if (message.childKey !== undefined) {
401
+ obj.childKey = message.childKey;
402
+ }
403
+ if (message.additionalMetadata !== undefined) {
404
+ obj.additionalMetadata = message.additionalMetadata;
405
+ }
406
+ if (message.desiredWorkerId !== undefined) {
407
+ obj.desiredWorkerId = message.desiredWorkerId;
408
+ }
409
+ if (message.priority !== undefined) {
410
+ obj.priority = Math.round(message.priority);
411
+ }
412
+ if (message.desiredWorkerLabels) {
413
+ const entries = globalThis.Object.entries(message.desiredWorkerLabels);
414
+ if (entries.length > 0) {
415
+ obj.desiredWorkerLabels = {};
416
+ entries.forEach(([k, v]) => {
417
+ obj.desiredWorkerLabels[k] = exports.DesiredWorkerLabels.toJSON(v);
418
+ });
419
+ }
420
+ }
421
+ return obj;
422
+ },
423
+ create(base) {
424
+ return exports.TriggerWorkflowRequest.fromPartial(base !== null && base !== void 0 ? base : {});
425
+ },
426
+ fromPartial(object) {
427
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
428
+ const message = createBaseTriggerWorkflowRequest();
429
+ message.name = (_a = object.name) !== null && _a !== void 0 ? _a : '';
430
+ message.input = (_b = object.input) !== null && _b !== void 0 ? _b : '';
431
+ message.parentId = (_c = object.parentId) !== null && _c !== void 0 ? _c : undefined;
432
+ message.parentTaskRunExternalId = (_d = object.parentTaskRunExternalId) !== null && _d !== void 0 ? _d : undefined;
433
+ message.childIndex = (_e = object.childIndex) !== null && _e !== void 0 ? _e : undefined;
434
+ message.childKey = (_f = object.childKey) !== null && _f !== void 0 ? _f : undefined;
435
+ message.additionalMetadata = (_g = object.additionalMetadata) !== null && _g !== void 0 ? _g : undefined;
436
+ message.desiredWorkerId = (_h = object.desiredWorkerId) !== null && _h !== void 0 ? _h : undefined;
437
+ message.priority = (_j = object.priority) !== null && _j !== void 0 ? _j : undefined;
438
+ message.desiredWorkerLabels = globalThis.Object.entries((_k = object.desiredWorkerLabels) !== null && _k !== void 0 ? _k : {}).reduce((acc, [key, value]) => {
439
+ if (value !== undefined) {
440
+ acc[key] = exports.DesiredWorkerLabels.fromPartial(value);
441
+ }
442
+ return acc;
443
+ }, {});
444
+ return message;
445
+ },
446
+ };
447
+ function createBaseTriggerWorkflowRequest_DesiredWorkerLabelsEntry() {
448
+ return { key: '', value: undefined };
449
+ }
450
+ exports.TriggerWorkflowRequest_DesiredWorkerLabelsEntry = {
451
+ encode(message, writer = new wire_1.BinaryWriter()) {
452
+ if (message.key !== '') {
453
+ writer.uint32(10).string(message.key);
454
+ }
455
+ if (message.value !== undefined) {
456
+ exports.DesiredWorkerLabels.encode(message.value, writer.uint32(18).fork()).join();
457
+ }
458
+ return writer;
459
+ },
460
+ decode(input, length) {
461
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
462
+ const end = length === undefined ? reader.len : reader.pos + length;
463
+ const message = createBaseTriggerWorkflowRequest_DesiredWorkerLabelsEntry();
464
+ while (reader.pos < end) {
465
+ const tag = reader.uint32();
466
+ switch (tag >>> 3) {
467
+ case 1: {
468
+ if (tag !== 10) {
469
+ break;
470
+ }
471
+ message.key = reader.string();
472
+ continue;
473
+ }
474
+ case 2: {
475
+ if (tag !== 18) {
476
+ break;
477
+ }
478
+ message.value = exports.DesiredWorkerLabels.decode(reader, reader.uint32());
479
+ continue;
480
+ }
481
+ }
482
+ if ((tag & 7) === 4 || tag === 0) {
483
+ break;
484
+ }
485
+ reader.skip(tag & 7);
486
+ }
487
+ return message;
488
+ },
489
+ fromJSON(object) {
490
+ return {
491
+ key: isSet(object.key) ? globalThis.String(object.key) : '',
492
+ value: isSet(object.value) ? exports.DesiredWorkerLabels.fromJSON(object.value) : undefined,
493
+ };
494
+ },
495
+ toJSON(message) {
496
+ const obj = {};
497
+ if (message.key !== '') {
498
+ obj.key = message.key;
499
+ }
500
+ if (message.value !== undefined) {
501
+ obj.value = exports.DesiredWorkerLabels.toJSON(message.value);
502
+ }
503
+ return obj;
504
+ },
505
+ create(base) {
506
+ return exports.TriggerWorkflowRequest_DesiredWorkerLabelsEntry.fromPartial(base !== null && base !== void 0 ? base : {});
507
+ },
508
+ fromPartial(object) {
509
+ var _a;
510
+ const message = createBaseTriggerWorkflowRequest_DesiredWorkerLabelsEntry();
511
+ message.key = (_a = object.key) !== null && _a !== void 0 ? _a : '';
512
+ message.value =
513
+ object.value !== undefined && object.value !== null
514
+ ? exports.DesiredWorkerLabels.fromPartial(object.value)
515
+ : undefined;
516
+ return message;
517
+ },
518
+ };
519
+ function isObject(value) {
520
+ return typeof value === 'object' && value !== null;
521
+ }
522
+ function isSet(value) {
523
+ return value !== null && value !== undefined;
524
+ }
@@ -1,6 +1,7 @@
1
1
  import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire';
2
2
  import type { CallContext, CallOptions } from 'nice-grpc-common';
3
3
  import { TaskConditions } from './shared/condition';
4
+ import { DesiredWorkerLabels } from './shared/trigger';
4
5
  export declare const protobufPackage = "v1";
5
6
  export declare enum StickyStrategy {
6
7
  SOFT = 0,
@@ -27,6 +28,7 @@ export declare enum RunStatus {
27
28
  COMPLETED = 2,
28
29
  FAILED = 3,
29
30
  CANCELLED = 4,
31
+ EVICTED = 5,
30
32
  UNRECOGNIZED = -1
31
33
  }
32
34
  export declare function runStatusFromJSON(object: any): RunStatus;
@@ -43,17 +45,6 @@ export declare enum ConcurrencyLimitStrategy {
43
45
  }
44
46
  export declare function concurrencyLimitStrategyFromJSON(object: any): ConcurrencyLimitStrategy;
45
47
  export declare function concurrencyLimitStrategyToJSON(object: ConcurrencyLimitStrategy): string;
46
- export declare enum WorkerLabelComparator {
47
- EQUAL = 0,
48
- NOT_EQUAL = 1,
49
- GREATER_THAN = 2,
50
- GREATER_THAN_OR_EQUAL = 3,
51
- LESS_THAN = 4,
52
- LESS_THAN_OR_EQUAL = 5,
53
- UNRECOGNIZED = -1
54
- }
55
- export declare function workerLabelComparatorFromJSON(object: any): WorkerLabelComparator;
56
- export declare function workerLabelComparatorToJSON(object: WorkerLabelComparator): string;
57
48
  export interface CancelTasksRequest {
58
49
  /** a list of external UUIDs */
59
50
  externalIds: string[];
@@ -93,6 +84,22 @@ export interface TriggerWorkflowRunRequest_DesiredWorkerLabelsEntry {
93
84
  export interface TriggerWorkflowRunResponse {
94
85
  externalId: string;
95
86
  }
87
+ export interface BranchDurableTaskRequest {
88
+ /** (required) the external id (uuid) of the durable task */
89
+ taskExternalId: string;
90
+ /** (required) the node id to branch from */
91
+ nodeId: number;
92
+ /** (required) the branch id to branch from */
93
+ branchId: number;
94
+ }
95
+ export interface BranchDurableTaskResponse {
96
+ /** the external id of the durable task */
97
+ taskExternalId: string;
98
+ /** the node id of the new entry */
99
+ nodeId: number;
100
+ /** the branch id of the new entry */
101
+ branchId: number;
102
+ }
96
103
  /** CreateWorkflowVersionRequest represents options to create a workflow version. */
97
104
  export interface CreateWorkflowVersionRequest {
98
105
  /** (required) the workflow name */
@@ -140,28 +147,6 @@ export interface Concurrency {
140
147
  /** (optional) the strategy to use when the concurrency limit is reached, default CANCEL_IN_PROGRESS */
141
148
  limitStrategy?: ConcurrencyLimitStrategy | undefined;
142
149
  }
143
- export interface DesiredWorkerLabels {
144
- /** value of the affinity */
145
- strValue?: string | undefined;
146
- intValue?: number | undefined;
147
- /**
148
- * (optional) Specifies whether the affinity setting is required.
149
- * If required, the worker will not accept actions that do not have a truthy affinity setting.
150
- *
151
- * Defaults to false.
152
- */
153
- required?: boolean | undefined;
154
- /**
155
- * (optional) Specifies the comparator for the affinity setting.
156
- * If not set, the default is EQUAL.
157
- */
158
- comparator?: WorkerLabelComparator | undefined;
159
- /**
160
- * (optional) Specifies the weight of the affinity setting.
161
- * If not set, the default is 100.
162
- */
163
- weight?: number | undefined;
164
- }
165
150
  /** CreateTaskOpts represents options to create a task. */
166
151
  export interface CreateTaskOpts {
167
152
  /** (required) the task name */
@@ -241,6 +226,8 @@ export interface TaskRunDetail {
241
226
  output?: Uint8Array | undefined;
242
227
  /** the readable id of the task */
243
228
  readableId: string;
229
+ /** whether the task has been evicted from a worker (status will be RUNNING) */
230
+ isEvicted: boolean;
244
231
  }
245
232
  export interface GetRunDetailsResponse {
246
233
  /** the input payload for the workflow run */
@@ -255,6 +242,8 @@ export interface GetRunDetailsResponse {
255
242
  done: boolean;
256
243
  /** (optional) additional metadata for the workflow run */
257
244
  additionalMetadata: Uint8Array;
245
+ /** whether any task in this run has been evicted */
246
+ isEvicted: boolean;
258
247
  }
259
248
  export interface GetRunDetailsResponse_TaskRunsEntry {
260
249
  key: string;
@@ -268,10 +257,11 @@ export declare const ReplayTasksResponse: MessageFns<ReplayTasksResponse>;
268
257
  export declare const TriggerWorkflowRunRequest: MessageFns<TriggerWorkflowRunRequest>;
269
258
  export declare const TriggerWorkflowRunRequest_DesiredWorkerLabelsEntry: MessageFns<TriggerWorkflowRunRequest_DesiredWorkerLabelsEntry>;
270
259
  export declare const TriggerWorkflowRunResponse: MessageFns<TriggerWorkflowRunResponse>;
260
+ export declare const BranchDurableTaskRequest: MessageFns<BranchDurableTaskRequest>;
261
+ export declare const BranchDurableTaskResponse: MessageFns<BranchDurableTaskResponse>;
271
262
  export declare const CreateWorkflowVersionRequest: MessageFns<CreateWorkflowVersionRequest>;
272
263
  export declare const DefaultFilter: MessageFns<DefaultFilter>;
273
264
  export declare const Concurrency: MessageFns<Concurrency>;
274
- export declare const DesiredWorkerLabels: MessageFns<DesiredWorkerLabels>;
275
265
  export declare const CreateTaskOpts: MessageFns<CreateTaskOpts>;
276
266
  export declare const CreateTaskOpts_WorkerLabelsEntry: MessageFns<CreateTaskOpts_WorkerLabelsEntry>;
277
267
  export declare const CreateTaskOpts_SlotRequestsEntry: MessageFns<CreateTaskOpts_SlotRequestsEntry>;
@@ -327,6 +317,14 @@ export declare const AdminServiceDefinition: {
327
317
  readonly responseStream: false;
328
318
  readonly options: {};
329
319
  };
320
+ readonly branchDurableTask: {
321
+ readonly name: "BranchDurableTask";
322
+ readonly requestType: MessageFns<BranchDurableTaskRequest>;
323
+ readonly requestStream: false;
324
+ readonly responseType: MessageFns<BranchDurableTaskResponse>;
325
+ readonly responseStream: false;
326
+ readonly options: {};
327
+ };
330
328
  };
331
329
  };
332
330
  export interface AdminServiceImplementation<CallContextExt = {}> {
@@ -335,6 +333,7 @@ export interface AdminServiceImplementation<CallContextExt = {}> {
335
333
  replayTasks(request: ReplayTasksRequest, context: CallContext & CallContextExt): Promise<DeepPartial<ReplayTasksResponse>>;
336
334
  triggerWorkflowRun(request: TriggerWorkflowRunRequest, context: CallContext & CallContextExt): Promise<DeepPartial<TriggerWorkflowRunResponse>>;
337
335
  getRunDetails(request: GetRunDetailsRequest, context: CallContext & CallContextExt): Promise<DeepPartial<GetRunDetailsResponse>>;
336
+ branchDurableTask(request: BranchDurableTaskRequest, context: CallContext & CallContextExt): Promise<DeepPartial<BranchDurableTaskResponse>>;
338
337
  }
339
338
  export interface AdminServiceClient<CallOptionsExt = {}> {
340
339
  putWorkflow(request: DeepPartial<CreateWorkflowVersionRequest>, options?: CallOptions & CallOptionsExt): Promise<CreateWorkflowVersionResponse>;
@@ -342,6 +341,7 @@ export interface AdminServiceClient<CallOptionsExt = {}> {
342
341
  replayTasks(request: DeepPartial<ReplayTasksRequest>, options?: CallOptions & CallOptionsExt): Promise<ReplayTasksResponse>;
343
342
  triggerWorkflowRun(request: DeepPartial<TriggerWorkflowRunRequest>, options?: CallOptions & CallOptionsExt): Promise<TriggerWorkflowRunResponse>;
344
343
  getRunDetails(request: DeepPartial<GetRunDetailsRequest>, options?: CallOptions & CallOptionsExt): Promise<GetRunDetailsResponse>;
344
+ branchDurableTask(request: DeepPartial<BranchDurableTaskRequest>, options?: CallOptions & CallOptionsExt): Promise<BranchDurableTaskResponse>;
345
345
  }
346
346
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
347
347
  export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {