temporalio 0.4.0-x86_64-linux → 0.6.0-x86_64-linux
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.
- checksums.yaml +4 -4
- data/.yardopts +1 -1
- data/lib/temporalio/activity/cancellation_details.rb +58 -0
- data/lib/temporalio/activity/context.rb +10 -1
- data/lib/temporalio/activity/definition.rb +41 -3
- data/lib/temporalio/activity/info.rb +25 -4
- data/lib/temporalio/activity.rb +2 -0
- data/lib/temporalio/api/activity/v1/message.rb +1 -1
- data/lib/temporalio/api/batch/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/account/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +22 -2
- data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +2 -2
- data/lib/temporalio/api/cloud/connectivityrule/v1/message.rb +29 -0
- data/lib/temporalio/api/cloud/identity/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/namespace/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/nexus/v1/message.rb +3 -2
- data/lib/temporalio/api/cloud/operation/v1/message.rb +2 -2
- data/lib/temporalio/api/cloud/region/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/resource/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/sink/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/usage/v1/message.rb +1 -1
- data/lib/temporalio/api/command/v1/message.rb +2 -2
- data/lib/temporalio/api/common/v1/grpc_status.rb +1 -1
- data/lib/temporalio/api/common/v1/message.rb +4 -2
- data/lib/temporalio/api/deployment/v1/message.rb +3 -2
- data/lib/temporalio/api/enums/v1/batch_operation.rb +2 -2
- data/lib/temporalio/api/enums/v1/command_type.rb +1 -1
- data/lib/temporalio/api/enums/v1/common.rb +5 -2
- data/lib/temporalio/api/enums/v1/deployment.rb +3 -2
- data/lib/temporalio/api/enums/v1/event_type.rb +2 -2
- data/lib/temporalio/api/enums/v1/failed_cause.rb +2 -2
- data/lib/temporalio/api/enums/v1/namespace.rb +1 -1
- data/lib/temporalio/api/enums/v1/nexus.rb +1 -1
- data/lib/temporalio/api/enums/v1/query.rb +1 -1
- data/lib/temporalio/api/enums/v1/reset.rb +1 -1
- data/lib/temporalio/api/enums/v1/schedule.rb +1 -1
- data/lib/temporalio/api/enums/v1/task_queue.rb +3 -2
- data/lib/temporalio/api/enums/v1/update.rb +1 -1
- data/lib/temporalio/api/enums/v1/workflow.rb +2 -2
- data/lib/temporalio/api/errordetails/v1/message.rb +1 -1
- data/lib/temporalio/api/export/v1/message.rb +1 -1
- data/lib/temporalio/api/failure/v1/message.rb +3 -2
- data/lib/temporalio/api/filter/v1/message.rb +1 -1
- data/lib/temporalio/api/history/v1/message.rb +4 -2
- data/lib/temporalio/api/namespace/v1/message.rb +1 -1
- data/lib/temporalio/api/nexus/v1/message.rb +2 -2
- data/lib/temporalio/api/operatorservice/v1/request_response.rb +1 -1
- data/lib/temporalio/api/operatorservice/v1/service.rb +1 -1
- data/lib/temporalio/api/payload_visitor.rb +106 -1
- data/lib/temporalio/api/protocol/v1/message.rb +1 -1
- data/lib/temporalio/api/query/v1/message.rb +1 -1
- data/lib/temporalio/api/replication/v1/message.rb +1 -1
- data/lib/temporalio/api/rules/v1/message.rb +27 -0
- data/lib/temporalio/api/schedule/v1/message.rb +2 -2
- data/lib/temporalio/api/sdk/v1/enhanced_stack_trace.rb +1 -1
- data/lib/temporalio/api/sdk/v1/task_complete_metadata.rb +1 -1
- data/lib/temporalio/api/sdk/v1/user_metadata.rb +1 -1
- data/lib/temporalio/api/sdk/v1/worker_config.rb +23 -0
- data/lib/temporalio/api/sdk/v1/workflow_metadata.rb +1 -1
- data/lib/temporalio/api/taskqueue/v1/message.rb +6 -2
- data/lib/temporalio/api/testservice/v1/request_response.rb +1 -1
- data/lib/temporalio/api/testservice/v1/service.rb +1 -1
- data/lib/temporalio/api/update/v1/message.rb +1 -1
- data/lib/temporalio/api/version/v1/message.rb +1 -1
- data/lib/temporalio/api/worker/v1/message.rb +31 -0
- data/lib/temporalio/api/workflow/v1/message.rb +14 -2
- data/lib/temporalio/api/workflowservice/v1/request_response.rb +28 -2
- data/lib/temporalio/api/workflowservice/v1/service.rb +2 -2
- data/lib/temporalio/cancellation.rb +16 -12
- data/lib/temporalio/client/async_activity_handle.rb +12 -4
- data/lib/temporalio/client/connection/cloud_service.rb +135 -0
- data/lib/temporalio/client/connection/workflow_service.rb +150 -0
- data/lib/temporalio/client/connection.rb +2 -1
- data/lib/temporalio/client/interceptor.rb +25 -7
- data/lib/temporalio/client/schedule.rb +10 -2
- data/lib/temporalio/client/with_start_workflow_operation.rb +9 -1
- data/lib/temporalio/client/workflow_handle.rb +50 -10
- data/lib/temporalio/client/workflow_update_handle.rb +9 -3
- data/lib/temporalio/client.rb +110 -6
- data/lib/temporalio/common_enums.rb +14 -0
- data/lib/temporalio/contrib/open_telemetry.rb +7 -7
- data/lib/temporalio/converters/data_converter.rb +18 -8
- data/lib/temporalio/converters/failure_converter.rb +6 -3
- data/lib/temporalio/converters/payload_converter/binary_null.rb +2 -2
- data/lib/temporalio/converters/payload_converter/binary_plain.rb +2 -2
- data/lib/temporalio/converters/payload_converter/binary_protobuf.rb +2 -2
- data/lib/temporalio/converters/payload_converter/composite.rb +6 -4
- data/lib/temporalio/converters/payload_converter/encoding.rb +4 -2
- data/lib/temporalio/converters/payload_converter/json_plain.rb +24 -7
- data/lib/temporalio/converters/payload_converter/json_protobuf.rb +2 -2
- data/lib/temporalio/converters/payload_converter.rb +16 -6
- data/lib/temporalio/error/failure.rb +19 -1
- data/lib/temporalio/error.rb +1 -1
- data/lib/temporalio/internal/bridge/3.2/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.3/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.4/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +1 -1
- data/lib/temporalio/internal/bridge/api/activity_task/activity_task.rb +3 -2
- data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +1 -1
- data/lib/temporalio/internal/bridge/api/common/common.rb +1 -1
- data/lib/temporalio/internal/bridge/api/core_interface.rb +1 -1
- data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +1 -1
- data/lib/temporalio/internal/bridge/api/nexus/nexus.rb +3 -2
- data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +2 -2
- data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +3 -2
- data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
- data/lib/temporalio/internal/bridge/worker.rb +28 -4
- data/lib/temporalio/internal/bridge.rb +1 -1
- data/lib/temporalio/internal/client/implementation.rb +60 -52
- data/lib/temporalio/internal/proto_utils.rb +4 -4
- data/lib/temporalio/internal/worker/activity_worker.rb +93 -20
- data/lib/temporalio/internal/worker/workflow_instance/child_workflow_handle.rb +8 -6
- data/lib/temporalio/internal/worker/workflow_instance/context.rb +66 -24
- data/lib/temporalio/internal/worker/workflow_instance/details.rb +5 -2
- data/lib/temporalio/internal/worker/workflow_instance/external_workflow_handle.rb +2 -2
- data/lib/temporalio/internal/worker/workflow_instance/externally_immutable_hash.rb +2 -0
- data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +64 -18
- data/lib/temporalio/internal/worker/workflow_instance/outbound_implementation.rb +28 -14
- data/lib/temporalio/internal/worker/workflow_instance/replay_safe_logger.rb +5 -2
- data/lib/temporalio/internal/worker/workflow_instance/scheduler.rb +10 -4
- data/lib/temporalio/internal/worker/workflow_instance.rb +58 -23
- data/lib/temporalio/internal/worker/workflow_worker.rb +16 -6
- data/lib/temporalio/priority.rb +100 -0
- data/lib/temporalio/scoped_logger.rb +1 -1
- data/lib/temporalio/testing/activity_environment.rb +17 -2
- data/lib/temporalio/testing/workflow_environment.rb +3 -3
- data/lib/temporalio/version.rb +1 -1
- data/lib/temporalio/versioning_override.rb +56 -0
- data/lib/temporalio/worker/deployment_options.rb +45 -0
- data/lib/temporalio/worker/illegal_workflow_call_validator.rb +73 -0
- data/lib/temporalio/worker/interceptor.rb +13 -1
- data/lib/temporalio/worker/poller_behavior.rb +61 -0
- data/lib/temporalio/worker/thread_pool.rb +1 -1
- data/lib/temporalio/worker/workflow_executor/thread_pool.rb +2 -1
- data/lib/temporalio/worker/workflow_replayer.rb +12 -13
- data/lib/temporalio/worker.rb +73 -28
- data/lib/temporalio/worker_deployment_version.rb +67 -0
- data/lib/temporalio/workflow/child_workflow_handle.rb +10 -2
- data/lib/temporalio/workflow/definition.rb +187 -39
- data/lib/temporalio/workflow/external_workflow_handle.rb +3 -1
- data/lib/temporalio/workflow/info.rb +4 -1
- data/lib/temporalio/workflow.rb +134 -11
- data/lib/temporalio.rb +1 -0
- data/temporalio.gemspec +1 -0
- metadata +13 -2
| @@ -27,11 +27,13 @@ module Temporalio | |
| 27 27 | 
             
                  # Record a heartbeat for the activity.
         | 
| 28 28 | 
             
                  #
         | 
| 29 29 | 
             
                  # @param details [Array<Object>] Details of the heartbeat.
         | 
| 30 | 
            +
                  # @param detail_hints [Array<Object>, nil] Converter hints for the details.
         | 
| 30 31 | 
             
                  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 31 | 
            -
                  def heartbeat(*details, rpc_options: nil)
         | 
| 32 | 
            +
                  def heartbeat(*details, detail_hints: nil, rpc_options: nil)
         | 
| 32 33 | 
             
                    @client._impl.heartbeat_async_activity(Interceptor::HeartbeatAsyncActivityInput.new(
         | 
| 33 34 | 
             
                                                             task_token_or_id_reference:,
         | 
| 34 35 | 
             
                                                             details:,
         | 
| 36 | 
            +
                                                             detail_hints:,
         | 
| 35 37 | 
             
                                                             rpc_options:
         | 
| 36 38 | 
             
                                                           ))
         | 
| 37 39 | 
             
                  end
         | 
| @@ -39,11 +41,13 @@ module Temporalio | |
| 39 41 | 
             
                  # Complete the activity.
         | 
| 40 42 | 
             
                  #
         | 
| 41 43 | 
             
                  # @param result [Object, nil] Result of the activity.
         | 
| 44 | 
            +
                  # @param result_hint [Object, nil] Converter hint for the result.
         | 
| 42 45 | 
             
                  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 43 | 
            -
                  def complete(result = nil, rpc_options: nil)
         | 
| 46 | 
            +
                  def complete(result = nil, result_hint: nil, rpc_options: nil)
         | 
| 44 47 | 
             
                    @client._impl.complete_async_activity(Interceptor::CompleteAsyncActivityInput.new(
         | 
| 45 48 | 
             
                                                            task_token_or_id_reference:,
         | 
| 46 49 | 
             
                                                            result:,
         | 
| 50 | 
            +
                                                            result_hint:,
         | 
| 47 51 | 
             
                                                            rpc_options:
         | 
| 48 52 | 
             
                                                          ))
         | 
| 49 53 | 
             
                  end
         | 
| @@ -52,12 +56,14 @@ module Temporalio | |
| 52 56 | 
             
                  #
         | 
| 53 57 | 
             
                  # @param error [Exception] Error for the activity.
         | 
| 54 58 | 
             
                  # @param last_heartbeat_details [Array<Object>] Last heartbeat details for the activity.
         | 
| 59 | 
            +
                  # @param last_heartbeat_detail_hints [Array<Object>, nil] Converter hints for the last heartbeat details.
         | 
| 55 60 | 
             
                  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 56 | 
            -
                  def fail(error, last_heartbeat_details: [], rpc_options: nil)
         | 
| 61 | 
            +
                  def fail(error, last_heartbeat_details: [], last_heartbeat_detail_hints: nil, rpc_options: nil)
         | 
| 57 62 | 
             
                    @client._impl.fail_async_activity(Interceptor::FailAsyncActivityInput.new(
         | 
| 58 63 | 
             
                                                        task_token_or_id_reference:,
         | 
| 59 64 | 
             
                                                        error:,
         | 
| 60 65 | 
             
                                                        last_heartbeat_details:,
         | 
| 66 | 
            +
                                                        last_heartbeat_detail_hints:,
         | 
| 61 67 | 
             
                                                        rpc_options:
         | 
| 62 68 | 
             
                                                      ))
         | 
| 63 69 | 
             
                  end
         | 
| @@ -65,12 +71,14 @@ module Temporalio | |
| 65 71 | 
             
                  # Report the activity as canceled.
         | 
| 66 72 | 
             
                  #
         | 
| 67 73 | 
             
                  # @param details [Array<Object>] Cancellation details.
         | 
| 74 | 
            +
                  # @param detail_hints [Array<Object>, nil] Converter hints for the details.
         | 
| 68 75 | 
             
                  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 69 76 | 
             
                  # @raise [AsyncActivityCanceledError] If the activity has been canceled.
         | 
| 70 | 
            -
                  def report_cancellation(*details, rpc_options: nil)
         | 
| 77 | 
            +
                  def report_cancellation(*details, detail_hints: nil, rpc_options: nil)
         | 
| 71 78 | 
             
                    @client._impl.report_cancellation_async_activity(Interceptor::ReportCancellationAsyncActivityInput.new(
         | 
| 72 79 | 
             
                                                                       task_token_or_id_reference:,
         | 
| 73 80 | 
             
                                                                       details:,
         | 
| 81 | 
            +
                                                                       detail_hints:,
         | 
| 74 82 | 
             
                                                                       rpc_options:
         | 
| 75 83 | 
             
                                                                     ))
         | 
| 76 84 | 
             
                  end
         | 
| @@ -241,6 +241,21 @@ module Temporalio | |
| 241 241 | 
             
                      )
         | 
| 242 242 | 
             
                    end
         | 
| 243 243 |  | 
| 244 | 
            +
                    # Calls CloudService.DeleteNamespaceRegion API call.
         | 
| 245 | 
            +
                    #
         | 
| 246 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionRequest] API request.
         | 
| 247 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 248 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionResponse] API response.
         | 
| 249 | 
            +
                    def delete_namespace_region(request, rpc_options: nil)
         | 
| 250 | 
            +
                      invoke_rpc(
         | 
| 251 | 
            +
                        rpc: 'delete_namespace_region',
         | 
| 252 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionRequest,
         | 
| 253 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionResponse,
         | 
| 254 | 
            +
                        request:,
         | 
| 255 | 
            +
                        rpc_options:
         | 
| 256 | 
            +
                      )
         | 
| 257 | 
            +
                    end
         | 
| 258 | 
            +
             | 
| 244 259 | 
             
                    # Calls CloudService.GetRegions API call.
         | 
| 245 260 | 
             
                    #
         | 
| 246 261 | 
             
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::GetRegionsRequest] API request.
         | 
| @@ -511,6 +526,51 @@ module Temporalio | |
| 511 526 | 
             
                      )
         | 
| 512 527 | 
             
                    end
         | 
| 513 528 |  | 
| 529 | 
            +
                    # Calls CloudService.AddUserGroupMember API call.
         | 
| 530 | 
            +
                    #
         | 
| 531 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberRequest] API request.
         | 
| 532 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 533 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberResponse] API response.
         | 
| 534 | 
            +
                    def add_user_group_member(request, rpc_options: nil)
         | 
| 535 | 
            +
                      invoke_rpc(
         | 
| 536 | 
            +
                        rpc: 'add_user_group_member',
         | 
| 537 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberRequest,
         | 
| 538 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberResponse,
         | 
| 539 | 
            +
                        request:,
         | 
| 540 | 
            +
                        rpc_options:
         | 
| 541 | 
            +
                      )
         | 
| 542 | 
            +
                    end
         | 
| 543 | 
            +
             | 
| 544 | 
            +
                    # Calls CloudService.RemoveUserGroupMember API call.
         | 
| 545 | 
            +
                    #
         | 
| 546 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberRequest] API request.
         | 
| 547 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 548 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberResponse] API response.
         | 
| 549 | 
            +
                    def remove_user_group_member(request, rpc_options: nil)
         | 
| 550 | 
            +
                      invoke_rpc(
         | 
| 551 | 
            +
                        rpc: 'remove_user_group_member',
         | 
| 552 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberRequest,
         | 
| 553 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberResponse,
         | 
| 554 | 
            +
                        request:,
         | 
| 555 | 
            +
                        rpc_options:
         | 
| 556 | 
            +
                      )
         | 
| 557 | 
            +
                    end
         | 
| 558 | 
            +
             | 
| 559 | 
            +
                    # Calls CloudService.GetUserGroupMembers API call.
         | 
| 560 | 
            +
                    #
         | 
| 561 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersRequest] API request.
         | 
| 562 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 563 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersResponse] API response.
         | 
| 564 | 
            +
                    def get_user_group_members(request, rpc_options: nil)
         | 
| 565 | 
            +
                      invoke_rpc(
         | 
| 566 | 
            +
                        rpc: 'get_user_group_members',
         | 
| 567 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersRequest,
         | 
| 568 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersResponse,
         | 
| 569 | 
            +
                        request:,
         | 
| 570 | 
            +
                        rpc_options:
         | 
| 571 | 
            +
                      )
         | 
| 572 | 
            +
                    end
         | 
| 573 | 
            +
             | 
| 514 574 | 
             
                    # Calls CloudService.CreateServiceAccount API call.
         | 
| 515 575 | 
             
                    #
         | 
| 516 576 | 
             
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::CreateServiceAccountRequest] API request.
         | 
| @@ -720,6 +780,81 @@ module Temporalio | |
| 720 780 | 
             
                        rpc_options:
         | 
| 721 781 | 
             
                      )
         | 
| 722 782 | 
             
                    end
         | 
| 783 | 
            +
             | 
| 784 | 
            +
                    # Calls CloudService.UpdateNamespaceTags API call.
         | 
| 785 | 
            +
                    #
         | 
| 786 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsRequest] API request.
         | 
| 787 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 788 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsResponse] API response.
         | 
| 789 | 
            +
                    def update_namespace_tags(request, rpc_options: nil)
         | 
| 790 | 
            +
                      invoke_rpc(
         | 
| 791 | 
            +
                        rpc: 'update_namespace_tags',
         | 
| 792 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsRequest,
         | 
| 793 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsResponse,
         | 
| 794 | 
            +
                        request:,
         | 
| 795 | 
            +
                        rpc_options:
         | 
| 796 | 
            +
                      )
         | 
| 797 | 
            +
                    end
         | 
| 798 | 
            +
             | 
| 799 | 
            +
                    # Calls CloudService.CreateConnectivityRule API call.
         | 
| 800 | 
            +
                    #
         | 
| 801 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleRequest] API request.
         | 
| 802 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 803 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleResponse] API response.
         | 
| 804 | 
            +
                    def create_connectivity_rule(request, rpc_options: nil)
         | 
| 805 | 
            +
                      invoke_rpc(
         | 
| 806 | 
            +
                        rpc: 'create_connectivity_rule',
         | 
| 807 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleRequest,
         | 
| 808 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleResponse,
         | 
| 809 | 
            +
                        request:,
         | 
| 810 | 
            +
                        rpc_options:
         | 
| 811 | 
            +
                      )
         | 
| 812 | 
            +
                    end
         | 
| 813 | 
            +
             | 
| 814 | 
            +
                    # Calls CloudService.GetConnectivityRule API call.
         | 
| 815 | 
            +
                    #
         | 
| 816 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleRequest] API request.
         | 
| 817 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 818 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleResponse] API response.
         | 
| 819 | 
            +
                    def get_connectivity_rule(request, rpc_options: nil)
         | 
| 820 | 
            +
                      invoke_rpc(
         | 
| 821 | 
            +
                        rpc: 'get_connectivity_rule',
         | 
| 822 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleRequest,
         | 
| 823 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleResponse,
         | 
| 824 | 
            +
                        request:,
         | 
| 825 | 
            +
                        rpc_options:
         | 
| 826 | 
            +
                      )
         | 
| 827 | 
            +
                    end
         | 
| 828 | 
            +
             | 
| 829 | 
            +
                    # Calls CloudService.GetConnectivityRules API call.
         | 
| 830 | 
            +
                    #
         | 
| 831 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesRequest] API request.
         | 
| 832 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 833 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesResponse] API response.
         | 
| 834 | 
            +
                    def get_connectivity_rules(request, rpc_options: nil)
         | 
| 835 | 
            +
                      invoke_rpc(
         | 
| 836 | 
            +
                        rpc: 'get_connectivity_rules',
         | 
| 837 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesRequest,
         | 
| 838 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesResponse,
         | 
| 839 | 
            +
                        request:,
         | 
| 840 | 
            +
                        rpc_options:
         | 
| 841 | 
            +
                      )
         | 
| 842 | 
            +
                    end
         | 
| 843 | 
            +
             | 
| 844 | 
            +
                    # Calls CloudService.DeleteConnectivityRule API call.
         | 
| 845 | 
            +
                    #
         | 
| 846 | 
            +
                    # @param request [Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleRequest] API request.
         | 
| 847 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 848 | 
            +
                    # @return [Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleResponse] API response.
         | 
| 849 | 
            +
                    def delete_connectivity_rule(request, rpc_options: nil)
         | 
| 850 | 
            +
                      invoke_rpc(
         | 
| 851 | 
            +
                        rpc: 'delete_connectivity_rule',
         | 
| 852 | 
            +
                        request_class: Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleRequest,
         | 
| 853 | 
            +
                        response_class: Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleResponse,
         | 
| 854 | 
            +
                        request:,
         | 
| 855 | 
            +
                        rpc_options:
         | 
| 856 | 
            +
                      )
         | 
| 857 | 
            +
                    end
         | 
| 723 858 | 
             
                  end
         | 
| 724 859 | 
             
                end
         | 
| 725 860 | 
             
              end
         | 
| @@ -1245,6 +1245,156 @@ module Temporalio | |
| 1245 1245 | 
             
                        rpc_options:
         | 
| 1246 1246 | 
             
                      )
         | 
| 1247 1247 | 
             
                    end
         | 
| 1248 | 
            +
             | 
| 1249 | 
            +
                    # Calls WorkflowService.CreateWorkflowRule API call.
         | 
| 1250 | 
            +
                    #
         | 
| 1251 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleRequest] API request.
         | 
| 1252 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1253 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleResponse] API response.
         | 
| 1254 | 
            +
                    def create_workflow_rule(request, rpc_options: nil)
         | 
| 1255 | 
            +
                      invoke_rpc(
         | 
| 1256 | 
            +
                        rpc: 'create_workflow_rule',
         | 
| 1257 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleRequest,
         | 
| 1258 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleResponse,
         | 
| 1259 | 
            +
                        request:,
         | 
| 1260 | 
            +
                        rpc_options:
         | 
| 1261 | 
            +
                      )
         | 
| 1262 | 
            +
                    end
         | 
| 1263 | 
            +
             | 
| 1264 | 
            +
                    # Calls WorkflowService.DescribeWorkflowRule API call.
         | 
| 1265 | 
            +
                    #
         | 
| 1266 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleRequest] API request.
         | 
| 1267 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1268 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleResponse] API response.
         | 
| 1269 | 
            +
                    def describe_workflow_rule(request, rpc_options: nil)
         | 
| 1270 | 
            +
                      invoke_rpc(
         | 
| 1271 | 
            +
                        rpc: 'describe_workflow_rule',
         | 
| 1272 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleRequest,
         | 
| 1273 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleResponse,
         | 
| 1274 | 
            +
                        request:,
         | 
| 1275 | 
            +
                        rpc_options:
         | 
| 1276 | 
            +
                      )
         | 
| 1277 | 
            +
                    end
         | 
| 1278 | 
            +
             | 
| 1279 | 
            +
                    # Calls WorkflowService.DeleteWorkflowRule API call.
         | 
| 1280 | 
            +
                    #
         | 
| 1281 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleRequest] API request.
         | 
| 1282 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1283 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleResponse] API response.
         | 
| 1284 | 
            +
                    def delete_workflow_rule(request, rpc_options: nil)
         | 
| 1285 | 
            +
                      invoke_rpc(
         | 
| 1286 | 
            +
                        rpc: 'delete_workflow_rule',
         | 
| 1287 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleRequest,
         | 
| 1288 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleResponse,
         | 
| 1289 | 
            +
                        request:,
         | 
| 1290 | 
            +
                        rpc_options:
         | 
| 1291 | 
            +
                      )
         | 
| 1292 | 
            +
                    end
         | 
| 1293 | 
            +
             | 
| 1294 | 
            +
                    # Calls WorkflowService.ListWorkflowRules API call.
         | 
| 1295 | 
            +
                    #
         | 
| 1296 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest] API request.
         | 
| 1297 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1298 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse] API response.
         | 
| 1299 | 
            +
                    def list_workflow_rules(request, rpc_options: nil)
         | 
| 1300 | 
            +
                      invoke_rpc(
         | 
| 1301 | 
            +
                        rpc: 'list_workflow_rules',
         | 
| 1302 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest,
         | 
| 1303 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse,
         | 
| 1304 | 
            +
                        request:,
         | 
| 1305 | 
            +
                        rpc_options:
         | 
| 1306 | 
            +
                      )
         | 
| 1307 | 
            +
                    end
         | 
| 1308 | 
            +
             | 
| 1309 | 
            +
                    # Calls WorkflowService.TriggerWorkflowRule API call.
         | 
| 1310 | 
            +
                    #
         | 
| 1311 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest] API request.
         | 
| 1312 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1313 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse] API response.
         | 
| 1314 | 
            +
                    def trigger_workflow_rule(request, rpc_options: nil)
         | 
| 1315 | 
            +
                      invoke_rpc(
         | 
| 1316 | 
            +
                        rpc: 'trigger_workflow_rule',
         | 
| 1317 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest,
         | 
| 1318 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse,
         | 
| 1319 | 
            +
                        request:,
         | 
| 1320 | 
            +
                        rpc_options:
         | 
| 1321 | 
            +
                      )
         | 
| 1322 | 
            +
                    end
         | 
| 1323 | 
            +
             | 
| 1324 | 
            +
                    # Calls WorkflowService.RecordWorkerHeartbeat API call.
         | 
| 1325 | 
            +
                    #
         | 
| 1326 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest] API request.
         | 
| 1327 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1328 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse] API response.
         | 
| 1329 | 
            +
                    def record_worker_heartbeat(request, rpc_options: nil)
         | 
| 1330 | 
            +
                      invoke_rpc(
         | 
| 1331 | 
            +
                        rpc: 'record_worker_heartbeat',
         | 
| 1332 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest,
         | 
| 1333 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse,
         | 
| 1334 | 
            +
                        request:,
         | 
| 1335 | 
            +
                        rpc_options:
         | 
| 1336 | 
            +
                      )
         | 
| 1337 | 
            +
                    end
         | 
| 1338 | 
            +
             | 
| 1339 | 
            +
                    # Calls WorkflowService.ListWorkers API call.
         | 
| 1340 | 
            +
                    #
         | 
| 1341 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::ListWorkersRequest] API request.
         | 
| 1342 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1343 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::ListWorkersResponse] API response.
         | 
| 1344 | 
            +
                    def list_workers(request, rpc_options: nil)
         | 
| 1345 | 
            +
                      invoke_rpc(
         | 
| 1346 | 
            +
                        rpc: 'list_workers',
         | 
| 1347 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::ListWorkersRequest,
         | 
| 1348 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::ListWorkersResponse,
         | 
| 1349 | 
            +
                        request:,
         | 
| 1350 | 
            +
                        rpc_options:
         | 
| 1351 | 
            +
                      )
         | 
| 1352 | 
            +
                    end
         | 
| 1353 | 
            +
             | 
| 1354 | 
            +
                    # Calls WorkflowService.UpdateTaskQueueConfig API call.
         | 
| 1355 | 
            +
                    #
         | 
| 1356 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigRequest] API request.
         | 
| 1357 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1358 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigResponse] API response.
         | 
| 1359 | 
            +
                    def update_task_queue_config(request, rpc_options: nil)
         | 
| 1360 | 
            +
                      invoke_rpc(
         | 
| 1361 | 
            +
                        rpc: 'update_task_queue_config',
         | 
| 1362 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigRequest,
         | 
| 1363 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigResponse,
         | 
| 1364 | 
            +
                        request:,
         | 
| 1365 | 
            +
                        rpc_options:
         | 
| 1366 | 
            +
                      )
         | 
| 1367 | 
            +
                    end
         | 
| 1368 | 
            +
             | 
| 1369 | 
            +
                    # Calls WorkflowService.FetchWorkerConfig API call.
         | 
| 1370 | 
            +
                    #
         | 
| 1371 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::FetchWorkerConfigRequest] API request.
         | 
| 1372 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1373 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::FetchWorkerConfigResponse] API response.
         | 
| 1374 | 
            +
                    def fetch_worker_config(request, rpc_options: nil)
         | 
| 1375 | 
            +
                      invoke_rpc(
         | 
| 1376 | 
            +
                        rpc: 'fetch_worker_config',
         | 
| 1377 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::FetchWorkerConfigRequest,
         | 
| 1378 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::FetchWorkerConfigResponse,
         | 
| 1379 | 
            +
                        request:,
         | 
| 1380 | 
            +
                        rpc_options:
         | 
| 1381 | 
            +
                      )
         | 
| 1382 | 
            +
                    end
         | 
| 1383 | 
            +
             | 
| 1384 | 
            +
                    # Calls WorkflowService.UpdateWorkerConfig API call.
         | 
| 1385 | 
            +
                    #
         | 
| 1386 | 
            +
                    # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigRequest] API request.
         | 
| 1387 | 
            +
                    # @param rpc_options [RPCOptions, nil] Advanced RPC options.
         | 
| 1388 | 
            +
                    # @return [Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigResponse] API response.
         | 
| 1389 | 
            +
                    def update_worker_config(request, rpc_options: nil)
         | 
| 1390 | 
            +
                      invoke_rpc(
         | 
| 1391 | 
            +
                        rpc: 'update_worker_config',
         | 
| 1392 | 
            +
                        request_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigRequest,
         | 
| 1393 | 
            +
                        response_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigResponse,
         | 
| 1394 | 
            +
                        request:,
         | 
| 1395 | 
            +
                        rpc_options:
         | 
| 1396 | 
            +
                      )
         | 
| 1397 | 
            +
                    end
         | 
| 1248 1398 | 
             
                  end
         | 
| 1249 1399 | 
             
                end
         | 
| 1250 1400 | 
             
              end
         | 
| @@ -124,7 +124,8 @@ module Temporalio | |
| 124 124 | 
             
                  # Options for HTTP CONNECT proxy for client connections.
         | 
| 125 125 | 
             
                  #
         | 
| 126 126 | 
             
                  # @!attribute target_host
         | 
| 127 | 
            -
                  #   @return [String] Target  | 
| 127 | 
            +
                  #   @return [String] Target for the HTTP CONNECT proxy. Use host:port for TCP, or unix:/path/to/unix.sock for Unix
         | 
| 128 | 
            +
                  #     socket (meaning it'll start with "unix:/").
         | 
| 128 129 | 
             
                  # @!attribute basic_auth_user
         | 
| 129 130 | 
             
                  #   @return [String, nil] User for HTTP basic auth for the proxy, must be combined with {basic_auth_pass}.
         | 
| 130 131 | 
             
                  # @!attribute basic_auth_pass
         | 
| @@ -36,6 +36,10 @@ module Temporalio | |
| 36 36 | 
             
                    :search_attributes,
         | 
| 37 37 | 
             
                    :start_delay,
         | 
| 38 38 | 
             
                    :request_eager_start,
         | 
| 39 | 
            +
                    :versioning_override,
         | 
| 40 | 
            +
                    :priority,
         | 
| 41 | 
            +
                    :arg_hints,
         | 
| 42 | 
            +
                    :result_hint,
         | 
| 39 43 | 
             
                    :headers,
         | 
| 40 44 | 
             
                    :rpc_options
         | 
| 41 45 | 
             
                  )
         | 
| @@ -47,6 +51,8 @@ module Temporalio | |
| 47 51 | 
             
                    :args,
         | 
| 48 52 | 
             
                    :wait_for_stage,
         | 
| 49 53 | 
             
                    :start_workflow_operation,
         | 
| 54 | 
            +
                    :arg_hints,
         | 
| 55 | 
            +
                    :result_hint,
         | 
| 50 56 | 
             
                    :headers,
         | 
| 51 57 | 
             
                    :rpc_options
         | 
| 52 58 | 
             
                  )
         | 
| @@ -56,13 +62,16 @@ module Temporalio | |
| 56 62 | 
             
                    :signal,
         | 
| 57 63 | 
             
                    :args,
         | 
| 58 64 | 
             
                    :start_workflow_operation,
         | 
| 65 | 
            +
                    :arg_hints,
         | 
| 59 66 | 
             
                    # Headers intentionally not defined here, because they are not separate from start_workflow_operation
         | 
| 60 67 | 
             
                    :rpc_options
         | 
| 61 68 | 
             
                  )
         | 
| 62 69 |  | 
| 63 | 
            -
                  # Input for {Outbound. | 
| 64 | 
            -
                   | 
| 70 | 
            +
                  # Input for {Outbound.list_workflow_page}.
         | 
| 71 | 
            +
                  ListWorkflowPageInput = Data.define(
         | 
| 65 72 | 
             
                    :query,
         | 
| 73 | 
            +
                    :next_page_token,
         | 
| 74 | 
            +
                    :page_size,
         | 
| 66 75 | 
             
                    :rpc_options
         | 
| 67 76 | 
             
                  )
         | 
| 68 77 |  | 
| @@ -95,6 +104,7 @@ module Temporalio | |
| 95 104 | 
             
                    :run_id,
         | 
| 96 105 | 
             
                    :signal,
         | 
| 97 106 | 
             
                    :args,
         | 
| 107 | 
            +
                    :arg_hints,
         | 
| 98 108 | 
             
                    :headers,
         | 
| 99 109 | 
             
                    :rpc_options
         | 
| 100 110 | 
             
                  )
         | 
| @@ -106,6 +116,8 @@ module Temporalio | |
| 106 116 | 
             
                    :query,
         | 
| 107 117 | 
             
                    :args,
         | 
| 108 118 | 
             
                    :reject_condition,
         | 
| 119 | 
            +
                    :arg_hints,
         | 
| 120 | 
            +
                    :result_hint,
         | 
| 109 121 | 
             
                    :headers,
         | 
| 110 122 | 
             
                    :rpc_options
         | 
| 111 123 | 
             
                  )
         | 
| @@ -118,6 +130,8 @@ module Temporalio | |
| 118 130 | 
             
                    :update,
         | 
| 119 131 | 
             
                    :args,
         | 
| 120 132 | 
             
                    :wait_for_stage,
         | 
| 133 | 
            +
                    :arg_hints,
         | 
| 134 | 
            +
                    :result_hint,
         | 
| 121 135 | 
             
                    :headers,
         | 
| 122 136 | 
             
                    :rpc_options
         | 
| 123 137 | 
             
                  )
         | 
| @@ -216,6 +230,7 @@ module Temporalio | |
| 216 230 | 
             
                  HeartbeatAsyncActivityInput = Data.define(
         | 
| 217 231 | 
             
                    :task_token_or_id_reference,
         | 
| 218 232 | 
             
                    :details,
         | 
| 233 | 
            +
                    :detail_hints,
         | 
| 219 234 | 
             
                    :rpc_options
         | 
| 220 235 | 
             
                  )
         | 
| 221 236 |  | 
| @@ -223,6 +238,7 @@ module Temporalio | |
| 223 238 | 
             
                  CompleteAsyncActivityInput = Data.define(
         | 
| 224 239 | 
             
                    :task_token_or_id_reference,
         | 
| 225 240 | 
             
                    :result,
         | 
| 241 | 
            +
                    :result_hint,
         | 
| 226 242 | 
             
                    :rpc_options
         | 
| 227 243 | 
             
                  )
         | 
| 228 244 |  | 
| @@ -231,6 +247,7 @@ module Temporalio | |
| 231 247 | 
             
                    :task_token_or_id_reference,
         | 
| 232 248 | 
             
                    :error,
         | 
| 233 249 | 
             
                    :last_heartbeat_details,
         | 
| 250 | 
            +
                    :last_heartbeat_detail_hints,
         | 
| 234 251 | 
             
                    :rpc_options
         | 
| 235 252 | 
             
                  )
         | 
| 236 253 |  | 
| @@ -238,6 +255,7 @@ module Temporalio | |
| 238 255 | 
             
                  ReportCancellationAsyncActivityInput = Data.define(
         | 
| 239 256 | 
             
                    :task_token_or_id_reference,
         | 
| 240 257 | 
             
                    :details,
         | 
| 258 | 
            +
                    :detail_hints,
         | 
| 241 259 | 
             
                    :rpc_options
         | 
| 242 260 | 
             
                  )
         | 
| 243 261 |  | 
| @@ -279,12 +297,12 @@ module Temporalio | |
| 279 297 | 
             
                      next_interceptor.signal_with_start_workflow(input)
         | 
| 280 298 | 
             
                    end
         | 
| 281 299 |  | 
| 282 | 
            -
                    # Called for every {Client. | 
| 300 | 
            +
                    # Called for every {Client.list_workflow_page} call.
         | 
| 283 301 | 
             
                    #
         | 
| 284 | 
            -
                    # @param input [ | 
| 285 | 
            -
                    # @return [ | 
| 286 | 
            -
                    def  | 
| 287 | 
            -
                      next_interceptor. | 
| 302 | 
            +
                    # @param input [ListWorkflowPageInput] Input.
         | 
| 303 | 
            +
                    # @return [Client::ListWorkflowPage] Enumerable workflow executions, with a #next_page_token method.
         | 
| 304 | 
            +
                    def list_workflow_page(input)
         | 
| 305 | 
            +
                      next_interceptor.list_workflow_page(input)
         | 
| 288 306 | 
             
                    end
         | 
| 289 307 |  | 
| 290 308 | 
             
                    # Called for every {Client.count_workflows} call.
         | 
| @@ -175,6 +175,7 @@ module Temporalio | |
| 175 175 | 
             
                      :retry_policy,
         | 
| 176 176 | 
             
                      :memo,
         | 
| 177 177 | 
             
                      :search_attributes,
         | 
| 178 | 
            +
                      :arg_hints,
         | 
| 178 179 | 
             
                      :headers
         | 
| 179 180 | 
             
                    )
         | 
| 180 181 |  | 
| @@ -208,6 +209,9 @@ module Temporalio | |
| 208 209 | 
             
                    #   @return [Hash<String, Object>, nil] Memo for the workflow.
         | 
| 209 210 | 
             
                    # @!attribute search_attributes
         | 
| 210 211 | 
             
                    #   @return [SearchAttributes, nil] Search attributes for the workflow.
         | 
| 212 | 
            +
                    # @!attribute arg_hints
         | 
| 213 | 
            +
                    #   @return [Array<Object>, nil] Converter hints for workflow arguments. This is only user-set (e.g. on create)
         | 
| 214 | 
            +
                    #     and is not persisted and therefore will not be set when describing a workflow.
         | 
| 211 215 | 
             
                    # @!attribute headers
         | 
| 212 216 | 
             
                    #   @return [Hash<String, Object>, nil] Headers for the workflow.
         | 
| 213 217 | 
             
                    class StartWorkflow
         | 
| @@ -249,10 +253,13 @@ module Temporalio | |
| 249 253 | 
             
                          retry_policy: nil,
         | 
| 250 254 | 
             
                          memo: nil,
         | 
| 251 255 | 
             
                          search_attributes: nil,
         | 
| 256 | 
            +
                          arg_hints: nil,
         | 
| 252 257 | 
             
                          headers: nil
         | 
| 253 258 | 
             
                        )
         | 
| 259 | 
            +
                          workflow, defn_arg_hints, =
         | 
| 260 | 
            +
                            Workflow::Definition._workflow_type_and_hints_from_workflow_parameter(workflow)
         | 
| 254 261 | 
             
                          _original_new( # steep:ignore
         | 
| 255 | 
            -
                            workflow | 
| 262 | 
            +
                            workflow:,
         | 
| 256 263 | 
             
                            args:,
         | 
| 257 264 | 
             
                            id:,
         | 
| 258 265 | 
             
                            task_queue:,
         | 
| @@ -264,6 +271,7 @@ module Temporalio | |
| 264 271 | 
             
                            retry_policy:,
         | 
| 265 272 | 
             
                            memo:,
         | 
| 266 273 | 
             
                            search_attributes:,
         | 
| 274 | 
            +
                            arg_hints: arg_hints || defn_arg_hints,
         | 
| 267 275 | 
             
                            headers:
         | 
| 268 276 | 
             
                          )
         | 
| 269 277 | 
             
                        end
         | 
| @@ -296,7 +304,7 @@ module Temporalio | |
| 296 304 | 
             
                            workflow_id: id,
         | 
| 297 305 | 
             
                            workflow_type: Api::Common::V1::WorkflowType.new(name: workflow),
         | 
| 298 306 | 
             
                            task_queue: Api::TaskQueue::V1::TaskQueue.new(name: task_queue),
         | 
| 299 | 
            -
                            input: data_converter.to_payloads(args),
         | 
| 307 | 
            +
                            input: data_converter.to_payloads(args, hints: arg_hints),
         | 
| 300 308 | 
             
                            workflow_execution_timeout: Internal::ProtoUtils.seconds_to_duration(execution_timeout),
         | 
| 301 309 | 
             
                            workflow_run_timeout: Internal::ProtoUtils.seconds_to_duration(run_timeout),
         | 
| 302 310 | 
             
                            workflow_task_timeout: Internal::ProtoUtils.seconds_to_duration(task_timeout),
         | 
| @@ -24,6 +24,8 @@ module Temporalio | |
| 24 24 | 
             
                    :memo,
         | 
| 25 25 | 
             
                    :search_attributes,
         | 
| 26 26 | 
             
                    :start_delay,
         | 
| 27 | 
            +
                    :arg_hints,
         | 
| 28 | 
            +
                    :result_hint,
         | 
| 27 29 | 
             
                    :headers
         | 
| 28 30 | 
             
                  )
         | 
| 29 31 |  | 
| @@ -55,10 +57,14 @@ module Temporalio | |
| 55 57 | 
             
                    memo: nil,
         | 
| 56 58 | 
             
                    search_attributes: nil,
         | 
| 57 59 | 
             
                    start_delay: nil,
         | 
| 60 | 
            +
                    arg_hints: nil,
         | 
| 61 | 
            +
                    result_hint: nil,
         | 
| 58 62 | 
             
                    headers: {}
         | 
| 59 63 | 
             
                  )
         | 
| 64 | 
            +
                    workflow, defn_arg_hints, defn_result_hint =
         | 
| 65 | 
            +
                      Workflow::Definition._workflow_type_and_hints_from_workflow_parameter(workflow)
         | 
| 60 66 | 
             
                    @options = Options.new(
         | 
| 61 | 
            -
                      workflow | 
| 67 | 
            +
                      workflow:,
         | 
| 62 68 | 
             
                      args:,
         | 
| 63 69 | 
             
                      id:,
         | 
| 64 70 | 
             
                      task_queue:,
         | 
| @@ -74,6 +80,8 @@ module Temporalio | |
| 74 80 | 
             
                      memo:,
         | 
| 75 81 | 
             
                      search_attributes:,
         | 
| 76 82 | 
             
                      start_delay:,
         | 
| 83 | 
            +
                      arg_hints: arg_hints || defn_arg_hints,
         | 
| 84 | 
            +
                      result_hint: result_hint || defn_result_hint,
         | 
| 77 85 | 
             
                      headers:
         | 
| 78 86 | 
             
                    )
         | 
| 79 87 | 
             
                    @workflow_handle_mutex = Mutex.new
         |