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
@@ -639,6 +639,11 @@ module Temporalio
639
639
  def has_time_skipping_config?: () -> bool
640
640
  def clear_time_skipping_config: () -> void
641
641
 
642
+ # Serialization context propagated from the Nexus caller that started this workflow.
643
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
644
+ def has_propagated_nexus_serialization_context?: () -> bool
645
+ def clear_propagated_nexus_serialization_context: () -> void
646
+
642
647
  type init_map = {
643
648
  namespace: (::String | ::Symbol)?,
644
649
  "namespace" => (::String | ::Symbol)?,
@@ -698,6 +703,8 @@ module Temporalio
698
703
  "eager_worker_deployment_options" => (::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions | ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions::init_map)?,
699
704
  time_skipping_config: (::Temporalio::Api::Common::V1::TimeSkippingConfig | ::Temporalio::Api::Common::V1::TimeSkippingConfig::init_map)?,
700
705
  "time_skipping_config" => (::Temporalio::Api::Common::V1::TimeSkippingConfig | ::Temporalio::Api::Common::V1::TimeSkippingConfig::init_map)?,
706
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
707
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
701
708
  }
702
709
 
703
710
  def initialize: (?init_map initial_value) -> void
@@ -732,6 +739,7 @@ module Temporalio
732
739
  | ("priority" name) -> ::Temporalio::Api::Common::V1::Priority?
733
740
  | ("eager_worker_deployment_options" name) -> ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions?
734
741
  | ("time_skipping_config" name) -> ::Temporalio::Api::Common::V1::TimeSkippingConfig?
742
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
735
743
 
736
744
  def []=:
737
745
  ("namespace" name, (::String | ::Symbol) value) -> void
@@ -763,6 +771,7 @@ module Temporalio
763
771
  | ("priority" name, ::Temporalio::Api::Common::V1::Priority? value) -> void
764
772
  | ("eager_worker_deployment_options" name, ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions? value) -> void
765
773
  | ("time_skipping_config" name, ::Temporalio::Api::Common::V1::TimeSkippingConfig? value) -> void
774
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
766
775
  end
767
776
 
768
777
  class StartWorkflowExecutionResponse < ::Google::Protobuf::AbstractMessage
@@ -924,6 +933,13 @@ module Temporalio
924
933
  attr_accessor archived(): bool
925
934
  def clear_archived: () -> void
926
935
 
936
+ # Serialization context propagated from the Nexus caller that started this run.
937
+ # Returned on the initial request (without next_page_token) when present. Clients should
938
+ # retain it across paginated responses, which may omit it.
939
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
940
+ def has_propagated_nexus_serialization_context?: () -> bool
941
+ def clear_propagated_nexus_serialization_context: () -> void
942
+
927
943
  type init_map = {
928
944
  history: (::Temporalio::Api::History::V1::History | ::Temporalio::Api::History::V1::History::init_map)?,
929
945
  "history" => (::Temporalio::Api::History::V1::History | ::Temporalio::Api::History::V1::History::init_map)?,
@@ -933,6 +949,8 @@ module Temporalio
933
949
  "next_page_token" => ::String?,
934
950
  archived: bool?,
935
951
  "archived" => bool?,
952
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
953
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
936
954
  }
937
955
 
938
956
  def initialize: (?init_map initial_value) -> void
@@ -942,12 +960,14 @@ module Temporalio
942
960
  | ("raw_history" name) -> ::Google::Protobuf::RepeatedField
943
961
  | ("next_page_token" name) -> ::String
944
962
  | ("archived" name) -> bool
963
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
945
964
 
946
965
  def []=:
947
966
  ("history" name, ::Temporalio::Api::History::V1::History? value) -> void
948
967
  | ("raw_history" name, ::Google::Protobuf::RepeatedField value) -> void
949
968
  | ("next_page_token" name, ::String value) -> void
950
969
  | ("archived" name, bool value) -> void
970
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
951
971
  end
952
972
 
953
973
  class GetWorkflowExecutionHistoryReverseRequest < ::Google::Protobuf::AbstractMessage
@@ -1990,6 +2010,11 @@ module Temporalio
1990
2010
  def has_poller_groups_info?: () -> bool
1991
2011
  def clear_poller_groups_info: () -> void
1992
2012
 
2013
+ # Serialization context propagated from the Nexus caller that started this activity.
2014
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
2015
+ def has_propagated_nexus_serialization_context?: () -> bool
2016
+ def clear_propagated_nexus_serialization_context: () -> void
2017
+
1993
2018
  type init_map = {
1994
2019
  task_token: ::String?,
1995
2020
  "task_token" => ::String?,
@@ -2035,6 +2060,8 @@ module Temporalio
2035
2060
  "poller_group_infos" => ::Array[::Temporalio::Api::TaskQueue::V1::PollerGroupInfo]?,
2036
2061
  poller_groups_info: (::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo | ::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo::init_map)?,
2037
2062
  "poller_groups_info" => (::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo | ::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo::init_map)?,
2063
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
2064
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
2038
2065
  }
2039
2066
 
2040
2067
  def initialize: (?init_map initial_value) -> void
@@ -2062,6 +2089,7 @@ module Temporalio
2062
2089
  | ("activity_run_id" name) -> ::String
2063
2090
  | ("poller_group_infos" name) -> ::Google::Protobuf::RepeatedField
2064
2091
  | ("poller_groups_info" name) -> ::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo?
2092
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
2065
2093
 
2066
2094
  def []=:
2067
2095
  ("task_token" name, ::String value) -> void
@@ -2086,6 +2114,7 @@ module Temporalio
2086
2114
  | ("activity_run_id" name, (::String | ::Symbol) value) -> void
2087
2115
  | ("poller_group_infos" name, ::Google::Protobuf::RepeatedField value) -> void
2088
2116
  | ("poller_groups_info" name, ::Temporalio::Api::TaskQueue::V1::PollerGroupsInfo? value) -> void
2117
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
2089
2118
  end
2090
2119
 
2091
2120
  class RecordActivityTaskHeartbeatRequest < ::Google::Protobuf::AbstractMessage
@@ -2528,6 +2557,12 @@ module Temporalio
2528
2557
  def has_deployment_options?: () -> bool
2529
2558
  def clear_deployment_options: () -> void
2530
2559
 
2560
+ # Why did the task fail? When unset, the failure is treated as an unspecified activity failure.
2561
+ attr_reader cause(): ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Integer
2562
+ attr_writer cause(): ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float
2563
+ attr_reader cause_const(): ::Integer
2564
+ def clear_cause: () -> void
2565
+
2531
2566
  type init_map = {
2532
2567
  task_token: ::String?,
2533
2568
  "task_token" => ::String?,
@@ -2547,6 +2582,8 @@ module Temporalio
2547
2582
  "deployment" => (::Temporalio::Api::Deployment::V1::Deployment | ::Temporalio::Api::Deployment::V1::Deployment::init_map)?,
2548
2583
  deployment_options: (::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions | ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions::init_map)?,
2549
2584
  "deployment_options" => (::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions | ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions::init_map)?,
2585
+ cause: (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float)?,
2586
+ "cause" => (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float)?,
2550
2587
  }
2551
2588
 
2552
2589
  def initialize: (?init_map initial_value) -> void
@@ -2561,6 +2598,7 @@ module Temporalio
2561
2598
  | ("worker_version" name) -> ::Temporalio::Api::Common::V1::WorkerVersionStamp?
2562
2599
  | ("deployment" name) -> ::Temporalio::Api::Deployment::V1::Deployment?
2563
2600
  | ("deployment_options" name) -> ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions?
2601
+ | ("cause" name) -> (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Integer)
2564
2602
 
2565
2603
  def []=:
2566
2604
  ("task_token" name, ::String value) -> void
@@ -2572,6 +2610,7 @@ module Temporalio
2572
2610
  | ("worker_version" name, ::Temporalio::Api::Common::V1::WorkerVersionStamp? value) -> void
2573
2611
  | ("deployment" name, ::Temporalio::Api::Deployment::V1::Deployment? value) -> void
2574
2612
  | ("deployment_options" name, ::Temporalio::Api::Deployment::V1::WorkerDeploymentOptions? value) -> void
2613
+ | ("cause" name, (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float) value) -> void
2575
2614
  end
2576
2615
 
2577
2616
  class RespondActivityTaskFailedResponse < ::Google::Protobuf::AbstractMessage
@@ -2638,6 +2677,13 @@ module Temporalio
2638
2677
  attr_writer resource_id(): ::String | ::Symbol
2639
2678
  def clear_resource_id: () -> void
2640
2679
 
2680
+ # Why did the activity task fail? Optional; when unset the failure is treated as a normal
2681
+ # activity failure. See the type's doc for more.
2682
+ attr_reader cause(): ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Integer
2683
+ attr_writer cause(): ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float
2684
+ attr_reader cause_const(): ::Integer
2685
+ def clear_cause: () -> void
2686
+
2641
2687
  type init_map = {
2642
2688
  namespace: (::String | ::Symbol)?,
2643
2689
  "namespace" => (::String | ::Symbol)?,
@@ -2655,6 +2701,8 @@ module Temporalio
2655
2701
  "last_heartbeat_details" => (::Temporalio::Api::Common::V1::Payloads | ::Temporalio::Api::Common::V1::Payloads::init_map)?,
2656
2702
  resource_id: (::String | ::Symbol)?,
2657
2703
  "resource_id" => (::String | ::Symbol)?,
2704
+ cause: (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float)?,
2705
+ "cause" => (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float)?,
2658
2706
  }
2659
2707
 
2660
2708
  def initialize: (?init_map initial_value) -> void
@@ -2668,6 +2716,7 @@ module Temporalio
2668
2716
  | ("identity" name) -> ::String
2669
2717
  | ("last_heartbeat_details" name) -> ::Temporalio::Api::Common::V1::Payloads?
2670
2718
  | ("resource_id" name) -> ::String
2719
+ | ("cause" name) -> (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Integer)
2671
2720
 
2672
2721
  def []=:
2673
2722
  ("namespace" name, (::String | ::Symbol) value) -> void
@@ -2678,6 +2727,7 @@ module Temporalio
2678
2727
  | ("identity" name, (::String | ::Symbol) value) -> void
2679
2728
  | ("last_heartbeat_details" name, ::Temporalio::Api::Common::V1::Payloads? value) -> void
2680
2729
  | ("resource_id" name, (::String | ::Symbol) value) -> void
2730
+ | ("cause" name, (::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::names | ::Temporalio::Api::Enums::V1::ActivityTaskFailedCause::strings | ::Integer | ::Float) value) -> void
2681
2731
  end
2682
2732
 
2683
2733
  class RespondActivityTaskFailedByIdResponse < ::Google::Protobuf::AbstractMessage
@@ -11384,6 +11434,18 @@ module Temporalio
11384
11434
  def has_start_delay?: () -> bool
11385
11435
  def clear_start_delay: () -> void
11386
11436
 
11437
+ # Serialization context propagated from the Nexus caller that started this activity.
11438
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
11439
+ def has_propagated_nexus_serialization_context?: () -> bool
11440
+ def clear_propagated_nexus_serialization_context: () -> void
11441
+
11442
+ # Request that the first activity task be returned directly in the start response instead of
11443
+ # being dispatched through a task queue. If set to true, the caller is expected to have a
11444
+ # worker available and capable of processing the task. The returned task will be marked as
11445
+ # started. The server may ignore this request.
11446
+ attr_accessor request_eager_execution(): bool
11447
+ def clear_request_eager_execution: () -> void
11448
+
11387
11449
  type init_map = {
11388
11450
  namespace: (::String | ::Symbol)?,
11389
11451
  "namespace" => (::String | ::Symbol)?,
@@ -11429,6 +11491,10 @@ module Temporalio
11429
11491
  "on_conflict_options" => (::Temporalio::Api::Common::V1::OnConflictOptions | ::Temporalio::Api::Common::V1::OnConflictOptions::init_map)?,
11430
11492
  start_delay: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
11431
11493
  "start_delay" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
11494
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
11495
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
11496
+ request_eager_execution: bool?,
11497
+ "request_eager_execution" => bool?,
11432
11498
  }
11433
11499
 
11434
11500
  def initialize: (?init_map initial_value) -> void
@@ -11456,6 +11522,8 @@ module Temporalio
11456
11522
  | ("links" name) -> ::Google::Protobuf::RepeatedField
11457
11523
  | ("on_conflict_options" name) -> ::Temporalio::Api::Common::V1::OnConflictOptions?
11458
11524
  | ("start_delay" name) -> ::Google::Protobuf::Duration?
11525
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
11526
+ | ("request_eager_execution" name) -> bool
11459
11527
 
11460
11528
  def []=:
11461
11529
  ("namespace" name, (::String | ::Symbol) value) -> void
@@ -11480,6 +11548,8 @@ module Temporalio
11480
11548
  | ("links" name, ::Google::Protobuf::RepeatedField value) -> void
11481
11549
  | ("on_conflict_options" name, ::Temporalio::Api::Common::V1::OnConflictOptions? value) -> void
11482
11550
  | ("start_delay" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
11551
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
11552
+ | ("request_eager_execution" name, bool value) -> void
11483
11553
  end
11484
11554
 
11485
11555
  class StartActivityExecutionResponse < ::Google::Protobuf::AbstractMessage
@@ -11498,6 +11568,12 @@ module Temporalio
11498
11568
  def has_link?: () -> bool
11499
11569
  def clear_link: () -> void
11500
11570
 
11571
+ # The first activity task when eager execution was requested and accepted.
11572
+ # This is set only for the first attempt of a newly started activity.
11573
+ attr_accessor eager_activity_task(): ::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse?
11574
+ def has_eager_activity_task?: () -> bool
11575
+ def clear_eager_activity_task: () -> void
11576
+
11501
11577
  type init_map = {
11502
11578
  run_id: (::String | ::Symbol)?,
11503
11579
  "run_id" => (::String | ::Symbol)?,
@@ -11505,6 +11581,8 @@ module Temporalio
11505
11581
  "started" => bool?,
11506
11582
  link: (::Temporalio::Api::Common::V1::Link | ::Temporalio::Api::Common::V1::Link::init_map)?,
11507
11583
  "link" => (::Temporalio::Api::Common::V1::Link | ::Temporalio::Api::Common::V1::Link::init_map)?,
11584
+ eager_activity_task: (::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse | ::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse::init_map)?,
11585
+ "eager_activity_task" => (::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse | ::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse::init_map)?,
11508
11586
  }
11509
11587
 
11510
11588
  def initialize: (?init_map initial_value) -> void
@@ -11513,11 +11591,13 @@ module Temporalio
11513
11591
  ("run_id" name) -> ::String
11514
11592
  | ("started" name) -> bool
11515
11593
  | ("link" name) -> ::Temporalio::Api::Common::V1::Link?
11594
+ | ("eager_activity_task" name) -> ::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse?
11516
11595
 
11517
11596
  def []=:
11518
11597
  ("run_id" name, (::String | ::Symbol) value) -> void
11519
11598
  | ("started" name, bool value) -> void
11520
11599
  | ("link" name, ::Temporalio::Api::Common::V1::Link? value) -> void
11600
+ | ("eager_activity_task" name, ::Temporalio::Api::WorkflowService::V1::PollActivityTaskQueueResponse? value) -> void
11521
11601
  end
11522
11602
 
11523
11603
  class DescribeActivityExecutionRequest < ::Google::Protobuf::AbstractMessage
@@ -11716,11 +11796,18 @@ module Temporalio
11716
11796
  def has_outcome?: () -> bool
11717
11797
  def clear_outcome: () -> void
11718
11798
 
11799
+ # Serialization context propagated from the Nexus caller that started this activity.
11800
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
11801
+ def has_propagated_nexus_serialization_context?: () -> bool
11802
+ def clear_propagated_nexus_serialization_context: () -> void
11803
+
11719
11804
  type init_map = {
11720
11805
  run_id: (::String | ::Symbol)?,
11721
11806
  "run_id" => (::String | ::Symbol)?,
11722
11807
  outcome: (::Temporalio::Api::Activity::V1::ActivityExecutionOutcome | ::Temporalio::Api::Activity::V1::ActivityExecutionOutcome::init_map)?,
11723
11808
  "outcome" => (::Temporalio::Api::Activity::V1::ActivityExecutionOutcome | ::Temporalio::Api::Activity::V1::ActivityExecutionOutcome::init_map)?,
11809
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
11810
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
11724
11811
  }
11725
11812
 
11726
11813
  def initialize: (?init_map initial_value) -> void
@@ -11728,10 +11815,12 @@ module Temporalio
11728
11815
  def []:
11729
11816
  ("run_id" name) -> ::String
11730
11817
  | ("outcome" name) -> ::Temporalio::Api::Activity::V1::ActivityExecutionOutcome?
11818
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
11731
11819
 
11732
11820
  def []=:
11733
11821
  ("run_id" name, (::String | ::Symbol) value) -> void
11734
11822
  | ("outcome" name, ::Temporalio::Api::Activity::V1::ActivityExecutionOutcome? value) -> void
11823
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
11735
11824
  end
11736
11825
 
11737
11826
  class ListActivityExecutionsRequest < ::Google::Protobuf::AbstractMessage
@@ -11897,6 +11986,13 @@ module Temporalio
11897
11986
  attr_reader id_conflict_policy_const(): ::Integer
11898
11987
  def clear_id_conflict_policy: () -> void
11899
11988
 
11989
+ # Defines actions to be done to the existing running standalone Nexus when the conflict policy
11990
+ # NEXUS_OPERATION_ID_CONFLICT_POLICY_USE_EXISTING is used. If not set or set to a empty object
11991
+ # (all options with default value), it will not modify the running operation.
11992
+ attr_accessor on_conflict_options(): ::Temporalio::Api::NexusOperation::V1::OnConflictOptions?
11993
+ def has_on_conflict_options?: () -> bool
11994
+ def clear_on_conflict_options: () -> void
11995
+
11900
11996
  # Search attributes for indexing.
11901
11997
  attr_accessor search_attributes(): ::Temporalio::Api::Common::V1::SearchAttributes?
11902
11998
  def has_search_attributes?: () -> bool
@@ -11916,6 +12012,15 @@ module Temporalio
11916
12012
  def has_user_metadata?: () -> bool
11917
12013
  def clear_user_metadata: () -> void
11918
12014
 
12015
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
12016
+ attr_accessor completion_callbacks(): ::Google::Protobuf::RepeatedField
12017
+ def clear_completion_callbacks: () -> void
12018
+
12019
+ # Links to be associated with the Nexus operation. Callbacks may also have associated links;
12020
+ # links already included with a callback should not be duplicated here.
12021
+ attr_accessor links(): ::Google::Protobuf::RepeatedField
12022
+ def clear_links: () -> void
12023
+
11919
12024
  type init_map = {
11920
12025
  namespace: (::String | ::Symbol)?,
11921
12026
  "namespace" => (::String | ::Symbol)?,
@@ -11943,12 +12048,18 @@ module Temporalio
11943
12048
  "id_reuse_policy" => (::Temporalio::Api::Enums::V1::NexusOperationIdReusePolicy::names | ::Temporalio::Api::Enums::V1::NexusOperationIdReusePolicy::strings | ::Integer | ::Float)?,
11944
12049
  id_conflict_policy: (::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::names | ::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::strings | ::Integer | ::Float)?,
11945
12050
  "id_conflict_policy" => (::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::names | ::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::strings | ::Integer | ::Float)?,
12051
+ on_conflict_options: (::Temporalio::Api::NexusOperation::V1::OnConflictOptions | ::Temporalio::Api::NexusOperation::V1::OnConflictOptions::init_map)?,
12052
+ "on_conflict_options" => (::Temporalio::Api::NexusOperation::V1::OnConflictOptions | ::Temporalio::Api::NexusOperation::V1::OnConflictOptions::init_map)?,
11946
12053
  search_attributes: (::Temporalio::Api::Common::V1::SearchAttributes | ::Temporalio::Api::Common::V1::SearchAttributes::init_map)?,
11947
12054
  "search_attributes" => (::Temporalio::Api::Common::V1::SearchAttributes | ::Temporalio::Api::Common::V1::SearchAttributes::init_map)?,
11948
12055
  nexus_header: ::Hash[::String | ::Symbol, ::String | ::Symbol]?,
11949
12056
  "nexus_header" => ::Hash[::String | ::Symbol, ::String | ::Symbol]?,
11950
12057
  user_metadata: (::Temporalio::Api::Sdk::V1::UserMetadata | ::Temporalio::Api::Sdk::V1::UserMetadata::init_map)?,
11951
12058
  "user_metadata" => (::Temporalio::Api::Sdk::V1::UserMetadata | ::Temporalio::Api::Sdk::V1::UserMetadata::init_map)?,
12059
+ completion_callbacks: ::Array[::Temporalio::Api::Common::V1::Callback]?,
12060
+ "completion_callbacks" => ::Array[::Temporalio::Api::Common::V1::Callback]?,
12061
+ links: ::Array[::Temporalio::Api::Common::V1::Link]?,
12062
+ "links" => ::Array[::Temporalio::Api::Common::V1::Link]?,
11952
12063
  }
11953
12064
 
11954
12065
  def initialize: (?init_map initial_value) -> void
@@ -11967,9 +12078,12 @@ module Temporalio
11967
12078
  | ("input" name) -> ::Temporalio::Api::Common::V1::Payload?
11968
12079
  | ("id_reuse_policy" name) -> (::Temporalio::Api::Enums::V1::NexusOperationIdReusePolicy::names | ::Integer)
11969
12080
  | ("id_conflict_policy" name) -> (::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::names | ::Integer)
12081
+ | ("on_conflict_options" name) -> ::Temporalio::Api::NexusOperation::V1::OnConflictOptions?
11970
12082
  | ("search_attributes" name) -> ::Temporalio::Api::Common::V1::SearchAttributes?
11971
12083
  | ("nexus_header" name) -> (::Google::Protobuf::Map[::String, ::String])
11972
12084
  | ("user_metadata" name) -> ::Temporalio::Api::Sdk::V1::UserMetadata?
12085
+ | ("completion_callbacks" name) -> ::Google::Protobuf::RepeatedField
12086
+ | ("links" name) -> ::Google::Protobuf::RepeatedField
11973
12087
 
11974
12088
  def []=:
11975
12089
  ("namespace" name, (::String | ::Symbol) value) -> void
@@ -11985,9 +12099,12 @@ module Temporalio
11985
12099
  | ("input" name, ::Temporalio::Api::Common::V1::Payload? value) -> void
11986
12100
  | ("id_reuse_policy" name, (::Temporalio::Api::Enums::V1::NexusOperationIdReusePolicy::names | ::Temporalio::Api::Enums::V1::NexusOperationIdReusePolicy::strings | ::Integer | ::Float) value) -> void
11987
12101
  | ("id_conflict_policy" name, (::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::names | ::Temporalio::Api::Enums::V1::NexusOperationIdConflictPolicy::strings | ::Integer | ::Float) value) -> void
12102
+ | ("on_conflict_options" name, ::Temporalio::Api::NexusOperation::V1::OnConflictOptions? value) -> void
11988
12103
  | ("search_attributes" name, ::Temporalio::Api::Common::V1::SearchAttributes? value) -> void
11989
12104
  | ("nexus_header" name, (::Google::Protobuf::Map[::String, ::String]) value) -> void
11990
12105
  | ("user_metadata" name, ::Temporalio::Api::Sdk::V1::UserMetadata? value) -> void
12106
+ | ("completion_callbacks" name, ::Google::Protobuf::RepeatedField value) -> void
12107
+ | ("links" name, ::Google::Protobuf::RepeatedField value) -> void
11991
12108
  end
11992
12109
 
11993
12110
  class StartNexusOperationExecutionResponse < ::Google::Protobuf::AbstractMessage
@@ -12117,6 +12234,11 @@ module Temporalio
12117
12234
  attr_accessor long_poll_token(): ::String
12118
12235
  def clear_long_poll_token: () -> void
12119
12236
 
12237
+ # Completion callbacks to be invoked once the Nexus operation reaches a terminal state.
12238
+ # They will remain in the CALLBACK_STATE_STANDBY state until the Nexus operation is finished.
12239
+ attr_accessor completion_callbacks(): ::Google::Protobuf::RepeatedField
12240
+ def clear_completion_callbacks: () -> void
12241
+
12120
12242
  # Only set if the operation is completed and include_outcome was true in the request.
12121
12243
  attr_reader outcome(): (::Temporalio::Api::Common::V1::Payload | ::Temporalio::Api::Failure::V1::Failure)?
12122
12244
  def has_outcome?: () -> bool
@@ -12135,6 +12257,8 @@ module Temporalio
12135
12257
  "failure" => (::Temporalio::Api::Failure::V1::Failure | ::Temporalio::Api::Failure::V1::Failure::init_map)?,
12136
12258
  long_poll_token: ::String?,
12137
12259
  "long_poll_token" => ::String?,
12260
+ completion_callbacks: ::Array[::Temporalio::Api::NexusOperation::V1::CallbackInfo]?,
12261
+ "completion_callbacks" => ::Array[::Temporalio::Api::NexusOperation::V1::CallbackInfo]?,
12138
12262
  }
12139
12263
 
12140
12264
  def initialize: (?init_map initial_value) -> void
@@ -12146,6 +12270,7 @@ module Temporalio
12146
12270
  | ("result" name) -> ::Temporalio::Api::Common::V1::Payload?
12147
12271
  | ("failure" name) -> ::Temporalio::Api::Failure::V1::Failure?
12148
12272
  | ("long_poll_token" name) -> ::String
12273
+ | ("completion_callbacks" name) -> ::Google::Protobuf::RepeatedField
12149
12274
 
12150
12275
  def []=:
12151
12276
  ("run_id" name, (::String | ::Symbol) value) -> void
@@ -12154,6 +12279,7 @@ module Temporalio
12154
12279
  | ("result" name, ::Temporalio::Api::Common::V1::Payload? value) -> void
12155
12280
  | ("failure" name, ::Temporalio::Api::Failure::V1::Failure? value) -> void
12156
12281
  | ("long_poll_token" name, ::String value) -> void
12282
+ | ("completion_callbacks" name, ::Google::Protobuf::RepeatedField value) -> void
12157
12283
  end
12158
12284
 
12159
12285
  class PollNexusOperationExecutionRequest < ::Google::Protobuf::AbstractMessage
@@ -12221,6 +12347,12 @@ module Temporalio
12221
12347
  attr_writer operation_token(): ::String | ::Symbol
12222
12348
  def clear_operation_token: () -> void
12223
12349
 
12350
+ # Serialization context for this operation's payloads, derived from its stored target.
12351
+ # For a reused operation, this is the original execution's context.
12352
+ attr_accessor propagated_nexus_serialization_context(): ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
12353
+ def has_propagated_nexus_serialization_context?: () -> bool
12354
+ def clear_propagated_nexus_serialization_context: () -> void
12355
+
12224
12356
  # The result if the operation completed successfully.
12225
12357
  attr_accessor result(): ::Temporalio::Api::Common::V1::Payload?
12226
12358
  def has_result?: () -> bool
@@ -12243,6 +12375,8 @@ module Temporalio
12243
12375
  "wait_stage" => (::Temporalio::Api::Enums::V1::NexusOperationWaitStage::names | ::Temporalio::Api::Enums::V1::NexusOperationWaitStage::strings | ::Integer | ::Float)?,
12244
12376
  operation_token: (::String | ::Symbol)?,
12245
12377
  "operation_token" => (::String | ::Symbol)?,
12378
+ propagated_nexus_serialization_context: (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
12379
+ "propagated_nexus_serialization_context" => (::Temporalio::Api::Nexus::V1::PropagatedSerializationContext | ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext::init_map)?,
12246
12380
  result: (::Temporalio::Api::Common::V1::Payload | ::Temporalio::Api::Common::V1::Payload::init_map)?,
12247
12381
  "result" => (::Temporalio::Api::Common::V1::Payload | ::Temporalio::Api::Common::V1::Payload::init_map)?,
12248
12382
  failure: (::Temporalio::Api::Failure::V1::Failure | ::Temporalio::Api::Failure::V1::Failure::init_map)?,
@@ -12255,6 +12389,7 @@ module Temporalio
12255
12389
  ("run_id" name) -> ::String
12256
12390
  | ("wait_stage" name) -> (::Temporalio::Api::Enums::V1::NexusOperationWaitStage::names | ::Integer)
12257
12391
  | ("operation_token" name) -> ::String
12392
+ | ("propagated_nexus_serialization_context" name) -> ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext?
12258
12393
  | ("result" name) -> ::Temporalio::Api::Common::V1::Payload?
12259
12394
  | ("failure" name) -> ::Temporalio::Api::Failure::V1::Failure?
12260
12395
 
@@ -12262,6 +12397,7 @@ module Temporalio
12262
12397
  ("run_id" name, (::String | ::Symbol) value) -> void
12263
12398
  | ("wait_stage" name, (::Temporalio::Api::Enums::V1::NexusOperationWaitStage::names | ::Temporalio::Api::Enums::V1::NexusOperationWaitStage::strings | ::Integer | ::Float) value) -> void
12264
12399
  | ("operation_token" name, (::String | ::Symbol) value) -> void
12400
+ | ("propagated_nexus_serialization_context" name, ::Temporalio::Api::Nexus::V1::PropagatedSerializationContext? value) -> void
12265
12401
  | ("result" name, ::Temporalio::Api::Common::V1::Payload? value) -> void
12266
12402
  | ("failure" name, ::Temporalio::Api::Failure::V1::Failure? value) -> void
12267
12403
  end
@@ -239,18 +239,19 @@ module Temporalio
239
239
 
240
240
  class Policy
241
241
  attr_reader overlap: OverlapPolicy::enum
242
- attr_reader catchup_window: duration
242
+ attr_reader catchup_window: duration?
243
243
  attr_reader pause_on_failure: bool
244
244
 
245
245
  def self._from_proto: (Api::Schedule::V1::SchedulePolicies raw_policies) -> Policy
246
246
 
247
247
  def initialize: (
248
248
  ?overlap: OverlapPolicy::enum,
249
- ?catchup_window: duration,
249
+ ?catchup_window: duration?,
250
250
  ?pause_on_failure: bool
251
251
  ) -> void
252
252
 
253
253
  def _to_proto: -> Api::Schedule::V1::SchedulePolicies
254
+ def with: (**untyped) -> Policy
254
255
  end
255
256
 
256
257
  class State
@@ -0,0 +1,25 @@
1
+ module Temporalio
2
+ module Converters
3
+ class ExternalStorage
4
+ DEFAULT_PAYLOAD_SIZE_THRESHOLD: Integer
5
+
6
+ type driverSelector = ^(StorageDriverSelectContext, Api::Common::V1::Payload) -> StorageDriver?
7
+
8
+ attr_reader drivers: Array[StorageDriver]
9
+ attr_reader driver_selector: driverSelector
10
+ attr_reader payload_size_threshold: Integer
11
+ attr_reader concurrency: ExternalStorageConcurrency
12
+
13
+ @drivers_by_name: Hash[String, StorageDriver]
14
+
15
+ def initialize: (
16
+ drivers: Array[StorageDriver],
17
+ ?driver_selector: driverSelector?,
18
+ ?payload_size_threshold: Integer,
19
+ ?concurrency: ExternalStorageConcurrency
20
+ ) -> void
21
+
22
+ def driver: (String name) -> StorageDriver?
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,16 @@
1
+ module Temporalio
2
+ module Converters
3
+ class ExternalStorageConcurrency
4
+ DEFAULT_MAX_DRIVER_OPERATIONS: Integer
5
+ DEFAULT_MAX_OPERATIONS_PER_MESSAGE: Integer
6
+
7
+ attr_reader max_driver_operations: Integer
8
+ attr_reader max_operations_per_message: Integer
9
+
10
+ def initialize: (
11
+ ?max_driver_operations: Integer,
12
+ ?max_operations_per_message: Integer
13
+ ) -> void
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,16 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriver
4
+ def name: -> String
5
+ def type: -> String
6
+ def store: (
7
+ StorageDriverStoreContext context,
8
+ Enumerable[Api::Common::V1::Payload] payloads
9
+ ) -> Array[StorageDriverClaim]
10
+ def retrieve: (
11
+ StorageDriverRetrieveContext context,
12
+ Enumerable[StorageDriverClaim] claims
13
+ ) -> Array[Api::Common::V1::Payload]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverActivityInfo
4
+ attr_reader namespace: String
5
+ attr_reader id: String?
6
+ attr_reader run_id: String?
7
+ attr_reader type: String?
8
+
9
+ def initialize: (
10
+ namespace: String,
11
+ ?id: String?,
12
+ ?run_id: String?,
13
+ ?type: String?
14
+ ) -> void
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,9 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverClaim
4
+ attr_reader claim_data: Hash[String, String]
5
+
6
+ def initialize: (claim_data: Hash[String, String]) -> void
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverLimiter
4
+ def permit: [T] (Api::Common::V1::Payload | StorageDriverClaim item) { () -> T } -> T
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,13 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverRetrieveContext
4
+ attr_reader cancellation: Cancellation
5
+ attr_reader limiter: StorageDriverLimiter
6
+
7
+ def initialize: (
8
+ cancellation: Cancellation,
9
+ limiter: StorageDriverLimiter
10
+ ) -> void
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverSelectContext
4
+ attr_reader target: storageDriverTargetInfo?
5
+ attr_reader cancellation: Cancellation
6
+
7
+ def initialize: (
8
+ target: storageDriverTargetInfo?,
9
+ cancellation: Cancellation
10
+ ) -> void
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverStoreContext
4
+ attr_reader target: storageDriverTargetInfo?
5
+ attr_reader cancellation: Cancellation
6
+ attr_reader limiter: StorageDriverLimiter
7
+
8
+ def initialize: (
9
+ target: storageDriverTargetInfo?,
10
+ cancellation: Cancellation,
11
+ limiter: StorageDriverLimiter
12
+ ) -> void
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,5 @@
1
+ module Temporalio
2
+ module Converters
3
+ type storageDriverTargetInfo = StorageDriverWorkflowInfo | StorageDriverActivityInfo
4
+ end
5
+ end
@@ -0,0 +1,17 @@
1
+ module Temporalio
2
+ module Converters
3
+ class StorageDriverWorkflowInfo
4
+ attr_reader namespace: String
5
+ attr_reader id: String?
6
+ attr_reader run_id: String?
7
+ attr_reader type: String?
8
+
9
+ def initialize: (
10
+ namespace: String,
11
+ ?id: String?,
12
+ ?run_id: String?,
13
+ ?type: String?
14
+ ) -> void
15
+ end
16
+ end
17
+ end
@@ -3,6 +3,14 @@ module Temporalio
3
3
  class Failure < Error
4
4
  end
5
5
 
6
+ class InvalidVersioningOverrideError < Failure
7
+ def initialize: -> void
8
+ end
9
+
10
+ class NamespaceNotFoundError < Failure
11
+ def initialize: -> void
12
+ end
13
+
6
14
  class WorkflowAlreadyStartedError < Failure
7
15
  attr_reader workflow_id: String
8
16
  attr_reader workflow_type: String