temporalio 1.9.0 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +268 -73
  3. data/README.md +3 -3
  4. data/Rakefile +28 -0
  5. data/ext/Cargo.toml +3 -3
  6. data/lib/temporalio/api/activity/v1/message.rb +2 -1
  7. data/lib/temporalio/api/callback/v1/message.rb +1 -1
  8. data/lib/temporalio/api/common/v1/message.rb +3 -1
  9. data/lib/temporalio/api/compute/v1/config.rb +1 -1
  10. data/lib/temporalio/api/enums/v1/common.rb +1 -1
  11. data/lib/temporalio/api/enums/v1/failed_cause.rb +2 -1
  12. data/lib/temporalio/api/export/v1/message.rb +4 -1
  13. data/lib/temporalio/api/history/v1/message.rb +2 -1
  14. data/lib/temporalio/api/nexus/v1/message.rb +2 -1
  15. data/lib/temporalio/api/nexusoperation/v1/message.rb +26 -0
  16. data/lib/temporalio/api/notificationservice/v1/request_response.rb +25 -0
  17. data/lib/temporalio/api/payload_visitor.rb +54 -0
  18. data/lib/temporalio/api/replication/v1/message.rb +2 -1
  19. data/lib/temporalio/api/update/v1/message.rb +2 -1
  20. data/lib/temporalio/api/worker/v1/message.rb +1 -1
  21. data/lib/temporalio/api/workflow/v1/message.rb +2 -1
  22. data/lib/temporalio/api/workflowservice/v1/request_response.rb +2 -1
  23. data/lib/temporalio/client/schedule.rb +8 -7
  24. data/lib/temporalio/client/with_start_workflow_operation.rb +1 -1
  25. data/lib/temporalio/client.rb +4 -4
  26. data/lib/temporalio/converters/external_storage.rb +90 -0
  27. data/lib/temporalio/converters/external_storage_concurrency.rb +52 -0
  28. data/lib/temporalio/converters/storage_driver.rb +56 -0
  29. data/lib/temporalio/converters/storage_driver_activity_info.rb +38 -0
  30. data/lib/temporalio/converters/storage_driver_claim.rb +30 -0
  31. data/lib/temporalio/converters/storage_driver_limiter.rb +37 -0
  32. data/lib/temporalio/converters/storage_driver_retrieve_context.rb +30 -0
  33. data/lib/temporalio/converters/storage_driver_select_context.rb +26 -0
  34. data/lib/temporalio/converters/storage_driver_store_context.rb +31 -0
  35. data/lib/temporalio/converters/storage_driver_workflow_info.rb +40 -0
  36. data/lib/temporalio/converters.rb +11 -0
  37. data/lib/temporalio/error/failure.rb +16 -0
  38. data/lib/temporalio/error.rb +17 -0
  39. data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +2 -1
  40. data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +1 -1
  41. data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +1 -1
  42. data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +2 -1
  43. data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +3 -1
  44. data/lib/temporalio/internal/external_storage_references.rb +62 -0
  45. data/lib/temporalio/internal/worker/workflow_instance/context.rb +2 -0
  46. data/lib/temporalio/internal/worker/workflow_instance/outbound_implementation.rb +21 -3
  47. data/lib/temporalio/testing/activity_environment.rb +1 -1
  48. data/lib/temporalio/testing/workflow_environment.rb +4 -4
  49. data/lib/temporalio/version.rb +1 -1
  50. data/lib/temporalio/versioning_override.rb +28 -1
  51. data/lib/temporalio/worker/interceptor.rb +1 -0
  52. data/lib/temporalio/workflow.rb +14 -4
  53. data/rbi/temporalio/api/activity/v1/message.rbi +39 -2
  54. data/rbi/temporalio/api/callback/v1/message.rbi +22 -2
  55. data/rbi/temporalio/api/common/v1/message.rbi +294 -4
  56. data/rbi/temporalio/api/compute/v1/config.rbi +39 -5
  57. data/rbi/temporalio/api/enums/v1/common.rbi +1 -0
  58. data/rbi/temporalio/api/enums/v1/failed_cause.rbi +20 -0
  59. data/rbi/temporalio/api/export/v1/message.rbi +136 -2
  60. data/rbi/temporalio/api/history/v1/message.rbi +38 -4
  61. data/rbi/temporalio/api/nexus/v1/message.rbi +88 -0
  62. data/rbi/temporalio/api/nexusoperation/v1/message.rbi +287 -0
  63. data/rbi/temporalio/api/notificationservice/v1/request_response.rbi +151 -0
  64. data/rbi/temporalio/api/payload_visitor.rbi +21 -0
  65. data/rbi/temporalio/api/replication/v1/message.rbi +22 -2
  66. data/rbi/temporalio/api/update/v1/message.rbi +19 -2
  67. data/rbi/temporalio/api/worker/v1/message.rbi +2 -0
  68. data/rbi/temporalio/api/workflow/v1/message.rbi +41 -4
  69. data/rbi/temporalio/api/workflowservice/v1/request_response.rbi +294 -20
  70. data/rbi/temporalio/api/workflowservice/v1/service_services.rbi +0 -13
  71. data/rbi/temporalio/client/schedule.rbi +2 -2
  72. data/rbi/temporalio/converters/external_storage.rbi +49 -0
  73. data/rbi/temporalio/converters/external_storage_concurrency.rbi +26 -0
  74. data/rbi/temporalio/converters/storage_driver.rbi +27 -0
  75. data/rbi/temporalio/converters/storage_driver_activity_info.rbi +36 -0
  76. data/rbi/temporalio/converters/storage_driver_claim.rbi +20 -0
  77. data/rbi/temporalio/converters/storage_driver_limiter.rbi +13 -0
  78. data/rbi/temporalio/converters/storage_driver_retrieve_context.rbi +23 -0
  79. data/rbi/temporalio/converters/storage_driver_select_context.rbi +42 -0
  80. data/rbi/temporalio/converters/storage_driver_store_context.rbi +46 -0
  81. data/rbi/temporalio/converters/storage_driver_workflow_info.rbi +36 -0
  82. data/rbi/temporalio/error.rbi +17 -0
  83. data/rbi/temporalio/internal/bridge/api/activity_result/activity_result.rbi +41 -2
  84. data/rbi/temporalio/internal/bridge/api/child_workflow/child_workflow.rbi +2 -0
  85. data/rbi/temporalio/internal/bridge/api/external_data/external_data.rbi +29 -2
  86. data/rbi/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rbi +88 -14
  87. data/rbi/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rbi +91 -6
  88. data/rbi/temporalio/internal/external_storage_references.rbi +26 -0
  89. data/rbi/temporalio/internal/worker/workflow_instance/context.rbi +2 -0
  90. data/rbi/temporalio/versioning_override.rbi +8 -0
  91. data/rbi/temporalio/worker/interceptor.rbi +3 -0
  92. data/rbi/temporalio/workflow.rbi +4 -0
  93. data/sig/temporalio/api/activity/v1/message.rbs +18 -0
  94. data/sig/temporalio/api/callback/v1/message.rbs +10 -0
  95. data/sig/temporalio/api/common/v1/message.rbs +133 -4
  96. data/sig/temporalio/api/compute/v1/config.rbs +17 -1
  97. data/sig/temporalio/api/enums/v1/common.rbs +7 -4
  98. data/sig/temporalio/api/enums/v1/failed_cause.rbs +42 -5
  99. data/sig/temporalio/api/export/v1/message.rbs +50 -2
  100. data/sig/temporalio/api/history/v1/message.rbs +19 -0
  101. data/sig/temporalio/api/nexus/v1/message.rbs +37 -0
  102. data/sig/temporalio/api/nexusoperation/v1/message.rbs +125 -0
  103. data/sig/temporalio/api/notificationservice/v1/request_response.rbs +81 -0
  104. data/sig/temporalio/api/payload_visitor.rbs +7 -0
  105. data/sig/temporalio/api/replication/v1/message.rbs +11 -0
  106. data/sig/temporalio/api/update/v1/message.rbs +9 -0
  107. data/sig/temporalio/api/worker/v1/message.rbs +9 -3
  108. data/sig/temporalio/api/workflow/v1/message.rbs +19 -0
  109. data/sig/temporalio/api/workflowservice/v1/request_response.rbs +136 -0
  110. data/sig/temporalio/client/schedule.rbs +3 -2
  111. data/sig/temporalio/converters/external_storage.rbs +25 -0
  112. data/sig/temporalio/converters/external_storage_concurrency.rbs +16 -0
  113. data/sig/temporalio/converters/storage_driver.rbs +16 -0
  114. data/sig/temporalio/converters/storage_driver_activity_info.rbs +17 -0
  115. data/sig/temporalio/converters/storage_driver_claim.rbs +9 -0
  116. data/sig/temporalio/converters/storage_driver_limiter.rbs +7 -0
  117. data/sig/temporalio/converters/storage_driver_retrieve_context.rbs +13 -0
  118. data/sig/temporalio/converters/storage_driver_select_context.rbs +13 -0
  119. data/sig/temporalio/converters/storage_driver_store_context.rbs +15 -0
  120. data/sig/temporalio/converters/storage_driver_target_info.rbs +5 -0
  121. data/sig/temporalio/converters/storage_driver_workflow_info.rbs +17 -0
  122. data/sig/temporalio/error/failure.rbs +8 -0
  123. data/sig/temporalio/error.rbs +4 -0
  124. data/sig/temporalio/internal/bridge/api/activity_result/activity_result.rbs +46 -0
  125. data/sig/temporalio/internal/bridge/api/child_workflow/child_workflow.rbs +7 -3
  126. data/sig/temporalio/internal/bridge/api/external_data/external_data.rbs +16 -0
  127. data/sig/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rbs +42 -2
  128. data/sig/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rbs +42 -0
  129. data/sig/temporalio/internal/external_storage_references.rbs +18 -0
  130. data/sig/temporalio/internal/worker/workflow_instance/context.rbs +1 -0
  131. data/sig/temporalio/testing/activity_environment.rbs +1 -1
  132. data/sig/temporalio/versioning_override.rbs +7 -0
  133. data/sig/temporalio/worker/interceptor.rbs +2 -0
  134. data/sig/temporalio/workflow.rbs +2 -0
  135. data/temporalio.gemspec +1 -0
  136. metadata +56 -2
@@ -419,7 +419,8 @@ class Temporalio::Api::Update::V1::Request
419
419
  input: T.nilable(Temporalio::Api::Update::V1::Input),
420
420
  request_id: T.nilable(String),
421
421
  completion_callbacks: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Callback)]),
422
- links: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Link)])
422
+ links: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Link)]),
423
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
423
424
  ).void
424
425
  end
425
426
  def initialize(
@@ -427,7 +428,8 @@ class Temporalio::Api::Update::V1::Request
427
428
  input: nil,
428
429
  request_id: "",
429
430
  completion_callbacks: [],
430
- links: []
431
+ links: [],
432
+ propagated_nexus_serialization_context: nil
431
433
  )
432
434
  end
433
435
 
@@ -500,6 +502,21 @@ class Temporalio::Api::Update::V1::Request
500
502
  def clear_links
501
503
  end
502
504
 
505
+ # Serialization context propagated from the Nexus caller that started this update.
506
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
507
+ def propagated_nexus_serialization_context
508
+ end
509
+
510
+ # Serialization context propagated from the Nexus caller that started this update.
511
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
512
+ def propagated_nexus_serialization_context=(value)
513
+ end
514
+
515
+ # Serialization context propagated from the Nexus caller that started this update.
516
+ sig { void }
517
+ def clear_propagated_nexus_serialization_context
518
+ end
519
+
503
520
  sig { params(field: String).returns(T.untyped) }
504
521
  def [](field)
505
522
  end
@@ -2227,6 +2227,8 @@ module Temporalio::Api::Worker::V1::EnvironmentInfo::Runtime::RuntimeType
2227
2227
  self::RUNTIME_TYPE_DOTNET_CORE = T.let(8, Integer)
2228
2228
  self::RUNTIME_TYPE_NATIVE = T.let(9, Integer)
2229
2229
  self::RUNTIME_TYPE_ROADRUNNER = T.let(10, Integer)
2230
+ self::RUNTIME_TYPE_GRAAL_AOT = T.let(11, Integer)
2231
+ self::RUNTIME_TYPE_KOTLIN = T.let(12, Integer)
2230
2232
 
2231
2233
  sig { params(value: Integer).returns(T.nilable(Symbol)) }
2232
2234
  def self.lookup(value)
@@ -560,7 +560,8 @@ class Temporalio::Api::Workflow::V1::WorkflowExecutionExtendedInfo
560
560
  reset_run_id: T.nilable(String),
561
561
  request_id_infos: T.nilable(T::Hash[String, T.nilable(Temporalio::Api::Workflow::V1::RequestIdInfo)]),
562
562
  pause_info: T.nilable(Temporalio::Api::Workflow::V1::WorkflowExecutionPauseInfo),
563
- time_skipping_info: T.nilable(Temporalio::Api::Common::V1::TimeSkippingInfo)
563
+ time_skipping_info: T.nilable(Temporalio::Api::Common::V1::TimeSkippingInfo),
564
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
564
565
  ).void
565
566
  end
566
567
  def initialize(
@@ -572,7 +573,8 @@ class Temporalio::Api::Workflow::V1::WorkflowExecutionExtendedInfo
572
573
  reset_run_id: "",
573
574
  request_id_infos: ::Google::Protobuf::Map.new(:string, :message, Temporalio::Api::Workflow::V1::RequestIdInfo),
574
575
  pause_info: nil,
575
- time_skipping_info: nil
576
+ time_skipping_info: nil,
577
+ propagated_nexus_serialization_context: nil
576
578
  )
577
579
  end
578
580
 
@@ -726,6 +728,21 @@ class Temporalio::Api::Workflow::V1::WorkflowExecutionExtendedInfo
726
728
  def clear_time_skipping_info
727
729
  end
728
730
 
731
+ # Serialization context propagated from the Nexus caller that started this workflow.
732
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
733
+ def propagated_nexus_serialization_context
734
+ end
735
+
736
+ # Serialization context propagated from the Nexus caller that started this workflow.
737
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
738
+ def propagated_nexus_serialization_context=(value)
739
+ end
740
+
741
+ # Serialization context propagated from the Nexus caller that started this workflow.
742
+ sig { void }
743
+ def clear_propagated_nexus_serialization_context
744
+ end
745
+
729
746
  sig { params(field: String).returns(T.untyped) }
730
747
  def [](field)
731
748
  end
@@ -2757,7 +2774,8 @@ class Temporalio::Api::Workflow::V1::CallbackInfo
2757
2774
  last_attempt_complete_time: T.nilable(Google::Protobuf::Timestamp),
2758
2775
  last_attempt_failure: T.nilable(Temporalio::Api::Failure::V1::Failure),
2759
2776
  next_attempt_schedule_time: T.nilable(Google::Protobuf::Timestamp),
2760
- blocked_reason: T.nilable(String)
2777
+ blocked_reason: T.nilable(String),
2778
+ request_id: T.nilable(String)
2761
2779
  ).void
2762
2780
  end
2763
2781
  def initialize(
@@ -2769,7 +2787,8 @@ class Temporalio::Api::Workflow::V1::CallbackInfo
2769
2787
  last_attempt_complete_time: nil,
2770
2788
  last_attempt_failure: nil,
2771
2789
  next_attempt_schedule_time: nil,
2772
- blocked_reason: ""
2790
+ blocked_reason: "",
2791
+ request_id: ""
2773
2792
  )
2774
2793
  end
2775
2794
 
@@ -2908,6 +2927,24 @@ class Temporalio::Api::Workflow::V1::CallbackInfo
2908
2927
  def clear_blocked_reason
2909
2928
  end
2910
2929
 
2930
+ # Server-generated request ID used as an idempotency token when invoking callbacks.
2931
+ # It has no relation to caller-side request_id sent in operations like StartWorkflowExecutionRequest.
2932
+ sig { returns(String) }
2933
+ def request_id
2934
+ end
2935
+
2936
+ # Server-generated request ID used as an idempotency token when invoking callbacks.
2937
+ # It has no relation to caller-side request_id sent in operations like StartWorkflowExecutionRequest.
2938
+ sig { params(value: String).void }
2939
+ def request_id=(value)
2940
+ end
2941
+
2942
+ # Server-generated request ID used as an idempotency token when invoking callbacks.
2943
+ # It has no relation to caller-side request_id sent in operations like StartWorkflowExecutionRequest.
2944
+ sig { void }
2945
+ def clear_request_id
2946
+ end
2947
+
2911
2948
  sig { params(field: String).returns(T.untyped) }
2912
2949
  def [](field)
2913
2950
  end
@@ -1134,7 +1134,8 @@ class Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionRequest
1134
1134
  on_conflict_options: T.nilable(Temporalio::Api::Workflow::V1::OnConflictOptions),
1135
1135
  priority: T.nilable(Temporalio::Api::Common::V1::Priority),
1136
1136
  eager_worker_deployment_options: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions),
1137
- time_skipping_config: T.nilable(Temporalio::Api::Common::V1::TimeSkippingConfig)
1137
+ time_skipping_config: T.nilable(Temporalio::Api::Common::V1::TimeSkippingConfig),
1138
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
1138
1139
  ).void
1139
1140
  end
1140
1141
  def initialize(
@@ -1166,7 +1167,8 @@ class Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionRequest
1166
1167
  on_conflict_options: nil,
1167
1168
  priority: nil,
1168
1169
  eager_worker_deployment_options: nil,
1169
- time_skipping_config: nil
1170
+ time_skipping_config: nil,
1171
+ propagated_nexus_serialization_context: nil
1170
1172
  )
1171
1173
  end
1172
1174
 
@@ -1647,6 +1649,21 @@ class Temporalio::Api::WorkflowService::V1::StartWorkflowExecutionRequest
1647
1649
  def clear_time_skipping_config
1648
1650
  end
1649
1651
 
1652
+ # Serialization context propagated from the Nexus caller that started this workflow.
1653
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
1654
+ def propagated_nexus_serialization_context
1655
+ end
1656
+
1657
+ # Serialization context propagated from the Nexus caller that started this workflow.
1658
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
1659
+ def propagated_nexus_serialization_context=(value)
1660
+ end
1661
+
1662
+ # Serialization context propagated from the Nexus caller that started this workflow.
1663
+ sig { void }
1664
+ def clear_propagated_nexus_serialization_context
1665
+ end
1666
+
1650
1667
  sig { params(field: String).returns(T.untyped) }
1651
1668
  def [](field)
1652
1669
  end
@@ -2006,14 +2023,16 @@ class Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryResponse
2006
2023
  history: T.nilable(Temporalio::Api::History::V1::History),
2007
2024
  raw_history: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::DataBlob)]),
2008
2025
  next_page_token: T.nilable(String),
2009
- archived: T.nilable(T::Boolean)
2026
+ archived: T.nilable(T::Boolean),
2027
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
2010
2028
  ).void
2011
2029
  end
2012
2030
  def initialize(
2013
2031
  history: nil,
2014
2032
  raw_history: [],
2015
2033
  next_page_token: "",
2016
- archived: false
2034
+ archived: false,
2035
+ propagated_nexus_serialization_context: nil
2017
2036
  )
2018
2037
  end
2019
2038
 
@@ -2074,6 +2093,27 @@ class Temporalio::Api::WorkflowService::V1::GetWorkflowExecutionHistoryResponse
2074
2093
  def clear_archived
2075
2094
  end
2076
2095
 
2096
+ # Serialization context propagated from the Nexus caller that started this run.
2097
+ # Returned on the initial request (without next_page_token) when present. Clients should
2098
+ # retain it across paginated responses, which may omit it.
2099
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
2100
+ def propagated_nexus_serialization_context
2101
+ end
2102
+
2103
+ # Serialization context propagated from the Nexus caller that started this run.
2104
+ # Returned on the initial request (without next_page_token) when present. Clients should
2105
+ # retain it across paginated responses, which may omit it.
2106
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
2107
+ def propagated_nexus_serialization_context=(value)
2108
+ end
2109
+
2110
+ # Serialization context propagated from the Nexus caller that started this run.
2111
+ # Returned on the initial request (without next_page_token) when present. Clients should
2112
+ # retain it across paginated responses, which may omit it.
2113
+ sig { void }
2114
+ def clear_propagated_nexus_serialization_context
2115
+ end
2116
+
2077
2117
  sig { params(field: String).returns(T.untyped) }
2078
2118
  def [](field)
2079
2119
  end
@@ -4072,7 +4112,8 @@ class Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse
4072
4112
  priority: T.nilable(Temporalio::Api::Common::V1::Priority),
4073
4113
  activity_run_id: T.nilable(String),
4074
4114
  poller_group_infos: T.nilable(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::PollerGroupInfo)]),
4075
- poller_groups_info: T.nilable(Temporalio::Api::TaskQueue::V1::PollerGroupsInfo)
4115
+ poller_groups_info: T.nilable(Temporalio::Api::TaskQueue::V1::PollerGroupsInfo),
4116
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
4076
4117
  ).void
4077
4118
  end
4078
4119
  def initialize(
@@ -4097,7 +4138,8 @@ class Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse
4097
4138
  priority: nil,
4098
4139
  activity_run_id: "",
4099
4140
  poller_group_infos: [],
4100
- poller_groups_info: nil
4141
+ poller_groups_info: nil,
4142
+ propagated_nexus_serialization_context: nil
4101
4143
  )
4102
4144
  end
4103
4145
 
@@ -4506,6 +4548,21 @@ class Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse
4506
4548
  def clear_poller_groups_info
4507
4549
  end
4508
4550
 
4551
+ # Serialization context propagated from the Nexus caller that started this activity.
4552
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
4553
+ def propagated_nexus_serialization_context
4554
+ end
4555
+
4556
+ # Serialization context propagated from the Nexus caller that started this activity.
4557
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
4558
+ def propagated_nexus_serialization_context=(value)
4559
+ end
4560
+
4561
+ # Serialization context propagated from the Nexus caller that started this activity.
4562
+ sig { void }
4563
+ def clear_propagated_nexus_serialization_context
4564
+ end
4565
+
4509
4566
  sig { params(field: String).returns(T.untyped) }
4510
4567
  def [](field)
4511
4568
  end
@@ -5491,7 +5548,8 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedRequest
5491
5548
  last_heartbeat_details: T.nilable(Temporalio::Api::Common::V1::Payloads),
5492
5549
  worker_version: T.nilable(Temporalio::Api::Common::V1::WorkerVersionStamp),
5493
5550
  deployment: T.nilable(Temporalio::Api::Deployment::V1::Deployment),
5494
- deployment_options: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions)
5551
+ deployment_options: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions),
5552
+ cause: T.nilable(T.any(Symbol, String, Integer))
5495
5553
  ).void
5496
5554
  end
5497
5555
  def initialize(
@@ -5503,7 +5561,8 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedRequest
5503
5561
  last_heartbeat_details: nil,
5504
5562
  worker_version: nil,
5505
5563
  deployment: nil,
5506
- deployment_options: nil
5564
+ deployment_options: nil,
5565
+ cause: :ACTIVITY_TASK_FAILED_CAUSE_UNSPECIFIED
5507
5566
  )
5508
5567
  end
5509
5568
 
@@ -5654,6 +5713,21 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedRequest
5654
5713
  def clear_deployment_options
5655
5714
  end
5656
5715
 
5716
+ # Why did the task fail? When unset, the failure is treated as an unspecified activity failure.
5717
+ sig { returns(T.any(Symbol, Integer)) }
5718
+ def cause
5719
+ end
5720
+
5721
+ # Why did the task fail? When unset, the failure is treated as an unspecified activity failure.
5722
+ sig { params(value: T.any(Symbol, String, Integer)).void }
5723
+ def cause=(value)
5724
+ end
5725
+
5726
+ # Why did the task fail? When unset, the failure is treated as an unspecified activity failure.
5727
+ sig { void }
5728
+ def clear_cause
5729
+ end
5730
+
5657
5731
  sig { params(field: String).returns(T.untyped) }
5658
5732
  def [](field)
5659
5733
  end
@@ -5765,7 +5839,8 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdRequest
5765
5839
  failure: T.nilable(Temporalio::Api::Failure::V1::Failure),
5766
5840
  identity: T.nilable(String),
5767
5841
  last_heartbeat_details: T.nilable(Temporalio::Api::Common::V1::Payloads),
5768
- resource_id: T.nilable(String)
5842
+ resource_id: T.nilable(String),
5843
+ cause: T.nilable(T.any(Symbol, String, Integer))
5769
5844
  ).void
5770
5845
  end
5771
5846
  def initialize(
@@ -5776,7 +5851,8 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdRequest
5776
5851
  failure: nil,
5777
5852
  identity: "",
5778
5853
  last_heartbeat_details: nil,
5779
- resource_id: ""
5854
+ resource_id: "",
5855
+ cause: :ACTIVITY_TASK_FAILED_CAUSE_UNSPECIFIED
5780
5856
  )
5781
5857
  end
5782
5858
 
@@ -5903,6 +5979,24 @@ class Temporalio::Api::WorkflowService::V1::RespondActivityTaskFailedByIdRequest
5903
5979
  def clear_resource_id
5904
5980
  end
5905
5981
 
5982
+ # Why did the activity task fail? Optional; when unset the failure is treated as a normal
5983
+ # activity failure. See the type's doc for more.
5984
+ sig { returns(T.any(Symbol, Integer)) }
5985
+ def cause
5986
+ end
5987
+
5988
+ # Why did the activity task fail? Optional; when unset the failure is treated as a normal
5989
+ # activity failure. See the type's doc for more.
5990
+ sig { params(value: T.any(Symbol, String, Integer)).void }
5991
+ def cause=(value)
5992
+ end
5993
+
5994
+ # Why did the activity task fail? Optional; when unset the failure is treated as a normal
5995
+ # activity failure. See the type's doc for more.
5996
+ sig { void }
5997
+ def clear_cause
5998
+ end
5999
+
5906
6000
  sig { params(field: String).returns(T.untyped) }
5907
6001
  def [](field)
5908
6002
  end
@@ -25041,7 +25135,9 @@ class Temporalio::Api::WorkflowService::V1::StartActivityExecutionRequest
25041
25135
  completion_callbacks: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Callback)]),
25042
25136
  links: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Link)]),
25043
25137
  on_conflict_options: T.nilable(Temporalio::Api::Common::V1::OnConflictOptions),
25044
- start_delay: T.nilable(Google::Protobuf::Duration)
25138
+ start_delay: T.nilable(Google::Protobuf::Duration),
25139
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext),
25140
+ request_eager_execution: T.nilable(T::Boolean)
25045
25141
  ).void
25046
25142
  end
25047
25143
  def initialize(
@@ -25066,7 +25162,9 @@ class Temporalio::Api::WorkflowService::V1::StartActivityExecutionRequest
25066
25162
  completion_callbacks: [],
25067
25163
  links: [],
25068
25164
  on_conflict_options: nil,
25069
- start_delay: nil
25165
+ start_delay: nil,
25166
+ propagated_nexus_serialization_context: nil,
25167
+ request_eager_execution: false
25070
25168
  )
25071
25169
  end
25072
25170
 
@@ -25457,6 +25555,45 @@ class Temporalio::Api::WorkflowService::V1::StartActivityExecutionRequest
25457
25555
  def clear_start_delay
25458
25556
  end
25459
25557
 
25558
+ # Serialization context propagated from the Nexus caller that started this activity.
25559
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
25560
+ def propagated_nexus_serialization_context
25561
+ end
25562
+
25563
+ # Serialization context propagated from the Nexus caller that started this activity.
25564
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
25565
+ def propagated_nexus_serialization_context=(value)
25566
+ end
25567
+
25568
+ # Serialization context propagated from the Nexus caller that started this activity.
25569
+ sig { void }
25570
+ def clear_propagated_nexus_serialization_context
25571
+ end
25572
+
25573
+ # Request that the first activity task be returned directly in the start response instead of
25574
+ # being dispatched through a task queue. If set to true, the caller is expected to have a
25575
+ # worker available and capable of processing the task. The returned task will be marked as
25576
+ # started. The server may ignore this request.
25577
+ sig { returns(T::Boolean) }
25578
+ def request_eager_execution
25579
+ end
25580
+
25581
+ # Request that the first activity task be returned directly in the start response instead of
25582
+ # being dispatched through a task queue. If set to true, the caller is expected to have a
25583
+ # worker available and capable of processing the task. The returned task will be marked as
25584
+ # started. The server may ignore this request.
25585
+ sig { params(value: T::Boolean).void }
25586
+ def request_eager_execution=(value)
25587
+ end
25588
+
25589
+ # Request that the first activity task be returned directly in the start response instead of
25590
+ # being dispatched through a task queue. If set to true, the caller is expected to have a
25591
+ # worker available and capable of processing the task. The returned task will be marked as
25592
+ # started. The server may ignore this request.
25593
+ sig { void }
25594
+ def clear_request_eager_execution
25595
+ end
25596
+
25460
25597
  sig { params(field: String).returns(T.untyped) }
25461
25598
  def [](field)
25462
25599
  end
@@ -25498,13 +25635,15 @@ class Temporalio::Api::WorkflowService::V1::StartActivityExecutionResponse
25498
25635
  params(
25499
25636
  run_id: T.nilable(String),
25500
25637
  started: T.nilable(T::Boolean),
25501
- link: T.nilable(Temporalio::Api::Common::V1::Link)
25638
+ link: T.nilable(Temporalio::Api::Common::V1::Link),
25639
+ eager_activity_task: T.nilable(Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse)
25502
25640
  ).void
25503
25641
  end
25504
25642
  def initialize(
25505
25643
  run_id: "",
25506
25644
  started: false,
25507
- link: nil
25645
+ link: nil,
25646
+ eager_activity_task: nil
25508
25647
  )
25509
25648
  end
25510
25649
 
@@ -25553,6 +25692,24 @@ class Temporalio::Api::WorkflowService::V1::StartActivityExecutionResponse
25553
25692
  def clear_link
25554
25693
  end
25555
25694
 
25695
+ # The first activity task when eager execution was requested and accepted.
25696
+ # This is set only for the first attempt of a newly started activity.
25697
+ sig { returns(T.nilable(Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse)) }
25698
+ def eager_activity_task
25699
+ end
25700
+
25701
+ # The first activity task when eager execution was requested and accepted.
25702
+ # This is set only for the first attempt of a newly started activity.
25703
+ sig { params(value: T.nilable(Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse)).void }
25704
+ def eager_activity_task=(value)
25705
+ end
25706
+
25707
+ # The first activity task when eager execution was requested and accepted.
25708
+ # This is set only for the first attempt of a newly started activity.
25709
+ sig { void }
25710
+ def clear_eager_activity_task
25711
+ end
25712
+
25556
25713
  sig { params(field: String).returns(T.untyped) }
25557
25714
  def [](field)
25558
25715
  end
@@ -26026,12 +26183,14 @@ class Temporalio::Api::WorkflowService::V1::PollActivityExecutionResponse
26026
26183
  sig do
26027
26184
  params(
26028
26185
  run_id: T.nilable(String),
26029
- outcome: T.nilable(Temporalio::Api::Activity::V1::ActivityExecutionOutcome)
26186
+ outcome: T.nilable(Temporalio::Api::Activity::V1::ActivityExecutionOutcome),
26187
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)
26030
26188
  ).void
26031
26189
  end
26032
26190
  def initialize(
26033
26191
  run_id: "",
26034
- outcome: nil
26192
+ outcome: nil,
26193
+ propagated_nexus_serialization_context: nil
26035
26194
  )
26036
26195
  end
26037
26196
 
@@ -26062,6 +26221,21 @@ class Temporalio::Api::WorkflowService::V1::PollActivityExecutionResponse
26062
26221
  def clear_outcome
26063
26222
  end
26064
26223
 
26224
+ # Serialization context propagated from the Nexus caller that started this activity.
26225
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
26226
+ def propagated_nexus_serialization_context
26227
+ end
26228
+
26229
+ # Serialization context propagated from the Nexus caller that started this activity.
26230
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
26231
+ def propagated_nexus_serialization_context=(value)
26232
+ end
26233
+
26234
+ # Serialization context propagated from the Nexus caller that started this activity.
26235
+ sig { void }
26236
+ def clear_propagated_nexus_serialization_context
26237
+ end
26238
+
26065
26239
  sig { params(field: String).returns(T.untyped) }
26066
26240
  def [](field)
26067
26241
  end
@@ -26300,9 +26474,12 @@ class Temporalio::Api::WorkflowService::V1::StartNexusOperationExecutionRequest
26300
26474
  input: T.nilable(Temporalio::Api::Common::V1::Payload),
26301
26475
  id_reuse_policy: T.nilable(T.any(Symbol, String, Integer)),
26302
26476
  id_conflict_policy: T.nilable(T.any(Symbol, String, Integer)),
26477
+ on_conflict_options: T.nilable(Temporalio::Api::NexusOperation::V1::OnConflictOptions),
26303
26478
  search_attributes: T.nilable(Temporalio::Api::Common::V1::SearchAttributes),
26304
26479
  nexus_header: T.nilable(T::Hash[String, String]),
26305
- user_metadata: T.nilable(Temporalio::Api::Sdk::V1::UserMetadata)
26480
+ user_metadata: T.nilable(Temporalio::Api::Sdk::V1::UserMetadata),
26481
+ completion_callbacks: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Callback)]),
26482
+ links: T.nilable(T::Array[T.nilable(Temporalio::Api::Common::V1::Link)])
26306
26483
  ).void
26307
26484
  end
26308
26485
  def initialize(
@@ -26319,9 +26496,12 @@ class Temporalio::Api::WorkflowService::V1::StartNexusOperationExecutionRequest
26319
26496
  input: nil,
26320
26497
  id_reuse_policy: :NEXUS_OPERATION_ID_REUSE_POLICY_UNSPECIFIED,
26321
26498
  id_conflict_policy: :NEXUS_OPERATION_ID_CONFLICT_POLICY_UNSPECIFIED,
26499
+ on_conflict_options: nil,
26322
26500
  search_attributes: nil,
26323
26501
  nexus_header: ::Google::Protobuf::Map.new(:string, :string),
26324
- user_metadata: nil
26502
+ user_metadata: nil,
26503
+ completion_callbacks: [],
26504
+ links: []
26325
26505
  )
26326
26506
  end
26327
26507
 
@@ -26574,6 +26754,27 @@ class Temporalio::Api::WorkflowService::V1::StartNexusOperationExecutionRequest
26574
26754
  def clear_id_conflict_policy
26575
26755
  end
26576
26756
 
26757
+ # Defines actions to be done to the existing running standalone Nexus when the conflict policy
26758
+ # NEXUS_OPERATION_ID_CONFLICT_POLICY_USE_EXISTING is used. If not set or set to a empty object
26759
+ # (all options with default value), it will not modify the running operation.
26760
+ sig { returns(T.nilable(Temporalio::Api::NexusOperation::V1::OnConflictOptions)) }
26761
+ def on_conflict_options
26762
+ end
26763
+
26764
+ # Defines actions to be done to the existing running standalone Nexus when the conflict policy
26765
+ # NEXUS_OPERATION_ID_CONFLICT_POLICY_USE_EXISTING is used. If not set or set to a empty object
26766
+ # (all options with default value), it will not modify the running operation.
26767
+ sig { params(value: T.nilable(Temporalio::Api::NexusOperation::V1::OnConflictOptions)).void }
26768
+ def on_conflict_options=(value)
26769
+ end
26770
+
26771
+ # Defines actions to be done to the existing running standalone Nexus when the conflict policy
26772
+ # NEXUS_OPERATION_ID_CONFLICT_POLICY_USE_EXISTING is used. If not set or set to a empty object
26773
+ # (all options with default value), it will not modify the running operation.
26774
+ sig { void }
26775
+ def clear_on_conflict_options
26776
+ end
26777
+
26577
26778
  # Search attributes for indexing.
26578
26779
  sig { returns(T.nilable(Temporalio::Api::Common::V1::SearchAttributes)) }
26579
26780
  def search_attributes
@@ -26634,6 +26835,39 @@ class Temporalio::Api::WorkflowService::V1::StartNexusOperationExecutionRequest
26634
26835
  def clear_user_metadata
26635
26836
  end
26636
26837
 
26838
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
26839
+ sig { returns(T::Array[T.nilable(Temporalio::Api::Common::V1::Callback)]) }
26840
+ def completion_callbacks
26841
+ end
26842
+
26843
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
26844
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
26845
+ def completion_callbacks=(value)
26846
+ end
26847
+
26848
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
26849
+ sig { void }
26850
+ def clear_completion_callbacks
26851
+ end
26852
+
26853
+ # Links to be associated with the Nexus operation. Callbacks may also have associated links;
26854
+ # links already included with a callback should not be duplicated here.
26855
+ sig { returns(T::Array[T.nilable(Temporalio::Api::Common::V1::Link)]) }
26856
+ def links
26857
+ end
26858
+
26859
+ # Links to be associated with the Nexus operation. Callbacks may also have associated links;
26860
+ # links already included with a callback should not be duplicated here.
26861
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
26862
+ def links=(value)
26863
+ end
26864
+
26865
+ # Links to be associated with the Nexus operation. Callbacks may also have associated links;
26866
+ # links already included with a callback should not be duplicated here.
26867
+ sig { void }
26868
+ def clear_links
26869
+ end
26870
+
26637
26871
  sig { params(field: String).returns(T.untyped) }
26638
26872
  def [](field)
26639
26873
  end
@@ -26913,7 +27147,8 @@ class Temporalio::Api::WorkflowService::V1::DescribeNexusOperationExecutionRespo
26913
27147
  input: T.nilable(Temporalio::Api::Common::V1::Payload),
26914
27148
  result: T.nilable(Temporalio::Api::Common::V1::Payload),
26915
27149
  failure: T.nilable(Temporalio::Api::Failure::V1::Failure),
26916
- long_poll_token: T.nilable(String)
27150
+ long_poll_token: T.nilable(String),
27151
+ completion_callbacks: T.nilable(T::Array[T.nilable(Temporalio::Api::NexusOperation::V1::CallbackInfo)])
26917
27152
  ).void
26918
27153
  end
26919
27154
  def initialize(
@@ -26922,7 +27157,8 @@ class Temporalio::Api::WorkflowService::V1::DescribeNexusOperationExecutionRespo
26922
27157
  input: nil,
26923
27158
  result: nil,
26924
27159
  failure: nil,
26925
- long_poll_token: ""
27160
+ long_poll_token: "",
27161
+ completion_callbacks: []
26926
27162
  )
26927
27163
  end
26928
27164
 
@@ -27019,6 +27255,24 @@ class Temporalio::Api::WorkflowService::V1::DescribeNexusOperationExecutionRespo
27019
27255
  def clear_long_poll_token
27020
27256
  end
27021
27257
 
27258
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
27259
+ # They will remain in the CALLBACK_STATE_STANDBY state until the Nexus operation is finished.
27260
+ sig { returns(T::Array[T.nilable(Temporalio::Api::NexusOperation::V1::CallbackInfo)]) }
27261
+ def completion_callbacks
27262
+ end
27263
+
27264
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
27265
+ # They will remain in the CALLBACK_STATE_STANDBY state until the Nexus operation is finished.
27266
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
27267
+ def completion_callbacks=(value)
27268
+ end
27269
+
27270
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
27271
+ # They will remain in the CALLBACK_STATE_STANDBY state until the Nexus operation is finished.
27272
+ sig { void }
27273
+ def clear_completion_callbacks
27274
+ end
27275
+
27022
27276
  sig { returns(T.nilable(Symbol)) }
27023
27277
  def outcome
27024
27278
  end
@@ -27172,6 +27426,7 @@ class Temporalio::Api::WorkflowService::V1::PollNexusOperationExecutionResponse
27172
27426
  run_id: T.nilable(String),
27173
27427
  wait_stage: T.nilable(T.any(Symbol, String, Integer)),
27174
27428
  operation_token: T.nilable(String),
27429
+ propagated_nexus_serialization_context: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext),
27175
27430
  result: T.nilable(Temporalio::Api::Common::V1::Payload),
27176
27431
  failure: T.nilable(Temporalio::Api::Failure::V1::Failure)
27177
27432
  ).void
@@ -27180,6 +27435,7 @@ class Temporalio::Api::WorkflowService::V1::PollNexusOperationExecutionResponse
27180
27435
  run_id: "",
27181
27436
  wait_stage: :NEXUS_OPERATION_WAIT_STAGE_UNSPECIFIED,
27182
27437
  operation_token: "",
27438
+ propagated_nexus_serialization_context: nil,
27183
27439
  result: nil,
27184
27440
  failure: nil
27185
27441
  )
@@ -27230,6 +27486,24 @@ class Temporalio::Api::WorkflowService::V1::PollNexusOperationExecutionResponse
27230
27486
  def clear_operation_token
27231
27487
  end
27232
27488
 
27489
+ # Serialization context for this operation's payloads, derived from its stored target.
27490
+ # For a reused operation, this is the original execution's context.
27491
+ sig { returns(T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)) }
27492
+ def propagated_nexus_serialization_context
27493
+ end
27494
+
27495
+ # Serialization context for this operation's payloads, derived from its stored target.
27496
+ # For a reused operation, this is the original execution's context.
27497
+ sig { params(value: T.nilable(Temporalio::Api::Nexus::V1::PropagatedSerializationContext)).void }
27498
+ def propagated_nexus_serialization_context=(value)
27499
+ end
27500
+
27501
+ # Serialization context for this operation's payloads, derived from its stored target.
27502
+ # For a reused operation, this is the original execution's context.
27503
+ sig { void }
27504
+ def clear_propagated_nexus_serialization_context
27505
+ end
27506
+
27233
27507
  # The result if the operation completed successfully.
27234
27508
  sig { returns(T.nilable(Temporalio::Api::Common::V1::Payload)) }
27235
27509
  def result