@flyteorg/flyteidl2 2.0.47 → 2.0.49

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.
@@ -25,7 +25,7 @@ import type { Message } from "@bufbuild/protobuf";
25
25
  * Describes the file flyteidl2/app/app_definition.proto.
26
26
  */
27
27
  export const file_flyteidl2_app_app_definition: GenFile = /*@__PURE__*/
28
- fileDesc("CiJmbHl0ZWlkbDIvYXBwL2FwcF9kZWZpbml0aW9uLnByb3RvEg1mbHl0ZWlkbDIuYXBwIpYBCgpJZGVudGlmaWVyEgsKA29yZxgBIAEoCRIYCgdwcm9qZWN0GAIgASgJQge6SARyAhABEhcKBmRvbWFpbhgDIAEoCUIHukgEcgIQARJICgRuYW1lGAQgASgJQjq6SDdyNRABGB4yL15bQS1aYS16MC05XSg/OltBLVphLXowLTktXXswLDYxfVtBLVphLXowLTldKT8kIvoBCgRNZXRhEi0KAmlkGAEgASgLMhkuZmx5dGVpZGwyLmFwcC5JZGVudGlmaWVyQga6SAPIAQESGQoIcmV2aXNpb24YAiABKARCB7pIBDICKAASLwoGbGFiZWxzGAMgAygLMh8uZmx5dGVpZGwyLmFwcC5NZXRhLkxhYmVsc0VudHJ5EhcKD2NvZGVfYnVuZGxlX3VyaRgEIAEoCRIvCgtzb3VyY2VfY29kZRgFIAEoCzIaLmZseXRlaWRsMi50YXNrLlNvdXJjZUNvZGUaLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ1CgpBcHBXcmFwcGVyEgwKBGhvc3QYASABKAkSIQoDYXBwGAIgASgLMhIuZmx5dGVpZGwyLmFwcC5BcHBIABIrCgZhcHBfaWQYAyABKAsyGS5mbHl0ZWlkbDIuYXBwLklkZW50aWZpZXJIAEIJCgdwYXlsb2FkIoYBCgNBcHASLQoIbWV0YWRhdGEYASABKAsyEy5mbHl0ZWlkbDIuYXBwLk1ldGFCBrpIA8gBARIpCgRzcGVjGAIgASgLMhMuZmx5dGVpZGwyLmFwcC5TcGVjQga6SAPIAQESJQoGc3RhdHVzGAMgASgLMhUuZmx5dGVpZGwyLmFwcC5TdGF0dXMisAIKCUNvbmRpdGlvbhI4ChRsYXN0X3RyYW5zaXRpb25fdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASQQoRZGVwbG95bWVudF9zdGF0dXMYAiABKA4yJi5mbHl0ZWlkbDIuYXBwLlN0YXR1cy5EZXBsb3ltZW50U3RhdHVzEg8KB21lc3NhZ2UYAyABKAkSGQoIcmV2aXNpb24YBCABKARCB7pIBDICKAASMQoFYWN0b3IYBSABKAsyIi5mbHl0ZWlkbDIuY29tbW9uLkVucmljaGVkSWRlbnRpdHkSMAoIc3Vic3RhdGUYBiABKA4yHi5mbHl0ZWlkbDIuYXBwLlN0YXR1cy5TdWJzdGF0ZRIVCg1kZXBsb3ltZW50X2lkGAcgASgJIooJCgZTdGF0dXMSGAoQYXNzaWduZWRfY2x1c3RlchgBIAEoCRIhChBjdXJyZW50X3JlcGxpY2FzGAIgASgNQge6SAQqAigAEicKB2luZ3Jlc3MYAyABKAsyFi5mbHl0ZWlkbDIuYXBwLkluZ3Jlc3MSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPbGFzdF91cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgpjb25kaXRpb25zGAYgAygLMhguZmx5dGVpZGwyLmFwcC5Db25kaXRpb24SNAoQbGVhc2VfZXhwaXJhdGlvbhgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMazhzX21ldGFkYXRhGAggASgLMhouZmx5dGVpZGwyLmFwcC5LOHNNZXRhZGF0YRI+ChNtYXRlcmlhbGl6ZWRfaW5wdXRzGAkgASgLMiEuZmx5dGVpZGwyLmFwcC5NYXRlcmlhbGl6ZWRJbnB1dHMSMwoPbGFzdF9zdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIdChVsYXN0X2Fzc2lnbmVkX2NsdXN0ZXIYCyABKAkigwMKEERlcGxveW1lbnRTdGF0dXMSIQodREVQTE9ZTUVOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIgChxERVBMT1lNRU5UX1NUQVRVU19VTkFTU0lHTkVEEAESHgoaREVQTE9ZTUVOVF9TVEFUVVNfQVNTSUdORUQQAhIdChlERVBMT1lNRU5UX1NUQVRVU19QRU5ESU5HEAMSHQoZREVQTE9ZTUVOVF9TVEFUVVNfU1RPUFBFRBAEEiEKGURFUExPWU1FTlRfU1RBVFVTX1NUQVJURUQQBRoCCAESHAoYREVQTE9ZTUVOVF9TVEFUVVNfRkFJTEVEEAYSHAoYREVQTE9ZTUVOVF9TVEFUVVNfQUNUSVZFEAcSJAocREVQTE9ZTUVOVF9TVEFUVVNfU0NBTElOR19VUBAIGgIIARImCh5ERVBMT1lNRU5UX1NUQVRVU19TQ0FMSU5HX0RPV04QCRoCCAESHwobREVQTE9ZTUVOVF9TVEFUVVNfREVQTE9ZSU5HEAoihAIKCFN1YnN0YXRlEhgKFFNVQlNUQVRFX1VOU1BFQ0lGSUVEEAASEQoNUFVMTElOR19JTUFHRRABEhAKDElOSVRJQUxJWklORxACEhEKDVdFQkhPT0tfRVJST1IQAxIUChBJTUFHRV9QVUxMX0VSUk9SEAQSFgoSU0VDUkVUX01PVU5UX0VSUk9SEAUSDgoKQ1JBU0hfTE9PUBAGEg4KCk9PTV9LSUxMRUQQBxILCgdSVU5OSU5HEAgSEgoOU0NBTEVEX1RPX1pFUk8QCRIVChFTQ0FMSU5HX0ZST01fWkVSTxAKEg4KClNDQUxJTkdfVVAQCxIQCgxTQ0FMSU5HX0RPV04QDCIgCgtLOHNNZXRhZGF0YRIRCgluYW1lc3BhY2UYASABKAkiaAoHSW5ncmVzcxIfCgpwdWJsaWNfdXJsGAEgASgJQgu6SAjYAQFyA4gBARIeCgljbmFtZV91cmwYAiABKAlCC7pICNgBAXIDiAEBEhwKB3ZwY191cmwYAyABKAlCC7pICNgBAXIDiAEBIusGCgRTcGVjEi4KCWNvbnRhaW5lchgBIAEoCzIZLmZseXRlaWRsMi5jb3JlLkNvbnRhaW5lckgAEiUKA3BvZBgCIAEoCzIWLmZseXRlaWRsMi5jb3JlLks4c1BvZEgAEjUKC2F1dG9zY2FsaW5nGAMgASgLMiAuZmx5dGVpZGwyLmFwcC5BdXRvc2NhbGluZ0NvbmZpZxItCgdpbmdyZXNzGAQgASgLMhwuZmx5dGVpZGwyLmFwcC5JbmdyZXNzQ29uZmlnEjcKDWRlc2lyZWRfc3RhdGUYBSABKA4yIC5mbHl0ZWlkbDIuYXBwLlNwZWMuRGVzaXJlZFN0YXRlEhQKDGNsdXN0ZXJfcG9vbBgGIAEoCRIrCgZpbWFnZXMYByABKAsyGy5mbHl0ZWlkbDIuYXBwLkltYWdlU3BlY1NldBI4ChBzZWN1cml0eV9jb250ZXh0GAggASgLMh4uZmx5dGVpZGwyLmFwcC5TZWN1cml0eUNvbnRleHQSPQoSZXh0ZW5kZWRfcmVzb3VyY2VzGAkgASgLMiEuZmx5dGVpZGwyLmNvcmUuRXh0ZW5kZWRSZXNvdXJjZXMSOwoQcnVudGltZV9tZXRhZGF0YRgKIAEoCzIhLmZseXRlaWRsMi5jb21tb24uUnVudGltZU1ldGFkYXRhEicKB3Byb2ZpbGUYCyABKAsyFi5mbHl0ZWlkbDIuYXBwLlByb2ZpbGUSMwoHY3JlYXRvchgMIAEoCzIiLmZseXRlaWRsMi5jb21tb24uRW5yaWNoZWRJZGVudGl0eRIoCgZpbnB1dHMYDSABKAsyGC5mbHl0ZWlkbDIuYXBwLklucHV0TGlzdBIiCgVsaW5rcxgOIAMoCzITLmZseXRlaWRsMi5hcHAuTGluaxIuCgh0aW1lb3V0cxgPIAEoCzIcLmZseXRlaWRsMi5hcHAuVGltZW91dENvbmZpZyKBAQoMRGVzaXJlZFN0YXRlEh0KGURFU0lSRURfU1RBVEVfVU5TUEVDSUZJRUQQABIZChVERVNJUkVEX1NUQVRFX1NUT1BQRUQQARIdChVERVNJUkVEX1NUQVRFX1NUQVJURUQQAhoCCAESGAoUREVTSVJFRF9TVEFURV9BQ1RJVkUQA0IUCgthcHBfcGF5bG9hZBIFukgCCAEiQQoETGluaxIVCgRwYXRoGAEgASgJQge6SARyAhABEg0KBXRpdGxlGAIgASgJEhMKC2lzX3JlbGF0aXZlGAMgASgIIrYBCgVJbnB1dBIVCgRuYW1lGAEgASgJQge6SARyAhABEh8KDHN0cmluZ192YWx1ZRgCIAEoCUIHukgEcgIQAUgAEisKBmFwcF9pZBgFIAEoCzIZLmZseXRlaWRsMi5hcHAuSWRlbnRpZmllckgAEjgKC2FydGlmYWN0X2lkGAYgASgLMiEuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RWZXJzaW9uSWRIAEIOCgV2YWx1ZRIFukgCCAEiYAoSTWF0ZXJpYWxpemVkSW5wdXRzEi8KBWl0ZW1zGAEgAygLMiAuZmx5dGVpZGwyLmFwcC5NYXRlcmlhbGl6ZWRJbnB1dBIZCghyZXZpc2lvbhgCIAEoBEIHukgEMgIoACJtChFNYXRlcmlhbGl6ZWRJbnB1dBIVCgRuYW1lGAEgASgJQge6SARyAhABEjEKC2FydGlmYWN0X2lkGAIgASgLMhouZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJREgAQg4KBXZhbHVlEgW6SAIIASIwCglJbnB1dExpc3QSIwoFaXRlbXMYASADKAsyFC5mbHl0ZWlkbDIuYXBwLklucHV0IlsKB1Byb2ZpbGUSDAoEdHlwZRgBIAEoCRIMCgRuYW1lGAIgASgJEiIKEXNob3J0X2Rlc2NyaXB0aW9uGAMgASgJQge6SARyAhhkEhAKCGljb25fdXJsGAQgASgJIokBCg9TZWN1cml0eUNvbnRleHQSKAoGcnVuX2FzGAEgASgLMhguZmx5dGVpZGwyLmNvcmUuSWRlbnRpdHkSJwoHc2VjcmV0cxgCIAMoCzIWLmZseXRlaWRsMi5jb3JlLlNlY3JldBIXCg9hbGxvd19hbm9ueW1vdXMYBSABKAhKBAgDEARKBAgEEAUiLwoJSW1hZ2VTcGVjEgsKA3RhZxgBIAEoCRIVCg1idWlsZF9qb2JfdXJsGAIgASgJIjgKDEltYWdlU3BlY1NldBIoCgZpbWFnZXMYASADKAsyGC5mbHl0ZWlkbDIuYXBwLkltYWdlU3BlYyJCCg1JbmdyZXNzQ29uZmlnEg8KB3ByaXZhdGUYASABKAgSEQoJc3ViZG9tYWluGAIgASgJEg0KBWNuYW1lGAMgASgJIqkBChFBdXRvc2NhbGluZ0NvbmZpZxIpCghyZXBsaWNhcxgBIAEoCzIXLmZseXRlaWRsMi5hcHAuUmVwbGljYXMSMwoQc2NhbGVkb3duX3BlcmlvZBgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhI0Cg5zY2FsaW5nX21ldHJpYxgDIAEoCzIcLmZseXRlaWRsMi5hcHAuU2NhbGluZ01ldHJpYyKHAQoNU2NhbGluZ01ldHJpYxIyCgxyZXF1ZXN0X3JhdGUYASABKAsyGi5mbHl0ZWlkbDIuYXBwLlJlcXVlc3RSYXRlSAASMQoLY29uY3VycmVuY3kYAiABKAsyGi5mbHl0ZWlkbDIuYXBwLkNvbmN1cnJlbmN5SABCDwoGbWV0cmljEgW6SAIIASIsCgtDb25jdXJyZW5jeRIdCgx0YXJnZXRfdmFsdWUYASABKA1CB7pIBCoCIAAiLAoLUmVxdWVzdFJhdGUSHQoMdGFyZ2V0X3ZhbHVlGAEgASgNQge6SAQqAigAIjYKCFJlcGxpY2FzEhQKA21pbhgBIAEoDUIHukgEKgIoABIUCgNtYXgYAiABKA1CB7pIBCoCKAAiUgoNVGltZW91dENvbmZpZxJBCg9yZXF1ZXN0X3RpbWVvdXQYASABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CDbpICqoBByIDCJAcMgBCsQEKEWNvbS5mbHl0ZWlkbDIuYXBwQhJBcHBEZWZpbml0aW9uUHJvdG9IAlABWjFnaXRodWIuY29tL2ZseXRlb3JnL2ZseXRlL3YyL2dlbi9nby9mbHl0ZWlkbDIvYXBwogIDRkFYqgINRmx5dGVpZGwyLkFwcMoCDUZseXRlaWRsMlxBcHDiAhlGbHl0ZWlkbDJcQXBwXEdQQk1ldGFkYXRh6gIORmx5dGVpZGwyOjpBcHBiBnByb3RvMw", [file_buf_validate_validate, file_flyteidl2_common_identity, file_flyteidl2_common_runtime_version, file_flyteidl2_core_artifact_id, file_flyteidl2_core_security, file_flyteidl2_core_tasks, file_flyteidl2_task_task_definition, file_google_protobuf_duration, file_google_protobuf_timestamp]);
28
+ fileDesc("CiJmbHl0ZWlkbDIvYXBwL2FwcF9kZWZpbml0aW9uLnByb3RvEg1mbHl0ZWlkbDIuYXBwIpYBCgpJZGVudGlmaWVyEgsKA29yZxgBIAEoCRIYCgdwcm9qZWN0GAIgASgJQge6SARyAhABEhcKBmRvbWFpbhgDIAEoCUIHukgEcgIQARJICgRuYW1lGAQgASgJQjq6SDdyNRABGB4yL15bQS1aYS16MC05XSg/OltBLVphLXowLTktXXswLDYxfVtBLVphLXowLTldKT8kIvoBCgRNZXRhEi0KAmlkGAEgASgLMhkuZmx5dGVpZGwyLmFwcC5JZGVudGlmaWVyQga6SAPIAQESGQoIcmV2aXNpb24YAiABKARCB7pIBDICKAASLwoGbGFiZWxzGAMgAygLMh8uZmx5dGVpZGwyLmFwcC5NZXRhLkxhYmVsc0VudHJ5EhcKD2NvZGVfYnVuZGxlX3VyaRgEIAEoCRIvCgtzb3VyY2VfY29kZRgFIAEoCzIaLmZseXRlaWRsMi50YXNrLlNvdXJjZUNvZGUaLQoLTGFiZWxzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ1CgpBcHBXcmFwcGVyEgwKBGhvc3QYASABKAkSIQoDYXBwGAIgASgLMhIuZmx5dGVpZGwyLmFwcC5BcHBIABIrCgZhcHBfaWQYAyABKAsyGS5mbHl0ZWlkbDIuYXBwLklkZW50aWZpZXJIAEIJCgdwYXlsb2FkIoYBCgNBcHASLQoIbWV0YWRhdGEYASABKAsyEy5mbHl0ZWlkbDIuYXBwLk1ldGFCBrpIA8gBARIpCgRzcGVjGAIgASgLMhMuZmx5dGVpZGwyLmFwcC5TcGVjQga6SAPIAQESJQoGc3RhdHVzGAMgASgLMhUuZmx5dGVpZGwyLmFwcC5TdGF0dXMisAIKCUNvbmRpdGlvbhI4ChRsYXN0X3RyYW5zaXRpb25fdGltZRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASQQoRZGVwbG95bWVudF9zdGF0dXMYAiABKA4yJi5mbHl0ZWlkbDIuYXBwLlN0YXR1cy5EZXBsb3ltZW50U3RhdHVzEg8KB21lc3NhZ2UYAyABKAkSGQoIcmV2aXNpb24YBCABKARCB7pIBDICKAASMQoFYWN0b3IYBSABKAsyIi5mbHl0ZWlkbDIuY29tbW9uLkVucmljaGVkSWRlbnRpdHkSMAoIc3Vic3RhdGUYBiABKA4yHi5mbHl0ZWlkbDIuYXBwLlN0YXR1cy5TdWJzdGF0ZRIVCg1kZXBsb3ltZW50X2lkGAcgASgJIooJCgZTdGF0dXMSGAoQYXNzaWduZWRfY2x1c3RlchgBIAEoCRIhChBjdXJyZW50X3JlcGxpY2FzGAIgASgNQge6SAQqAigAEicKB2luZ3Jlc3MYAyABKAsyFi5mbHl0ZWlkbDIuYXBwLkluZ3Jlc3MSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMwoPbGFzdF91cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgpjb25kaXRpb25zGAYgAygLMhguZmx5dGVpZGwyLmFwcC5Db25kaXRpb24SNAoQbGVhc2VfZXhwaXJhdGlvbhgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMAoMazhzX21ldGFkYXRhGAggASgLMhouZmx5dGVpZGwyLmFwcC5LOHNNZXRhZGF0YRI+ChNtYXRlcmlhbGl6ZWRfaW5wdXRzGAkgASgLMiEuZmx5dGVpZGwyLmFwcC5NYXRlcmlhbGl6ZWRJbnB1dHMSMwoPbGFzdF9zdGFydGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIdChVsYXN0X2Fzc2lnbmVkX2NsdXN0ZXIYCyABKAkigwMKEERlcGxveW1lbnRTdGF0dXMSIQodREVQTE9ZTUVOVF9TVEFUVVNfVU5TUEVDSUZJRUQQABIgChxERVBMT1lNRU5UX1NUQVRVU19VTkFTU0lHTkVEEAESHgoaREVQTE9ZTUVOVF9TVEFUVVNfQVNTSUdORUQQAhIdChlERVBMT1lNRU5UX1NUQVRVU19QRU5ESU5HEAMSHQoZREVQTE9ZTUVOVF9TVEFUVVNfU1RPUFBFRBAEEiEKGURFUExPWU1FTlRfU1RBVFVTX1NUQVJURUQQBRoCCAESHAoYREVQTE9ZTUVOVF9TVEFUVVNfRkFJTEVEEAYSHAoYREVQTE9ZTUVOVF9TVEFUVVNfQUNUSVZFEAcSJAocREVQTE9ZTUVOVF9TVEFUVVNfU0NBTElOR19VUBAIGgIIARImCh5ERVBMT1lNRU5UX1NUQVRVU19TQ0FMSU5HX0RPV04QCRoCCAESHwobREVQTE9ZTUVOVF9TVEFUVVNfREVQTE9ZSU5HEAoihAIKCFN1YnN0YXRlEhgKFFNVQlNUQVRFX1VOU1BFQ0lGSUVEEAASEQoNUFVMTElOR19JTUFHRRABEhAKDElOSVRJQUxJWklORxACEhEKDVdFQkhPT0tfRVJST1IQAxIUChBJTUFHRV9QVUxMX0VSUk9SEAQSFgoSU0VDUkVUX01PVU5UX0VSUk9SEAUSDgoKQ1JBU0hfTE9PUBAGEg4KCk9PTV9LSUxMRUQQBxILCgdSVU5OSU5HEAgSEgoOU0NBTEVEX1RPX1pFUk8QCRIVChFTQ0FMSU5HX0ZST01fWkVSTxAKEg4KClNDQUxJTkdfVVAQCxIQCgxTQ0FMSU5HX0RPV04QDCIgCgtLOHNNZXRhZGF0YRIRCgluYW1lc3BhY2UYASABKAkiaAoHSW5ncmVzcxIfCgpwdWJsaWNfdXJsGAEgASgJQgu6SAjYAQFyA4gBARIeCgljbmFtZV91cmwYAiABKAlCC7pICNgBAXIDiAEBEhwKB3ZwY191cmwYAyABKAlCC7pICNgBAXIDiAEBIvwGCgRTcGVjEi4KCWNvbnRhaW5lchgBIAEoCzIZLmZseXRlaWRsMi5jb3JlLkNvbnRhaW5lckgAEiUKA3BvZBgCIAEoCzIWLmZseXRlaWRsMi5jb3JlLks4c1BvZEgAEjUKC2F1dG9zY2FsaW5nGAMgASgLMiAuZmx5dGVpZGwyLmFwcC5BdXRvc2NhbGluZ0NvbmZpZxItCgdpbmdyZXNzGAQgASgLMhwuZmx5dGVpZGwyLmFwcC5JbmdyZXNzQ29uZmlnEjcKDWRlc2lyZWRfc3RhdGUYBSABKA4yIC5mbHl0ZWlkbDIuYXBwLlNwZWMuRGVzaXJlZFN0YXRlEhQKDGNsdXN0ZXJfcG9vbBgGIAEoCRIPCgdjbHVzdGVyGBAgASgJEisKBmltYWdlcxgHIAEoCzIbLmZseXRlaWRsMi5hcHAuSW1hZ2VTcGVjU2V0EjgKEHNlY3VyaXR5X2NvbnRleHQYCCABKAsyHi5mbHl0ZWlkbDIuYXBwLlNlY3VyaXR5Q29udGV4dBI9ChJleHRlbmRlZF9yZXNvdXJjZXMYCSABKAsyIS5mbHl0ZWlkbDIuY29yZS5FeHRlbmRlZFJlc291cmNlcxI7ChBydW50aW1lX21ldGFkYXRhGAogASgLMiEuZmx5dGVpZGwyLmNvbW1vbi5SdW50aW1lTWV0YWRhdGESJwoHcHJvZmlsZRgLIAEoCzIWLmZseXRlaWRsMi5hcHAuUHJvZmlsZRIzCgdjcmVhdG9yGAwgASgLMiIuZmx5dGVpZGwyLmNvbW1vbi5FbnJpY2hlZElkZW50aXR5EigKBmlucHV0cxgNIAEoCzIYLmZseXRlaWRsMi5hcHAuSW5wdXRMaXN0EiIKBWxpbmtzGA4gAygLMhMuZmx5dGVpZGwyLmFwcC5MaW5rEi4KCHRpbWVvdXRzGA8gASgLMhwuZmx5dGVpZGwyLmFwcC5UaW1lb3V0Q29uZmlnIoEBCgxEZXNpcmVkU3RhdGUSHQoZREVTSVJFRF9TVEFURV9VTlNQRUNJRklFRBAAEhkKFURFU0lSRURfU1RBVEVfU1RPUFBFRBABEh0KFURFU0lSRURfU1RBVEVfU1RBUlRFRBACGgIIARIYChRERVNJUkVEX1NUQVRFX0FDVElWRRADQhQKC2FwcF9wYXlsb2FkEgW6SAIIASJBCgRMaW5rEhUKBHBhdGgYASABKAlCB7pIBHICEAESDQoFdGl0bGUYAiABKAkSEwoLaXNfcmVsYXRpdmUYAyABKAgitgEKBUlucHV0EhUKBG5hbWUYASABKAlCB7pIBHICEAESHwoMc3RyaW5nX3ZhbHVlGAIgASgJQge6SARyAhABSAASKwoGYXBwX2lkGAUgASgLMhkuZmx5dGVpZGwyLmFwcC5JZGVudGlmaWVySAASOAoLYXJ0aWZhY3RfaWQYBiABKAsyIS5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdFZlcnNpb25JZEgAQg4KBXZhbHVlEgW6SAIIASJgChJNYXRlcmlhbGl6ZWRJbnB1dHMSLwoFaXRlbXMYASADKAsyIC5mbHl0ZWlkbDIuYXBwLk1hdGVyaWFsaXplZElucHV0EhkKCHJldmlzaW9uGAIgASgEQge6SAQyAigAIm0KEU1hdGVyaWFsaXplZElucHV0EhUKBG5hbWUYASABKAlCB7pIBHICEAESMQoLYXJ0aWZhY3RfaWQYAiABKAsyGi5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdElESABCDgoFdmFsdWUSBbpIAggBIjAKCUlucHV0TGlzdBIjCgVpdGVtcxgBIAMoCzIULmZseXRlaWRsMi5hcHAuSW5wdXQiWwoHUHJvZmlsZRIMCgR0eXBlGAEgASgJEgwKBG5hbWUYAiABKAkSIgoRc2hvcnRfZGVzY3JpcHRpb24YAyABKAlCB7pIBHICGGQSEAoIaWNvbl91cmwYBCABKAkiiQEKD1NlY3VyaXR5Q29udGV4dBIoCgZydW5fYXMYASABKAsyGC5mbHl0ZWlkbDIuY29yZS5JZGVudGl0eRInCgdzZWNyZXRzGAIgAygLMhYuZmx5dGVpZGwyLmNvcmUuU2VjcmV0EhcKD2FsbG93X2Fub255bW91cxgFIAEoCEoECAMQBEoECAQQBSIvCglJbWFnZVNwZWMSCwoDdGFnGAEgASgJEhUKDWJ1aWxkX2pvYl91cmwYAiABKAkiOAoMSW1hZ2VTcGVjU2V0EigKBmltYWdlcxgBIAMoCzIYLmZseXRlaWRsMi5hcHAuSW1hZ2VTcGVjIkIKDUluZ3Jlc3NDb25maWcSDwoHcHJpdmF0ZRgBIAEoCBIRCglzdWJkb21haW4YAiABKAkSDQoFY25hbWUYAyABKAkiqQEKEUF1dG9zY2FsaW5nQ29uZmlnEikKCHJlcGxpY2FzGAEgASgLMhcuZmx5dGVpZGwyLmFwcC5SZXBsaWNhcxIzChBzY2FsZWRvd25fcGVyaW9kGAIgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEjQKDnNjYWxpbmdfbWV0cmljGAMgASgLMhwuZmx5dGVpZGwyLmFwcC5TY2FsaW5nTWV0cmljIocBCg1TY2FsaW5nTWV0cmljEjIKDHJlcXVlc3RfcmF0ZRgBIAEoCzIaLmZseXRlaWRsMi5hcHAuUmVxdWVzdFJhdGVIABIxCgtjb25jdXJyZW5jeRgCIAEoCzIaLmZseXRlaWRsMi5hcHAuQ29uY3VycmVuY3lIAEIPCgZtZXRyaWMSBbpIAggBIiwKC0NvbmN1cnJlbmN5Eh0KDHRhcmdldF92YWx1ZRgBIAEoDUIHukgEKgIgACIsCgtSZXF1ZXN0UmF0ZRIdCgx0YXJnZXRfdmFsdWUYASABKA1CB7pIBCoCKAAiNgoIUmVwbGljYXMSFAoDbWluGAEgASgNQge6SAQqAigAEhQKA21heBgCIAEoDUIHukgEKgIoACJSCg1UaW1lb3V0Q29uZmlnEkEKD3JlcXVlc3RfdGltZW91dBgBIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkINukgKqgEHIgMIkBwyAEKxAQoRY29tLmZseXRlaWRsMi5hcHBCEkFwcERlZmluaXRpb25Qcm90b0gCUAFaMWdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9hcHCiAgNGQViqAg1GbHl0ZWlkbDIuQXBwygINRmx5dGVpZGwyXEFwcOICGUZseXRlaWRsMlxBcHBcR1BCTWV0YWRhdGHqAg5GbHl0ZWlkbDI6OkFwcGIGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_identity, file_flyteidl2_common_runtime_version, file_flyteidl2_core_artifact_id, file_flyteidl2_core_security, file_flyteidl2_core_tasks, file_flyteidl2_task_task_definition, file_google_protobuf_duration, file_google_protobuf_timestamp]);
29
29
 
30
30
  /**
31
31
  * @generated from message flyteidl2.app.Identifier
@@ -661,6 +661,17 @@ export type Spec = Message<"flyteidl2.app.Spec"> & {
661
661
  */
662
662
  clusterPool: string;
663
663
 
664
+ /**
665
+ * Pins this app to a specific cluster by name (the app is placed on that cluster
666
+ * rather than load-balanced across a pool). Mutually exclusive with cluster_pool:
667
+ * setting both is rejected. When set, the control plane leases the app only to the
668
+ * named cluster; when empty, placement falls back to cluster_pool (empty pool =
669
+ * the default pool).
670
+ *
671
+ * @generated from field: string cluster = 16;
672
+ */
673
+ cluster: string;
674
+
664
675
  /**
665
676
  * Set of image specifications for the app.
666
677
  *
@@ -9,7 +9,7 @@ import type { ActionIdentifier } from "../common/identifier_pb.ts";
9
9
  import { file_flyteidl2_common_identifier } from "../common/identifier_pb.ts";
10
10
  import type { EnrichedIdentity } from "../common/identity_pb.ts";
11
11
  import { file_flyteidl2_common_identity } from "../common/identity_pb.ts";
12
- import type { ArtifactInfo, ArtifactVersionId } from "../core/artifact_id_pb.ts";
12
+ import type { ArtifactInfo, ArtifactVersionId, Granularity, Partitions, TimePartition } from "../core/artifact_id_pb.ts";
13
13
  import { file_flyteidl2_core_artifact_id } from "../core/artifact_id_pb.ts";
14
14
  import type { Literal } from "../core/literals_pb.ts";
15
15
  import { file_flyteidl2_core_literals } from "../core/literals_pb.ts";
@@ -23,7 +23,7 @@ import type { Message } from "@bufbuild/protobuf";
23
23
  * Describes the file flyteidl2/artifact/artifact.proto.
24
24
  */
25
25
  export const file_flyteidl2_artifact_artifact: GenFile = /*@__PURE__*/
26
- fileDesc("CiFmbHl0ZWlkbDIvYXJ0aWZhY3QvYXJ0aWZhY3QucHJvdG8SEmZseXRlaWRsMi5hcnRpZmFjdCJ1CgxBcnRpZmFjdE5hbWUSFAoDb3JnGAEgASgJQge6SARyAhg/EhoKB3Byb2plY3QYAiABKAlCCbpIBnIEEAEYQBIZCgZkb21haW4YAyABKAlCCbpIBnIEEAEYQBIYCgRuYW1lGAQgASgJQgq6SAdyBRABGP8BImkKEkFydGlmYWN0SWRlbnRpZmllchI2CgRuYW1lGAEgASgLMiAuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0TmFtZUIGukgDyAEBEhsKB3ZlcnNpb24YAiABKAlCCrpIB3IFEAEY/wEiXwoQVGFza0FjdGlvblNvdXJjZRI6CgZhY3Rpb24YASABKAsyIi5mbHl0ZWlkbDIuY29tbW9uLkFjdGlvbklkZW50aWZpZXJCBrpIA8gBARIPCgdhdHRlbXB0GAIgASgNInkKDkFydGlmYWN0U291cmNlEjsKC3Rhc2tfYWN0aW9uGAEgASgLMiQuZmx5dGVpZGwyLmFydGlmYWN0LlRhc2tBY3Rpb25Tb3VyY2VIABIgCgxleHRlcm5hbF9yZWYYAiABKAlCCLpIBXIDGIAISABCCAoGc291cmNlIo0CCgxBcnRpZmFjdFNwZWMSLgoFdmFsdWUYASABKAsyFy5mbHl0ZWlkbDIuY29yZS5MaXRlcmFsQga6SAPIAQESMQoEdHlwZRgCIAEoCzIbLmZseXRlaWRsMi5jb3JlLkxpdGVyYWxUeXBlQga6SAPIAQESKgoEaW5mbxgDIAEoCzIcLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0SW5mbxIyCgZzb3VyY2UYBiABKAsyIi5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RTb3VyY2USOgoPcGFyZW50X2FydGlmYWN0GAcgASgLMiEuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RWZXJzaW9uSWQi3wEKCEFydGlmYWN0EjsKC2FydGlmYWN0X2lkGAEgASgLMiYuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0SWRlbnRpZmllchIuCgRzcGVjGAIgASgLMiAuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0U3BlYxIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI2CgpjcmVhdGVkX2J5GAQgASgLMiIuZmx5dGVpZGwyLmNvbW1vbi5FbnJpY2hlZElkZW50aXR5QsoBChZjb20uZmx5dGVpZGwyLmFydGlmYWN0Qg1BcnRpZmFjdFByb3RvSAJQAVo2Z2l0aHViLmNvbS9mbHl0ZW9yZy9mbHl0ZS92Mi9nZW4vZ28vZmx5dGVpZGwyL2FydGlmYWN0ogIDRkFYqgISRmx5dGVpZGwyLkFydGlmYWN0ygISRmx5dGVpZGwyXEFydGlmYWN04gIeRmx5dGVpZGwyXEFydGlmYWN0XEdQQk1ldGFkYXRh6gITRmx5dGVpZGwyOjpBcnRpZmFjdGIGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_identity, file_flyteidl2_core_artifact_id, file_flyteidl2_core_literals, file_flyteidl2_core_types, file_google_protobuf_timestamp]);
26
+ fileDesc("CiFmbHl0ZWlkbDIvYXJ0aWZhY3QvYXJ0aWZhY3QucHJvdG8SEmZseXRlaWRsMi5hcnRpZmFjdCJ1CgxBcnRpZmFjdE5hbWUSFAoDb3JnGAEgASgJQge6SARyAhg/EhoKB3Byb2plY3QYAiABKAlCCbpIBnIEEAEYQBIZCgZkb21haW4YAyABKAlCCbpIBnIEEAEYQBIYCgRuYW1lGAQgASgJQgq6SAdyBRABGP8BImkKEkFydGlmYWN0SWRlbnRpZmllchI2CgRuYW1lGAEgASgLMiAuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0TmFtZUIGukgDyAEBEhsKB3ZlcnNpb24YAiABKAlCCrpIB3IFEAEY/wEiXAoQVGltZVBhcnRpdGlvbktleRIWCgNrZXkYASABKAlCCbpIBnIEEAEYQBIwCgtncmFudWxhcml0eRgCIAEoDjIbLmZseXRlaWRsMi5jb3JlLkdyYW51bGFyaXR5IoEBChdBcnRpZmFjdFBhcnRpdGlvblNjaGVtYRI8Cg50aW1lX3BhcnRpdGlvbhgBIAEoCzIkLmZseXRlaWRsMi5hcnRpZmFjdC5UaW1lUGFydGl0aW9uS2V5EigKDnBhcnRpdGlvbl9rZXlzGAIgAygJQhC6SA2SAQoQECIGcgQQARhAIqYBChdQYXJ0aXRpb25TY2hlbWFNaXNtYXRjaBI9CghleHBlY3RlZBgBIAEoCzIrLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdFBhcnRpdGlvblNjaGVtYRI7CgZhY3R1YWwYAiABKAsyKy5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RQYXJ0aXRpb25TY2hlbWESDwoHbWVzc2FnZRgDIAEoCSJfChBUYXNrQWN0aW9uU291cmNlEjoKBmFjdGlvbhgBIAEoCzIiLmZseXRlaWRsMi5jb21tb24uQWN0aW9uSWRlbnRpZmllckIGukgDyAEBEg8KB2F0dGVtcHQYAiABKA0ieQoOQXJ0aWZhY3RTb3VyY2USOwoLdGFza19hY3Rpb24YASABKAsyJC5mbHl0ZWlkbDIuYXJ0aWZhY3QuVGFza0FjdGlvblNvdXJjZUgAEiAKDGV4dGVybmFsX3JlZhgCIAEoCUIIukgFcgMYgAhIAEIICgZzb3VyY2Ui/wIKDEFydGlmYWN0U3BlYxIuCgV2YWx1ZRgBIAEoCzIXLmZseXRlaWRsMi5jb3JlLkxpdGVyYWxCBrpIA8gBARIxCgR0eXBlGAIgASgLMhsuZmx5dGVpZGwyLmNvcmUuTGl0ZXJhbFR5cGVCBrpIA8gBARIqCgRpbmZvGAMgASgLMhwuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJbmZvEjIKBnNvdXJjZRgGIAEoCzIiLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdFNvdXJjZRJFChBwYXJlbnRfYXJ0aWZhY3RzGAcgAygLMiEuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RWZXJzaW9uSWRCCLpIBZIBAhAgEi4KCnBhcnRpdGlvbnMYCCABKAsyGi5mbHl0ZWlkbDIuY29yZS5QYXJ0aXRpb25zEjUKDnRpbWVfcGFydGl0aW9uGAkgASgLMh0uZmx5dGVpZGwyLmNvcmUuVGltZVBhcnRpdGlvbiKvAgoIQXJ0aWZhY3QSOwoLYXJ0aWZhY3RfaWQYASABKAsyJi5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RJZGVudGlmaWVyEi4KBHNwZWMYAiABKAsyIC5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RTcGVjEi4KCmNyZWF0ZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjYKCmNyZWF0ZWRfYnkYBCABKAsyIi5mbHl0ZWlkbDIuY29tbW9uLkVucmljaGVkSWRlbnRpdHkSTgoZcGFydGl0aW9uX3NjaGVtYV9taXNtYXRjaBgFIAEoCzIrLmZseXRlaWRsMi5hcnRpZmFjdC5QYXJ0aXRpb25TY2hlbWFNaXNtYXRjaELKAQoWY29tLmZseXRlaWRsMi5hcnRpZmFjdEINQXJ0aWZhY3RQcm90b0gCUAFaNmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9hcnRpZmFjdKICA0ZBWKoCEkZseXRlaWRsMi5BcnRpZmFjdMoCEkZseXRlaWRsMlxBcnRpZmFjdOICHkZseXRlaWRsMlxBcnRpZmFjdFxHUEJNZXRhZGF0YeoCE0ZseXRlaWRsMjo6QXJ0aWZhY3RiBnByb3RvMw", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_identity, file_flyteidl2_core_artifact_id, file_flyteidl2_core_literals, file_flyteidl2_core_types, file_google_protobuf_timestamp]);
27
27
 
28
28
  /**
29
29
  * Identifies an artifact name within an org, project and domain.
@@ -94,6 +94,105 @@ export type ArtifactIdentifier = Message<"flyteidl2.artifact.ArtifactIdentifier"
94
94
  export const ArtifactIdentifierSchema: GenMessage<ArtifactIdentifier> = /*@__PURE__*/
95
95
  messageDesc(file_flyteidl2_artifact_artifact, 1);
96
96
 
97
+ /**
98
+ * The name and granularity of an artifact's time partition.
99
+ *
100
+ * @generated from message flyteidl2.artifact.TimePartitionKey
101
+ */
102
+ export type TimePartitionKey = Message<"flyteidl2.artifact.TimePartitionKey"> & {
103
+ /**
104
+ * Dimension name, e.g. "date" or "hour".
105
+ *
106
+ * @generated from field: string key = 1;
107
+ */
108
+ key: string;
109
+
110
+ /**
111
+ * Granularity every version's time value is floored to. UNSET reads as DAY.
112
+ *
113
+ * @generated from field: flyteidl2.core.Granularity granularity = 2;
114
+ */
115
+ granularity: Granularity;
116
+ };
117
+
118
+ /**
119
+ * Describes the message flyteidl2.artifact.TimePartitionKey.
120
+ * Use `create(TimePartitionKeySchema)` to create a new message.
121
+ */
122
+ export const TimePartitionKeySchema: GenMessage<TimePartitionKey> = /*@__PURE__*/
123
+ messageDesc(file_flyteidl2_artifact_artifact, 2);
124
+
125
+ /**
126
+ * The partition keys of an artifact name: at most one time partition plus any
127
+ * number of string partitions. Partitions are identity: the keys are fixed for
128
+ * the artifact name by its first partitioned version, or by DeclareArtifact (a
129
+ * version without partitions fixes nothing), and every later version must
130
+ * carry exactly these keys. Changing the keys is a new artifact name, not a
131
+ * new version.
132
+ *
133
+ * @generated from message flyteidl2.artifact.ArtifactPartitionSchema
134
+ */
135
+ export type ArtifactPartitionSchema = Message<"flyteidl2.artifact.ArtifactPartitionSchema"> & {
136
+ /**
137
+ * The time dimension, if the artifact has one.
138
+ *
139
+ * @generated from field: flyteidl2.artifact.TimePartitionKey time_partition = 1;
140
+ */
141
+ timePartition?: TimePartitionKey;
142
+
143
+ /**
144
+ * String dimension names, in declaration order.
145
+ *
146
+ * @generated from field: repeated string partition_keys = 2;
147
+ */
148
+ partitionKeys: string[];
149
+ };
150
+
151
+ /**
152
+ * Describes the message flyteidl2.artifact.ArtifactPartitionSchema.
153
+ * Use `create(ArtifactPartitionSchemaSchema)` to create a new message.
154
+ */
155
+ export const ArtifactPartitionSchemaSchema: GenMessage<ArtifactPartitionSchema> = /*@__PURE__*/
156
+ messageDesc(file_flyteidl2_artifact_artifact, 3);
157
+
158
+ /**
159
+ * Recorded on a version whose partition keys did not match the artifact's
160
+ * schema. The version is stored, so nothing is lost, but it is not
161
+ * addressable by partition: partition filters, latest-per-partition listings,
162
+ * partition value listings and partition triggers all skip it.
163
+ *
164
+ * @generated from message flyteidl2.artifact.PartitionSchemaMismatch
165
+ */
166
+ export type PartitionSchemaMismatch = Message<"flyteidl2.artifact.PartitionSchemaMismatch"> & {
167
+ /**
168
+ * The artifact's schema.
169
+ *
170
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema expected = 1;
171
+ */
172
+ expected?: ArtifactPartitionSchema;
173
+
174
+ /**
175
+ * The keys the version carried.
176
+ *
177
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema actual = 2;
178
+ */
179
+ actual?: ArtifactPartitionSchema;
180
+
181
+ /**
182
+ * Human readable explanation, including the fix.
183
+ *
184
+ * @generated from field: string message = 3;
185
+ */
186
+ message: string;
187
+ };
188
+
189
+ /**
190
+ * Describes the message flyteidl2.artifact.PartitionSchemaMismatch.
191
+ * Use `create(PartitionSchemaMismatchSchema)` to create a new message.
192
+ */
193
+ export const PartitionSchemaMismatchSchema: GenMessage<PartitionSchemaMismatch> = /*@__PURE__*/
194
+ messageDesc(file_flyteidl2_artifact_artifact, 4);
195
+
97
196
  /**
98
197
  * The task action attempt that produced an artifact. A dedicated message
99
198
  * (rather than common.ActionAttemptIdentifier) because producing attempts are
@@ -120,7 +219,7 @@ export type TaskActionSource = Message<"flyteidl2.artifact.TaskActionSource"> &
120
219
  * Use `create(TaskActionSourceSchema)` to create a new message.
121
220
  */
122
221
  export const TaskActionSourceSchema: GenMessage<TaskActionSource> = /*@__PURE__*/
123
- messageDesc(file_flyteidl2_artifact_artifact, 2);
222
+ messageDesc(file_flyteidl2_artifact_artifact, 5);
124
223
 
125
224
  /**
126
225
  * Provenance of an artifact: what produced it. An unset oneof means the
@@ -160,7 +259,7 @@ export type ArtifactSource = Message<"flyteidl2.artifact.ArtifactSource"> & {
160
259
  * Use `create(ArtifactSourceSchema)` to create a new message.
161
260
  */
162
261
  export const ArtifactSourceSchema: GenMessage<ArtifactSource> = /*@__PURE__*/
163
- messageDesc(file_flyteidl2_artifact_artifact, 3);
262
+ messageDesc(file_flyteidl2_artifact_artifact, 6);
164
263
 
165
264
  /**
166
265
  * User-provided specification of an artifact.
@@ -203,29 +302,51 @@ export type ArtifactSpec = Message<"flyteidl2.artifact.ArtifactSpec"> & {
203
302
  source?: ArtifactSource;
204
303
 
205
304
  /**
206
- * Optional lineage: the artifact version this one was derived from. Unset
207
- * means no declared parent, which is the normal case for a first version or
208
- * an independently produced one.
305
+ * Optional lineage: the artifact versions this one was derived from. Empty
306
+ * means no declared parents, which is the normal case for a first version or
307
+ * an independently produced one. One entry is plain derivation; several
308
+ * entries record a merge (git-style), making version history a DAG rather
309
+ * than a chain: a new version may branch off any earlier version — or
310
+ * combine more than one — so two versions derived from the same ancestor
311
+ * are siblings rather than one appearing to descend from the other.
312
+ *
313
+ * Order is preserved and meaningful: the first entry is the primary parent
314
+ * (the version this one is "a new revision of"), later entries are the
315
+ * versions merged in. Duplicate parents (after inheritance is applied) are
316
+ * rejected.
209
317
  *
210
- * The parent must live in this artifact's own org/project/domain; empty
211
- * scope fields on the key inherit the artifact's own scope, and an empty
318
+ * Every parent must live in this artifact's own org/project/domain; empty
319
+ * scope fields on a key inherit the artifact's own scope, and an empty
212
320
  * key name inherits the artifact's own name — so a bare {version: "v1"}
213
- * declares the previous version of this same artifact as parent. The name
321
+ * declares the previous version of this same artifact as a parent. The name
214
322
  * MAY differ, so lineage can express derivation across artifacts (a model
215
323
  * deriving from a dataset version).
216
324
  *
217
- * Recording the parent explicitly is what makes version history a forest
218
- * rather than a chain: a new version may branch off any earlier version, not
219
- * just the most recently created one, so two versions derived from the same
220
- * ancestor are siblings rather than one appearing to descend from the other.
221
- *
222
- * Stored as given and never resolved: the referenced version is not required
325
+ * Stored as given and never resolved: referenced versions are not required
223
326
  * to exist (publication order is not guaranteed), so readers walking lineage
224
- * must tolerate a dangling parent. Immutable after creation.
327
+ * must tolerate dangling parents. Immutable after creation.
225
328
  *
226
- * @generated from field: flyteidl2.core.ArtifactVersionId parent_artifact = 7;
329
+ * @generated from field: repeated flyteidl2.core.ArtifactVersionId parent_artifacts = 7;
227
330
  */
228
- parentArtifact?: ArtifactVersionId;
331
+ parentArtifacts: ArtifactVersionId[];
332
+
333
+ /**
334
+ * String partitions of this version, e.g. region=us. Each value must be a
335
+ * LabelValue.static_value. The set of keys is fixed per artifact name by the
336
+ * first partitioned version (see ArtifactPartitionSchema).
337
+ *
338
+ * @generated from field: flyteidl2.core.Partitions partitions = 8;
339
+ */
340
+ partitions?: Partitions;
341
+
342
+ /**
343
+ * The time partition of this version: a LabelValue.time_value, floored to the
344
+ * granularity, under the key. An unset key defaults from the granularity
345
+ * ("hour" for HOUR, "date" otherwise); an UNSET granularity defaults to DAY.
346
+ *
347
+ * @generated from field: flyteidl2.core.TimePartition time_partition = 9;
348
+ */
349
+ timePartition?: TimePartition;
229
350
  };
230
351
 
231
352
  /**
@@ -233,7 +354,7 @@ export type ArtifactSpec = Message<"flyteidl2.artifact.ArtifactSpec"> & {
233
354
  * Use `create(ArtifactSpecSchema)` to create a new message.
234
355
  */
235
356
  export const ArtifactSpecSchema: GenMessage<ArtifactSpec> = /*@__PURE__*/
236
- messageDesc(file_flyteidl2_artifact_artifact, 4);
357
+ messageDesc(file_flyteidl2_artifact_artifact, 7);
237
358
 
238
359
  /**
239
360
  * A fully materialized artifact as stored by the service.
@@ -266,6 +387,15 @@ export type Artifact = Message<"flyteidl2.artifact.Artifact"> & {
266
387
  * @generated from field: flyteidl2.common.EnrichedIdentity created_by = 4;
267
388
  */
268
389
  createdBy?: EnrichedIdentity;
390
+
391
+ /**
392
+ * Set by the service when the version's partition keys did not match the
393
+ * artifact's schema; unset for a consistent version. See
394
+ * PartitionSchemaMismatch for what the flag means.
395
+ *
396
+ * @generated from field: flyteidl2.artifact.PartitionSchemaMismatch partition_schema_mismatch = 5;
397
+ */
398
+ partitionSchemaMismatch?: PartitionSchemaMismatch;
269
399
  };
270
400
 
271
401
  /**
@@ -273,5 +403,5 @@ export type Artifact = Message<"flyteidl2.artifact.Artifact"> & {
273
403
  * Use `create(ArtifactSchema)` to create a new message.
274
404
  */
275
405
  export const ArtifactSchema: GenMessage<Artifact> = /*@__PURE__*/
276
- messageDesc(file_flyteidl2_artifact_artifact, 5);
406
+ messageDesc(file_flyteidl2_artifact_artifact, 8);
277
407
 
@@ -5,19 +5,23 @@
5
5
  import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
6
6
  import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
7
7
  import { file_buf_validate_validate } from "../../buf/validate/validate_pb.ts";
8
- import type { Artifact, ArtifactIdentifier, ArtifactName, ArtifactSpec } from "./artifact_pb.ts";
8
+ import type { Artifact, ArtifactIdentifier, ArtifactName, ArtifactPartitionSchema, ArtifactSpec } from "./artifact_pb.ts";
9
9
  import { file_flyteidl2_artifact_artifact } from "./artifact_pb.ts";
10
10
  import type { ProjectIdentifier } from "../common/identifier_pb.ts";
11
11
  import { file_flyteidl2_common_identifier } from "../common/identifier_pb.ts";
12
12
  import type { ListRequest } from "../common/list_pb.ts";
13
13
  import { file_flyteidl2_common_list } from "../common/list_pb.ts";
14
+ import type { Partitions } from "../core/artifact_id_pb.ts";
15
+ import { file_flyteidl2_core_artifact_id } from "../core/artifact_id_pb.ts";
16
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
17
+ import { file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
14
18
  import type { Message } from "@bufbuild/protobuf";
15
19
 
16
20
  /**
17
21
  * Describes the file flyteidl2/artifact/artifact_service.proto.
18
22
  */
19
23
  export const file_flyteidl2_artifact_artifact_service: GenFile = /*@__PURE__*/
20
- fileDesc("CilmbHl0ZWlkbDIvYXJ0aWZhY3QvYXJ0aWZhY3Rfc2VydmljZS5wcm90bxISZmx5dGVpZGwyLmFydGlmYWN0IpQBChVDcmVhdGVBcnRpZmFjdFJlcXVlc3QSQwoLYXJ0aWZhY3RfaWQYASABKAsyJi5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RJZGVudGlmaWVyQga6SAPIAQESNgoEc3BlYxgCIAEoCzIgLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdFNwZWNCBrpIA8gBASJIChZDcmVhdGVBcnRpZmFjdFJlc3BvbnNlEi4KCGFydGlmYWN0GAEgASgLMhwuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0IngKEkdldEFydGlmYWN0UmVxdWVzdBI2CgRuYW1lGAEgASgLMiAuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0TmFtZUIGukgDyAEBEh4KB3ZlcnNpb24YAiABKAlCCLpIBXIDGP8BSACIAQFCCgoIX3ZlcnNpb24iRQoTR2V0QXJ0aWZhY3RSZXNwb25zZRIuCghhcnRpZmFjdBgBIAEoCzIcLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdCKtAQoUTGlzdEFydGlmYWN0c1JlcXVlc3QSLgoHcmVxdWVzdBgBIAEoCzIdLmZseXRlaWRsMi5jb21tb24uTGlzdFJlcXVlc3QSPwoKcHJvamVjdF9pZBgCIAEoCzIjLmZseXRlaWRsMi5jb21tb24uUHJvamVjdElkZW50aWZpZXJCBrpIA8gBARIbCgRuYW1lGAMgASgJQgi6SAVyAxj/AUgAiAEBQgcKBV9uYW1lIlcKFUxpc3RBcnRpZmFjdHNSZXNwb25zZRIvCglhcnRpZmFjdHMYASADKAsyHC5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3QSDQoFdG9rZW4YAiABKAkiiwEKGExpc3RBcnRpZmFjdE5hbWVzUmVxdWVzdBIuCgdyZXF1ZXN0GAEgASgLMh0uZmx5dGVpZGwyLmNvbW1vbi5MaXN0UmVxdWVzdBI/Cgpwcm9qZWN0X2lkGAIgASgLMiMuZmx5dGVpZGwyLmNvbW1vbi5Qcm9qZWN0SWRlbnRpZmllckIGukgDyAEBIk8KDUFydGlmYWN0R3JvdXASLAoGbGF0ZXN0GAEgASgLMhwuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0EhAKCHZlcnNpb25zGAIgASgEIl0KGUxpc3RBcnRpZmFjdE5hbWVzUmVzcG9uc2USMQoGZ3JvdXBzGAEgAygLMiEuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0R3JvdXASDQoFdG9rZW4YAiABKAkiYgofTGlzdEFydGlmYWN0TWV0YWRhdGFLZXlzUmVxdWVzdBI/Cgpwcm9qZWN0X2lkGAEgASgLMiMuZmx5dGVpZGwyLmNvbW1vbi5Qcm9qZWN0SWRlbnRpZmllckIGukgDyAEBIjAKIExpc3RBcnRpZmFjdE1ldGFkYXRhS2V5c1Jlc3BvbnNlEgwKBGtleXMYASADKAky0AQKD0FydGlmYWN0U2VydmljZRJpCg5DcmVhdGVBcnRpZmFjdBIpLmZseXRlaWRsMi5hcnRpZmFjdC5DcmVhdGVBcnRpZmFjdFJlcXVlc3QaKi5mbHl0ZWlkbDIuYXJ0aWZhY3QuQ3JlYXRlQXJ0aWZhY3RSZXNwb25zZSIAEmMKC0dldEFydGlmYWN0EiYuZmx5dGVpZGwyLmFydGlmYWN0LkdldEFydGlmYWN0UmVxdWVzdBonLmZseXRlaWRsMi5hcnRpZmFjdC5HZXRBcnRpZmFjdFJlc3BvbnNlIgOQAgESaQoNTGlzdEFydGlmYWN0cxIoLmZseXRlaWRsMi5hcnRpZmFjdC5MaXN0QXJ0aWZhY3RzUmVxdWVzdBopLmZseXRlaWRsMi5hcnRpZmFjdC5MaXN0QXJ0aWZhY3RzUmVzcG9uc2UiA5ACARJ1ChFMaXN0QXJ0aWZhY3ROYW1lcxIsLmZseXRlaWRsMi5hcnRpZmFjdC5MaXN0QXJ0aWZhY3ROYW1lc1JlcXVlc3QaLS5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0TmFtZXNSZXNwb25zZSIDkAIBEooBChhMaXN0QXJ0aWZhY3RNZXRhZGF0YUtleXMSMy5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0TWV0YWRhdGFLZXlzUmVxdWVzdBo0LmZseXRlaWRsMi5hcnRpZmFjdC5MaXN0QXJ0aWZhY3RNZXRhZGF0YUtleXNSZXNwb25zZSIDkAIBQtEBChZjb20uZmx5dGVpZGwyLmFydGlmYWN0QhRBcnRpZmFjdFNlcnZpY2VQcm90b0gCUAFaNmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9hcnRpZmFjdKICA0ZBWKoCEkZseXRlaWRsMi5BcnRpZmFjdMoCEkZseXRlaWRsMlxBcnRpZmFjdOICHkZseXRlaWRsMlxBcnRpZmFjdFxHUEJNZXRhZGF0YeoCE0ZseXRlaWRsMjo6QXJ0aWZhY3RiBnByb3RvMw", [file_buf_validate_validate, file_flyteidl2_artifact_artifact, file_flyteidl2_common_identifier, file_flyteidl2_common_list]);
24
+ fileDesc("CilmbHl0ZWlkbDIvYXJ0aWZhY3QvYXJ0aWZhY3Rfc2VydmljZS5wcm90bxISZmx5dGVpZGwyLmFydGlmYWN0IpQBChVDcmVhdGVBcnRpZmFjdFJlcXVlc3QSQwoLYXJ0aWZhY3RfaWQYASABKAsyJi5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RJZGVudGlmaWVyQga6SAPIAQESNgoEc3BlYxgCIAEoCzIgLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdFNwZWNCBrpIA8gBASJIChZDcmVhdGVBcnRpZmFjdFJlc3BvbnNlEi4KCGFydGlmYWN0GAEgASgLMhwuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0IngKEkdldEFydGlmYWN0UmVxdWVzdBI2CgRuYW1lGAEgASgLMiAuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0TmFtZUIGukgDyAEBEh4KB3ZlcnNpb24YAiABKAlCCLpIBXIDGP8BSACIAQFCCgoIX3ZlcnNpb24iRQoTR2V0QXJ0aWZhY3RSZXNwb25zZRIuCghhcnRpZmFjdBgBIAEoCzIcLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdCLLAQoUTGlzdEFydGlmYWN0c1JlcXVlc3QSLgoHcmVxdWVzdBgBIAEoCzIdLmZseXRlaWRsMi5jb21tb24uTGlzdFJlcXVlc3QSPwoKcHJvamVjdF9pZBgCIAEoCzIjLmZseXRlaWRsMi5jb21tb24uUHJvamVjdElkZW50aWZpZXJCBrpIA8gBARIbCgRuYW1lGAMgASgJQgi6SAVyAxj/AUgAiAEBEhwKFGxhdGVzdF9wZXJfcGFydGl0aW9uGAQgASgIQgcKBV9uYW1lIlcKFUxpc3RBcnRpZmFjdHNSZXNwb25zZRIvCglhcnRpZmFjdHMYASADKAsyHC5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3QSDQoFdG9rZW4YAiABKAkiiwEKGExpc3RBcnRpZmFjdE5hbWVzUmVxdWVzdBIuCgdyZXF1ZXN0GAEgASgLMh0uZmx5dGVpZGwyLmNvbW1vbi5MaXN0UmVxdWVzdBI/Cgpwcm9qZWN0X2lkGAIgASgLMiMuZmx5dGVpZGwyLmNvbW1vbi5Qcm9qZWN0SWRlbnRpZmllckIGukgDyAEBIogCCg1BcnRpZmFjdEdyb3VwEiwKBmxhdGVzdBgBIAEoCzIcLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdBIQCgh2ZXJzaW9ucxgCIAEoBBJFChBwYXJ0aXRpb25fc2NoZW1hGAMgASgLMisuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0UGFydGl0aW9uU2NoZW1hEjkKFWxhdGVzdF90aW1lX3BhcnRpdGlvbhgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASNQoRbGF0ZXN0X3BhcnRpdGlvbnMYBSADKAsyGi5mbHl0ZWlkbDIuY29yZS5QYXJ0aXRpb25zIl0KGUxpc3RBcnRpZmFjdE5hbWVzUmVzcG9uc2USMQoGZ3JvdXBzGAEgAygLMiEuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0R3JvdXASDQoFdG9rZW4YAiABKAkiiAEKH0xpc3RBcnRpZmFjdE1ldGFkYXRhS2V5c1JlcXVlc3QSPwoKcHJvamVjdF9pZBgBIAEoCzIjLmZseXRlaWRsMi5jb21tb24uUHJvamVjdElkZW50aWZpZXJCBrpIA8gBARIbCgRuYW1lGAIgASgJQgi6SAVyAxj/AUgAiAEBQgcKBV9uYW1lIjAKIExpc3RBcnRpZmFjdE1ldGFkYXRhS2V5c1Jlc3BvbnNlEgwKBGtleXMYASADKAkinwEKFkRlY2xhcmVBcnRpZmFjdFJlcXVlc3QSNgoEbmFtZRgBIAEoCzIgLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdE5hbWVCBrpIA8gBARJNChBwYXJ0aXRpb25fc2NoZW1hGAIgASgLMisuZmx5dGVpZGwyLmFydGlmYWN0LkFydGlmYWN0UGFydGl0aW9uU2NoZW1hQga6SAPIAQEiYAoXRGVjbGFyZUFydGlmYWN0UmVzcG9uc2USRQoQcGFydGl0aW9uX3NjaGVtYRgBIAEoCzIrLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdFBhcnRpdGlvblNjaGVtYSJSChhHZXRBcnRpZmFjdFNjaGVtYVJlcXVlc3QSNgoEbmFtZRgBIAEoCzIgLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdE5hbWVCBrpIA8gBASJ0ChlHZXRBcnRpZmFjdFNjaGVtYVJlc3BvbnNlEkUKEHBhcnRpdGlvbl9zY2hlbWEYASABKAsyKy5mbHl0ZWlkbDIuYXJ0aWZhY3QuQXJ0aWZhY3RQYXJ0aXRpb25TY2hlbWESEAoIZGVjbGFyZWQYAiABKAgivwEKGkxpc3RQYXJ0aXRpb25WYWx1ZXNSZXF1ZXN0Ei4KB3JlcXVlc3QYASABKAsyHS5mbHl0ZWlkbDIuY29tbW9uLkxpc3RSZXF1ZXN0Ej8KCnByb2plY3RfaWQYAiABKAsyIy5mbHl0ZWlkbDIuY29tbW9uLlByb2plY3RJZGVudGlmaWVyQga6SAPIAQESGAoEbmFtZRgDIAEoCUIKukgHcgUQARj/ARIWCgNrZXkYBCABKAlCCbpIBnIEEAEYQCItChtMaXN0UGFydGl0aW9uVmFsdWVzUmVzcG9uc2USDgoGdmFsdWVzGAEgAygJIlwKFURlbGV0ZUFydGlmYWN0UmVxdWVzdBJDCgthcnRpZmFjdF9pZBgBIAEoCzImLmZseXRlaWRsMi5hcnRpZmFjdC5BcnRpZmFjdElkZW50aWZpZXJCBrpIA8gBASIYChZEZWxldGVBcnRpZmFjdFJlc3BvbnNlMqMICg9BcnRpZmFjdFNlcnZpY2USaQoOQ3JlYXRlQXJ0aWZhY3QSKS5mbHl0ZWlkbDIuYXJ0aWZhY3QuQ3JlYXRlQXJ0aWZhY3RSZXF1ZXN0GiouZmx5dGVpZGwyLmFydGlmYWN0LkNyZWF0ZUFydGlmYWN0UmVzcG9uc2UiABJjCgtHZXRBcnRpZmFjdBImLmZseXRlaWRsMi5hcnRpZmFjdC5HZXRBcnRpZmFjdFJlcXVlc3QaJy5mbHl0ZWlkbDIuYXJ0aWZhY3QuR2V0QXJ0aWZhY3RSZXNwb25zZSIDkAIBEmkKDUxpc3RBcnRpZmFjdHMSKC5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0c1JlcXVlc3QaKS5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0c1Jlc3BvbnNlIgOQAgESdQoRTGlzdEFydGlmYWN0TmFtZXMSLC5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0TmFtZXNSZXF1ZXN0Gi0uZmx5dGVpZGwyLmFydGlmYWN0Lkxpc3RBcnRpZmFjdE5hbWVzUmVzcG9uc2UiA5ACARKKAQoYTGlzdEFydGlmYWN0TWV0YWRhdGFLZXlzEjMuZmx5dGVpZGwyLmFydGlmYWN0Lkxpc3RBcnRpZmFjdE1ldGFkYXRhS2V5c1JlcXVlc3QaNC5mbHl0ZWlkbDIuYXJ0aWZhY3QuTGlzdEFydGlmYWN0TWV0YWRhdGFLZXlzUmVzcG9uc2UiA5ACARJsCg5EZWxldGVBcnRpZmFjdBIpLmZseXRlaWRsMi5hcnRpZmFjdC5EZWxldGVBcnRpZmFjdFJlcXVlc3QaKi5mbHl0ZWlkbDIuYXJ0aWZhY3QuRGVsZXRlQXJ0aWZhY3RSZXNwb25zZSIDkAICEm8KD0RlY2xhcmVBcnRpZmFjdBIqLmZseXRlaWRsMi5hcnRpZmFjdC5EZWNsYXJlQXJ0aWZhY3RSZXF1ZXN0GisuZmx5dGVpZGwyLmFydGlmYWN0LkRlY2xhcmVBcnRpZmFjdFJlc3BvbnNlIgOQAgISdQoRR2V0QXJ0aWZhY3RTY2hlbWESLC5mbHl0ZWlkbDIuYXJ0aWZhY3QuR2V0QXJ0aWZhY3RTY2hlbWFSZXF1ZXN0Gi0uZmx5dGVpZGwyLmFydGlmYWN0LkdldEFydGlmYWN0U2NoZW1hUmVzcG9uc2UiA5ACARJ7ChNMaXN0UGFydGl0aW9uVmFsdWVzEi4uZmx5dGVpZGwyLmFydGlmYWN0Lkxpc3RQYXJ0aXRpb25WYWx1ZXNSZXF1ZXN0Gi8uZmx5dGVpZGwyLmFydGlmYWN0Lkxpc3RQYXJ0aXRpb25WYWx1ZXNSZXNwb25zZSIDkAIBQtEBChZjb20uZmx5dGVpZGwyLmFydGlmYWN0QhRBcnRpZmFjdFNlcnZpY2VQcm90b0gCUAFaNmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9hcnRpZmFjdKICA0ZBWKoCEkZseXRlaWRsMi5BcnRpZmFjdMoCEkZseXRlaWRsMlxBcnRpZmFjdOICHkZseXRlaWRsMlxBcnRpZmFjdFxHUEJNZXRhZGF0YeoCE0ZseXRlaWRsMjo6QXJ0aWZhY3RiBnByb3RvMw", [file_buf_validate_validate, file_flyteidl2_artifact_artifact, file_flyteidl2_common_identifier, file_flyteidl2_common_list, file_flyteidl2_core_artifact_id, file_google_protobuf_timestamp]);
21
25
 
22
26
  /**
23
27
  * request message for creating an artifact.
@@ -123,14 +127,26 @@ export const GetArtifactResponseSchema: GenMessage<GetArtifactResponse> = /*@__P
123
127
  */
124
128
  export type ListArtifactsRequest = Message<"flyteidl2.artifact.ListArtifactsRequest"> & {
125
129
  /**
126
- * Common list request parameters (limit, token, filters).
130
+ * Common list request parameters (limit, token, filters, sort).
131
+ * Supported sort keys (sort_by_fields, at most one): "created_at",
132
+ * "version" and "created_by"; the default is created_at, newest first.
127
133
  * Supported filters: field "name" with CONTAINS,
128
134
  * field "created_at" with GREATER_THAN (RFC3339 timestamp value),
135
+ * field "created_by" with EQUAL or VALUE_IN (creator subjects, ORed),
136
+ * fields "source_run", "source_action" and "source_external_ref" with EQUAL,
129
137
  * and the pair "parent_name" + "parent_version", each with EQUAL and always
130
138
  * together, which lists the versions (of any name in the project) that
131
- * declare the given artifact version as their parent — the downward
132
- * direction of lineage, which the stored pointer alone cannot be followed
133
- * in.
139
+ * declare the given artifact version among their parents. This serves the
140
+ * downward direction of lineage: the stored parent pointers only walk
141
+ * upwards, so finding a version's children requires this filter.
142
+ *
143
+ * Partition filters: field "partition.<key>" with EQUAL, NOT_EQUAL, VALUE_IN
144
+ * or VALUE_NOT_IN on a string partition; field "time_partition" with EQUAL,
145
+ * GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN or LESS_THAN_OR_EQUAL and an
146
+ * RFC3339 value, so a range is two filters; field "schema_mismatch" with
147
+ * EQUAL "true" or "false". Any partition filter, like latest_per_partition,
148
+ * only considers versions whose partition keys match the artifact's schema.
149
+ * "time_partition" is also a sort key.
134
150
  *
135
151
  * @generated from field: flyteidl2.common.ListRequest request = 1;
136
152
  */
@@ -150,6 +166,16 @@ export type ListArtifactsRequest = Message<"flyteidl2.artifact.ListArtifactsRequ
150
166
  * @generated from field: optional string name = 3;
151
167
  */
152
168
  name?: string;
169
+
170
+ /**
171
+ * When set, return only the newest version of each distinct partition among
172
+ * the matches, so a range over the time partition yields one version per
173
+ * partition. Versions with a partition schema mismatch are excluded. Requires
174
+ * name to be set.
175
+ *
176
+ * @generated from field: bool latest_per_partition = 4;
177
+ */
178
+ latestPerPartition: boolean;
153
179
  };
154
180
 
155
181
  /**
@@ -192,7 +218,10 @@ export const ListArtifactsResponseSchema: GenMessage<ListArtifactsResponse> = /*
192
218
  */
193
219
  export type ListArtifactNamesRequest = Message<"flyteidl2.artifact.ListArtifactNamesRequest"> & {
194
220
  /**
195
- * Common list request parameters (limit, token, filters).
221
+ * Common list request parameters (limit, token, filters, sort).
222
+ * Supported sort keys (sort_by_fields, at most one): "created_at" (the
223
+ * latest version's creation time), "name" and "created_by"; the default is
224
+ * created_at, newest first.
196
225
  * Supported filters: field "name" with CONTAINS.
197
226
  *
198
227
  * @generated from field: flyteidl2.common.ListRequest request = 1;
@@ -234,6 +263,30 @@ export type ArtifactGroup = Message<"flyteidl2.artifact.ArtifactGroup"> & {
234
263
  * @generated from field: uint64 versions = 2;
235
264
  */
236
265
  versions: bigint;
266
+
267
+ /**
268
+ * The artifact's partition keys; unset when the artifact has none.
269
+ *
270
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema partition_schema = 3;
271
+ */
272
+ partitionSchema?: ArtifactPartitionSchema;
273
+
274
+ /**
275
+ * The newest time partition among the artifact's addressable versions;
276
+ * unset when the artifact has no time partition.
277
+ *
278
+ * @generated from field: google.protobuf.Timestamp latest_time_partition = 4;
279
+ */
280
+ latestTimePartition?: Timestamp;
281
+
282
+ /**
283
+ * The distinct string partitions present at latest_time_partition (or, for
284
+ * an artifact without a time partition, across all addressable versions),
285
+ * capped at 32.
286
+ *
287
+ * @generated from field: repeated flyteidl2.core.Partitions latest_partitions = 5;
288
+ */
289
+ latestPartitions: Partitions[];
237
290
  };
238
291
 
239
292
  /**
@@ -281,6 +334,14 @@ export type ListArtifactMetadataKeysRequest = Message<"flyteidl2.artifact.ListAr
281
334
  * @generated from field: flyteidl2.common.ProjectIdentifier project_id = 1;
282
335
  */
283
336
  projectId?: ProjectIdentifier;
337
+
338
+ /**
339
+ * Optional exact artifact name; when set, only keys present on that
340
+ * artifact's versions are returned.
341
+ *
342
+ * @generated from field: optional string name = 2;
343
+ */
344
+ name?: string;
284
345
  };
285
346
 
286
347
  /**
@@ -312,6 +373,209 @@ export type ListArtifactMetadataKeysResponse = Message<"flyteidl2.artifact.ListA
312
373
  export const ListArtifactMetadataKeysResponseSchema: GenMessage<ListArtifactMetadataKeysResponse> = /*@__PURE__*/
313
374
  messageDesc(file_flyteidl2_artifact_artifact_service, 10);
314
375
 
376
+ /**
377
+ * request message for declaring an artifact's partition schema.
378
+ *
379
+ * @generated from message flyteidl2.artifact.DeclareArtifactRequest
380
+ */
381
+ export type DeclareArtifactRequest = Message<"flyteidl2.artifact.DeclareArtifactRequest"> & {
382
+ /**
383
+ * Name of the artifact. org is stamped by the server.
384
+ *
385
+ * @generated from field: flyteidl2.artifact.ArtifactName name = 1;
386
+ */
387
+ name?: ArtifactName;
388
+
389
+ /**
390
+ * The partition keys to fix for the name.
391
+ *
392
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema partition_schema = 2;
393
+ */
394
+ partitionSchema?: ArtifactPartitionSchema;
395
+ };
396
+
397
+ /**
398
+ * Describes the message flyteidl2.artifact.DeclareArtifactRequest.
399
+ * Use `create(DeclareArtifactRequestSchema)` to create a new message.
400
+ */
401
+ export const DeclareArtifactRequestSchema: GenMessage<DeclareArtifactRequest> = /*@__PURE__*/
402
+ messageDesc(file_flyteidl2_artifact_artifact_service, 11);
403
+
404
+ /**
405
+ * response message for declaring an artifact's partition schema.
406
+ *
407
+ * @generated from message flyteidl2.artifact.DeclareArtifactResponse
408
+ */
409
+ export type DeclareArtifactResponse = Message<"flyteidl2.artifact.DeclareArtifactResponse"> & {
410
+ /**
411
+ * The schema as stored.
412
+ *
413
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema partition_schema = 1;
414
+ */
415
+ partitionSchema?: ArtifactPartitionSchema;
416
+ };
417
+
418
+ /**
419
+ * Describes the message flyteidl2.artifact.DeclareArtifactResponse.
420
+ * Use `create(DeclareArtifactResponseSchema)` to create a new message.
421
+ */
422
+ export const DeclareArtifactResponseSchema: GenMessage<DeclareArtifactResponse> = /*@__PURE__*/
423
+ messageDesc(file_flyteidl2_artifact_artifact_service, 12);
424
+
425
+ /**
426
+ * request message for getting an artifact's partition schema.
427
+ *
428
+ * @generated from message flyteidl2.artifact.GetArtifactSchemaRequest
429
+ */
430
+ export type GetArtifactSchemaRequest = Message<"flyteidl2.artifact.GetArtifactSchemaRequest"> & {
431
+ /**
432
+ * Name of the artifact. org is stamped by the server.
433
+ *
434
+ * @generated from field: flyteidl2.artifact.ArtifactName name = 1;
435
+ */
436
+ name?: ArtifactName;
437
+ };
438
+
439
+ /**
440
+ * Describes the message flyteidl2.artifact.GetArtifactSchemaRequest.
441
+ * Use `create(GetArtifactSchemaRequestSchema)` to create a new message.
442
+ */
443
+ export const GetArtifactSchemaRequestSchema: GenMessage<GetArtifactSchemaRequest> = /*@__PURE__*/
444
+ messageDesc(file_flyteidl2_artifact_artifact_service, 13);
445
+
446
+ /**
447
+ * response message for getting an artifact's partition schema.
448
+ *
449
+ * @generated from message flyteidl2.artifact.GetArtifactSchemaResponse
450
+ */
451
+ export type GetArtifactSchemaResponse = Message<"flyteidl2.artifact.GetArtifactSchemaResponse"> & {
452
+ /**
453
+ * The partition keys. An empty schema (no time partition, no keys) means the
454
+ * artifact exists and is not partitioned.
455
+ *
456
+ * @generated from field: flyteidl2.artifact.ArtifactPartitionSchema partition_schema = 1;
457
+ */
458
+ partitionSchema?: ArtifactPartitionSchema;
459
+
460
+ /**
461
+ * Whether the schema was fixed by a first partitioned version (false) or by an explicit
462
+ * declaration (true).
463
+ *
464
+ * @generated from field: bool declared = 2;
465
+ */
466
+ declared: boolean;
467
+ };
468
+
469
+ /**
470
+ * Describes the message flyteidl2.artifact.GetArtifactSchemaResponse.
471
+ * Use `create(GetArtifactSchemaResponseSchema)` to create a new message.
472
+ */
473
+ export const GetArtifactSchemaResponseSchema: GenMessage<GetArtifactSchemaResponse> = /*@__PURE__*/
474
+ messageDesc(file_flyteidl2_artifact_artifact_service, 14);
475
+
476
+ /**
477
+ * request message for listing the values of one partition key.
478
+ *
479
+ * @generated from message flyteidl2.artifact.ListPartitionValuesRequest
480
+ */
481
+ export type ListPartitionValuesRequest = Message<"flyteidl2.artifact.ListPartitionValuesRequest"> & {
482
+ /**
483
+ * limit (default 100, max 1000) and filters. Supported filters are the
484
+ * partition filters of ListArtifactsRequest: "partition.<key>" and
485
+ * "time_partition", which scope the versions whose values are listed.
486
+ *
487
+ * @generated from field: flyteidl2.common.ListRequest request = 1;
488
+ */
489
+ request?: ListRequest;
490
+
491
+ /**
492
+ * Project scope. organization is stamped by the server.
493
+ *
494
+ * @generated from field: flyteidl2.common.ProjectIdentifier project_id = 2;
495
+ */
496
+ projectId?: ProjectIdentifier;
497
+
498
+ /**
499
+ * Name of the artifact.
500
+ *
501
+ * @generated from field: string name = 3;
502
+ */
503
+ name: string;
504
+
505
+ /**
506
+ * The partition key to list: a string partition key, or the time partition
507
+ * key, whose values are returned as RFC3339 timestamps.
508
+ *
509
+ * @generated from field: string key = 4;
510
+ */
511
+ key: string;
512
+ };
513
+
514
+ /**
515
+ * Describes the message flyteidl2.artifact.ListPartitionValuesRequest.
516
+ * Use `create(ListPartitionValuesRequestSchema)` to create a new message.
517
+ */
518
+ export const ListPartitionValuesRequestSchema: GenMessage<ListPartitionValuesRequest> = /*@__PURE__*/
519
+ messageDesc(file_flyteidl2_artifact_artifact_service, 15);
520
+
521
+ /**
522
+ * response message for listing the values of one partition key.
523
+ *
524
+ * @generated from message flyteidl2.artifact.ListPartitionValuesResponse
525
+ */
526
+ export type ListPartitionValuesResponse = Message<"flyteidl2.artifact.ListPartitionValuesResponse"> & {
527
+ /**
528
+ * Distinct values, sorted ascending. Time partition values are RFC3339.
529
+ *
530
+ * @generated from field: repeated string values = 1;
531
+ */
532
+ values: string[];
533
+ };
534
+
535
+ /**
536
+ * Describes the message flyteidl2.artifact.ListPartitionValuesResponse.
537
+ * Use `create(ListPartitionValuesResponseSchema)` to create a new message.
538
+ */
539
+ export const ListPartitionValuesResponseSchema: GenMessage<ListPartitionValuesResponse> = /*@__PURE__*/
540
+ messageDesc(file_flyteidl2_artifact_artifact_service, 16);
541
+
542
+ /**
543
+ * request message for deleting one artifact version.
544
+ *
545
+ * @generated from message flyteidl2.artifact.DeleteArtifactRequest
546
+ */
547
+ export type DeleteArtifactRequest = Message<"flyteidl2.artifact.DeleteArtifactRequest"> & {
548
+ /**
549
+ * Fully qualified id (name + version) of the version to delete. The
550
+ * version must be explicit; "latest" is rejected.
551
+ *
552
+ * @generated from field: flyteidl2.artifact.ArtifactIdentifier artifact_id = 1;
553
+ */
554
+ artifactId?: ArtifactIdentifier;
555
+ };
556
+
557
+ /**
558
+ * Describes the message flyteidl2.artifact.DeleteArtifactRequest.
559
+ * Use `create(DeleteArtifactRequestSchema)` to create a new message.
560
+ */
561
+ export const DeleteArtifactRequestSchema: GenMessage<DeleteArtifactRequest> = /*@__PURE__*/
562
+ messageDesc(file_flyteidl2_artifact_artifact_service, 17);
563
+
564
+ /**
565
+ * response message for deleting an artifact version.
566
+ *
567
+ * @generated from message flyteidl2.artifact.DeleteArtifactResponse
568
+ */
569
+ export type DeleteArtifactResponse = Message<"flyteidl2.artifact.DeleteArtifactResponse"> & {
570
+ };
571
+
572
+ /**
573
+ * Describes the message flyteidl2.artifact.DeleteArtifactResponse.
574
+ * Use `create(DeleteArtifactResponseSchema)` to create a new message.
575
+ */
576
+ export const DeleteArtifactResponseSchema: GenMessage<DeleteArtifactResponse> = /*@__PURE__*/
577
+ messageDesc(file_flyteidl2_artifact_artifact_service, 18);
578
+
315
579
  /**
316
580
  * ArtifactService provides a minimal interface for publishing and retrieving
317
581
  * typed artifacts.
@@ -373,6 +637,55 @@ export const ArtifactService: GenService<{
373
637
  input: typeof ListArtifactMetadataKeysRequestSchema;
374
638
  output: typeof ListArtifactMetadataKeysResponseSchema;
375
639
  },
640
+ /**
641
+ * Delete one artifact version. The version is required and must be
642
+ * explicit: the "latest" alias is rejected so a caller can never delete a
643
+ * version other than the one it named. Returns NOT_FOUND when the version
644
+ * does not exist. Deleting the last version removes the artifact name from
645
+ * the listings. Offloaded data the value references is not touched.
646
+ *
647
+ * @generated from rpc flyteidl2.artifact.ArtifactService.DeleteArtifact
648
+ */
649
+ deleteArtifact: {
650
+ methodKind: "unary";
651
+ input: typeof DeleteArtifactRequestSchema;
652
+ output: typeof DeleteArtifactResponseSchema;
653
+ },
654
+ /**
655
+ * Declare an artifact name's partition schema ahead of any version. Succeeds
656
+ * when the name has no schema yet or an equal one; FAILED_PRECONDITION when a
657
+ * different schema is already fixed (by an earlier declaration or a first
658
+ * version). Changing the keys is a new artifact name.
659
+ *
660
+ * @generated from rpc flyteidl2.artifact.ArtifactService.DeclareArtifact
661
+ */
662
+ declareArtifact: {
663
+ methodKind: "unary";
664
+ input: typeof DeclareArtifactRequestSchema;
665
+ output: typeof DeclareArtifactResponseSchema;
666
+ },
667
+ /**
668
+ * Get an artifact name's partition schema. NOT_FOUND when the name has
669
+ * neither a declaration nor a version.
670
+ *
671
+ * @generated from rpc flyteidl2.artifact.ArtifactService.GetArtifactSchema
672
+ */
673
+ getArtifactSchema: {
674
+ methodKind: "unary";
675
+ input: typeof GetArtifactSchemaRequestSchema;
676
+ output: typeof GetArtifactSchemaResponseSchema;
677
+ },
678
+ /**
679
+ * List the distinct values one partition key has among an artifact's
680
+ * addressable versions, optionally scoped by partition filters, sorted.
681
+ *
682
+ * @generated from rpc flyteidl2.artifact.ArtifactService.ListPartitionValues
683
+ */
684
+ listPartitionValues: {
685
+ methodKind: "unary";
686
+ input: typeof ListPartitionValuesRequestSchema;
687
+ output: typeof ListPartitionValuesResponseSchema;
688
+ },
376
689
  }> = /*@__PURE__*/
377
690
  serviceDesc(file_flyteidl2_artifact_artifact_service, 0);
378
691
 
@@ -13,14 +13,18 @@ import type { Message } from "@bufbuild/protobuf";
13
13
  * Describes the file flyteidl2/core/artifact_id.proto.
14
14
  */
15
15
  export const file_flyteidl2_core_artifact_id: GenFile = /*@__PURE__*/
16
- fileDesc("CiBmbHl0ZWlkbDIvY29yZS9hcnRpZmFjdF9pZC5wcm90bxIOZmx5dGVpZGwyLmNvcmUiSQoLQXJ0aWZhY3RLZXkSDwoHcHJvamVjdBgBIAEoCRIOCgZkb21haW4YAiABKAkSDAoEbmFtZRgDIAEoCRILCgNvcmcYBCABKAkiTgoRQXJ0aWZhY3RWZXJzaW9uSWQSKAoDa2V5GAEgASgLMhsuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RLZXkSDwoHdmVyc2lvbhgCIAEoCSJVCgxBcnRpZmFjdENhcmQSFQoDdXJpGAEgASgJQgi6SAVyAxiACBIXCgZmb3JtYXQYAiABKAlCB7pIBHICGBASFQoEdHlwZRgDIAEoCUIHukgEcgIYECLVAQoMQXJ0aWZhY3RJbmZvEh0KC2Rlc2NyaXB0aW9uGAEgASgJQgi6SAVyAxj/ARJFCg11c2VyX21ldGFkYXRhGAIgAygLMi4uZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJbmZvLlVzZXJNZXRhZGF0YUVudHJ5EioKBGNhcmQYAyABKAsyHC5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdENhcmQaMwoRVXNlck1ldGFkYXRhRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASKfAQoTQXJ0aWZhY3RCaW5kaW5nRGF0YRIXCg1wYXJ0aXRpb25fa2V5GAUgASgJSAASIAoWYmluZF90b190aW1lX3BhcnRpdGlvbhgGIAEoCEgAEjUKDnRpbWVfdHJhbnNmb3JtGAcgASgLMh0uZmx5dGVpZGwyLmNvcmUuVGltZVRyYW5zZm9ybUIQCg5wYXJ0aXRpb25fZGF0YUoECAEQBSJICg1UaW1lVHJhbnNmb3JtEhEKCXRyYW5zZm9ybRgBIAEoCRIkCgJvcBgCIAEoDjIYLmZseXRlaWRsMi5jb3JlLk9wZXJhdG9yIh8KEElucHV0QmluZGluZ0RhdGESCwoDdmFyGAEgASgJIhAKDlJ1bnRpbWVCaW5kaW5nIpcCCgpMYWJlbFZhbHVlEhYKDHN0YXRpY192YWx1ZRgBIAEoCUgAEjAKCnRpbWVfdmFsdWUYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAASQAoRdHJpZ2dlcmVkX2JpbmRpbmcYAyABKAsyIy5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdEJpbmRpbmdEYXRhSAASOQoNaW5wdXRfYmluZGluZxgEIAEoCzIgLmZseXRlaWRsMi5jb3JlLklucHV0QmluZGluZ0RhdGFIABI5Cg9ydW50aW1lX2JpbmRpbmcYBSABKAsyHi5mbHl0ZWlkbDIuY29yZS5SdW50aW1lQmluZGluZ0gAQgcKBXZhbHVlIowBCgpQYXJ0aXRpb25zEjQKBXZhbHVlGAEgAygLMiUuZmx5dGVpZGwyLmNvcmUuUGFydGl0aW9ucy5WYWx1ZUVudHJ5GkgKClZhbHVlRW50cnkSCwoDa2V5GAEgASgJEikKBXZhbHVlGAIgASgLMhouZmx5dGVpZGwyLmNvcmUuTGFiZWxWYWx1ZToCOAEibAoNVGltZVBhcnRpdGlvbhIpCgV2YWx1ZRgBIAEoCzIaLmZseXRlaWRsMi5jb3JlLkxhYmVsVmFsdWUSMAoLZ3JhbnVsYXJpdHkYAiABKA4yGy5mbHl0ZWlkbDIuY29yZS5HcmFudWxhcml0eSK3AQoKQXJ0aWZhY3RJRBIxCgxhcnRpZmFjdF9rZXkYASABKAsyGy5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdEtleRIPCgd2ZXJzaW9uGAIgASgJEi4KCnBhcnRpdGlvbnMYAyABKAsyGi5mbHl0ZWlkbDIuY29yZS5QYXJ0aXRpb25zEjUKDnRpbWVfcGFydGl0aW9uGAQgASgLMh0uZmx5dGVpZGwyLmNvcmUuVGltZVBhcnRpdGlvbiJrCgtBcnRpZmFjdFRhZxIxCgxhcnRpZmFjdF9rZXkYASABKAsyGy5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdEtleRIpCgV2YWx1ZRgCIAEoCzIaLmZseXRlaWRsMi5jb3JlLkxhYmVsVmFsdWUizAEKDUFydGlmYWN0UXVlcnkSMQoLYXJ0aWZhY3RfaWQYASABKAsyGi5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdElESAASMwoMYXJ0aWZhY3RfdGFnGAIgASgLMhsuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RUYWdIABINCgN1cmkYAyABKAlIABI2CgdiaW5kaW5nGAQgASgLMiMuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RCaW5kaW5nRGF0YUgAQgwKCmlkZW50aWZpZXIqQgoLR3JhbnVsYXJpdHkSCQoFVU5TRVQQABIKCgZNSU5VVEUQARIICgRIT1VSEAISBwoDREFZEAMSCQoFTU9OVEgQBCofCghPcGVyYXRvchIJCgVNSU5VUxAAEggKBFBMVVMQAUK0AQoSY29tLmZseXRlaWRsMi5jb3JlQg9BcnRpZmFjdElkUHJvdG9IAlABWjJnaXRodWIuY29tL2ZseXRlb3JnL2ZseXRlL3YyL2dlbi9nby9mbHl0ZWlkbDIvY29yZaICA0ZDWKoCDkZseXRlaWRsMi5Db3JlygIORmx5dGVpZGwyXENvcmXiAhpGbHl0ZWlkbDJcQ29yZVxHUEJNZXRhZGF0YeoCD0ZseXRlaWRsMjo6Q29yZWIGcHJvdG8z", [file_buf_validate_validate, file_google_protobuf_timestamp]);
16
+ fileDesc("CiBmbHl0ZWlkbDIvY29yZS9hcnRpZmFjdF9pZC5wcm90bxIOZmx5dGVpZGwyLmNvcmUibgoLQXJ0aWZhY3RLZXkSGAoHcHJvamVjdBgBIAEoCUIHukgEcgIYQBIXCgZkb21haW4YAiABKAlCB7pIBHICGEASFgoEbmFtZRgDIAEoCUIIukgFcgMY/wESFAoDb3JnGAQgASgJQge6SARyAhg/IlgKEUFydGlmYWN0VmVyc2lvbklkEigKA2tleRgBIAEoCzIbLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0S2V5EhkKB3ZlcnNpb24YAiABKAlCCLpIBXIDGP8BIlUKDEFydGlmYWN0Q2FyZBIVCgN1cmkYASABKAlCCLpIBXIDGIAIEhcKBmZvcm1hdBgCIAEoCUIHukgEcgIYEBIVCgR0eXBlGAMgASgJQge6SARyAhgQItUBCgxBcnRpZmFjdEluZm8SHQoLZGVzY3JpcHRpb24YASABKAlCCLpIBXIDGP8BEkUKDXVzZXJfbWV0YWRhdGEYAiADKAsyLi5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdEluZm8uVXNlck1ldGFkYXRhRW50cnkSKgoEY2FyZBgDIAEoCzIcLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0Q2FyZBozChFVc2VyTWV0YWRhdGFFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIp8BChNBcnRpZmFjdEJpbmRpbmdEYXRhEhcKDXBhcnRpdGlvbl9rZXkYBSABKAlIABIgChZiaW5kX3RvX3RpbWVfcGFydGl0aW9uGAYgASgISAASNQoOdGltZV90cmFuc2Zvcm0YByABKAsyHS5mbHl0ZWlkbDIuY29yZS5UaW1lVHJhbnNmb3JtQhAKDnBhcnRpdGlvbl9kYXRhSgQIARAFIkgKDVRpbWVUcmFuc2Zvcm0SEQoJdHJhbnNmb3JtGAEgASgJEiQKAm9wGAIgASgOMhguZmx5dGVpZGwyLmNvcmUuT3BlcmF0b3IiHwoQSW5wdXRCaW5kaW5nRGF0YRILCgN2YXIYASABKAkiEAoOUnVudGltZUJpbmRpbmcilwIKCkxhYmVsVmFsdWUSFgoMc3RhdGljX3ZhbHVlGAEgASgJSAASMAoKdGltZV92YWx1ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIABJAChF0cmlnZ2VyZWRfYmluZGluZxgDIAEoCzIjLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0QmluZGluZ0RhdGFIABI5Cg1pbnB1dF9iaW5kaW5nGAQgASgLMiAuZmx5dGVpZGwyLmNvcmUuSW5wdXRCaW5kaW5nRGF0YUgAEjkKD3J1bnRpbWVfYmluZGluZxgFIAEoCzIeLmZseXRlaWRsMi5jb3JlLlJ1bnRpbWVCaW5kaW5nSABCBwoFdmFsdWUijAEKClBhcnRpdGlvbnMSNAoFdmFsdWUYASADKAsyJS5mbHl0ZWlkbDIuY29yZS5QYXJ0aXRpb25zLlZhbHVlRW50cnkaSAoKVmFsdWVFbnRyeRILCgNrZXkYASABKAkSKQoFdmFsdWUYAiABKAsyGi5mbHl0ZWlkbDIuY29yZS5MYWJlbFZhbHVlOgI4ASKCAQoNVGltZVBhcnRpdGlvbhIpCgV2YWx1ZRgBIAEoCzIaLmZseXRlaWRsMi5jb3JlLkxhYmVsVmFsdWUSMAoLZ3JhbnVsYXJpdHkYAiABKA4yGy5mbHl0ZWlkbDIuY29yZS5HcmFudWxhcml0eRIUCgNrZXkYAyABKAlCB7pIBHICGEAitwEKCkFydGlmYWN0SUQSMQoMYXJ0aWZhY3Rfa2V5GAEgASgLMhsuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RLZXkSDwoHdmVyc2lvbhgCIAEoCRIuCgpwYXJ0aXRpb25zGAMgASgLMhouZmx5dGVpZGwyLmNvcmUuUGFydGl0aW9ucxI1Cg50aW1lX3BhcnRpdGlvbhgEIAEoCzIdLmZseXRlaWRsMi5jb3JlLlRpbWVQYXJ0aXRpb24iawoLQXJ0aWZhY3RUYWcSMQoMYXJ0aWZhY3Rfa2V5GAEgASgLMhsuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RLZXkSKQoFdmFsdWUYAiABKAsyGi5mbHl0ZWlkbDIuY29yZS5MYWJlbFZhbHVlIswBCg1BcnRpZmFjdFF1ZXJ5EjEKC2FydGlmYWN0X2lkGAEgASgLMhouZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJREgAEjMKDGFydGlmYWN0X3RhZxgCIAEoCzIbLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0VGFnSAASDQoDdXJpGAMgASgJSAASNgoHYmluZGluZxgEIAEoCzIjLmZseXRlaWRsMi5jb3JlLkFydGlmYWN0QmluZGluZ0RhdGFIAEIMCgppZGVudGlmaWVyKkwKC0dyYW51bGFyaXR5EgkKBVVOU0VUEAASCgoGTUlOVVRFEAESCAoESE9VUhACEgcKA0RBWRADEgkKBU1PTlRIEAQSCAoEV0VFSxAFKh8KCE9wZXJhdG9yEgkKBU1JTlVTEAASCAoEUExVUxABQrQBChJjb20uZmx5dGVpZGwyLmNvcmVCD0FydGlmYWN0SWRQcm90b0gCUAFaMmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9jb3JlogIDRkNYqgIORmx5dGVpZGwyLkNvcmXKAg5GbHl0ZWlkbDJcQ29yZeICGkZseXRlaWRsMlxDb3JlXEdQQk1ldGFkYXRh6gIPRmx5dGVpZGwyOjpDb3JlYgZwcm90bzM", [file_buf_validate_validate, file_google_protobuf_timestamp]);
17
17
 
18
18
  /**
19
19
  * @generated from message flyteidl2.core.ArtifactKey
20
20
  */
21
21
  export type ArtifactKey = Message<"flyteidl2.core.ArtifactKey"> & {
22
22
  /**
23
- * Project and domain and suffix needs to be unique across a given artifact store.
23
+ * Identifies one artifact within an artifact store: the (org, project,
24
+ * domain, name) tuple must be unique. Length bounds match
25
+ * artifact.ArtifactName; fields stay optional because an empty field means
26
+ * "inherit from context" in several uses (e.g.
27
+ * artifact.ArtifactSpec.parent_artifacts).
24
28
  *
25
29
  * @generated from field: string project = 1;
26
30
  */
@@ -322,6 +326,16 @@ export type TimePartition = Message<"flyteidl2.core.TimePartition"> & {
322
326
  * @generated from field: flyteidl2.core.Granularity granularity = 2;
323
327
  */
324
328
  granularity: Granularity;
329
+
330
+ /**
331
+ * Name of the time dimension, e.g. "date". When empty on an artifact
332
+ * version, the artifact service defaults it from the granularity: "hour"
333
+ * for HOUR, "date" otherwise, so artifacts agree on the name without
334
+ * coordination.
335
+ *
336
+ * @generated from field: string key = 3;
337
+ */
338
+ key: string;
325
339
  };
326
340
 
327
341
  /**
@@ -470,6 +484,11 @@ export enum Granularity {
470
484
  * @generated from enum value: MONTH = 4;
471
485
  */
472
486
  MONTH = 4,
487
+
488
+ /**
489
+ * @generated from enum value: WEEK = 5;
490
+ */
491
+ WEEK = 5,
473
492
  }
474
493
 
475
494
  /**
@@ -13,7 +13,7 @@ import type { Message } from "@bufbuild/protobuf";
13
13
  * Describes the file flyteidl2/settings/settings_definition.proto.
14
14
  */
15
15
  export const file_flyteidl2_settings_settings_definition: GenFile = /*@__PURE__*/
16
- fileDesc("CixmbHl0ZWlkbDIvc2V0dGluZ3Mvc2V0dGluZ3NfZGVmaW5pdGlvbi5wcm90bxISZmx5dGVpZGwyLnNldHRpbmdzIh4KDFN0cmluZ1ZhbHVlcxIOCgZ2YWx1ZXMYASADKAkieAoJU3RyaW5nTWFwEjsKB2VudHJpZXMYASADKAsyKi5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nTWFwLkVudHJpZXNFbnRyeRouCgxFbnRyaWVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJECgtTZXR0aW5nc0tleRIUCgNvcmcYASABKAlCB7pIBHICEAESDgoGZG9tYWluGAIgASgJEg8KB3Byb2plY3QYAyABKAkiiwEKDVN0cmluZ1NldHRpbmcSLwoFc3RhdGUYASABKA4yIC5mbHl0ZWlkbDIuc2V0dGluZ3MuU2V0dGluZ1N0YXRlEhQKDHN0cmluZ192YWx1ZRgCIAEoCRIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIocBCgxJbnQ2NFNldHRpbmcSLwoFc3RhdGUYASABKA4yIC5mbHl0ZWlkbDIuc2V0dGluZ3MuU2V0dGluZ1N0YXRlEhEKCWludF92YWx1ZRgCIAEoAxIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIocBCgtCb29sU2V0dGluZxIvCgVzdGF0ZRgBIAEoDjIgLmZseXRlaWRsMi5zZXR0aW5ncy5TZXR0aW5nU3RhdGUSEgoKYm9vbF92YWx1ZRgCIAEoCBIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIqoBChBTdHJpbmdNYXBTZXR0aW5nEi8KBXN0YXRlGAEgASgOMiAuZmx5dGVpZGwyLnNldHRpbmdzLlNldHRpbmdTdGF0ZRIwCgltYXBfdmFsdWUYAiABKAsyHS5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nTWFwEjMKC3Njb3BlX2xldmVsGAMgASgOMh4uZmx5dGVpZGwyLnNldHRpbmdzLlNjb3BlTGV2ZWwijwEKD1F1YW50aXR5U2V0dGluZxIvCgVzdGF0ZRgBIAEoDjIgLmZseXRlaWRsMi5zZXR0aW5ncy5TZXR0aW5nU3RhdGUSFgoOcXVhbnRpdHlfdmFsdWUYAiABKAkSMwoLc2NvcGVfbGV2ZWwYAyABKA4yHi5mbHl0ZWlkbDIuc2V0dGluZ3MuU2NvcGVMZXZlbCKeAwoLUnVuU2V0dGluZ3MSWAoNZGVmYXVsdF9xdWV1ZRgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQh6iVRtEZWZhdWx0IHF1ZXVlIGZvciB0YXNrIHJ1bnMSogEKFm1heF9hY3Rpb25fY29uY3VycmVuY3kYAiABKAsyIC5mbHl0ZWlkbDIuc2V0dGluZ3MuSW50NjRTZXR0aW5nQmCiVV1NYXhpbXVtIG51bWJlciBvZiBhY3Rpb25zIG9mIGEgcnVuIHRoYXQgbWF5IGV4ZWN1dGUgY29uY3VycmVudGx5LiAwIG9yIHVuc2V0IG1lYW5zIHVubGltaXRlZC4SjwEKDHJ1bl9iYXNlX2RpchgDIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQlaiVVNCYXNlIGRpcmVjdG9yeSBmb3IgcnVuIG1ldGFkYXRhIHN1Y2ggYXMgaW5wdXRzL291dHB1dHMgKGUuZy4gczM6Ly9teS1idWNrZXQvcHJlZml4KSJ7ChBTZWN1cml0eVNldHRpbmdzEmcKD3NlcnZpY2VfYWNjb3VudBgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQiuiVShLdWJlcm5ldGVzIHNlcnZpY2UgYWNjb3VudCBmb3IgdGFzayBwb2RzIp8BCg9TdG9yYWdlU2V0dGluZ3MSeAoNcmF3X2RhdGFfcGF0aBgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQj6iVTtCYXNlIHBhdGggZm9yIHJhdyBkYXRhIHN0b3JhZ2UgKGUuZy4gczM6Ly9teS1idWNrZXQvcHJlZml4KUoECAIQA1IMcnVuX2Jhc2VfZGlyIpcDChRUYXNrUmVzb3VyY2VEZWZhdWx0cxJdCgNjcHUYASABKAsyIy5mbHl0ZWlkbDIuc2V0dGluZ3MuUXVhbnRpdHlTZXR0aW5nQiuiVShDUFUgcmVzb3VyY2UgcXVhbnRpdHkgKGUuZy4gIjUwMG0iLCAiMiIpElUKA2dwdRgCIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCI6JVIEdQVSByZXNvdXJjZSBxdWFudGl0eSAoZS5nLiAiMSIpEmYKBm1lbW9yeRgDIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCMaJVLk1lbW9yeSByZXNvdXJjZSBxdWFudGl0eSAoZS5nLiAiMjU2TWkiLCAiNEdpIikSYQoHc3RvcmFnZRgEIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCK6JVKEVwaGVtZXJhbCBzdG9yYWdlIHF1YW50aXR5IChlLmcuICIxMEdpIiki1wIKFFRhc2tSZXNvdXJjZVNldHRpbmdzEmgKA21pbhgBIAEoCzIoLmZseXRlaWRsMi5zZXR0aW5ncy5UYXNrUmVzb3VyY2VEZWZhdWx0c0IxolUuTWluaW11bSByZXNvdXJjZSByZXF1ZXN0cyBhcHBsaWVkIHRvIHRhc2sgcG9kcxJmCgNtYXgYAiABKAsyKC5mbHl0ZWlkbDIuc2V0dGluZ3MuVGFza1Jlc291cmNlRGVmYXVsdHNCL6JVLE1heGltdW0gcmVzb3VyY2UgbGltaXRzIGFwcGxpZWQgdG8gdGFzayBwb2RzEm0KFW1pcnJvcl9saW1pdHNfcmVxdWVzdBgDIAEoCzIfLmZseXRlaWRsMi5zZXR0aW5ncy5Cb29sU2V0dGluZ0ItolUqV2hlbiB0cnVlLCByZXNvdXJjZSBsaW1pdHMgbWlycm9yIHJlcXVlc3RzIosBCgtBcHBTZXR0aW5ncxJ8ChJkaXNhbGxvd19hbm9ueW1vdXMYASABKAsyHy5mbHl0ZWlkbDIuc2V0dGluZ3MuQm9vbFNldHRpbmdCP6JVPERpc2FsbG93IGFub255bW91cyAodW5hdXRoZW50aWNhdGVkKSBhY2Nlc3MgdG8gYXBwcyBvcmctd2lkZSL2BgoIU2V0dGluZ3MSLAoDcnVuGAEgASgLMh8uZmx5dGVpZGwyLnNldHRpbmdzLlJ1blNldHRpbmdzEjYKCHNlY3VyaXR5GAIgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlNlY3VyaXR5U2V0dGluZ3MSNAoHc3RvcmFnZRgDIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5TdG9yYWdlU2V0dGluZ3MSPwoNdGFza19yZXNvdXJjZRgEIAEoCzIoLmZseXRlaWRsMi5zZXR0aW5ncy5UYXNrUmVzb3VyY2VTZXR0aW5ncxKIAQoGbGFiZWxzGAUgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCUqJVT0t1YmVybmV0ZXMgbGFiZWxzIGFwcGxpZWQgdG8gdGFzayBwb2RzLiBDaGlsZCBvdmVycmlkZXMgcGFyZW50IG9uIGtleSBjb25mbGljdC4SkgEKC2Fubm90YXRpb25zGAYgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCV6JVVEt1YmVybmV0ZXMgYW5ub3RhdGlvbnMgYXBwbGllZCB0byB0YXNrIHBvZHMuIENoaWxkIG92ZXJyaWRlcyBwYXJlbnQgb24ga2V5IGNvbmZsaWN0LhKeAQoVZW52aXJvbm1lbnRfdmFyaWFibGVzGAcgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCWaJVVkVudmlyb25tZW50IHZhcmlhYmxlcyBpbmplY3RlZCBpbnRvIHRhc2sgcG9kcy4gQ2hpbGQgb3ZlcnJpZGVzIHBhcmVudCBvbiBrZXkgY29uZmxpY3QuEkcKA2FwcBgIIAEoCzIfLmZseXRlaWRsMi5zZXR0aW5ncy5BcHBTZXR0aW5nc0IZolUWVW5pb24gQXBwcyBhdXRoIHBvbGljeRKCAQoRcG9kX3RlbXBsYXRlX25hbWUYCSABKAsyIS5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nU2V0dGluZ0JEolVBTmFtZSBvZiB0aGUgS3ViZXJuZXRlcyBQb2RUZW1wbGF0ZSB1c2VkIGFzIHRoZSBiYXNlIGZvciB0YXNrIHBvZHMqWwoMU2V0dGluZ1N0YXRlEhkKFVNFVFRJTkdfU1RBVEVfSU5IRVJJVBAAEhcKE1NFVFRJTkdfU1RBVEVfVU5TRVQQARIXChNTRVRUSU5HX1NUQVRFX1ZBTFVFEAIqUgoKU2NvcGVMZXZlbBITCg9TQ09QRV9MRVZFTF9PUkcQABIWChJTQ09QRV9MRVZFTF9ET01BSU4QARIXChNTQ09QRV9MRVZFTF9QUk9KRUNUEAI6MgoEZGVzYxIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY1AogASgJUgRkZXNjQtQBChZjb20uZmx5dGVpZGwyLnNldHRpbmdzQhdTZXR0aW5nc0RlZmluaXRpb25Qcm90b0gCUAFaNmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9zZXR0aW5nc6ICA0ZTWKoCEkZseXRlaWRsMi5TZXR0aW5nc8oCEkZseXRlaWRsMlxTZXR0aW5nc+ICHkZseXRlaWRsMlxTZXR0aW5nc1xHUEJNZXRhZGF0YeoCE0ZseXRlaWRsMjo6U2V0dGluZ3NiBnByb3RvMw", [file_buf_validate_validate, file_google_protobuf_descriptor]);
16
+ fileDesc("CixmbHl0ZWlkbDIvc2V0dGluZ3Mvc2V0dGluZ3NfZGVmaW5pdGlvbi5wcm90bxISZmx5dGVpZGwyLnNldHRpbmdzIh4KDFN0cmluZ1ZhbHVlcxIOCgZ2YWx1ZXMYASADKAkieAoJU3RyaW5nTWFwEjsKB2VudHJpZXMYASADKAsyKi5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nTWFwLkVudHJpZXNFbnRyeRouCgxFbnRyaWVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJECgtTZXR0aW5nc0tleRIUCgNvcmcYASABKAlCB7pIBHICEAESDgoGZG9tYWluGAIgASgJEg8KB3Byb2plY3QYAyABKAkiiwEKDVN0cmluZ1NldHRpbmcSLwoFc3RhdGUYASABKA4yIC5mbHl0ZWlkbDIuc2V0dGluZ3MuU2V0dGluZ1N0YXRlEhQKDHN0cmluZ192YWx1ZRgCIAEoCRIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIocBCgxJbnQ2NFNldHRpbmcSLwoFc3RhdGUYASABKA4yIC5mbHl0ZWlkbDIuc2V0dGluZ3MuU2V0dGluZ1N0YXRlEhEKCWludF92YWx1ZRgCIAEoAxIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIocBCgtCb29sU2V0dGluZxIvCgVzdGF0ZRgBIAEoDjIgLmZseXRlaWRsMi5zZXR0aW5ncy5TZXR0aW5nU3RhdGUSEgoKYm9vbF92YWx1ZRgCIAEoCBIzCgtzY29wZV9sZXZlbBgDIAEoDjIeLmZseXRlaWRsMi5zZXR0aW5ncy5TY29wZUxldmVsIqoBChBTdHJpbmdNYXBTZXR0aW5nEi8KBXN0YXRlGAEgASgOMiAuZmx5dGVpZGwyLnNldHRpbmdzLlNldHRpbmdTdGF0ZRIwCgltYXBfdmFsdWUYAiABKAsyHS5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nTWFwEjMKC3Njb3BlX2xldmVsGAMgASgOMh4uZmx5dGVpZGwyLnNldHRpbmdzLlNjb3BlTGV2ZWwijwEKD1F1YW50aXR5U2V0dGluZxIvCgVzdGF0ZRgBIAEoDjIgLmZseXRlaWRsMi5zZXR0aW5ncy5TZXR0aW5nU3RhdGUSFgoOcXVhbnRpdHlfdmFsdWUYAiABKAkSMwoLc2NvcGVfbGV2ZWwYAyABKA4yHi5mbHl0ZWlkbDIuc2V0dGluZ3MuU2NvcGVMZXZlbCKeAwoLUnVuU2V0dGluZ3MSWAoNZGVmYXVsdF9xdWV1ZRgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQh6iVRtEZWZhdWx0IHF1ZXVlIGZvciB0YXNrIHJ1bnMSogEKFm1heF9hY3Rpb25fY29uY3VycmVuY3kYAiABKAsyIC5mbHl0ZWlkbDIuc2V0dGluZ3MuSW50NjRTZXR0aW5nQmCiVV1NYXhpbXVtIG51bWJlciBvZiBhY3Rpb25zIG9mIGEgcnVuIHRoYXQgbWF5IGV4ZWN1dGUgY29uY3VycmVudGx5LiAwIG9yIHVuc2V0IG1lYW5zIHVubGltaXRlZC4SjwEKDHJ1bl9iYXNlX2RpchgDIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQlaiVVNCYXNlIGRpcmVjdG9yeSBmb3IgcnVuIG1ldGFkYXRhIHN1Y2ggYXMgaW5wdXRzL291dHB1dHMgKGUuZy4gczM6Ly9teS1idWNrZXQvcHJlZml4KSJ7ChBTZWN1cml0eVNldHRpbmdzEmcKD3NlcnZpY2VfYWNjb3VudBgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQiuiVShLdWJlcm5ldGVzIHNlcnZpY2UgYWNjb3VudCBmb3IgdGFzayBwb2RzIp8BCg9TdG9yYWdlU2V0dGluZ3MSeAoNcmF3X2RhdGFfcGF0aBgBIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQj6iVTtCYXNlIHBhdGggZm9yIHJhdyBkYXRhIHN0b3JhZ2UgKGUuZy4gczM6Ly9teS1idWNrZXQvcHJlZml4KUoECAIQA1IMcnVuX2Jhc2VfZGlyIpcDChRUYXNrUmVzb3VyY2VEZWZhdWx0cxJdCgNjcHUYASABKAsyIy5mbHl0ZWlkbDIuc2V0dGluZ3MuUXVhbnRpdHlTZXR0aW5nQiuiVShDUFUgcmVzb3VyY2UgcXVhbnRpdHkgKGUuZy4gIjUwMG0iLCAiMiIpElUKA2dwdRgCIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCI6JVIEdQVSByZXNvdXJjZSBxdWFudGl0eSAoZS5nLiAiMSIpEmYKBm1lbW9yeRgDIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCMaJVLk1lbW9yeSByZXNvdXJjZSBxdWFudGl0eSAoZS5nLiAiMjU2TWkiLCAiNEdpIikSYQoHc3RvcmFnZRgEIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5RdWFudGl0eVNldHRpbmdCK6JVKEVwaGVtZXJhbCBzdG9yYWdlIHF1YW50aXR5IChlLmcuICIxMEdpIiki1wIKFFRhc2tSZXNvdXJjZVNldHRpbmdzEmgKA21pbhgBIAEoCzIoLmZseXRlaWRsMi5zZXR0aW5ncy5UYXNrUmVzb3VyY2VEZWZhdWx0c0IxolUuTWluaW11bSByZXNvdXJjZSByZXF1ZXN0cyBhcHBsaWVkIHRvIHRhc2sgcG9kcxJmCgNtYXgYAiABKAsyKC5mbHl0ZWlkbDIuc2V0dGluZ3MuVGFza1Jlc291cmNlRGVmYXVsdHNCL6JVLE1heGltdW0gcmVzb3VyY2UgbGltaXRzIGFwcGxpZWQgdG8gdGFzayBwb2RzEm0KFW1pcnJvcl9saW1pdHNfcmVxdWVzdBgDIAEoCzIfLmZseXRlaWRsMi5zZXR0aW5ncy5Cb29sU2V0dGluZ0ItolUqV2hlbiB0cnVlLCByZXNvdXJjZSBsaW1pdHMgbWlycm9yIHJlcXVlc3RzIpUCCgtBcHBTZXR0aW5ncxJ8ChJkaXNhbGxvd19hbm9ueW1vdXMYASABKAsyHy5mbHl0ZWlkbDIuc2V0dGluZ3MuQm9vbFNldHRpbmdCP6JVPERpc2FsbG93IGFub255bW91cyAodW5hdXRoZW50aWNhdGVkKSBhY2Nlc3MgdG8gYXBwcyBvcmctd2lkZRKHAQoQYXBwX2Ruc19zdHJhdGVneRgCIAEoCzIhLmZseXRlaWRsMi5zZXR0aW5ncy5TdHJpbmdTZXR0aW5nQkqiVUdBcHAgcHVibGljLVVSTCBETlMgc3RyYXRlZ3k6ICdzaGFyZWQnIChkZWZhdWx0KSBvciAnZGF0YXBsYW5lX3NwZWNpZmljJyL2BgoIU2V0dGluZ3MSLAoDcnVuGAEgASgLMh8uZmx5dGVpZGwyLnNldHRpbmdzLlJ1blNldHRpbmdzEjYKCHNlY3VyaXR5GAIgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlNlY3VyaXR5U2V0dGluZ3MSNAoHc3RvcmFnZRgDIAEoCzIjLmZseXRlaWRsMi5zZXR0aW5ncy5TdG9yYWdlU2V0dGluZ3MSPwoNdGFza19yZXNvdXJjZRgEIAEoCzIoLmZseXRlaWRsMi5zZXR0aW5ncy5UYXNrUmVzb3VyY2VTZXR0aW5ncxKIAQoGbGFiZWxzGAUgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCUqJVT0t1YmVybmV0ZXMgbGFiZWxzIGFwcGxpZWQgdG8gdGFzayBwb2RzLiBDaGlsZCBvdmVycmlkZXMgcGFyZW50IG9uIGtleSBjb25mbGljdC4SkgEKC2Fubm90YXRpb25zGAYgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCV6JVVEt1YmVybmV0ZXMgYW5ub3RhdGlvbnMgYXBwbGllZCB0byB0YXNrIHBvZHMuIENoaWxkIG92ZXJyaWRlcyBwYXJlbnQgb24ga2V5IGNvbmZsaWN0LhKeAQoVZW52aXJvbm1lbnRfdmFyaWFibGVzGAcgASgLMiQuZmx5dGVpZGwyLnNldHRpbmdzLlN0cmluZ01hcFNldHRpbmdCWaJVVkVudmlyb25tZW50IHZhcmlhYmxlcyBpbmplY3RlZCBpbnRvIHRhc2sgcG9kcy4gQ2hpbGQgb3ZlcnJpZGVzIHBhcmVudCBvbiBrZXkgY29uZmxpY3QuEkcKA2FwcBgIIAEoCzIfLmZseXRlaWRsMi5zZXR0aW5ncy5BcHBTZXR0aW5nc0IZolUWVW5pb24gQXBwcyBhdXRoIHBvbGljeRKCAQoRcG9kX3RlbXBsYXRlX25hbWUYCSABKAsyIS5mbHl0ZWlkbDIuc2V0dGluZ3MuU3RyaW5nU2V0dGluZ0JEolVBTmFtZSBvZiB0aGUgS3ViZXJuZXRlcyBQb2RUZW1wbGF0ZSB1c2VkIGFzIHRoZSBiYXNlIGZvciB0YXNrIHBvZHMqWwoMU2V0dGluZ1N0YXRlEhkKFVNFVFRJTkdfU1RBVEVfSU5IRVJJVBAAEhcKE1NFVFRJTkdfU1RBVEVfVU5TRVQQARIXChNTRVRUSU5HX1NUQVRFX1ZBTFVFEAIqUgoKU2NvcGVMZXZlbBITCg9TQ09QRV9MRVZFTF9PUkcQABIWChJTQ09QRV9MRVZFTF9ET01BSU4QARIXChNTQ09QRV9MRVZFTF9QUk9KRUNUEAI6MgoEZGVzYxIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY1AogASgJUgRkZXNjQtQBChZjb20uZmx5dGVpZGwyLnNldHRpbmdzQhdTZXR0aW5nc0RlZmluaXRpb25Qcm90b0gCUAFaNmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi9zZXR0aW5nc6ICA0ZTWKoCEkZseXRlaWRsMi5TZXR0aW5nc8oCEkZseXRlaWRsMlxTZXR0aW5nc+ICHkZseXRlaWRsMlxTZXR0aW5nc1xHUEJNZXRhZGF0YeoCE0ZseXRlaWRsMjo6U2V0dGluZ3NiBnByb3RvMw", [file_buf_validate_validate, file_google_protobuf_descriptor]);
17
17
 
18
18
  /**
19
19
  * StringValues is a wrapper for a list of strings.
@@ -396,6 +396,19 @@ export type AppSettings = Message<"flyteidl2.settings.AppSettings"> & {
396
396
  * @generated from field: flyteidl2.settings.BoolSetting disallow_anonymous = 1;
397
397
  */
398
398
  disallowAnonymous?: BoolSetting;
399
+
400
+ /**
401
+ * Selects how an app's public URL is composed. Tokens:
402
+ * "shared" (default, or any unrecognized/empty value) — one tenant-wide DNS
403
+ * name for the app regardless of which data plane serves it (today's behavior).
404
+ * "dataplane_specific" — a per-data-plane DNS name, so the same app can run on
405
+ * more than one data plane at distinct URLs.
406
+ * "edge_proxy" is reserved for a future single-balanced-DNS strategy and is not
407
+ * yet a valid value. Unset delegates to the parent scope, then defaults to shared.
408
+ *
409
+ * @generated from field: flyteidl2.settings.StringSetting app_dns_strategy = 2;
410
+ */
411
+ appDnsStrategy?: StringSetting;
399
412
  };
400
413
 
401
414
  /**
@@ -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 { ArtifactInfo, ArtifactVersionId } from "../core/artifact_id_pb.ts";
8
+ import type { ArtifactInfo, ArtifactVersionId, Partitions, TimePartition } from "../core/artifact_id_pb.ts";
9
9
  import { file_flyteidl2_core_artifact_id } from "../core/artifact_id_pb.ts";
10
10
  import type { Parameter } from "../core/interface_pb.ts";
11
11
  import { file_flyteidl2_core_interface } from "../core/interface_pb.ts";
@@ -21,7 +21,7 @@ import type { Message } from "@bufbuild/protobuf";
21
21
  * Describes the file flyteidl2/task/common.proto.
22
22
  */
23
23
  export const file_flyteidl2_task_common: GenFile = /*@__PURE__*/
24
- fileDesc("ChtmbHl0ZWlkbDIvdGFzay9jb21tb24ucHJvdG8SDmZseXRlaWRsMi50YXNrIkwKDk5hbWVkUGFyYW1ldGVyEgwKBG5hbWUYASABKAkSLAoJcGFyYW1ldGVyGAIgASgLMhkuZmx5dGVpZGwyLmNvcmUuUGFyYW1ldGVyIooBCglGaXhlZFJhdGUSFgoFdmFsdWUYASABKA1CB7pIBCoCIAASNQoEdW5pdBgCIAEoDjIdLmZseXRlaWRsMi50YXNrLkZpeGVkUmF0ZVVuaXRCCLpIBYIBAiAAEi4KCnN0YXJ0X3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIjUKBENyb24SGwoKZXhwcmVzc2lvbhgBIAEoCUIHukgEcgIQARIQCgh0aW1lem9uZRgCIAEoCSKvAQoIU2NoZWR1bGUSKQoEcmF0ZRgBIAEoCzIZLmZseXRlaWRsMi50YXNrLkZpeGVkUmF0ZUgAEh0KD2Nyb25fZXhwcmVzc2lvbhgCIAEoCUICGAFIABIkCgRjcm9uGAQgASgLMhQuZmx5dGVpZGwyLnRhc2suQ3JvbkgAEh4KFmtpY2tvZmZfdGltZV9pbnB1dF9hcmcYAyABKAlCEwoKZXhwcmVzc2lvbhIFukgCCAEiVQoPQXJ0aWZhY3RUcmlnZ2VyEh4KDWFydGlmYWN0X25hbWUYASABKAlCB7pIBHICEAESDwoHdmVyc2lvbhgCIAEoCRIRCglpbnB1dF9hcmcYAyABKAkiywEKFVRyaWdnZXJBdXRvbWF0aW9uU3BlYxJBCgR0eXBlGAEgASgOMikuZmx5dGVpZGwyLnRhc2suVHJpZ2dlckF1dG9tYXRpb25TcGVjVHlwZUIIukgFggECIAASLAoIc2NoZWR1bGUYAiABKAsyGC5mbHl0ZWlkbDIudGFzay5TY2hlZHVsZUgAEjMKCGFydGlmYWN0GAMgASgLMh8uZmx5dGVpZGwyLnRhc2suQXJ0aWZhY3RUcmlnZ2VySABCDAoKYXV0b21hdGlvbiJECgxOYW1lZExpdGVyYWwSDAoEbmFtZRgBIAEoCRImCgV2YWx1ZRgCIAEoCzIXLmZseXRlaWRsMi5jb3JlLkxpdGVyYWwiOgoQT3V0cHV0UmVmZXJlbmNlcxISCgpvdXRwdXRfdXJpGAEgASgJEhIKCnJlcG9ydF91cmkYAiABKAkiZwoGSW5wdXRzEi4KCGxpdGVyYWxzGAEgAygLMhwuZmx5dGVpZGwyLnRhc2suTmFtZWRMaXRlcmFsEi0KB2NvbnRleHQYAiADKAsyHC5mbHl0ZWlkbDIuY29yZS5LZXlWYWx1ZVBhaXIi5gEKEFByb2R1Y2VkQXJ0aWZhY3QSFwoGb3V0cHV0GAEgASgJQge6SARyAhABEhUKBG5hbWUYAiABKAlCB7pIBHICEAESDwoHdmVyc2lvbhgDIAEoCRIqCgRpbmZvGAQgASgLMhwuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJbmZvEikKBHR5cGUYBSABKAsyGy5mbHl0ZWlkbDIuY29yZS5MaXRlcmFsVHlwZRI6Cg9wYXJlbnRfYXJ0aWZhY3QYBiABKAsyIS5mbHl0ZWlkbDIuY29yZS5BcnRpZmFjdFZlcnNpb25JZCJ3CgdPdXRwdXRzEi4KCGxpdGVyYWxzGAEgAygLMhwuZmx5dGVpZGwyLnRhc2suTmFtZWRMaXRlcmFsEjwKEnByb2R1Y2VkX2FydGlmYWN0cxgDIAMoCzIgLmZseXRlaWRsMi50YXNrLlByb2R1Y2VkQXJ0aWZhY3QqfwoNRml4ZWRSYXRlVW5pdBIfChtGSVhFRF9SQVRFX1VOSVRfVU5TUEVDSUZJRUQQABIaChZGSVhFRF9SQVRFX1VOSVRfTUlOVVRFEAESGAoURklYRURfUkFURV9VTklUX0hPVVIQAhIXChNGSVhFRF9SQVRFX1VOSVRfREFZEAMqZgoZVHJpZ2dlckF1dG9tYXRpb25TcGVjVHlwZRIUChBUWVBFX1VOU1BFQ0lGSUVEEAASDQoJVFlQRV9OT05FEAESEQoNVFlQRV9TQ0hFRFVMRRACEhEKDVRZUEVfQVJUSUZBQ1QQA0KwAQoSY29tLmZseXRlaWRsMi50YXNrQgtDb21tb25Qcm90b0gCUAFaMmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi90YXNrogIDRlRYqgIORmx5dGVpZGwyLlRhc2vKAg5GbHl0ZWlkbDJcVGFza+ICGkZseXRlaWRsMlxUYXNrXEdQQk1ldGFkYXRh6gIPRmx5dGVpZGwyOjpUYXNrYgZwcm90bzM", [file_buf_validate_validate, file_flyteidl2_core_artifact_id, file_flyteidl2_core_interface, file_flyteidl2_core_literals, file_flyteidl2_core_types, file_google_protobuf_timestamp]);
24
+ fileDesc("ChtmbHl0ZWlkbDIvdGFzay9jb21tb24ucHJvdG8SDmZseXRlaWRsMi50YXNrIkwKDk5hbWVkUGFyYW1ldGVyEgwKBG5hbWUYASABKAkSLAoJcGFyYW1ldGVyGAIgASgLMhkuZmx5dGVpZGwyLmNvcmUuUGFyYW1ldGVyIooBCglGaXhlZFJhdGUSFgoFdmFsdWUYASABKA1CB7pIBCoCIAASNQoEdW5pdBgCIAEoDjIdLmZseXRlaWRsMi50YXNrLkZpeGVkUmF0ZVVuaXRCCLpIBYIBAiAAEi4KCnN0YXJ0X3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIjUKBENyb24SGwoKZXhwcmVzc2lvbhgBIAEoCUIHukgEcgIQARIQCgh0aW1lem9uZRgCIAEoCSKvAQoIU2NoZWR1bGUSKQoEcmF0ZRgBIAEoCzIZLmZseXRlaWRsMi50YXNrLkZpeGVkUmF0ZUgAEh0KD2Nyb25fZXhwcmVzc2lvbhgCIAEoCUICGAFIABIkCgRjcm9uGAQgASgLMhQuZmx5dGVpZGwyLnRhc2suQ3JvbkgAEh4KFmtpY2tvZmZfdGltZV9pbnB1dF9hcmcYAyABKAlCEwoKZXhwcmVzc2lvbhIFukgCCAEi3wIKD0FydGlmYWN0VHJpZ2dlchIeCg1hcnRpZmFjdF9uYW1lGAEgASgJQge6SARyAhABEg8KB3ZlcnNpb24YAiABKAkSEQoJaW5wdXRfYXJnGAMgASgJEkMKCnBhcnRpdGlvbnMYBCADKAsyLy5mbHl0ZWlkbDIudGFzay5BcnRpZmFjdFRyaWdnZXIuUGFydGl0aW9uc0VudHJ5ElUKFHBhcnRpdGlvbl9pbnB1dF9hcmdzGAUgAygLMjcuZmx5dGVpZGwyLnRhc2suQXJ0aWZhY3RUcmlnZ2VyLlBhcnRpdGlvbklucHV0QXJnc0VudHJ5GjEKD1BhcnRpdGlvbnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGjkKF1BhcnRpdGlvbklucHV0QXJnc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiywEKFVRyaWdnZXJBdXRvbWF0aW9uU3BlYxJBCgR0eXBlGAEgASgOMikuZmx5dGVpZGwyLnRhc2suVHJpZ2dlckF1dG9tYXRpb25TcGVjVHlwZUIIukgFggECIAASLAoIc2NoZWR1bGUYAiABKAsyGC5mbHl0ZWlkbDIudGFzay5TY2hlZHVsZUgAEjMKCGFydGlmYWN0GAMgASgLMh8uZmx5dGVpZGwyLnRhc2suQXJ0aWZhY3RUcmlnZ2VySABCDAoKYXV0b21hdGlvbiJECgxOYW1lZExpdGVyYWwSDAoEbmFtZRgBIAEoCRImCgV2YWx1ZRgCIAEoCzIXLmZseXRlaWRsMi5jb3JlLkxpdGVyYWwiOgoQT3V0cHV0UmVmZXJlbmNlcxISCgpvdXRwdXRfdXJpGAEgASgJEhIKCnJlcG9ydF91cmkYAiABKAkiZwoGSW5wdXRzEi4KCGxpdGVyYWxzGAEgAygLMhwuZmx5dGVpZGwyLnRhc2suTmFtZWRMaXRlcmFsEi0KB2NvbnRleHQYAiADKAsyHC5mbHl0ZWlkbDIuY29yZS5LZXlWYWx1ZVBhaXIi2AIKEFByb2R1Y2VkQXJ0aWZhY3QSFwoGb3V0cHV0GAEgASgJQge6SARyAhABEhUKBG5hbWUYAiABKAlCB7pIBHICEAESDwoHdmVyc2lvbhgDIAEoCRIqCgRpbmZvGAQgASgLMhwuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RJbmZvEikKBHR5cGUYBSABKAsyGy5mbHl0ZWlkbDIuY29yZS5MaXRlcmFsVHlwZRJFChBwYXJlbnRfYXJ0aWZhY3RzGAYgAygLMiEuZmx5dGVpZGwyLmNvcmUuQXJ0aWZhY3RWZXJzaW9uSWRCCLpIBZIBAhAgEi4KCnBhcnRpdGlvbnMYByABKAsyGi5mbHl0ZWlkbDIuY29yZS5QYXJ0aXRpb25zEjUKDnRpbWVfcGFydGl0aW9uGAggASgLMh0uZmx5dGVpZGwyLmNvcmUuVGltZVBhcnRpdGlvbiJ3CgdPdXRwdXRzEi4KCGxpdGVyYWxzGAEgAygLMhwuZmx5dGVpZGwyLnRhc2suTmFtZWRMaXRlcmFsEjwKEnByb2R1Y2VkX2FydGlmYWN0cxgDIAMoCzIgLmZseXRlaWRsMi50YXNrLlByb2R1Y2VkQXJ0aWZhY3QqfwoNRml4ZWRSYXRlVW5pdBIfChtGSVhFRF9SQVRFX1VOSVRfVU5TUEVDSUZJRUQQABIaChZGSVhFRF9SQVRFX1VOSVRfTUlOVVRFEAESGAoURklYRURfUkFURV9VTklUX0hPVVIQAhIXChNGSVhFRF9SQVRFX1VOSVRfREFZEAMqZgoZVHJpZ2dlckF1dG9tYXRpb25TcGVjVHlwZRIUChBUWVBFX1VOU1BFQ0lGSUVEEAASDQoJVFlQRV9OT05FEAESEQoNVFlQRV9TQ0hFRFVMRRACEhEKDVRZUEVfQVJUSUZBQ1QQA0KwAQoSY29tLmZseXRlaWRsMi50YXNrQgtDb21tb25Qcm90b0gCUAFaMmdpdGh1Yi5jb20vZmx5dGVvcmcvZmx5dGUvdjIvZ2VuL2dvL2ZseXRlaWRsMi90YXNrogIDRlRYqgIORmx5dGVpZGwyLlRhc2vKAg5GbHl0ZWlkbDJcVGFza+ICGkZseXRlaWRsMlxUYXNrXEdQQk1ldGFkYXRh6gIPRmx5dGVpZGwyOjpUYXNrYgZwcm90bzM", [file_buf_validate_validate, file_flyteidl2_core_artifact_id, file_flyteidl2_core_interface, file_flyteidl2_core_literals, file_flyteidl2_core_types, file_google_protobuf_timestamp]);
25
25
 
26
26
  /**
27
27
  * @generated from message flyteidl2.task.NamedParameter
@@ -179,6 +179,23 @@ export type ArtifactTrigger = Message<"flyteidl2.task.ArtifactTrigger"> & {
179
179
  * @generated from field: string input_arg = 3;
180
180
  */
181
181
  inputArg: string;
182
+
183
+ /**
184
+ * Optional: fire only for versions whose string partitions carry every one of these
185
+ * key/value pairs, e.g. {"region": "us"}. Empty means every partition fires.
186
+ *
187
+ * @generated from field: map<string, string> partitions = 4;
188
+ */
189
+ partitions: { [key: string]: string };
190
+
191
+ /**
192
+ * Task input name -> partition key. When the trigger fires, each named input receives the
193
+ * triggering version's value of that partition: a datetime for the time partition, a string
194
+ * for a string partition. A version flagged with a partition schema mismatch never fires.
195
+ *
196
+ * @generated from field: map<string, string> partition_input_args = 5;
197
+ */
198
+ partitionInputArgs: { [key: string]: string };
182
199
  };
183
200
 
184
201
  /**
@@ -359,17 +376,36 @@ export type ProducedArtifact = Message<"flyteidl2.task.ProducedArtifact"> & {
359
376
  type?: LiteralType;
360
377
 
361
378
  /**
362
- * Optional artifact version the produced version was derived from, copied
363
- * verbatim into ArtifactSpec.parent_artifact. Set by the producing task when
364
- * it derives a new version from one it consumed, so the resulting lineage
365
- * branches instead of reading as a linear chain. Empty key fields inherit
366
- * the produced artifact's own scope and name, so a bare {version: "v1"}
367
- * declares the previous version of this same artifact as parent; a set name
368
- * records cross-artifact derivation.
379
+ * Optional artifact versions the produced version was derived from, copied
380
+ * verbatim into ArtifactSpec.parent_artifacts. Set by the producing task
381
+ * when it derives a new version from versions it consumed; one entry is
382
+ * plain derivation, several record a merge, so the resulting lineage forms
383
+ * a DAG instead of reading as a linear chain. Order is preserved: the first
384
+ * entry is the primary parent. Empty key fields inherit the produced
385
+ * artifact's own scope and name, so a bare {version: "v1"} declares the
386
+ * previous version of this same artifact as a parent; a set name records
387
+ * cross-artifact derivation. Only the name may differ: non-empty scope
388
+ * fields (org/project/domain) must match the produced artifact's own scope.
389
+ *
390
+ * @generated from field: repeated flyteidl2.core.ArtifactVersionId parent_artifacts = 6;
391
+ */
392
+ parentArtifacts: ArtifactVersionId[];
393
+
394
+ /**
395
+ * String partitions of the produced version, copied verbatim into
396
+ * ArtifactSpec.partitions.
397
+ *
398
+ * @generated from field: flyteidl2.core.Partitions partitions = 7;
399
+ */
400
+ partitions?: Partitions;
401
+
402
+ /**
403
+ * Time partition of the produced version, copied verbatim into
404
+ * ArtifactSpec.time_partition.
369
405
  *
370
- * @generated from field: flyteidl2.core.ArtifactVersionId parent_artifact = 6;
406
+ * @generated from field: flyteidl2.core.TimePartition time_partition = 8;
371
407
  */
372
- parentArtifact?: ArtifactVersionId;
408
+ timePartition?: TimePartition;
373
409
  };
374
410
 
375
411
  /**
@@ -15,6 +15,8 @@ import type { KeyValuePair } from "../core/literals_pb.ts";
15
15
  import { file_flyteidl2_core_literals } from "../core/literals_pb.ts";
16
16
  import type { SecurityContext } from "../core/security_pb.ts";
17
17
  import { file_flyteidl2_core_security } from "../core/security_pb.ts";
18
+ import type { Resources_ResourceEntry } from "../core/tasks_pb.ts";
19
+ import { file_flyteidl2_core_tasks } from "../core/tasks_pb.ts";
18
20
  import type { DeliveryConfigTemplate } from "../notification/definition_pb.ts";
19
21
  import { file_flyteidl2_notification_definition } from "../notification/definition_pb.ts";
20
22
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
@@ -25,7 +27,7 @@ import type { Message } from "@bufbuild/protobuf";
25
27
  * Describes the file flyteidl2/task/run.proto.
26
28
  */
27
29
  export const file_flyteidl2_task_run: GenFile = /*@__PURE__*/
28
- fileDesc("ChhmbHl0ZWlkbDIvdGFzay9ydW4ucHJvdG8SDmZseXRlaWRsMi50YXNrImsKBkxhYmVscxIyCgZ2YWx1ZXMYASADKAsyIi5mbHl0ZWlkbDIudGFzay5MYWJlbHMuVmFsdWVzRW50cnkaLQoLVmFsdWVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ1CgtBbm5vdGF0aW9ucxI3CgZ2YWx1ZXMYASADKAsyJy5mbHl0ZWlkbDIudGFzay5Bbm5vdGF0aW9ucy5WYWx1ZXNFbnRyeRotCgtWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIjQKBEVudnMSLAoGdmFsdWVzGAEgAygLMhwuZmx5dGVpZGwyLmNvcmUuS2V5VmFsdWVQYWlyIikKDlJhd0RhdGFTdG9yYWdlEhcKD3Jhd19kYXRhX3ByZWZpeBgBIAEoCSJkCgtDYWNoZUNvbmZpZxIXCg9vdmVyd3JpdGVfY2FjaGUYASABKAgSPAoSY2FjaGVfbG9va3VwX3Njb3BlGAIgASgOMiAuZmx5dGVpZGwyLnRhc2suQ2FjaGVMb29rdXBTY29wZSI0CgdSZWNvdmVyEikKE2ZvcmNlX3JlcnVuX2FjdGlvbnMYASADKAlCDLpICZIBBiIEcgIQASLbBgoHUnVuU3BlYxImCgZsYWJlbHMYASABKAsyFi5mbHl0ZWlkbDIudGFzay5MYWJlbHMSMAoLYW5ub3RhdGlvbnMYAiABKAsyGy5mbHl0ZWlkbDIudGFzay5Bbm5vdGF0aW9ucxIiCgRlbnZzGAMgASgLMhQuZmx5dGVpZGwyLnRhc2suRW52cxIxCg1pbnRlcnJ1cHRpYmxlGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZRIbCg9vdmVyd3JpdGVfY2FjaGUYBSABKAhCAhgBEg0KBXF1ZXVlGAYgASgJEjgKEHJhd19kYXRhX3N0b3JhZ2UYByABKAsyHi5mbHl0ZWlkbDIudGFzay5SYXdEYXRhU3RvcmFnZRI5ChBzZWN1cml0eV9jb250ZXh0GAggASgLMh8uZmx5dGVpZGwyLmNvcmUuU2VjdXJpdHlDb250ZXh0EjEKDGNhY2hlX2NvbmZpZxgJIAEoCzIbLmZseXRlaWRsMi50YXNrLkNhY2hlQ29uZmlnEiAKFm5vdGlmaWNhdGlvbl9ydWxlX25hbWUYCiABKAlIABI8ChJub3RpZmljYXRpb25fcnVsZXMYCyABKAsyHi5mbHl0ZWlkbDIudGFzay5JbmxpbmVSdWxlTGlzdEgAEjIKDnJ1bl9zdGFydF90aW1lGAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIeChZtYXhfYWN0aW9uX2NvbmN1cnJlbmN5GA0gASgNEhQKDHJ1bl9iYXNlX2RpchgOIAEoCRI3CgpyZWxhdGVkX3RvGA8gASgLMh8uZmx5dGVpZGwyLmNvbW1vbi5SdW5JZGVudGlmaWVyQgIYARIUCgxjbHVzdGVyX3Bvb2wYECABKAkSOAoQdGFza19zcGVjX3NvdXJjZRgRIAEoDjIeLmZseXRlaWRsMi50YXNrLlRhc2tTcGVjU291cmNlEiwKCHJlbGF0aW9uGBIgASgLMhouZmx5dGVpZGwyLmNvbW1vbi5SZWxhdGlvbhIoCgdyZWNvdmVyGBMgASgLMhcuZmx5dGVpZGwyLnRhc2suUmVjb3ZlckIXChVub3RpZmljYXRpb25fc2V0dGluZ3NSB2NsdXN0ZXIiRQoOSW5saW5lUnVsZUxpc3QSMwoFcnVsZXMYASADKAsyGi5mbHl0ZWlkbDIudGFzay5JbmxpbmVSdWxlQgi6SAWSAQIIASKtAwoKSW5saW5lUnVsZRJLCglvbl9waGFzZXMYASADKA4yHS5mbHl0ZWlkbDIuY29tbW9uLkFjdGlvblBoYXNlQhm6SBaSARMIARgBIg2CAQoYBRgGGAcYCBgJEh4KFGRlbGl2ZXJ5X2NvbmZpZ19uYW1lGAIgASgJSAASSwoRZGVsaXZlcnlfdGVtcGxhdGUYAyABKAsyLi5mbHl0ZWlkbDIubm90aWZpY2F0aW9uLkRlbGl2ZXJ5Q29uZmlnVGVtcGxhdGVIADrRAbpIzQEaygEKFXBhdXNlZF9ydWxlX2V4Y2x1c2l2ZRJMYSBydWxlIHN1YnNjcmliaW5nIHRvIEFDVElPTl9QSEFTRV9QQVVTRUQgbXVzdCBub3Qgc3Vic2NyaWJlIHRvIG90aGVyIHBoYXNlcxpjIShmbHl0ZWlkbDIuY29tbW9uLkFjdGlvblBoYXNlLkFDVElPTl9QSEFTRV9QQVVTRUQgaW4gdGhpcy5vbl9waGFzZXMpIHx8IHRoaXMub25fcGhhc2VzLnNpemUoKSA9PSAxQhEKCGRlbGl2ZXJ5EgW6SAIIASp8ChBDYWNoZUxvb2t1cFNjb3BlEiIKHkNBQ0hFX0xPT0tVUF9TQ09QRV9VTlNQRUNJRklFRBAAEh0KGUNBQ0hFX0xPT0tVUF9TQ09QRV9HTE9CQUwQARIlCiFDQUNIRV9MT09LVVBfU0NPUEVfUFJPSkVDVF9ET01BSU4QAipxCg5UYXNrU3BlY1NvdXJjZRIgChxUQVNLX1NQRUNfU09VUkNFX1VOU1BFQ0lGSUVEEAASHQoZVEFTS19TUEVDX1NPVVJDRV9ERVBMT1lFRBABEh4KGlRBU0tfU1BFQ19TT1VSQ0VfRVBIRU1FUkFMEAJCrQEKEmNvbS5mbHl0ZWlkbDIudGFza0IIUnVuUHJvdG9IAlABWjJnaXRodWIuY29tL2ZseXRlb3JnL2ZseXRlL3YyL2dlbi9nby9mbHl0ZWlkbDIvdGFza6ICA0ZUWKoCDkZseXRlaWRsMi5UYXNrygIORmx5dGVpZGwyXFRhc2viAhpGbHl0ZWlkbDJcVGFza1xHUEJNZXRhZGF0YeoCD0ZseXRlaWRsMjo6VGFza2IGcHJvdG8z", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_phase, file_flyteidl2_common_run, file_flyteidl2_core_literals, file_flyteidl2_core_security, file_flyteidl2_notification_definition, file_google_protobuf_timestamp, file_google_protobuf_wrappers]);
30
+ fileDesc("ChhmbHl0ZWlkbDIvdGFzay9ydW4ucHJvdG8SDmZseXRlaWRsMi50YXNrImsKBkxhYmVscxIyCgZ2YWx1ZXMYASADKAsyIi5mbHl0ZWlkbDIudGFzay5MYWJlbHMuVmFsdWVzRW50cnkaLQoLVmFsdWVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJ1CgtBbm5vdGF0aW9ucxI3CgZ2YWx1ZXMYASADKAsyJy5mbHl0ZWlkbDIudGFzay5Bbm5vdGF0aW9ucy5WYWx1ZXNFbnRyeRotCgtWYWx1ZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIjQKBEVudnMSLAoGdmFsdWVzGAEgAygLMhwuZmx5dGVpZGwyLmNvcmUuS2V5VmFsdWVQYWlyIikKDlJhd0RhdGFTdG9yYWdlEhcKD3Jhd19kYXRhX3ByZWZpeBgBIAEoCSJkCgtDYWNoZUNvbmZpZxIXCg9vdmVyd3JpdGVfY2FjaGUYASABKAgSPAoSY2FjaGVfbG9va3VwX3Njb3BlGAIgASgOMiAuZmx5dGVpZGwyLnRhc2suQ2FjaGVMb29rdXBTY29wZSI0CgdSZWNvdmVyEikKE2ZvcmNlX3JlcnVuX2FjdGlvbnMYASADKAlCDLpICZIBBiIEcgIQASKWBwoHUnVuU3BlYxImCgZsYWJlbHMYASABKAsyFi5mbHl0ZWlkbDIudGFzay5MYWJlbHMSMAoLYW5ub3RhdGlvbnMYAiABKAsyGy5mbHl0ZWlkbDIudGFzay5Bbm5vdGF0aW9ucxIiCgRlbnZzGAMgASgLMhQuZmx5dGVpZGwyLnRhc2suRW52cxIxCg1pbnRlcnJ1cHRpYmxlGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLkJvb2xWYWx1ZRIbCg9vdmVyd3JpdGVfY2FjaGUYBSABKAhCAhgBEg0KBXF1ZXVlGAYgASgJEjgKEHJhd19kYXRhX3N0b3JhZ2UYByABKAsyHi5mbHl0ZWlkbDIudGFzay5SYXdEYXRhU3RvcmFnZRI5ChBzZWN1cml0eV9jb250ZXh0GAggASgLMh8uZmx5dGVpZGwyLmNvcmUuU2VjdXJpdHlDb250ZXh0EjEKDGNhY2hlX2NvbmZpZxgJIAEoCzIbLmZseXRlaWRsMi50YXNrLkNhY2hlQ29uZmlnEiAKFm5vdGlmaWNhdGlvbl9ydWxlX25hbWUYCiABKAlIABI8ChJub3RpZmljYXRpb25fcnVsZXMYCyABKAsyHi5mbHl0ZWlkbDIudGFzay5JbmxpbmVSdWxlTGlzdEgAEjIKDnJ1bl9zdGFydF90aW1lGAwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIeChZtYXhfYWN0aW9uX2NvbmN1cnJlbmN5GA0gASgNEhQKDHJ1bl9iYXNlX2RpchgOIAEoCRI3CgpyZWxhdGVkX3RvGA8gASgLMh8uZmx5dGVpZGwyLmNvbW1vbi5SdW5JZGVudGlmaWVyQgIYARIUCgxjbHVzdGVyX3Bvb2wYECABKAkSOAoQdGFza19zcGVjX3NvdXJjZRgRIAEoDjIeLmZseXRlaWRsMi50YXNrLlRhc2tTcGVjU291cmNlEiwKCHJlbGF0aW9uGBIgASgLMhouZmx5dGVpZGwyLmNvbW1vbi5SZWxhdGlvbhIoCgdyZWNvdmVyGBMgASgLMhcuZmx5dGVpZGwyLnRhc2suUmVjb3ZlchI5ChBkZWZhdWx0X3NldHRpbmdzGBQgASgLMh8uZmx5dGVpZGwyLnRhc2suRGVmYXVsdFNldHRpbmdzQhcKFW5vdGlmaWNhdGlvbl9zZXR0aW5nc1IHY2x1c3RlciJyCg9EZWZhdWx0U2V0dGluZ3MSGQoRcG9kX3RlbXBsYXRlX25hbWUYASABKAkSRAoWdGFza19yZXNvdXJjZV9kZWZhdWx0cxgCIAEoCzIkLmZseXRlaWRsMi50YXNrLlRhc2tSZXNvdXJjZURlZmF1bHRzIocBChRUYXNrUmVzb3VyY2VEZWZhdWx0cxI5CghyZXF1ZXN0cxgBIAMoCzInLmZseXRlaWRsMi5jb3JlLlJlc291cmNlcy5SZXNvdXJjZUVudHJ5EjQKA21heBgCIAMoCzInLmZseXRlaWRsMi5jb3JlLlJlc291cmNlcy5SZXNvdXJjZUVudHJ5IkUKDklubGluZVJ1bGVMaXN0EjMKBXJ1bGVzGAEgAygLMhouZmx5dGVpZGwyLnRhc2suSW5saW5lUnVsZUIIukgFkgECCAEirQMKCklubGluZVJ1bGUSSwoJb25fcGhhc2VzGAEgAygOMh0uZmx5dGVpZGwyLmNvbW1vbi5BY3Rpb25QaGFzZUIZukgWkgETCAEYASINggEKGAUYBhgHGAgYCRIeChRkZWxpdmVyeV9jb25maWdfbmFtZRgCIAEoCUgAEksKEWRlbGl2ZXJ5X3RlbXBsYXRlGAMgASgLMi4uZmx5dGVpZGwyLm5vdGlmaWNhdGlvbi5EZWxpdmVyeUNvbmZpZ1RlbXBsYXRlSAA60QG6SM0BGsoBChVwYXVzZWRfcnVsZV9leGNsdXNpdmUSTGEgcnVsZSBzdWJzY3JpYmluZyB0byBBQ1RJT05fUEhBU0VfUEFVU0VEIG11c3Qgbm90IHN1YnNjcmliZSB0byBvdGhlciBwaGFzZXMaYyEoZmx5dGVpZGwyLmNvbW1vbi5BY3Rpb25QaGFzZS5BQ1RJT05fUEhBU0VfUEFVU0VEIGluIHRoaXMub25fcGhhc2VzKSB8fCB0aGlzLm9uX3BoYXNlcy5zaXplKCkgPT0gMUIRCghkZWxpdmVyeRIFukgCCAEqfAoQQ2FjaGVMb29rdXBTY29wZRIiCh5DQUNIRV9MT09LVVBfU0NPUEVfVU5TUEVDSUZJRUQQABIdChlDQUNIRV9MT09LVVBfU0NPUEVfR0xPQkFMEAESJQohQ0FDSEVfTE9PS1VQX1NDT1BFX1BST0pFQ1RfRE9NQUlOEAIqcQoOVGFza1NwZWNTb3VyY2USIAocVEFTS19TUEVDX1NPVVJDRV9VTlNQRUNJRklFRBAAEh0KGVRBU0tfU1BFQ19TT1VSQ0VfREVQTE9ZRUQQARIeChpUQVNLX1NQRUNfU09VUkNFX0VQSEVNRVJBTBACQq0BChJjb20uZmx5dGVpZGwyLnRhc2tCCFJ1blByb3RvSAJQAVoyZ2l0aHViLmNvbS9mbHl0ZW9yZy9mbHl0ZS92Mi9nZW4vZ28vZmx5dGVpZGwyL3Rhc2uiAgNGVFiqAg5GbHl0ZWlkbDIuVGFza8oCDkZseXRlaWRsMlxUYXNr4gIaRmx5dGVpZGwyXFRhc2tcR1BCTWV0YWRhdGHqAg9GbHl0ZWlkbDI6OlRhc2tiBnByb3RvMw", [file_buf_validate_validate, file_flyteidl2_common_identifier, file_flyteidl2_common_phase, file_flyteidl2_common_run, file_flyteidl2_core_literals, file_flyteidl2_core_security, file_flyteidl2_core_tasks, file_flyteidl2_notification_definition, file_google_protobuf_timestamp, file_google_protobuf_wrappers]);
29
31
 
30
32
  /**
31
33
  * Label values to be applied to an execution resource.
@@ -345,6 +347,14 @@ export type RunSpec = Message<"flyteidl2.task.RunSpec"> & {
345
347
  * @generated from field: flyteidl2.task.Recover recover = 19;
346
348
  */
347
349
  recover?: Recover;
350
+
351
+ /**
352
+ * Run-scoped defaults, projected onto every task in the run that does not
353
+ * set the corresponding value itself. Set by the server from settings.
354
+ *
355
+ * @generated from field: flyteidl2.task.DefaultSettings default_settings = 20;
356
+ */
357
+ defaultSettings?: DefaultSettings;
348
358
  };
349
359
 
350
360
  /**
@@ -354,6 +364,67 @@ export type RunSpec = Message<"flyteidl2.task.RunSpec"> & {
354
364
  export const RunSpecSchema: GenMessage<RunSpec> = /*@__PURE__*/
355
365
  messageDesc(file_flyteidl2_task_run, 6);
356
366
 
367
+ /**
368
+ * DefaultSettings holds run-scoped defaults applied to tasks in a run. Each field
369
+ * only fills in a value the task leaves unset; a task's own choice always wins.
370
+ *
371
+ * @generated from message flyteidl2.task.DefaultSettings
372
+ */
373
+ export type DefaultSettings = Message<"flyteidl2.task.DefaultSettings"> & {
374
+ /**
375
+ * Pod template name, projected onto tasks that do not name one themselves.
376
+ * A task's own TaskMetadata.pod_template_name always wins.
377
+ *
378
+ * @generated from field: string pod_template_name = 1;
379
+ */
380
+ podTemplateName: string;
381
+
382
+ /**
383
+ * Resource defaults for every action in this run. Resolved by the server at creation from the org, project and
384
+ * domain task_resource settings; a caller-supplied value is currently overwritten.
385
+ *
386
+ * @generated from field: flyteidl2.task.TaskResourceDefaults task_resource_defaults = 2;
387
+ */
388
+ taskResourceDefaults?: TaskResourceDefaults;
389
+ };
390
+
391
+ /**
392
+ * Describes the message flyteidl2.task.DefaultSettings.
393
+ * Use `create(DefaultSettingsSchema)` to create a new message.
394
+ */
395
+ export const DefaultSettingsSchema: GenMessage<DefaultSettings> = /*@__PURE__*/
396
+ messageDesc(file_flyteidl2_task_run, 7);
397
+
398
+ /**
399
+ * Resolved task_resource settings for a run: what a task pod gets when its template is silent, and the ceiling
400
+ * either way. Deliberately not a flyteidl2.core.Resources: max is a ceiling on both a task's requests and its
401
+ * limits, not a Kubernetes limit.
402
+ *
403
+ * @generated from message flyteidl2.task.TaskResourceDefaults
404
+ */
405
+ export type TaskResourceDefaults = Message<"flyteidl2.task.TaskResourceDefaults"> & {
406
+ /**
407
+ * Request for each dimension a task template leaves unset (task_resource.min, capped at max).
408
+ *
409
+ * @generated from field: repeated flyteidl2.core.Resources.ResourceEntry requests = 1;
410
+ */
411
+ requests: Resources_ResourceEntry[];
412
+
413
+ /**
414
+ * Per-dimension cap on a task's requests and limits (task_resource.max).
415
+ *
416
+ * @generated from field: repeated flyteidl2.core.Resources.ResourceEntry max = 2;
417
+ */
418
+ max: Resources_ResourceEntry[];
419
+ };
420
+
421
+ /**
422
+ * Describes the message flyteidl2.task.TaskResourceDefaults.
423
+ * Use `create(TaskResourceDefaultsSchema)` to create a new message.
424
+ */
425
+ export const TaskResourceDefaultsSchema: GenMessage<TaskResourceDefaults> = /*@__PURE__*/
426
+ messageDesc(file_flyteidl2_task_run, 8);
427
+
357
428
  /**
358
429
  * @generated from message flyteidl2.task.InlineRuleList
359
430
  */
@@ -369,7 +440,7 @@ export type InlineRuleList = Message<"flyteidl2.task.InlineRuleList"> & {
369
440
  * Use `create(InlineRuleListSchema)` to create a new message.
370
441
  */
371
442
  export const InlineRuleListSchema: GenMessage<InlineRuleList> = /*@__PURE__*/
372
- messageDesc(file_flyteidl2_task_run, 7);
443
+ messageDesc(file_flyteidl2_task_run, 9);
373
444
 
374
445
  /**
375
446
  * @generated from message flyteidl2.task.InlineRule
@@ -408,7 +479,7 @@ export type InlineRule = Message<"flyteidl2.task.InlineRule"> & {
408
479
  * Use `create(InlineRuleSchema)` to create a new message.
409
480
  */
410
481
  export const InlineRuleSchema: GenMessage<InlineRule> = /*@__PURE__*/
411
- messageDesc(file_flyteidl2_task_run, 8);
482
+ messageDesc(file_flyteidl2_task_run, 10);
412
483
 
413
484
  /**
414
485
  * @generated from enum flyteidl2.task.CacheLookupScope
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flyteorg/flyteidl2",
3
- "version": "2.0.47",
3
+ "version": "2.0.49",
4
4
  "description": "Compiled protocol buffers and gRPC service and connect clients/servers for Flyte IDLs",
5
5
  "repository": {
6
6
  "type": "git",