@flyteorg/flyteidl2 2.0.16 → 2.0.47

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 (34) hide show
  1. package/flyteidl2/actions/actions_service_pb.ts +36 -74
  2. package/flyteidl2/app/app_definition_pb.ts +185 -24
  3. package/flyteidl2/app/app_logs_payload_pb.ts +18 -2
  4. package/flyteidl2/app/app_payload_pb.ts +90 -12
  5. package/flyteidl2/artifact/artifact_pb.ts +277 -0
  6. package/flyteidl2/artifact/artifact_service_pb.ts +378 -0
  7. package/flyteidl2/cluster/payload_pb.ts +44 -2
  8. package/flyteidl2/common/cache_pb.ts +37 -0
  9. package/flyteidl2/common/list_pb.ts +22 -2
  10. package/flyteidl2/common/phase_pb.ts +11 -1
  11. package/flyteidl2/common/run_pb.ts +89 -3
  12. package/flyteidl2/core/artifact_id_pb.ts +112 -11
  13. package/flyteidl2/core/execution_pb.ts +190 -15
  14. package/flyteidl2/core/literals_pb.ts +14 -1
  15. package/flyteidl2/core/tasks_pb.ts +170 -14
  16. package/flyteidl2/dataproxy/dataproxy_service_pb.ts +76 -5
  17. package/flyteidl2/imagebuilder/definition_pb.ts +22 -1
  18. package/flyteidl2/logs/dataplane/payload_pb.ts +66 -2
  19. package/flyteidl2/notification/definition_pb.ts +58 -7
  20. package/flyteidl2/plugins/clustered_pb.ts +232 -0
  21. package/flyteidl2/plugins/ray_pb.ts +104 -7
  22. package/flyteidl2/settings/settings_definition_pb.ts +52 -41
  23. package/flyteidl2/task/common_pb.ts +134 -6
  24. package/flyteidl2/task/run_pb.ts +157 -9
  25. package/flyteidl2/task/task_definition_pb.ts +25 -4
  26. package/flyteidl2/task/task_service_pb.ts +18 -2
  27. package/flyteidl2/trigger/trigger_definition_pb.ts +26 -5
  28. package/flyteidl2/workflow/internal_run_service_pb.ts +37 -1
  29. package/flyteidl2/workflow/run_definition_pb.ts +219 -16
  30. package/flyteidl2/workflow/run_info_pb.ts +30 -1
  31. package/flyteidl2/workflow/run_service_pb.ts +703 -12
  32. package/flyteidl2/workflow/tracked_run_service_pb.ts +368 -0
  33. package/flyteidl2/workflow/translator_service_pb.ts +43 -2
  34. package/package.json +2 -2
@@ -15,7 +15,7 @@ import type { Message } from "@bufbuild/protobuf";
15
15
  * Describes the file flyteidl2/logs/dataplane/payload.proto.
16
16
  */
17
17
  export const file_flyteidl2_logs_dataplane_payload: GenFile = /*@__PURE__*/
18
- fileDesc("CiZmbHl0ZWlkbDIvbG9ncy9kYXRhcGxhbmUvcGF5bG9hZC5wcm90bxIYZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lIlMKC1BvZFJlc291cmNlEhoKCW5hbWVzcGFjZRgBIAEoCUIHukgEcgIQARIVCgRuYW1lGAIgASgJQge6SARyAhABEhEKCWNvbnRhaW5lchgDIAEoCSKgBAoOTG9nZ2luZ0NvbnRleHQSHQoMY2x1c3Rlcl9uYW1lGAMgASgJQge6SARyAhABEiUKFGt1YmVybmV0ZXNfbmFtZXNwYWNlGAQgASgJQge6SARyAhABEiQKE2t1YmVybmV0ZXNfcG9kX25hbWUYBSABKAlCB7pIBHICEAESKgoZa3ViZXJuZXRlc19jb250YWluZXJfbmFtZRgGIAEoCUIHukgEcgIQARJAChxleGVjdXRpb25fYXR0ZW1wdF9zdGFydF90aW1lGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI+ChpleGVjdXRpb25fYXR0ZW1wdF9lbmRfdGltZRgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASYAoVa3ViZXJuZXRlc19wb2RfbGFiZWxzGAkgAygLMkEuZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lLkxvZ2dpbmdDb250ZXh0Lkt1YmVybmV0ZXNQb2RMYWJlbHNFbnRyeRIvCgVvcmRlchgKIAEoDjIgLmZseXRlaWRsMi5jb21tb24uU29ydC5EaXJlY3Rpb24SGQoRbnVtYmVyX29mX2JhdGNoZXMYCyABKAQaOgoYS3ViZXJuZXRlc1BvZExhYmVsc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAFKBAgBEAJKBAgCEAMipAEKE0NvbnRhaW5lcklkZW50aWZpZXISHQoMY2x1c3Rlcl9uYW1lGAEgASgJQge6SARyAhABEiUKFGt1YmVybmV0ZXNfbmFtZXNwYWNlGAIgASgJQge6SARyAhABEiQKE2t1YmVybmV0ZXNfcG9kX25hbWUYAyABKAlCB7pIBHICEAESIQoZa3ViZXJuZXRlc19jb250YWluZXJfbmFtZRgEIAEoCSLaAQoRQ29udGFpbmVyU2VsZWN0b3ISHQoMY2x1c3Rlcl9uYW1lGAEgASgJQge6SARyAhABEiUKFGt1YmVybmV0ZXNfbmFtZXNwYWNlGAIgASgJQge6SARyAhABEiIKGmt1YmVybmV0ZXNfcG9kX25hbWVfcHJlZml4GAMgASgJEiEKGWt1YmVybmV0ZXNfY29udGFpbmVyX25hbWUYBCABKAkSJQoda3ViZXJuZXRlc19wb2RfbGFiZWxfc2VsZWN0b3IYBSABKAkSEQoJbm9kZV9uYW1lGAYgASgJIkEKD0xpdmVMb2dzT3B0aW9ucxIWCg5sb2dfcG9kX3N0YXR1cxgBIAEoCBIWCg5sb2dfdGltZXN0YW1wcxgCIAEoCCKKAQoHTG9nTGluZRItCgl0aW1lc3RhbXAYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB21lc3NhZ2UYAiABKAkSPwoKb3JpZ2luYXRvchgDIAEoDjIrLmZseXRlaWRsMi5sb2dzLmRhdGFwbGFuZS5Mb2dMaW5lT3JpZ2luYXRvciK9AQoITG9nTGluZXMSEQoFbGluZXMYASADKAlCAhgBEhcKD2NvbnRhaW5lcl9pbmRleBgCIAEoDRJICgljb250YWluZXIYAyABKAsyLS5mbHl0ZWlkbDIubG9ncy5kYXRhcGxhbmUuQ29udGFpbmVySWRlbnRpZmllckIGukgDyAEBEjsKEHN0cnVjdHVyZWRfbGluZXMYBCADKAsyIS5mbHl0ZWlkbDIubG9ncy5kYXRhcGxhbmUuTG9nTGluZSJWChFMb2dDb250YWluZXJzTGlzdBJBCgpjb250YWluZXJzGAEgAygLMi0uZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lLkNvbnRhaW5lcklkZW50aWZpZXIiQQoNTG9nTGluZXNCYXRjaBIwCgRsb2dzGAEgAygLMiIuZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lLkxvZ0xpbmVzKjYKEUxvZ0xpbmVPcmlnaW5hdG9yEgsKB1VOS05PV04QABIICgRVU0VSEAESCgoGU1lTVEVNEAIqRgoKTG9nc1NvdXJjZRIVChFMSVZFX09SX1BFUlNJU1RFRBAAEg0KCUxJVkVfT05MWRABEhIKDlBFUlNJU1RFRF9PTkxZEAJC7gEKHGNvbS5mbHl0ZWlkbDIubG9ncy5kYXRhcGxhbmVCDFBheWxvYWRQcm90b0gCUAFaPGdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9sb2dzL2RhdGFwbGFuZaICA0ZMRKoCGEZseXRlaWRsMi5Mb2dzLkRhdGFwbGFuZcoCGEZseXRlaWRsMlxMb2dzXERhdGFwbGFuZeICJEZseXRlaWRsMlxMb2dzXERhdGFwbGFuZVxHUEJNZXRhZGF0YeoCGkZseXRlaWRsMjo6TG9nczo6RGF0YXBsYW5lYgZwcm90bzM", [file_buf_validate_validate, file_flyteidl2_common_list, file_google_protobuf_timestamp]);
18
+ fileDesc("CiZmbHl0ZWlkbDIvbG9ncy9kYXRhcGxhbmUvcGF5bG9hZC5wcm90bxIYZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lIlMKC1BvZFJlc291cmNlEhoKCW5hbWVzcGFjZRgBIAEoCUIHukgEcgIQARIVCgRuYW1lGAIgASgJQge6SARyAhABEhEKCWNvbnRhaW5lchgDIAEoCSLYBAoOTG9nZ2luZ0NvbnRleHQSHQoMY2x1c3Rlcl9uYW1lGAMgASgJQge6SARyAhABEiUKFGt1YmVybmV0ZXNfbmFtZXNwYWNlGAQgASgJQge6SARyAhABEiQKE2t1YmVybmV0ZXNfcG9kX25hbWUYBSABKAlCB7pIBHICEAESKgoZa3ViZXJuZXRlc19jb250YWluZXJfbmFtZRgGIAEoCUIHukgEcgIQARJAChxleGVjdXRpb25fYXR0ZW1wdF9zdGFydF90aW1lGAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI+ChpleGVjdXRpb25fYXR0ZW1wdF9lbmRfdGltZRgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASYAoVa3ViZXJuZXRlc19wb2RfbGFiZWxzGAkgAygLMkEuZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lLkxvZ2dpbmdDb250ZXh0Lkt1YmVybmV0ZXNQb2RMYWJlbHNFbnRyeRIvCgVvcmRlchgKIAEoDjIgLmZseXRlaWRsMi5jb21tb24uU29ydC5EaXJlY3Rpb24SGQoRbnVtYmVyX29mX2JhdGNoZXMYCyABKAQSGwoPcG9kX25hbWVfcHJlZml4GAwgASgJQgIYARIZChFwb2RfbmFtZV9wcmVmaXhlcxgNIAMoCRo6ChhLdWJlcm5ldGVzUG9kTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUoECAEQAkoECAIQAyKkAQoTQ29udGFpbmVySWRlbnRpZmllchIdCgxjbHVzdGVyX25hbWUYASABKAlCB7pIBHICEAESJQoUa3ViZXJuZXRlc19uYW1lc3BhY2UYAiABKAlCB7pIBHICEAESJAoTa3ViZXJuZXRlc19wb2RfbmFtZRgDIAEoCUIHukgEcgIQARIhChlrdWJlcm5ldGVzX2NvbnRhaW5lcl9uYW1lGAQgASgJItoBChFDb250YWluZXJTZWxlY3RvchIdCgxjbHVzdGVyX25hbWUYASABKAlCB7pIBHICEAESJQoUa3ViZXJuZXRlc19uYW1lc3BhY2UYAiABKAlCB7pIBHICEAESIgoaa3ViZXJuZXRlc19wb2RfbmFtZV9wcmVmaXgYAyABKAkSIQoZa3ViZXJuZXRlc19jb250YWluZXJfbmFtZRgEIAEoCRIlCh1rdWJlcm5ldGVzX3BvZF9sYWJlbF9zZWxlY3RvchgFIAEoCRIRCglub2RlX25hbWUYBiABKAkiQQoPTGl2ZUxvZ3NPcHRpb25zEhYKDmxvZ19wb2Rfc3RhdHVzGAEgASgIEhYKDmxvZ190aW1lc3RhbXBzGAIgASgIIqIBCgdMb2dMaW5lEi0KCXRpbWVzdGFtcBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDwoHbWVzc2FnZRgCIAEoCRI/CgpvcmlnaW5hdG9yGAMgASgOMisuZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lLkxvZ0xpbmVPcmlnaW5hdG9yEhYKDnNob3J0X3BvZF9uYW1lGAQgASgJIvYBCghMb2dMaW5lcxIRCgVsaW5lcxgBIAMoCUICGAESFwoPY29udGFpbmVyX2luZGV4GAIgASgNEkgKCWNvbnRhaW5lchgDIAEoCzItLmZseXRlaWRsMi5sb2dzLmRhdGFwbGFuZS5Db250YWluZXJJZGVudGlmaWVyQga6SAPIAQESOwoQc3RydWN0dXJlZF9saW5lcxgEIAMoCzIhLmZseXRlaWRsMi5sb2dzLmRhdGFwbGFuZS5Mb2dMaW5lEjcKBnNvdXJjZRgFIAEoDjInLmZseXRlaWRsMi5sb2dzLmRhdGFwbGFuZS5Mb2dMaW5lU291cmNlIlYKEUxvZ0NvbnRhaW5lcnNMaXN0EkEKCmNvbnRhaW5lcnMYASADKAsyLS5mbHl0ZWlkbDIubG9ncy5kYXRhcGxhbmUuQ29udGFpbmVySWRlbnRpZmllciJBCg1Mb2dMaW5lc0JhdGNoEjAKBGxvZ3MYASADKAsyIi5mbHl0ZWlkbDIubG9ncy5kYXRhcGxhbmUuTG9nTGluZXMqNgoRTG9nTGluZU9yaWdpbmF0b3ISCwoHVU5LTk9XThAAEggKBFVTRVIQARIKCgZTWVNURU0QAippCg1Mb2dMaW5lU291cmNlEh8KG0xPR19MSU5FX1NPVVJDRV9VTlNQRUNJRklFRBAAEhgKFExPR19MSU5FX1NPVVJDRV9MSVZFEAESHQoZTE9HX0xJTkVfU09VUkNFX1BFUlNJU1RFRBACKkYKCkxvZ3NTb3VyY2USFQoRTElWRV9PUl9QRVJTSVNURUQQABINCglMSVZFX09OTFkQARISCg5QRVJTSVNURURfT05MWRACQu4BChxjb20uZmx5dGVpZGwyLmxvZ3MuZGF0YXBsYW5lQgxQYXlsb2FkUHJvdG9IAlABWjxnaXRodWIuY29tL2ZseXRlb3JnL2ZseXRlL3YyL2dlbi9nby9mbHl0ZWlkbDIvbG9ncy9kYXRhcGxhbmWiAgNGTESqAhhGbHl0ZWlkbDIuTG9ncy5EYXRhcGxhbmXKAhhGbHl0ZWlkbDJcTG9nc1xEYXRhcGxhbmXiAiRGbHl0ZWlkbDJcTG9nc1xEYXRhcGxhbmVcR1BCTWV0YWRhdGHqAhpGbHl0ZWlkbDI6OkxvZ3M6OkRhdGFwbGFuZWIGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_list, file_google_protobuf_timestamp]);
19
19
 
20
20
  /**
21
21
  * @generated from message flyteidl2.logs.dataplane.PodResource
@@ -102,6 +102,22 @@ export type LoggingContext = Message<"flyteidl2.logs.dataplane.LoggingContext">
102
102
  * @generated from field: uint64 number_of_batches = 11;
103
103
  */
104
104
  numberOfBatches: bigint;
105
+
106
+ /**
107
+ * +optional. Deprecated: use pod_name_prefixes. Still populated with the task's own pod-name
108
+ * prefix for readers that predate pod_name_prefixes.
109
+ *
110
+ * @generated from field: string pod_name_prefix = 12 [deprecated = true];
111
+ * @deprecated
112
+ */
113
+ podNamePrefix: string;
114
+
115
+ /**
116
+ * +optional, pod-name prefixes used by log sources to narrow stream/pod searches.
117
+ *
118
+ * @generated from field: repeated string pod_name_prefixes = 13;
119
+ */
120
+ podNamePrefixes: string[];
105
121
  };
106
122
 
107
123
  /**
@@ -261,6 +277,15 @@ export type LogLine = Message<"flyteidl2.logs.dataplane.LogLine"> & {
261
277
  * @generated from field: flyteidl2.logs.dataplane.LogLineOriginator originator = 3;
262
278
  */
263
279
  originator: LogLineOriginator;
280
+
281
+ /**
282
+ * Last few characters of the pod name this line came from. Enough to tell replicas apart
283
+ * per line without repeating the full generated name. Empty when the source cannot
284
+ * attribute the line to a pod.
285
+ *
286
+ * @generated from field: string short_pod_name = 4;
287
+ */
288
+ shortPodName: string;
264
289
  };
265
290
 
266
291
  /**
@@ -307,6 +332,13 @@ export type LogLines = Message<"flyteidl2.logs.dataplane.LogLines"> & {
307
332
  * @generated from field: repeated flyteidl2.logs.dataplane.LogLine structured_lines = 4;
308
333
  */
309
334
  structuredLines: LogLine[];
335
+
336
+ /**
337
+ * Which backend these lines were read from. Every line in a batch has the same source.
338
+ *
339
+ * @generated from field: flyteidl2.logs.dataplane.LogLineSource source = 5;
340
+ */
341
+ source: LogLineSource;
310
342
  };
311
343
 
312
344
  /**
@@ -382,6 +414,38 @@ export enum LogLineOriginator {
382
414
  export const LogLineOriginatorSchema: GenEnum<LogLineOriginator> = /*@__PURE__*/
383
415
  enumDesc(file_flyteidl2_logs_dataplane_payload, 0);
384
416
 
417
+ /**
418
+ * By default we use live log, and it will fall back to persisted if live logs not available
419
+ *
420
+ * @generated from enum flyteidl2.logs.dataplane.LogLineSource
421
+ */
422
+ export enum LogLineSource {
423
+ /**
424
+ * @generated from enum value: LOG_LINE_SOURCE_UNSPECIFIED = 0;
425
+ */
426
+ UNSPECIFIED = 0,
427
+
428
+ /**
429
+ * Read from the Kubernetes API for a pod that is currently running.
430
+ *
431
+ * @generated from enum value: LOG_LINE_SOURCE_LIVE = 1;
432
+ */
433
+ LIVE = 1,
434
+
435
+ /**
436
+ * Read from the persisted log backend.
437
+ *
438
+ * @generated from enum value: LOG_LINE_SOURCE_PERSISTED = 2;
439
+ */
440
+ PERSISTED = 2,
441
+ }
442
+
443
+ /**
444
+ * Describes the enum flyteidl2.logs.dataplane.LogLineSource.
445
+ */
446
+ export const LogLineSourceSchema: GenEnum<LogLineSource> = /*@__PURE__*/
447
+ enumDesc(file_flyteidl2_logs_dataplane_payload, 1);
448
+
385
449
  /**
386
450
  * @generated from enum flyteidl2.logs.dataplane.LogsSource
387
451
  */
@@ -412,5 +476,5 @@ export enum LogsSource {
412
476
  * Describes the enum flyteidl2.logs.dataplane.LogsSource.
413
477
  */
414
478
  export const LogsSourceSchema: GenEnum<LogsSource> = /*@__PURE__*/
415
- enumDesc(file_flyteidl2_logs_dataplane_payload, 1);
479
+ enumDesc(file_flyteidl2_logs_dataplane_payload, 2);
416
480
 
@@ -5,7 +5,7 @@
5
5
  import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
6
6
  import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
7
7
  import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
8
- import type { RunIdentifier } from "../common/identifier_pb.ts";
8
+ import type { ActionIdentifier, RunIdentifier } from "../common/identifier_pb.ts";
9
9
  import { file_flyteidl2_common_identifier } from "../common/identifier_pb.ts";
10
10
  import type { ActionPhase } from "../common/phase_pb.ts";
11
11
  import { file_flyteidl2_common_phase } from "../common/phase_pb.ts";
@@ -15,7 +15,7 @@ import type { Message } from "@bufbuild/protobuf";
15
15
  * Describes the file flyteidl2/notification/definition.proto.
16
16
  */
17
17
  export const file_flyteidl2_notification_definition: GenFile = /*@__PURE__*/
18
- fileDesc("CidmbHl0ZWlkbDIvbm90aWZpY2F0aW9uL2RlZmluaXRpb24ucHJvdG8SFmZseXRlaWRsMi5ub3RpZmljYXRpb24ijgIKFkRlbGl2ZXJ5Q29uZmlnVGVtcGxhdGUSQAoHd2ViaG9vaxgBIAEoCzIvLmZseXRlaWRsMi5ub3RpZmljYXRpb24uV2ViaG9va0RlbGl2ZXJ5VGVtcGxhdGUSPAoFZW1haWwYAiABKAsyLS5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkVtYWlsRGVsaXZlcnlUZW1wbGF0ZTp0ukhxGm8KFWF0X2xlYXN0X29uZV9yZXF1aXJlZBIwYXQgbGVhc3Qgb25lIG9mIHRoZSBkZWxpdmVyeSBvcHRpb25zIG11c3QgYmUgc2V0GiRoYXModGhpcy53ZWJob29rKSB8fCBoYXModGhpcy5lbWFpbCkimQEKJFJ1bkNvbXBsZXRlZE5vdGlmaWNhdGlvblRlbXBsYXRlRGF0YRI0CgNydW4YASABKAsyHy5mbHl0ZWlkbDIuY29tbW9uLlJ1bklkZW50aWZpZXJCBrpIA8gBARIsCgVwaGFzZRgCIAEoDjIdLmZseXRlaWRsMi5jb21tb24uQWN0aW9uUGhhc2USDQoFZXJyb3IYAyABKAkioAIKF1dlYmhvb2tEZWxpdmVyeVRlbXBsYXRlEhcKA3VybBgBIAEoCUIKukgHcgUQARjQDxI8CgZtZXRob2QYAiABKA4yIi5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkh0dHBNZXRob2RCCLpIBYIBAiAAEmcKB2hlYWRlcnMYAyADKAsyPC5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLldlYmhvb2tEZWxpdmVyeVRlbXBsYXRlLkhlYWRlcnNFbnRyeUIYukgVmgESEBQiBnIEEAEYFCoGcgQQARgyEhUKDWJvZHlfdGVtcGxhdGUYBCABKAkaLgoMSGVhZGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiLwoORW1haWxSZWNpcGllbnQSDAoEbmFtZRgBIAEoCRIPCgdhZGRyZXNzGAIgASgJImYKE0lubGluZUVtYWlsVGVtcGxhdGUSGAoHc3ViamVjdBgBIAEoCUIHukgEcgIQARIeCg1odG1sX3RlbXBsYXRlGAIgASgJQge6SARyAhABEhUKDXRleHRfdGVtcGxhdGUYAyABKAki3gEKFVByb3ZpZGVyRW1haWxUZW1wbGF0ZRIfCgt0ZW1wbGF0ZV9pZBgBIAEoCUIKukgHcgUQARjIARJvCg10ZW1wbGF0ZV9kYXRhGAIgAygLMj8uZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5Qcm92aWRlckVtYWlsVGVtcGxhdGUuVGVtcGxhdGVEYXRhRW50cnlCF7pIFJoBERBkIgZyBBABGGQqBXIDGKAfGjMKEVRlbXBsYXRlRGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi2wIKFUVtYWlsRGVsaXZlcnlUZW1wbGF0ZRI8CgJ0bxgBIAMoCzImLmZseXRlaWRsMi5ub3RpZmljYXRpb24uRW1haWxSZWNpcGllbnRCCLpIBZIBAggBEjIKAmNjGAIgAygLMiYuZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5FbWFpbFJlY2lwaWVudBIzCgNiY2MYAyADKAsyJi5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkVtYWlsUmVjaXBpZW50Ej0KBmlubGluZRgEIAEoCzIrLmZseXRlaWRsMi5ub3RpZmljYXRpb24uSW5saW5lRW1haWxUZW1wbGF0ZUgAEkoKEXByb3ZpZGVyX3RlbXBsYXRlGAUgASgLMi0uZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5Qcm92aWRlckVtYWlsVGVtcGxhdGVIAEIQCgdjb250ZW50EgW6SAIIASpFCglFdmVudFR5cGUSGgoWRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEhwKGEVWRU5UX1RZUEVfUlVOX0NPTVBMRVRFRBABKvcBCgpIdHRwTWV0aG9kEhsKF0hUVFBfTUVUSE9EX1VOU1BFQ0lGSUVEEAASEwoPSFRUUF9NRVRIT0RfR0VUEAESFAoQSFRUUF9NRVRIT0RfSEVBRBACEhQKEEhUVFBfTUVUSE9EX1BPU1QQAxITCg9IVFRQX01FVEhPRF9QVVQQBBIWChJIVFRQX01FVEhPRF9ERUxFVEUQBRIXChNIVFRQX01FVEhPRF9DT05ORUNUEAYSFwoTSFRUUF9NRVRIT0RfT1BUSU9OUxAHEhUKEUhUVFBfTUVUSE9EX1RSQUNFEAgSFQoRSFRUUF9NRVRIT0RfUEFUQ0gQCULkAQoaY29tLmZseXRlaWRsMi5ub3RpZmljYXRpb25CD0RlZmluaXRpb25Qcm90b0gCUAFaOmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9ub3RpZmljYXRpb26iAgNGTliqAhZGbHl0ZWlkbDIuTm90aWZpY2F0aW9uygIWRmx5dGVpZGwyXE5vdGlmaWNhdGlvbuICIkZseXRlaWRsMlxOb3RpZmljYXRpb25cR1BCTWV0YWRhdGHqAhdGbHl0ZWlkbDI6Ok5vdGlmaWNhdGlvbmIGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_phase]);
18
+ fileDesc("CidmbHl0ZWlkbDIvbm90aWZpY2F0aW9uL2RlZmluaXRpb24ucHJvdG8SFmZseXRlaWRsMi5ub3RpZmljYXRpb24ijgIKFkRlbGl2ZXJ5Q29uZmlnVGVtcGxhdGUSQAoHd2ViaG9vaxgBIAEoCzIvLmZseXRlaWRsMi5ub3RpZmljYXRpb24uV2ViaG9va0RlbGl2ZXJ5VGVtcGxhdGUSPAoFZW1haWwYAiABKAsyLS5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkVtYWlsRGVsaXZlcnlUZW1wbGF0ZTp0ukhxGm8KFWF0X2xlYXN0X29uZV9yZXF1aXJlZBIwYXQgbGVhc3Qgb25lIG9mIHRoZSBkZWxpdmVyeSBvcHRpb25zIG11c3QgYmUgc2V0GiRoYXModGhpcy53ZWJob29rKSB8fCBoYXModGhpcy5lbWFpbCkimQEKJFJ1bkNvbXBsZXRlZE5vdGlmaWNhdGlvblRlbXBsYXRlRGF0YRI0CgNydW4YASABKAsyHy5mbHl0ZWlkbDIuY29tbW9uLlJ1bklkZW50aWZpZXJCBrpIA8gBARIsCgVwaGFzZRgCIAEoDjIdLmZseXRlaWRsMi5jb21tb24uQWN0aW9uUGhhc2USDQoFZXJyb3IYAyABKAkinAEKJEFjdGlvblBhdXNlZE5vdGlmaWNhdGlvblRlbXBsYXRlRGF0YRI6CgZhY3Rpb24YASABKAsyIi5mbHl0ZWlkbDIuY29tbW9uLkFjdGlvbklkZW50aWZpZXJCBrpIA8gBARIOCgZwcm9tcHQYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSEwoLcHJvbXB0X3R5cGUYBCABKAkioAIKF1dlYmhvb2tEZWxpdmVyeVRlbXBsYXRlEhcKA3VybBgBIAEoCUIKukgHcgUQARjQDxI8CgZtZXRob2QYAiABKA4yIi5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkh0dHBNZXRob2RCCLpIBYIBAiAAEmcKB2hlYWRlcnMYAyADKAsyPC5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLldlYmhvb2tEZWxpdmVyeVRlbXBsYXRlLkhlYWRlcnNFbnRyeUIYukgVmgESEBQiBnIEEAEYFCoGcgQQARgyEhUKDWJvZHlfdGVtcGxhdGUYBCABKAkaLgoMSGVhZGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiLwoORW1haWxSZWNpcGllbnQSDAoEbmFtZRgBIAEoCRIPCgdhZGRyZXNzGAIgASgJImYKE0lubGluZUVtYWlsVGVtcGxhdGUSGAoHc3ViamVjdBgBIAEoCUIHukgEcgIQARIeCg1odG1sX3RlbXBsYXRlGAIgASgJQge6SARyAhABEhUKDXRleHRfdGVtcGxhdGUYAyABKAki3gEKFVByb3ZpZGVyRW1haWxUZW1wbGF0ZRIfCgt0ZW1wbGF0ZV9pZBgBIAEoCUIKukgHcgUQARjIARJvCg10ZW1wbGF0ZV9kYXRhGAIgAygLMj8uZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5Qcm92aWRlckVtYWlsVGVtcGxhdGUuVGVtcGxhdGVEYXRhRW50cnlCF7pIFJoBERBkIgZyBBABGGQqBXIDGKAfGjMKEVRlbXBsYXRlRGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi2wIKFUVtYWlsRGVsaXZlcnlUZW1wbGF0ZRI8CgJ0bxgBIAMoCzImLmZseXRlaWRsMi5ub3RpZmljYXRpb24uRW1haWxSZWNpcGllbnRCCLpIBZIBAggBEjIKAmNjGAIgAygLMiYuZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5FbWFpbFJlY2lwaWVudBIzCgNiY2MYAyADKAsyJi5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkVtYWlsUmVjaXBpZW50Ej0KBmlubGluZRgEIAEoCzIrLmZseXRlaWRsMi5ub3RpZmljYXRpb24uSW5saW5lRW1haWxUZW1wbGF0ZUgAEkoKEXByb3ZpZGVyX3RlbXBsYXRlGAUgASgLMi0uZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5Qcm92aWRlckVtYWlsVGVtcGxhdGVIAEIQCgdjb250ZW50EgW6SAIIASpjCglFdmVudFR5cGUSGgoWRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEhwKGEVWRU5UX1RZUEVfUlVOX0NPTVBMRVRFRBABEhwKGEVWRU5UX1RZUEVfQUNUSU9OX1BBVVNFRBACKvcBCgpIdHRwTWV0aG9kEhsKF0hUVFBfTUVUSE9EX1VOU1BFQ0lGSUVEEAASEwoPSFRUUF9NRVRIT0RfR0VUEAESFAoQSFRUUF9NRVRIT0RfSEVBRBACEhQKEEhUVFBfTUVUSE9EX1BPU1QQAxITCg9IVFRQX01FVEhPRF9QVVQQBBIWChJIVFRQX01FVEhPRF9ERUxFVEUQBRIXChNIVFRQX01FVEhPRF9DT05ORUNUEAYSFwoTSFRUUF9NRVRIT0RfT1BUSU9OUxAHEhUKEUhUVFBfTUVUSE9EX1RSQUNFEAgSFQoRSFRUUF9NRVRIT0RfUEFUQ0gQCULkAQoaY29tLmZseXRlaWRsMi5ub3RpZmljYXRpb25CD0RlZmluaXRpb25Qcm90b0gCUAFaOmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9ub3RpZmljYXRpb26iAgNGTliqAhZGbHl0ZWlkbDIuTm90aWZpY2F0aW9uygIWRmx5dGVpZGwyXE5vdGlmaWNhdGlvbuICIkZseXRlaWRsMlxOb3RpZmljYXRpb25cR1BCTWV0YWRhdGHqAhdGbHl0ZWlkbDI6Ok5vdGlmaWNhdGlvbmIGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_phase]);
19
19
 
20
20
  /**
21
21
  * @generated from message flyteidl2.notification.DeliveryConfigTemplate
@@ -66,6 +66,52 @@ export type RunCompletedNotificationTemplateData = Message<"flyteidl2.notificati
66
66
  export const RunCompletedNotificationTemplateDataSchema: GenMessage<RunCompletedNotificationTemplateData> = /*@__PURE__*/
67
67
  messageDesc(file_flyteidl2_notification_definition, 1);
68
68
 
69
+ /**
70
+ * ActionPausedNotificationTemplateData is the template data available to
71
+ * delivery templates on rules subscribed to ACTION_PHASE_PAUSED.
72
+ *
73
+ * @generated from message flyteidl2.notification.ActionPausedNotificationTemplateData
74
+ */
75
+ export type ActionPausedNotificationTemplateData = Message<"flyteidl2.notification.ActionPausedNotificationTemplateData"> & {
76
+ /**
77
+ * Identifier of the condition action that paused awaiting a signal.
78
+ *
79
+ * @generated from field: flyteidl2.common.ActionIdentifier action = 1;
80
+ */
81
+ action?: ActionIdentifier;
82
+
83
+ /**
84
+ * Prompt shown to the user when the condition is awaited.
85
+ *
86
+ * @generated from field: string prompt = 2;
87
+ */
88
+ prompt: string;
89
+
90
+ /**
91
+ * Description of the condition.
92
+ *
93
+ * @generated from field: string description = 3;
94
+ */
95
+ description: string;
96
+
97
+ /**
98
+ * How to render the prompt: "TEXT", "MARKDOWN", or "" when unspecified.
99
+ * Mirrors flyteidl2.workflow.ConditionPromptType with the enum prefix
100
+ * trimmed (the workflow package cannot be imported here without an import
101
+ * cycle through flyteidl2/task/run.proto).
102
+ *
103
+ * @generated from field: string prompt_type = 4;
104
+ */
105
+ promptType: string;
106
+ };
107
+
108
+ /**
109
+ * Describes the message flyteidl2.notification.ActionPausedNotificationTemplateData.
110
+ * Use `create(ActionPausedNotificationTemplateDataSchema)` to create a new message.
111
+ */
112
+ export const ActionPausedNotificationTemplateDataSchema: GenMessage<ActionPausedNotificationTemplateData> = /*@__PURE__*/
113
+ messageDesc(file_flyteidl2_notification_definition, 2);
114
+
69
115
  /**
70
116
  * @generated from message flyteidl2.notification.WebhookDeliveryTemplate
71
117
  */
@@ -98,7 +144,7 @@ export type WebhookDeliveryTemplate = Message<"flyteidl2.notification.WebhookDel
98
144
  * Use `create(WebhookDeliveryTemplateSchema)` to create a new message.
99
145
  */
100
146
  export const WebhookDeliveryTemplateSchema: GenMessage<WebhookDeliveryTemplate> = /*@__PURE__*/
101
- messageDesc(file_flyteidl2_notification_definition, 2);
147
+ messageDesc(file_flyteidl2_notification_definition, 3);
102
148
 
103
149
  /**
104
150
  * @generated from message flyteidl2.notification.EmailRecipient
@@ -120,7 +166,7 @@ export type EmailRecipient = Message<"flyteidl2.notification.EmailRecipient"> &
120
166
  * Use `create(EmailRecipientSchema)` to create a new message.
121
167
  */
122
168
  export const EmailRecipientSchema: GenMessage<EmailRecipient> = /*@__PURE__*/
123
- messageDesc(file_flyteidl2_notification_definition, 3);
169
+ messageDesc(file_flyteidl2_notification_definition, 4);
124
170
 
125
171
  /**
126
172
  * InlineEmailTemplate contains subject and body content rendered by the
@@ -156,7 +202,7 @@ export type InlineEmailTemplate = Message<"flyteidl2.notification.InlineEmailTem
156
202
  * Use `create(InlineEmailTemplateSchema)` to create a new message.
157
203
  */
158
204
  export const InlineEmailTemplateSchema: GenMessage<InlineEmailTemplate> = /*@__PURE__*/
159
- messageDesc(file_flyteidl2_notification_definition, 4);
205
+ messageDesc(file_flyteidl2_notification_definition, 5);
160
206
 
161
207
  /**
162
208
  * ProviderEmailTemplate references an externally managed email template owned
@@ -187,7 +233,7 @@ export type ProviderEmailTemplate = Message<"flyteidl2.notification.ProviderEmai
187
233
  * Use `create(ProviderEmailTemplateSchema)` to create a new message.
188
234
  */
189
235
  export const ProviderEmailTemplateSchema: GenMessage<ProviderEmailTemplate> = /*@__PURE__*/
190
- messageDesc(file_flyteidl2_notification_definition, 5);
236
+ messageDesc(file_flyteidl2_notification_definition, 6);
191
237
 
192
238
  /**
193
239
  * @generated from message flyteidl2.notification.EmailDeliveryTemplate
@@ -233,7 +279,7 @@ export type EmailDeliveryTemplate = Message<"flyteidl2.notification.EmailDeliver
233
279
  * Use `create(EmailDeliveryTemplateSchema)` to create a new message.
234
280
  */
235
281
  export const EmailDeliveryTemplateSchema: GenMessage<EmailDeliveryTemplate> = /*@__PURE__*/
236
- messageDesc(file_flyteidl2_notification_definition, 6);
282
+ messageDesc(file_flyteidl2_notification_definition, 7);
237
283
 
238
284
  /**
239
285
  * @generated from enum flyteidl2.notification.EventType
@@ -248,6 +294,11 @@ export enum EventType {
248
294
  * @generated from enum value: EVENT_TYPE_RUN_COMPLETED = 1;
249
295
  */
250
296
  RUN_COMPLETED = 1,
297
+
298
+ /**
299
+ * @generated from enum value: EVENT_TYPE_ACTION_PAUSED = 2;
300
+ */
301
+ ACTION_PAUSED = 2,
251
302
  }
252
303
 
253
304
  /**
@@ -0,0 +1,232 @@
1
+ // @generated by protoc-gen-es v2.2.5 with parameter "target=ts,import_extension=.ts"
2
+ // @generated from file flyteidl2/plugins/clustered.proto (package flyteidl2.plugins, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
6
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
7
+ import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
8
+ import { file_google_protobuf_wrappers } from "@bufbuild/protobuf/wkt";
9
+ import type { Message } from "@bufbuild/protobuf";
10
+
11
+ /**
12
+ * Describes the file flyteidl2/plugins/clustered.proto.
13
+ */
14
+ export const file_flyteidl2_plugins_clustered: GenFile = /*@__PURE__*/
15
+ fileDesc("CiFmbHl0ZWlkbDIvcGx1Z2lucy9jbHVzdGVyZWQucHJvdG8SEWZseXRlaWRsMi5wbHVnaW5zIrYCChFDbHVzdGVyZWRUYXNrU3BlYxIZCghyZXBsaWNhcxgBIAEoBUIHukgEGgIgABIfCg5ucHJvY19wZXJfbm9kZRgCIAEoBUIHukgEGgIgABIrCgdydW50aW1lGAMgASgLMhouZmx5dGVpZGwyLnBsdWdpbnMuUnVudGltZRI1CgxpbnRlcmNvbm5lY3QYBCABKA4yHy5mbHl0ZWlkbDIucGx1Z2lucy5JbnRlcmNvbm5lY3QSPwoOZmFpbHVyZV9wb2xpY3kYBSABKAsyJy5mbHl0ZWlkbDIucGx1Z2lucy5DbHVzdGVyRmFpbHVyZVBvbGljeRJAChp0dGxfc2Vjb25kc19hZnRlcl9maW5pc2hlZBgGIAEoCzIcLmdvb2dsZS5wcm90b2J1Zi5VSW50MzJWYWx1ZSJGCgdSdW50aW1lEjMKCHRvcmNocnVuGAEgASgLMh8uZmx5dGVpZGwyLnBsdWdpbnMuVG9yY2hSdW50aW1lSABCBgoEa2luZCJaCgxUb3JjaFJ1bnRpbWUSNAoMcmR6dl9iYWNrZW5kGAEgASgOMh4uZmx5dGVpZGwyLnBsdWdpbnMuUmR6dkJhY2tlbmQSFAoMbWF4X3Jlc3RhcnRzGAIgASgFIlEKFENsdXN0ZXJGYWlsdXJlUG9saWN5EhQKDG1heF9yZXN0YXJ0cxgBIAEoBRIjChtyZXN0YXJ0X29uX2hvc3RfbWFpbnRlbmFuY2UYAiABKAgqIwoLUmR6dkJhY2tlbmQSCgoGU1RBVElDEAASCAoEQzEwRBABKjoKDEludGVyY29ubmVjdBIHCgNUQ1AQABIHCgNFRkEQARIOCgpJTkZJTklCQU5EEAISCAoEUk9DRRADQsUBChVjb20uZmx5dGVpZGwyLnBsdWdpbnNCDkNsdXN0ZXJlZFByb3RvSAJQAVo1Z2l0aHViLmNvbS9mbHl0ZW9yZy9mbHl0ZS92Mi9nZW4vZ28vZmx5dGVpZGwyL3BsdWdpbnOiAgNGUFiqAhFGbHl0ZWlkbDIuUGx1Z2luc8oCEUZseXRlaWRsMlxQbHVnaW5z4gIdRmx5dGVpZGwyXFBsdWdpbnNcR1BCTWV0YWRhdGHqAhJGbHl0ZWlkbDI6OlBsdWdpbnNiBnByb3RvMw", [file_buf_validate_validate, file_google_protobuf_wrappers]);
16
+
17
+ /**
18
+ * Top-level spec for a clustered task execution. Packed into TaskTemplate.custom.
19
+ *
20
+ * @generated from message flyteidl2.plugins.ClusteredTaskSpec
21
+ */
22
+ export type ClusteredTaskSpec = Message<"flyteidl2.plugins.ClusteredTaskSpec"> & {
23
+ /**
24
+ * Number of pods (== number of nodes). Required, must be >= 1.
25
+ *
26
+ * @generated from field: int32 replicas = 1;
27
+ */
28
+ replicas: number;
29
+
30
+ /**
31
+ * Number of processes per node passed to torchrun as --nproc-per-node (typically one per GPU). Required, must be >= 1.
32
+ *
33
+ * @generated from field: int32 nproc_per_node = 2;
34
+ */
35
+ nprocPerNode: number;
36
+
37
+ /**
38
+ * Selects the launcher and its per-launcher configuration.
39
+ *
40
+ * @generated from field: flyteidl2.plugins.Runtime runtime = 3;
41
+ */
42
+ runtime?: Runtime;
43
+
44
+ /**
45
+ * Network fabric for collective communications (NCCL all-reduce etc). Defaults to TCP.
46
+ *
47
+ * @generated from field: flyteidl2.plugins.Interconnect interconnect = 4;
48
+ */
49
+ interconnect: Interconnect;
50
+
51
+ /**
52
+ * Controls restart behaviour on rank failure and host maintenance.
53
+ *
54
+ * @generated from field: flyteidl2.plugins.ClusterFailurePolicy failure_policy = 5;
55
+ */
56
+ failurePolicy?: ClusterFailurePolicy;
57
+
58
+ /**
59
+ * If set, the JobSet is deleted this many seconds after it finishes (success or failure).
60
+ *
61
+ * @generated from field: google.protobuf.UInt32Value ttl_seconds_after_finished = 6;
62
+ */
63
+ ttlSecondsAfterFinished?: number;
64
+ };
65
+
66
+ /**
67
+ * Describes the message flyteidl2.plugins.ClusteredTaskSpec.
68
+ * Use `create(ClusteredTaskSpecSchema)` to create a new message.
69
+ */
70
+ export const ClusteredTaskSpecSchema: GenMessage<ClusteredTaskSpec> = /*@__PURE__*/
71
+ messageDesc(file_flyteidl2_plugins_clustered, 0);
72
+
73
+ /**
74
+ * Tagged union of supported launchers. Phase 1: TorchRun only.
75
+ * Future variants (DeepSpeed, Accelerate, JAX) add new oneof fields here;
76
+ * the JobSet shape and Go plugin are unchanged.
77
+ *
78
+ * @generated from message flyteidl2.plugins.Runtime
79
+ */
80
+ export type Runtime = Message<"flyteidl2.plugins.Runtime"> & {
81
+ /**
82
+ * @generated from oneof flyteidl2.plugins.Runtime.kind
83
+ */
84
+ kind: {
85
+ /**
86
+ * @generated from field: flyteidl2.plugins.TorchRuntime torchrun = 1;
87
+ */
88
+ value: TorchRuntime;
89
+ case: "torchrun";
90
+ } | { case: undefined; value?: undefined };
91
+ };
92
+
93
+ /**
94
+ * Describes the message flyteidl2.plugins.Runtime.
95
+ * Use `create(RuntimeSchema)` to create a new message.
96
+ */
97
+ export const RuntimeSchema: GenMessage<Runtime> = /*@__PURE__*/
98
+ messageDesc(file_flyteidl2_plugins_clustered, 1);
99
+
100
+ /**
101
+ * Configuration for the torchrun launcher.
102
+ *
103
+ * @generated from message flyteidl2.plugins.TorchRuntime
104
+ */
105
+ export type TorchRuntime = Message<"flyteidl2.plugins.TorchRuntime"> & {
106
+ /**
107
+ * Rendezvous backend. Defaults to STATIC.
108
+ *
109
+ * @generated from field: flyteidl2.plugins.RdzvBackend rdzv_backend = 1;
110
+ */
111
+ rdzvBackend: RdzvBackend;
112
+
113
+ /**
114
+ * Number of in-pod torchrun restarts before the pod is considered failed.
115
+ * Defaults to 0 — whole-cluster restart via JobSet failurePolicy is the
116
+ * recovery mechanism, so in-pod retries are disabled.
117
+ *
118
+ * @generated from field: int32 max_restarts = 2;
119
+ */
120
+ maxRestarts: number;
121
+ };
122
+
123
+ /**
124
+ * Describes the message flyteidl2.plugins.TorchRuntime.
125
+ * Use `create(TorchRuntimeSchema)` to create a new message.
126
+ */
127
+ export const TorchRuntimeSchema: GenMessage<TorchRuntime> = /*@__PURE__*/
128
+ messageDesc(file_flyteidl2_plugins_clustered, 2);
129
+
130
+ /**
131
+ * Controls how the JobSet responds to rank failures and host-maintenance evictions.
132
+ *
133
+ * @generated from message flyteidl2.plugins.ClusterFailurePolicy
134
+ */
135
+ export type ClusterFailurePolicy = Message<"flyteidl2.plugins.ClusterFailurePolicy"> & {
136
+ /**
137
+ * Maximum number of whole-cluster restarts before the JobSet is marked failed.
138
+ * Each restart increments JOBSET_RESTART_ATTEMPT and rotates the torchrun RDZV_ID.
139
+ *
140
+ * @generated from field: int32 max_restarts = 1;
141
+ */
142
+ maxRestarts: number;
143
+
144
+ /**
145
+ * If true, pods evicted due to host maintenance (DisruptionTarget condition)
146
+ * trigger a free restart that does not count against max_restarts.
147
+ *
148
+ * @generated from field: bool restart_on_host_maintenance = 2;
149
+ */
150
+ restartOnHostMaintenance: boolean;
151
+ };
152
+
153
+ /**
154
+ * Describes the message flyteidl2.plugins.ClusterFailurePolicy.
155
+ * Use `create(ClusterFailurePolicySchema)` to create a new message.
156
+ */
157
+ export const ClusterFailurePolicySchema: GenMessage<ClusterFailurePolicy> = /*@__PURE__*/
158
+ messageDesc(file_flyteidl2_plugins_clustered, 3);
159
+
160
+ /**
161
+ * Rendezvous backend for torchrun.
162
+ *
163
+ * @generated from enum flyteidl2.plugins.RdzvBackend
164
+ */
165
+ export enum RdzvBackend {
166
+ /**
167
+ * Static rendezvous: full membership declared upfront via --nnodes and
168
+ * --master-addr. Simple and deterministic. Recovery is whole-job restart
169
+ * (JobSet failurePolicy), not in-job re-rendezvous.
170
+ *
171
+ * @generated from enum value: STATIC = 0;
172
+ */
173
+ STATIC = 0,
174
+
175
+ /**
176
+ * TCPStore-based dynamic rendezvous. Enables elastic membership
177
+ * (--nnodes=MIN:MAX) and in-job re-rendezvous on partial failure.
178
+ *
179
+ * @generated from enum value: C10D = 1;
180
+ */
181
+ C10D = 1,
182
+ }
183
+
184
+ /**
185
+ * Describes the enum flyteidl2.plugins.RdzvBackend.
186
+ */
187
+ export const RdzvBackendSchema: GenEnum<RdzvBackend> = /*@__PURE__*/
188
+ enumDesc(file_flyteidl2_plugins_clustered, 0);
189
+
190
+ /**
191
+ * Network fabric for gradient all-reduce and other collective ops.
192
+ * Non-TCP values cause the plugin to inject RDMA device resources,
193
+ * capabilities, and NCCL env vars into the pod spec.
194
+ *
195
+ * @generated from enum flyteidl2.plugins.Interconnect
196
+ */
197
+ export enum Interconnect {
198
+ /**
199
+ * Plain TCP over the pod CNI network. Works on any cluster. Default.
200
+ *
201
+ * @generated from enum value: TCP = 0;
202
+ */
203
+ TCP = 0,
204
+
205
+ /**
206
+ * AWS Elastic Fabric Adapter (EC2 p4d / p5 / trn1). ~100-400 Gbps GPUDirect RDMA.
207
+ *
208
+ * @generated from enum value: EFA = 1;
209
+ */
210
+ EFA = 1,
211
+
212
+ /**
213
+ * Mellanox / NVIDIA InfiniBand HCA (CoreWeave, Lambda, on-prem H100 clusters).
214
+ *
215
+ * @generated from enum value: INFINIBAND = 2;
216
+ */
217
+ INFINIBAND = 2,
218
+
219
+ /**
220
+ * RDMA over Converged Ethernet (Azure ND-series, Oracle Cloud, on-prem Ethernet RDMA).
221
+ *
222
+ * @generated from enum value: ROCE = 3;
223
+ */
224
+ ROCE = 3,
225
+ }
226
+
227
+ /**
228
+ * Describes the enum flyteidl2.plugins.Interconnect.
229
+ */
230
+ export const InterconnectSchema: GenEnum<Interconnect> = /*@__PURE__*/
231
+ enumDesc(file_flyteidl2_plugins_clustered, 1);
232
+
@@ -2,9 +2,11 @@
2
2
  // @generated from file flyteidl2/plugins/ray.proto (package flyteidl2.plugins, syntax proto3)
3
3
  /* eslint-disable */
4
4
 
5
- import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
6
- import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
7
- import type { K8sPod } from "../core/tasks_pb.ts";
5
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
6
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
7
+ import type { KeyValuePair } from "../core/literals_pb.ts";
8
+ import { file_flyteidl2_core_literals } from "../core/literals_pb.ts";
9
+ import type { ExtendedResources, K8sPod, Resources } from "../core/tasks_pb.ts";
8
10
  import { file_flyteidl2_core_tasks } from "../core/tasks_pb.ts";
9
11
  import type { Message } from "@bufbuild/protobuf";
10
12
 
@@ -12,7 +14,7 @@ import type { Message } from "@bufbuild/protobuf";
12
14
  * Describes the file flyteidl2/plugins/ray.proto.
13
15
  */
14
16
  export const file_flyteidl2_plugins_ray: GenFile = /*@__PURE__*/
15
- fileDesc("ChtmbHl0ZWlkbDIvcGx1Z2lucy9yYXkucHJvdG8SEWZseXRlaWRsMi5wbHVnaW5zIrgBCgZSYXlKb2ISMgoLcmF5X2NsdXN0ZXIYASABKAsyHS5mbHl0ZWlkbDIucGx1Z2lucy5SYXlDbHVzdGVyEhcKC3J1bnRpbWVfZW52GAIgASgJQgIYARIjChtzaHV0ZG93bl9hZnRlcl9qb2JfZmluaXNoZXMYAyABKAgSIgoadHRsX3NlY29uZHNfYWZ0ZXJfZmluaXNoZWQYBCABKAUSGAoQcnVudGltZV9lbnZfeWFtbBgFIAEoCSKiAQoKUmF5Q2x1c3RlchI5Cg9oZWFkX2dyb3VwX3NwZWMYASABKAsyIC5mbHl0ZWlkbDIucGx1Z2lucy5IZWFkR3JvdXBTcGVjEj0KEXdvcmtlcl9ncm91cF9zcGVjGAIgAygLMiIuZmx5dGVpZGwyLnBsdWdpbnMuV29ya2VyR3JvdXBTcGVjEhoKEmVuYWJsZV9hdXRvc2NhbGluZxgDIAEoCCK/AQoNSGVhZEdyb3VwU3BlYxJOChByYXlfc3RhcnRfcGFyYW1zGAEgAygLMjQuZmx5dGVpZGwyLnBsdWdpbnMuSGVhZEdyb3VwU3BlYy5SYXlTdGFydFBhcmFtc0VudHJ5EicKB2s4c19wb2QYAiABKAsyFi5mbHl0ZWlkbDIuY29yZS5LOHNQb2QaNQoTUmF5U3RhcnRQYXJhbXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIpUCCg9Xb3JrZXJHcm91cFNwZWMSEgoKZ3JvdXBfbmFtZRgBIAEoCRIQCghyZXBsaWNhcxgCIAEoBRIUCgxtaW5fcmVwbGljYXMYAyABKAUSFAoMbWF4X3JlcGxpY2FzGAQgASgFElAKEHJheV9zdGFydF9wYXJhbXMYBSADKAsyNi5mbHl0ZWlkbDIucGx1Z2lucy5Xb3JrZXJHcm91cFNwZWMuUmF5U3RhcnRQYXJhbXNFbnRyeRInCgdrOHNfcG9kGAYgASgLMhYuZmx5dGVpZGwyLmNvcmUuSzhzUG9kGjUKE1JheVN0YXJ0UGFyYW1zRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4AUK/AQoVY29tLmZseXRlaWRsMi5wbHVnaW5zQghSYXlQcm90b0gCUAFaNWdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9wbHVnaW5zogIDRlBYqgIRRmx5dGVpZGwyLlBsdWdpbnPKAhFGbHl0ZWlkbDJcUGx1Z2luc+ICHUZseXRlaWRsMlxQbHVnaW5zXEdQQk1ldGFkYXRh6gISRmx5dGVpZGwyOjpQbHVnaW5zYgZwcm90bzM", [file_flyteidl2_core_tasks]);
17
+ fileDesc("ChtmbHl0ZWlkbDIvcGx1Z2lucy9yYXkucHJvdG8SEWZseXRlaWRsMi5wbHVnaW5zIrgBCgZSYXlKb2ISMgoLcmF5X2NsdXN0ZXIYASABKAsyHS5mbHl0ZWlkbDIucGx1Z2lucy5SYXlDbHVzdGVyEhcKC3J1bnRpbWVfZW52GAIgASgJQgIYARIjChtzaHV0ZG93bl9hZnRlcl9qb2JfZmluaXNoZXMYAyABKAgSIgoadHRsX3NlY29uZHNfYWZ0ZXJfZmluaXNoZWQYBCABKAUSGAoQcnVudGltZV9lbnZfeWFtbBgFIAEoCSLzAgoRQXV0b3NjYWxlck9wdGlvbnMSSgoOdXBzY2FsaW5nX21vZGUYASABKA4yMi5mbHl0ZWlkbDIucGx1Z2lucy5BdXRvc2NhbGVyT3B0aW9ucy5VcHNjYWxpbmdNb2RlEhwKFGlkbGVfdGltZW91dF9zZWNvbmRzGAIgASgFEikKA2VudhgDIAMoCzIcLmZseXRlaWRsMi5jb3JlLktleVZhbHVlUGFpchINCgVpbWFnZRgEIAEoCRIsCglyZXNvdXJjZXMYBSABKAsyGS5mbHl0ZWlkbDIuY29yZS5SZXNvdXJjZXMiiwEKDVVwc2NhbGluZ01vZGUSHgoaVVBTQ0FMSU5HX01PREVfVU5TUEVDSUZJRUQQABIaChZVUFNDQUxJTkdfTU9ERV9ERUZBVUxUEAESHQoZVVBTQ0FMSU5HX01PREVfQUdHUkVTU0lWRRACEh8KG1VQU0NBTElOR19NT0RFX0NPTlNFUlZBVElWRRADIuQBCgpSYXlDbHVzdGVyEjkKD2hlYWRfZ3JvdXBfc3BlYxgBIAEoCzIgLmZseXRlaWRsMi5wbHVnaW5zLkhlYWRHcm91cFNwZWMSPQoRd29ya2VyX2dyb3VwX3NwZWMYAiADKAsyIi5mbHl0ZWlkbDIucGx1Z2lucy5Xb3JrZXJHcm91cFNwZWMSGgoSZW5hYmxlX2F1dG9zY2FsaW5nGAMgASgIEkAKEmF1dG9zY2FsZXJfb3B0aW9ucxgEIAEoCzIkLmZseXRlaWRsMi5wbHVnaW5zLkF1dG9zY2FsZXJPcHRpb25zIv4BCg1IZWFkR3JvdXBTcGVjEk4KEHJheV9zdGFydF9wYXJhbXMYASADKAsyNC5mbHl0ZWlkbDIucGx1Z2lucy5IZWFkR3JvdXBTcGVjLlJheVN0YXJ0UGFyYW1zRW50cnkSJwoHazhzX3BvZBgCIAEoCzIWLmZseXRlaWRsMi5jb3JlLks4c1BvZBI9ChJleHRlbmRlZF9yZXNvdXJjZXMYAyABKAsyIS5mbHl0ZWlkbDIuY29yZS5FeHRlbmRlZFJlc291cmNlcxo1ChNSYXlTdGFydFBhcmFtc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEi1AIKD1dvcmtlckdyb3VwU3BlYxISCgpncm91cF9uYW1lGAEgASgJEhAKCHJlcGxpY2FzGAIgASgFEhQKDG1pbl9yZXBsaWNhcxgDIAEoBRIUCgxtYXhfcmVwbGljYXMYBCABKAUSUAoQcmF5X3N0YXJ0X3BhcmFtcxgFIAMoCzI2LmZseXRlaWRsMi5wbHVnaW5zLldvcmtlckdyb3VwU3BlYy5SYXlTdGFydFBhcmFtc0VudHJ5EicKB2s4c19wb2QYBiABKAsyFi5mbHl0ZWlkbDIuY29yZS5LOHNQb2QSPQoSZXh0ZW5kZWRfcmVzb3VyY2VzGAcgASgLMiEuZmx5dGVpZGwyLmNvcmUuRXh0ZW5kZWRSZXNvdXJjZXMaNQoTUmF5U3RhcnRQYXJhbXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQr8BChVjb20uZmx5dGVpZGwyLnBsdWdpbnNCCFJheVByb3RvSAJQAVo1Z2l0aHViLmNvbS9mbHl0ZW9yZy9mbHl0ZS92Mi9nZW4vZ28vZmx5dGVpZGwyL3BsdWdpbnOiAgNGUFiqAhFGbHl0ZWlkbDIuUGx1Z2luc8oCEUZseXRlaWRsMlxQbHVnaW5z4gIdRmx5dGVpZGwyXFBsdWdpbnNcR1BCTWV0YWRhdGHqAhJGbHl0ZWlkbDI6OlBsdWdpbnNiBnByb3RvMw", [file_flyteidl2_core_literals, file_flyteidl2_core_tasks]);
16
18
 
17
19
  /**
18
20
  * RayJobSpec defines the desired state of RayJob
@@ -66,6 +68,80 @@ export type RayJob = Message<"flyteidl2.plugins.RayJob"> & {
66
68
  export const RayJobSchema: GenMessage<RayJob> = /*@__PURE__*/
67
69
  messageDesc(file_flyteidl2_plugins_ray, 0);
68
70
 
71
+ /**
72
+ * @generated from message flyteidl2.plugins.AutoscalerOptions
73
+ */
74
+ export type AutoscalerOptions = Message<"flyteidl2.plugins.AutoscalerOptions"> & {
75
+ /**
76
+ * @generated from field: flyteidl2.plugins.AutoscalerOptions.UpscalingMode upscaling_mode = 1;
77
+ */
78
+ upscalingMode: AutoscalerOptions_UpscalingMode;
79
+
80
+ /**
81
+ * @generated from field: int32 idle_timeout_seconds = 2;
82
+ */
83
+ idleTimeoutSeconds: number;
84
+
85
+ /**
86
+ * autoscaler sidecar env vars
87
+ *
88
+ * @generated from field: repeated flyteidl2.core.KeyValuePair env = 3;
89
+ */
90
+ env: KeyValuePair[];
91
+
92
+ /**
93
+ * custom autoscaler image
94
+ *
95
+ * @generated from field: string image = 4;
96
+ */
97
+ image: string;
98
+
99
+ /**
100
+ * autoscaler container resources
101
+ *
102
+ * @generated from field: flyteidl2.core.Resources resources = 5;
103
+ */
104
+ resources?: Resources;
105
+ };
106
+
107
+ /**
108
+ * Describes the message flyteidl2.plugins.AutoscalerOptions.
109
+ * Use `create(AutoscalerOptionsSchema)` to create a new message.
110
+ */
111
+ export const AutoscalerOptionsSchema: GenMessage<AutoscalerOptions> = /*@__PURE__*/
112
+ messageDesc(file_flyteidl2_plugins_ray, 1);
113
+
114
+ /**
115
+ * @generated from enum flyteidl2.plugins.AutoscalerOptions.UpscalingMode
116
+ */
117
+ export enum AutoscalerOptions_UpscalingMode {
118
+ /**
119
+ * @generated from enum value: UPSCALING_MODE_UNSPECIFIED = 0;
120
+ */
121
+ UNSPECIFIED = 0,
122
+
123
+ /**
124
+ * @generated from enum value: UPSCALING_MODE_DEFAULT = 1;
125
+ */
126
+ DEFAULT = 1,
127
+
128
+ /**
129
+ * @generated from enum value: UPSCALING_MODE_AGGRESSIVE = 2;
130
+ */
131
+ AGGRESSIVE = 2,
132
+
133
+ /**
134
+ * @generated from enum value: UPSCALING_MODE_CONSERVATIVE = 3;
135
+ */
136
+ CONSERVATIVE = 3,
137
+ }
138
+
139
+ /**
140
+ * Describes the enum flyteidl2.plugins.AutoscalerOptions.UpscalingMode.
141
+ */
142
+ export const AutoscalerOptions_UpscalingModeSchema: GenEnum<AutoscalerOptions_UpscalingMode> = /*@__PURE__*/
143
+ enumDesc(file_flyteidl2_plugins_ray, 1, 0);
144
+
69
145
  /**
70
146
  * Define Ray cluster defines the desired state of RayCluster
71
147
  *
@@ -92,6 +168,11 @@ export type RayCluster = Message<"flyteidl2.plugins.RayCluster"> & {
92
168
  * @generated from field: bool enable_autoscaling = 3;
93
169
  */
94
170
  enableAutoscaling: boolean;
171
+
172
+ /**
173
+ * @generated from field: flyteidl2.plugins.AutoscalerOptions autoscaler_options = 4;
174
+ */
175
+ autoscalerOptions?: AutoscalerOptions;
95
176
  };
96
177
 
97
178
  /**
@@ -99,7 +180,7 @@ export type RayCluster = Message<"flyteidl2.plugins.RayCluster"> & {
99
180
  * Use `create(RayClusterSchema)` to create a new message.
100
181
  */
101
182
  export const RayClusterSchema: GenMessage<RayCluster> = /*@__PURE__*/
102
- messageDesc(file_flyteidl2_plugins_ray, 1);
183
+ messageDesc(file_flyteidl2_plugins_ray, 2);
103
184
 
104
185
  /**
105
186
  * HeadGroupSpec are the spec for the head pod
@@ -121,6 +202,14 @@ export type HeadGroupSpec = Message<"flyteidl2.plugins.HeadGroupSpec"> & {
121
202
  * @generated from field: flyteidl2.core.K8sPod k8s_pod = 2;
122
203
  */
123
204
  k8sPod?: K8sPod;
205
+
206
+ /**
207
+ * Encapsulates all non-standard resources, not captured by
208
+ * v1.ResourceRequirements, to allocate to a task.
209
+ *
210
+ * @generated from field: flyteidl2.core.ExtendedResources extended_resources = 3;
211
+ */
212
+ extendedResources?: ExtendedResources;
124
213
  };
125
214
 
126
215
  /**
@@ -128,7 +217,7 @@ export type HeadGroupSpec = Message<"flyteidl2.plugins.HeadGroupSpec"> & {
128
217
  * Use `create(HeadGroupSpecSchema)` to create a new message.
129
218
  */
130
219
  export const HeadGroupSpecSchema: GenMessage<HeadGroupSpec> = /*@__PURE__*/
131
- messageDesc(file_flyteidl2_plugins_ray, 2);
220
+ messageDesc(file_flyteidl2_plugins_ray, 3);
132
221
 
133
222
  /**
134
223
  * WorkerGroupSpec are the specs for the worker pods
@@ -178,6 +267,14 @@ export type WorkerGroupSpec = Message<"flyteidl2.plugins.WorkerGroupSpec"> & {
178
267
  * @generated from field: flyteidl2.core.K8sPod k8s_pod = 6;
179
268
  */
180
269
  k8sPod?: K8sPod;
270
+
271
+ /**
272
+ * Encapsulates all non-standard resources, not captured by
273
+ * v1.ResourceRequirements, to allocate to a task.
274
+ *
275
+ * @generated from field: flyteidl2.core.ExtendedResources extended_resources = 7;
276
+ */
277
+ extendedResources?: ExtendedResources;
181
278
  };
182
279
 
183
280
  /**
@@ -185,5 +282,5 @@ export type WorkerGroupSpec = Message<"flyteidl2.plugins.WorkerGroupSpec"> & {
185
282
  * Use `create(WorkerGroupSpecSchema)` to create a new message.
186
283
  */
187
284
  export const WorkerGroupSpecSchema: GenMessage<WorkerGroupSpec> = /*@__PURE__*/
188
- messageDesc(file_flyteidl2_plugins_ray, 3);
285
+ messageDesc(file_flyteidl2_plugins_ray, 4);
189
286