temporalio 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (585) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +4035 -0
  3. data/Cargo.toml +25 -0
  4. data/Gemfile +20 -0
  5. data/LICENSE +16 -15
  6. data/README.md +455 -195
  7. data/Rakefile +387 -0
  8. data/ext/Cargo.toml +25 -0
  9. data/lib/temporalio/activity/complete_async_error.rb +11 -0
  10. data/lib/temporalio/activity/context.rb +82 -77
  11. data/lib/temporalio/activity/definition.rb +77 -0
  12. data/lib/temporalio/activity/info.rb +42 -46
  13. data/lib/temporalio/activity.rb +49 -65
  14. data/lib/temporalio/api/batch/v1/message.rb +31 -0
  15. data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +93 -0
  16. data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +25 -0
  17. data/lib/temporalio/api/cloud/cloudservice.rb +3 -0
  18. data/lib/temporalio/api/cloud/identity/v1/message.rb +36 -0
  19. data/lib/temporalio/api/cloud/namespace/v1/message.rb +35 -0
  20. data/lib/temporalio/api/cloud/operation/v1/message.rb +27 -0
  21. data/lib/temporalio/api/cloud/region/v1/message.rb +23 -0
  22. data/lib/temporalio/api/command/v1/message.rb +46 -0
  23. data/lib/temporalio/api/common/v1/grpc_status.rb +23 -0
  24. data/lib/temporalio/api/common/v1/message.rb +41 -0
  25. data/lib/temporalio/api/enums/v1/batch_operation.rb +22 -0
  26. data/lib/temporalio/api/enums/v1/command_type.rb +21 -0
  27. data/lib/temporalio/api/enums/v1/common.rb +26 -0
  28. data/lib/temporalio/api/enums/v1/event_type.rb +21 -0
  29. data/lib/temporalio/api/enums/v1/failed_cause.rb +26 -0
  30. data/lib/temporalio/api/enums/v1/namespace.rb +23 -0
  31. data/lib/temporalio/api/enums/v1/query.rb +22 -0
  32. data/lib/temporalio/api/enums/v1/reset.rb +23 -0
  33. data/lib/temporalio/api/enums/v1/schedule.rb +21 -0
  34. data/lib/temporalio/api/enums/v1/task_queue.rb +25 -0
  35. data/lib/temporalio/api/enums/v1/update.rb +22 -0
  36. data/lib/temporalio/api/enums/v1/workflow.rb +30 -0
  37. data/lib/temporalio/api/errordetails/v1/message.rb +42 -0
  38. data/lib/temporalio/api/export/v1/message.rb +24 -0
  39. data/lib/temporalio/api/failure/v1/message.rb +35 -0
  40. data/lib/temporalio/api/filter/v1/message.rb +27 -0
  41. data/lib/temporalio/api/history/v1/message.rb +90 -0
  42. data/lib/temporalio/api/namespace/v1/message.rb +31 -0
  43. data/lib/temporalio/api/nexus/v1/message.rb +40 -0
  44. data/lib/temporalio/api/operatorservice/v1/request_response.rb +49 -0
  45. data/lib/temporalio/api/operatorservice/v1/service.rb +23 -0
  46. data/lib/temporalio/api/operatorservice.rb +3 -0
  47. data/lib/temporalio/api/protocol/v1/message.rb +23 -0
  48. data/lib/temporalio/api/query/v1/message.rb +27 -0
  49. data/lib/temporalio/api/replication/v1/message.rb +26 -0
  50. data/lib/temporalio/api/schedule/v1/message.rb +42 -0
  51. data/lib/temporalio/api/sdk/v1/enhanced_stack_trace.rb +25 -0
  52. data/lib/temporalio/api/sdk/v1/task_complete_metadata.rb +21 -0
  53. data/lib/temporalio/api/sdk/v1/user_metadata.rb +23 -0
  54. data/lib/temporalio/api/sdk/v1/workflow_metadata.rb +23 -0
  55. data/lib/temporalio/api/taskqueue/v1/message.rb +45 -0
  56. data/lib/temporalio/api/update/v1/message.rb +33 -0
  57. data/lib/temporalio/api/version/v1/message.rb +26 -0
  58. data/lib/temporalio/api/workflow/v1/message.rb +43 -0
  59. data/lib/temporalio/api/workflowservice/v1/request_response.rb +189 -0
  60. data/lib/temporalio/api/workflowservice/v1/service.rb +23 -0
  61. data/lib/temporalio/api/workflowservice.rb +3 -0
  62. data/lib/temporalio/api.rb +13 -0
  63. data/lib/temporalio/cancellation.rb +150 -0
  64. data/lib/temporalio/client/activity_id_reference.rb +32 -0
  65. data/lib/temporalio/client/async_activity_handle.rb +110 -0
  66. data/lib/temporalio/client/connection/cloud_service.rb +648 -0
  67. data/lib/temporalio/client/connection/operator_service.rb +249 -0
  68. data/lib/temporalio/client/connection/service.rb +41 -0
  69. data/lib/temporalio/client/connection/workflow_service.rb +1218 -0
  70. data/lib/temporalio/client/connection.rb +270 -0
  71. data/lib/temporalio/client/interceptor.rb +316 -0
  72. data/lib/temporalio/client/workflow_execution.rb +103 -0
  73. data/lib/temporalio/client/workflow_execution_count.rb +36 -0
  74. data/lib/temporalio/client/workflow_execution_status.rb +18 -0
  75. data/lib/temporalio/client/workflow_handle.rb +380 -177
  76. data/lib/temporalio/client/workflow_query_reject_condition.rb +14 -0
  77. data/lib/temporalio/client/workflow_update_handle.rb +67 -0
  78. data/lib/temporalio/client/workflow_update_wait_stage.rb +17 -0
  79. data/lib/temporalio/client.rb +366 -93
  80. data/lib/temporalio/common_enums.rb +24 -0
  81. data/lib/temporalio/converters/data_converter.rb +102 -0
  82. data/lib/temporalio/converters/failure_converter.rb +200 -0
  83. data/lib/temporalio/converters/payload_codec.rb +26 -0
  84. data/lib/temporalio/converters/payload_converter/binary_null.rb +34 -0
  85. data/lib/temporalio/converters/payload_converter/binary_plain.rb +35 -0
  86. data/lib/temporalio/converters/payload_converter/binary_protobuf.rb +42 -0
  87. data/lib/temporalio/converters/payload_converter/composite.rb +62 -0
  88. data/lib/temporalio/converters/payload_converter/encoding.rb +35 -0
  89. data/lib/temporalio/converters/payload_converter/json_plain.rb +44 -0
  90. data/lib/temporalio/converters/payload_converter/json_protobuf.rb +41 -0
  91. data/lib/temporalio/converters/payload_converter.rb +73 -0
  92. data/lib/temporalio/converters.rb +9 -0
  93. data/lib/temporalio/error/failure.rb +119 -94
  94. data/lib/temporalio/error.rb +147 -0
  95. data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +34 -0
  96. data/lib/temporalio/internal/bridge/api/activity_task/activity_task.rb +31 -0
  97. data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +33 -0
  98. data/lib/temporalio/internal/bridge/api/common/common.rb +26 -0
  99. data/lib/temporalio/internal/bridge/api/core_interface.rb +36 -0
  100. data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +27 -0
  101. data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +52 -0
  102. data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +54 -0
  103. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +30 -0
  104. data/lib/temporalio/internal/bridge/api.rb +3 -0
  105. data/lib/temporalio/internal/bridge/client.rb +90 -0
  106. data/lib/temporalio/internal/bridge/runtime.rb +53 -0
  107. data/lib/temporalio/internal/bridge/testing.rb +46 -0
  108. data/lib/temporalio/internal/bridge/worker.rb +83 -0
  109. data/lib/temporalio/internal/bridge.rb +36 -0
  110. data/lib/temporalio/internal/client/implementation.rb +525 -0
  111. data/lib/temporalio/internal/proto_utils.rb +54 -0
  112. data/lib/temporalio/internal/worker/activity_worker.rb +345 -0
  113. data/lib/temporalio/internal/worker/multi_runner.rb +169 -0
  114. data/lib/temporalio/internal.rb +7 -0
  115. data/lib/temporalio/retry_policy.rb +39 -80
  116. data/lib/temporalio/runtime.rb +259 -13
  117. data/lib/temporalio/scoped_logger.rb +96 -0
  118. data/lib/temporalio/search_attributes.rb +300 -0
  119. data/lib/temporalio/testing/activity_environment.rb +132 -0
  120. data/lib/temporalio/testing/workflow_environment.rb +113 -88
  121. data/lib/temporalio/testing.rb +4 -169
  122. data/lib/temporalio/version.rb +3 -1
  123. data/lib/temporalio/worker/activity_executor/fiber.rb +49 -0
  124. data/lib/temporalio/worker/activity_executor/thread_pool.rb +254 -0
  125. data/lib/temporalio/worker/activity_executor.rb +55 -0
  126. data/lib/temporalio/worker/interceptor.rb +88 -0
  127. data/lib/temporalio/worker/tuner.rb +151 -0
  128. data/lib/temporalio/worker.rb +385 -163
  129. data/lib/temporalio/workflow_history.rb +22 -0
  130. data/lib/temporalio.rb +2 -7
  131. data/temporalio.gemspec +20 -39
  132. metadata +131 -712
  133. data/bridge/Cargo.lock +0 -2997
  134. data/bridge/Cargo.toml +0 -29
  135. data/bridge/sdk-core/ARCHITECTURE.md +0 -76
  136. data/bridge/sdk-core/Cargo.toml +0 -2
  137. data/bridge/sdk-core/LICENSE.txt +0 -23
  138. data/bridge/sdk-core/README.md +0 -117
  139. data/bridge/sdk-core/arch_docs/diagrams/README.md +0 -10
  140. data/bridge/sdk-core/arch_docs/diagrams/sticky_queues.puml +0 -40
  141. data/bridge/sdk-core/arch_docs/diagrams/workflow_internals.svg +0 -1
  142. data/bridge/sdk-core/arch_docs/sticky_queues.md +0 -51
  143. data/bridge/sdk-core/client/Cargo.toml +0 -40
  144. data/bridge/sdk-core/client/LICENSE.txt +0 -23
  145. data/bridge/sdk-core/client/src/lib.rs +0 -1462
  146. data/bridge/sdk-core/client/src/metrics.rs +0 -174
  147. data/bridge/sdk-core/client/src/raw.rs +0 -932
  148. data/bridge/sdk-core/client/src/retry.rs +0 -763
  149. data/bridge/sdk-core/client/src/workflow_handle/mod.rs +0 -185
  150. data/bridge/sdk-core/core/Cargo.toml +0 -129
  151. data/bridge/sdk-core/core/LICENSE.txt +0 -23
  152. data/bridge/sdk-core/core/benches/workflow_replay.rs +0 -76
  153. data/bridge/sdk-core/core/src/abstractions.rs +0 -355
  154. data/bridge/sdk-core/core/src/core_tests/activity_tasks.rs +0 -1049
  155. data/bridge/sdk-core/core/src/core_tests/child_workflows.rs +0 -221
  156. data/bridge/sdk-core/core/src/core_tests/determinism.rs +0 -270
  157. data/bridge/sdk-core/core/src/core_tests/local_activities.rs +0 -1046
  158. data/bridge/sdk-core/core/src/core_tests/mod.rs +0 -100
  159. data/bridge/sdk-core/core/src/core_tests/queries.rs +0 -893
  160. data/bridge/sdk-core/core/src/core_tests/replay_flag.rs +0 -65
  161. data/bridge/sdk-core/core/src/core_tests/workers.rs +0 -257
  162. data/bridge/sdk-core/core/src/core_tests/workflow_cancels.rs +0 -124
  163. data/bridge/sdk-core/core/src/core_tests/workflow_tasks.rs +0 -2433
  164. data/bridge/sdk-core/core/src/ephemeral_server/mod.rs +0 -609
  165. data/bridge/sdk-core/core/src/internal_flags.rs +0 -136
  166. data/bridge/sdk-core/core/src/lib.rs +0 -289
  167. data/bridge/sdk-core/core/src/pollers/mod.rs +0 -54
  168. data/bridge/sdk-core/core/src/pollers/poll_buffer.rs +0 -297
  169. data/bridge/sdk-core/core/src/protosext/mod.rs +0 -428
  170. data/bridge/sdk-core/core/src/replay/mod.rs +0 -215
  171. data/bridge/sdk-core/core/src/retry_logic.rs +0 -202
  172. data/bridge/sdk-core/core/src/telemetry/log_export.rs +0 -190
  173. data/bridge/sdk-core/core/src/telemetry/metrics.rs +0 -462
  174. data/bridge/sdk-core/core/src/telemetry/mod.rs +0 -423
  175. data/bridge/sdk-core/core/src/telemetry/prometheus_server.rs +0 -83
  176. data/bridge/sdk-core/core/src/test_help/mod.rs +0 -939
  177. data/bridge/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +0 -536
  178. data/bridge/sdk-core/core/src/worker/activities/activity_task_poller_stream.rs +0 -89
  179. data/bridge/sdk-core/core/src/worker/activities/local_activities.rs +0 -1278
  180. data/bridge/sdk-core/core/src/worker/activities.rs +0 -557
  181. data/bridge/sdk-core/core/src/worker/client/mocks.rs +0 -107
  182. data/bridge/sdk-core/core/src/worker/client.rs +0 -389
  183. data/bridge/sdk-core/core/src/worker/mod.rs +0 -677
  184. data/bridge/sdk-core/core/src/worker/workflow/bridge.rs +0 -35
  185. data/bridge/sdk-core/core/src/worker/workflow/driven_workflow.rs +0 -99
  186. data/bridge/sdk-core/core/src/worker/workflow/history_update.rs +0 -1111
  187. data/bridge/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +0 -964
  188. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +0 -294
  189. data/bridge/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +0 -168
  190. data/bridge/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +0 -918
  191. data/bridge/sdk-core/core/src/worker/workflow/machines/complete_workflow_state_machine.rs +0 -137
  192. data/bridge/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +0 -158
  193. data/bridge/sdk-core/core/src/worker/workflow/machines/fail_workflow_state_machine.rs +0 -130
  194. data/bridge/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +0 -1525
  195. data/bridge/sdk-core/core/src/worker/workflow/machines/mod.rs +0 -324
  196. data/bridge/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +0 -179
  197. data/bridge/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +0 -659
  198. data/bridge/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +0 -439
  199. data/bridge/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +0 -435
  200. data/bridge/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +0 -175
  201. data/bridge/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +0 -249
  202. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines/local_acts.rs +0 -85
  203. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +0 -1280
  204. data/bridge/sdk-core/core/src/worker/workflow/machines/workflow_task_state_machine.rs +0 -269
  205. data/bridge/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +0 -213
  206. data/bridge/sdk-core/core/src/worker/workflow/managed_run.rs +0 -1305
  207. data/bridge/sdk-core/core/src/worker/workflow/mod.rs +0 -1276
  208. data/bridge/sdk-core/core/src/worker/workflow/run_cache.rs +0 -128
  209. data/bridge/sdk-core/core/src/worker/workflow/wft_extraction.rs +0 -125
  210. data/bridge/sdk-core/core/src/worker/workflow/wft_poller.rs +0 -85
  211. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs +0 -117
  212. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream/tonic_status_serde.rs +0 -24
  213. data/bridge/sdk-core/core/src/worker/workflow/workflow_stream.rs +0 -715
  214. data/bridge/sdk-core/core-api/Cargo.toml +0 -33
  215. data/bridge/sdk-core/core-api/LICENSE.txt +0 -23
  216. data/bridge/sdk-core/core-api/src/errors.rs +0 -62
  217. data/bridge/sdk-core/core-api/src/lib.rs +0 -113
  218. data/bridge/sdk-core/core-api/src/telemetry.rs +0 -141
  219. data/bridge/sdk-core/core-api/src/worker.rs +0 -161
  220. data/bridge/sdk-core/etc/deps.svg +0 -162
  221. data/bridge/sdk-core/etc/dynamic-config.yaml +0 -2
  222. data/bridge/sdk-core/etc/otel-collector-config.yaml +0 -36
  223. data/bridge/sdk-core/etc/prometheus.yaml +0 -6
  224. data/bridge/sdk-core/etc/regen-depgraph.sh +0 -5
  225. data/bridge/sdk-core/fsm/Cargo.toml +0 -18
  226. data/bridge/sdk-core/fsm/LICENSE.txt +0 -23
  227. data/bridge/sdk-core/fsm/README.md +0 -3
  228. data/bridge/sdk-core/fsm/rustfsm_procmacro/Cargo.toml +0 -27
  229. data/bridge/sdk-core/fsm/rustfsm_procmacro/LICENSE.txt +0 -23
  230. data/bridge/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +0 -650
  231. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/progress.rs +0 -8
  232. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.rs +0 -18
  233. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dupe_transitions_fail.stderr +0 -12
  234. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/dynamic_dest_pass.rs +0 -41
  235. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.rs +0 -14
  236. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/forgot_name_fail.stderr +0 -11
  237. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_arg_pass.rs +0 -32
  238. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/handler_pass.rs +0 -31
  239. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/medium_complex_pass.rs +0 -46
  240. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.rs +0 -29
  241. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.stderr +0 -12
  242. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/simple_pass.rs +0 -32
  243. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.rs +0 -18
  244. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/struct_event_variant_fail.stderr +0 -5
  245. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.rs +0 -11
  246. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_more_item_event_variant_fail.stderr +0 -5
  247. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.rs +0 -11
  248. data/bridge/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/tuple_zero_item_event_variant_fail.stderr +0 -5
  249. data/bridge/sdk-core/fsm/rustfsm_trait/Cargo.toml +0 -14
  250. data/bridge/sdk-core/fsm/rustfsm_trait/LICENSE.txt +0 -23
  251. data/bridge/sdk-core/fsm/rustfsm_trait/src/lib.rs +0 -254
  252. data/bridge/sdk-core/fsm/src/lib.rs +0 -2
  253. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-16_history.bin +0 -0
  254. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-23_history.bin +0 -0
  255. data/bridge/sdk-core/histories/evict_while_la_running_no_interference-85_history.bin +0 -0
  256. data/bridge/sdk-core/histories/fail_wf_task.bin +0 -0
  257. data/bridge/sdk-core/histories/timer_workflow_history.bin +0 -0
  258. data/bridge/sdk-core/integ-with-otel.sh +0 -7
  259. data/bridge/sdk-core/protos/api_upstream/README.md +0 -9
  260. data/bridge/sdk-core/protos/api_upstream/api-linter.yaml +0 -40
  261. data/bridge/sdk-core/protos/api_upstream/buf.yaml +0 -9
  262. data/bridge/sdk-core/protos/api_upstream/build/go.mod +0 -7
  263. data/bridge/sdk-core/protos/api_upstream/build/go.sum +0 -5
  264. data/bridge/sdk-core/protos/api_upstream/build/tools.go +0 -29
  265. data/bridge/sdk-core/protos/api_upstream/dependencies/gogoproto/gogo.proto +0 -141
  266. data/bridge/sdk-core/protos/api_upstream/go.mod +0 -6
  267. data/bridge/sdk-core/protos/api_upstream/temporal/api/batch/v1/message.proto +0 -89
  268. data/bridge/sdk-core/protos/api_upstream/temporal/api/command/v1/message.proto +0 -248
  269. data/bridge/sdk-core/protos/api_upstream/temporal/api/common/v1/message.proto +0 -123
  270. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/batch_operation.proto +0 -47
  271. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/command_type.proto +0 -52
  272. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/common.proto +0 -56
  273. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/event_type.proto +0 -170
  274. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/failed_cause.proto +0 -123
  275. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/namespace.proto +0 -51
  276. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/query.proto +0 -50
  277. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/reset.proto +0 -41
  278. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/schedule.proto +0 -60
  279. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/task_queue.proto +0 -59
  280. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/update.proto +0 -56
  281. data/bridge/sdk-core/protos/api_upstream/temporal/api/enums/v1/workflow.proto +0 -122
  282. data/bridge/sdk-core/protos/api_upstream/temporal/api/errordetails/v1/message.proto +0 -108
  283. data/bridge/sdk-core/protos/api_upstream/temporal/api/failure/v1/message.proto +0 -114
  284. data/bridge/sdk-core/protos/api_upstream/temporal/api/filter/v1/message.proto +0 -56
  285. data/bridge/sdk-core/protos/api_upstream/temporal/api/history/v1/message.proto +0 -787
  286. data/bridge/sdk-core/protos/api_upstream/temporal/api/namespace/v1/message.proto +0 -99
  287. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/request_response.proto +0 -124
  288. data/bridge/sdk-core/protos/api_upstream/temporal/api/operatorservice/v1/service.proto +0 -80
  289. data/bridge/sdk-core/protos/api_upstream/temporal/api/protocol/v1/message.proto +0 -57
  290. data/bridge/sdk-core/protos/api_upstream/temporal/api/query/v1/message.proto +0 -61
  291. data/bridge/sdk-core/protos/api_upstream/temporal/api/replication/v1/message.proto +0 -55
  292. data/bridge/sdk-core/protos/api_upstream/temporal/api/schedule/v1/message.proto +0 -379
  293. data/bridge/sdk-core/protos/api_upstream/temporal/api/sdk/v1/task_complete_metadata.proto +0 -63
  294. data/bridge/sdk-core/protos/api_upstream/temporal/api/taskqueue/v1/message.proto +0 -108
  295. data/bridge/sdk-core/protos/api_upstream/temporal/api/update/v1/message.proto +0 -111
  296. data/bridge/sdk-core/protos/api_upstream/temporal/api/version/v1/message.proto +0 -59
  297. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflow/v1/message.proto +0 -146
  298. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/request_response.proto +0 -1199
  299. data/bridge/sdk-core/protos/api_upstream/temporal/api/workflowservice/v1/service.proto +0 -415
  300. data/bridge/sdk-core/protos/grpc/health/v1/health.proto +0 -63
  301. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_result/activity_result.proto +0 -79
  302. data/bridge/sdk-core/protos/local/temporal/sdk/core/activity_task/activity_task.proto +0 -80
  303. data/bridge/sdk-core/protos/local/temporal/sdk/core/child_workflow/child_workflow.proto +0 -78
  304. data/bridge/sdk-core/protos/local/temporal/sdk/core/common/common.proto +0 -16
  305. data/bridge/sdk-core/protos/local/temporal/sdk/core/core_interface.proto +0 -31
  306. data/bridge/sdk-core/protos/local/temporal/sdk/core/external_data/external_data.proto +0 -31
  307. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +0 -270
  308. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +0 -305
  309. data/bridge/sdk-core/protos/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +0 -35
  310. data/bridge/sdk-core/protos/testsrv_upstream/api-linter.yaml +0 -38
  311. data/bridge/sdk-core/protos/testsrv_upstream/buf.yaml +0 -13
  312. data/bridge/sdk-core/protos/testsrv_upstream/dependencies/gogoproto/gogo.proto +0 -141
  313. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +0 -63
  314. data/bridge/sdk-core/protos/testsrv_upstream/temporal/api/testservice/v1/service.proto +0 -90
  315. data/bridge/sdk-core/rustfmt.toml +0 -1
  316. data/bridge/sdk-core/sdk/Cargo.toml +0 -48
  317. data/bridge/sdk-core/sdk/LICENSE.txt +0 -23
  318. data/bridge/sdk-core/sdk/src/activity_context.rs +0 -230
  319. data/bridge/sdk-core/sdk/src/app_data.rs +0 -37
  320. data/bridge/sdk-core/sdk/src/interceptors.rs +0 -50
  321. data/bridge/sdk-core/sdk/src/lib.rs +0 -861
  322. data/bridge/sdk-core/sdk/src/payload_converter.rs +0 -11
  323. data/bridge/sdk-core/sdk/src/workflow_context/options.rs +0 -295
  324. data/bridge/sdk-core/sdk/src/workflow_context.rs +0 -694
  325. data/bridge/sdk-core/sdk/src/workflow_future.rs +0 -500
  326. data/bridge/sdk-core/sdk-core-protos/Cargo.toml +0 -33
  327. data/bridge/sdk-core/sdk-core-protos/LICENSE.txt +0 -23
  328. data/bridge/sdk-core/sdk-core-protos/build.rs +0 -142
  329. data/bridge/sdk-core/sdk-core-protos/src/constants.rs +0 -7
  330. data/bridge/sdk-core/sdk-core-protos/src/history_builder.rs +0 -557
  331. data/bridge/sdk-core/sdk-core-protos/src/history_info.rs +0 -234
  332. data/bridge/sdk-core/sdk-core-protos/src/lib.rs +0 -2088
  333. data/bridge/sdk-core/sdk-core-protos/src/task_token.rs +0 -48
  334. data/bridge/sdk-core/sdk-core-protos/src/utilities.rs +0 -14
  335. data/bridge/sdk-core/test-utils/Cargo.toml +0 -38
  336. data/bridge/sdk-core/test-utils/src/canned_histories.rs +0 -1389
  337. data/bridge/sdk-core/test-utils/src/histfetch.rs +0 -28
  338. data/bridge/sdk-core/test-utils/src/lib.rs +0 -709
  339. data/bridge/sdk-core/test-utils/src/wf_input_saver.rs +0 -50
  340. data/bridge/sdk-core/test-utils/src/workflows.rs +0 -29
  341. data/bridge/sdk-core/tests/fuzzy_workflow.rs +0 -130
  342. data/bridge/sdk-core/tests/heavy_tests.rs +0 -265
  343. data/bridge/sdk-core/tests/integ_tests/client_tests.rs +0 -36
  344. data/bridge/sdk-core/tests/integ_tests/ephemeral_server_tests.rs +0 -150
  345. data/bridge/sdk-core/tests/integ_tests/heartbeat_tests.rs +0 -223
  346. data/bridge/sdk-core/tests/integ_tests/metrics_tests.rs +0 -239
  347. data/bridge/sdk-core/tests/integ_tests/polling_tests.rs +0 -90
  348. data/bridge/sdk-core/tests/integ_tests/queries_tests.rs +0 -314
  349. data/bridge/sdk-core/tests/integ_tests/visibility_tests.rs +0 -151
  350. data/bridge/sdk-core/tests/integ_tests/workflow_tests/activities.rs +0 -902
  351. data/bridge/sdk-core/tests/integ_tests/workflow_tests/appdata_propagation.rs +0 -61
  352. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +0 -60
  353. data/bridge/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +0 -51
  354. data/bridge/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +0 -51
  355. data/bridge/sdk-core/tests/integ_tests/workflow_tests/continue_as_new.rs +0 -64
  356. data/bridge/sdk-core/tests/integ_tests/workflow_tests/determinism.rs +0 -47
  357. data/bridge/sdk-core/tests/integ_tests/workflow_tests/local_activities.rs +0 -669
  358. data/bridge/sdk-core/tests/integ_tests/workflow_tests/modify_wf_properties.rs +0 -54
  359. data/bridge/sdk-core/tests/integ_tests/workflow_tests/patches.rs +0 -92
  360. data/bridge/sdk-core/tests/integ_tests/workflow_tests/replay.rs +0 -228
  361. data/bridge/sdk-core/tests/integ_tests/workflow_tests/resets.rs +0 -94
  362. data/bridge/sdk-core/tests/integ_tests/workflow_tests/signals.rs +0 -171
  363. data/bridge/sdk-core/tests/integ_tests/workflow_tests/stickyness.rs +0 -85
  364. data/bridge/sdk-core/tests/integ_tests/workflow_tests/timers.rs +0 -120
  365. data/bridge/sdk-core/tests/integ_tests/workflow_tests/upsert_search_attrs.rs +0 -77
  366. data/bridge/sdk-core/tests/integ_tests/workflow_tests.rs +0 -596
  367. data/bridge/sdk-core/tests/main.rs +0 -103
  368. data/bridge/sdk-core/tests/runner.rs +0 -132
  369. data/bridge/sdk-core/tests/wf_input_replay.rs +0 -32
  370. data/bridge/src/connection.rs +0 -202
  371. data/bridge/src/lib.rs +0 -494
  372. data/bridge/src/runtime.rs +0 -54
  373. data/bridge/src/test_server.rs +0 -153
  374. data/bridge/src/worker.rs +0 -197
  375. data/ext/Rakefile +0 -9
  376. data/lib/gen/dependencies/gogoproto/gogo_pb.rb +0 -14
  377. data/lib/gen/temporal/api/batch/v1/message_pb.rb +0 -50
  378. data/lib/gen/temporal/api/command/v1/message_pb.rb +0 -160
  379. data/lib/gen/temporal/api/common/v1/message_pb.rb +0 -73
  380. data/lib/gen/temporal/api/enums/v1/batch_operation_pb.rb +0 -33
  381. data/lib/gen/temporal/api/enums/v1/command_type_pb.rb +0 -37
  382. data/lib/gen/temporal/api/enums/v1/common_pb.rb +0 -42
  383. data/lib/gen/temporal/api/enums/v1/event_type_pb.rb +0 -68
  384. data/lib/gen/temporal/api/enums/v1/failed_cause_pb.rb +0 -79
  385. data/lib/gen/temporal/api/enums/v1/namespace_pb.rb +0 -37
  386. data/lib/gen/temporal/api/enums/v1/query_pb.rb +0 -31
  387. data/lib/gen/temporal/api/enums/v1/reset_pb.rb +0 -24
  388. data/lib/gen/temporal/api/enums/v1/schedule_pb.rb +0 -28
  389. data/lib/gen/temporal/api/enums/v1/task_queue_pb.rb +0 -30
  390. data/lib/gen/temporal/api/enums/v1/update_pb.rb +0 -25
  391. data/lib/gen/temporal/api/enums/v1/workflow_pb.rb +0 -89
  392. data/lib/gen/temporal/api/errordetails/v1/message_pb.rb +0 -84
  393. data/lib/gen/temporal/api/failure/v1/message_pb.rb +0 -83
  394. data/lib/gen/temporal/api/filter/v1/message_pb.rb +0 -40
  395. data/lib/gen/temporal/api/history/v1/message_pb.rb +0 -498
  396. data/lib/gen/temporal/api/namespace/v1/message_pb.rb +0 -64
  397. data/lib/gen/temporal/api/operatorservice/v1/request_response_pb.rb +0 -88
  398. data/lib/gen/temporal/api/operatorservice/v1/service_pb.rb +0 -20
  399. data/lib/gen/temporal/api/protocol/v1/message_pb.rb +0 -30
  400. data/lib/gen/temporal/api/query/v1/message_pb.rb +0 -38
  401. data/lib/gen/temporal/api/replication/v1/message_pb.rb +0 -37
  402. data/lib/gen/temporal/api/schedule/v1/message_pb.rb +0 -149
  403. data/lib/gen/temporal/api/sdk/v1/task_complete_metadata_pb.rb +0 -23
  404. data/lib/gen/temporal/api/taskqueue/v1/message_pb.rb +0 -73
  405. data/lib/gen/temporal/api/testservice/v1/request_response_pb.rb +0 -49
  406. data/lib/gen/temporal/api/testservice/v1/service_pb.rb +0 -21
  407. data/lib/gen/temporal/api/update/v1/message_pb.rb +0 -72
  408. data/lib/gen/temporal/api/version/v1/message_pb.rb +0 -41
  409. data/lib/gen/temporal/api/workflow/v1/message_pb.rb +0 -111
  410. data/lib/gen/temporal/api/workflowservice/v1/request_response_pb.rb +0 -798
  411. data/lib/gen/temporal/api/workflowservice/v1/service_pb.rb +0 -20
  412. data/lib/gen/temporal/sdk/core/activity_result/activity_result_pb.rb +0 -62
  413. data/lib/gen/temporal/sdk/core/activity_task/activity_task_pb.rb +0 -61
  414. data/lib/gen/temporal/sdk/core/child_workflow/child_workflow_pb.rb +0 -61
  415. data/lib/gen/temporal/sdk/core/common/common_pb.rb +0 -26
  416. data/lib/gen/temporal/sdk/core/core_interface_pb.rb +0 -40
  417. data/lib/gen/temporal/sdk/core/external_data/external_data_pb.rb +0 -31
  418. data/lib/gen/temporal/sdk/core/workflow_activation/workflow_activation_pb.rb +0 -171
  419. data/lib/gen/temporal/sdk/core/workflow_commands/workflow_commands_pb.rb +0 -200
  420. data/lib/gen/temporal/sdk/core/workflow_completion/workflow_completion_pb.rb +0 -41
  421. data/lib/temporalio/bridge/connect_options.rb +0 -15
  422. data/lib/temporalio/bridge/error.rb +0 -8
  423. data/lib/temporalio/bridge/retry_config.rb +0 -24
  424. data/lib/temporalio/bridge/tls_options.rb +0 -19
  425. data/lib/temporalio/bridge.rb +0 -14
  426. data/lib/temporalio/client/implementation.rb +0 -340
  427. data/lib/temporalio/connection/retry_config.rb +0 -44
  428. data/lib/temporalio/connection/service.rb +0 -20
  429. data/lib/temporalio/connection/test_service.rb +0 -92
  430. data/lib/temporalio/connection/tls_options.rb +0 -51
  431. data/lib/temporalio/connection/workflow_service.rb +0 -731
  432. data/lib/temporalio/connection.rb +0 -86
  433. data/lib/temporalio/data_converter.rb +0 -191
  434. data/lib/temporalio/error/workflow_failure.rb +0 -19
  435. data/lib/temporalio/errors.rb +0 -40
  436. data/lib/temporalio/failure_converter/base.rb +0 -26
  437. data/lib/temporalio/failure_converter/basic.rb +0 -319
  438. data/lib/temporalio/failure_converter.rb +0 -7
  439. data/lib/temporalio/interceptor/activity_inbound.rb +0 -22
  440. data/lib/temporalio/interceptor/activity_outbound.rb +0 -24
  441. data/lib/temporalio/interceptor/chain.rb +0 -28
  442. data/lib/temporalio/interceptor/client.rb +0 -127
  443. data/lib/temporalio/interceptor.rb +0 -22
  444. data/lib/temporalio/payload_codec/base.rb +0 -32
  445. data/lib/temporalio/payload_converter/base.rb +0 -24
  446. data/lib/temporalio/payload_converter/bytes.rb +0 -27
  447. data/lib/temporalio/payload_converter/composite.rb +0 -49
  448. data/lib/temporalio/payload_converter/encoding_base.rb +0 -35
  449. data/lib/temporalio/payload_converter/json.rb +0 -26
  450. data/lib/temporalio/payload_converter/nil.rb +0 -26
  451. data/lib/temporalio/payload_converter.rb +0 -14
  452. data/lib/temporalio/retry_state.rb +0 -35
  453. data/lib/temporalio/testing/time_skipping_handle.rb +0 -32
  454. data/lib/temporalio/testing/time_skipping_interceptor.rb +0 -23
  455. data/lib/temporalio/timeout_type.rb +0 -29
  456. data/lib/temporalio/worker/activity_runner.rb +0 -114
  457. data/lib/temporalio/worker/activity_worker.rb +0 -164
  458. data/lib/temporalio/worker/reactor.rb +0 -46
  459. data/lib/temporalio/worker/runner.rb +0 -63
  460. data/lib/temporalio/worker/sync_worker.rb +0 -124
  461. data/lib/temporalio/worker/thread_pool_executor.rb +0 -51
  462. data/lib/temporalio/workflow/async.rb +0 -46
  463. data/lib/temporalio/workflow/execution_info.rb +0 -54
  464. data/lib/temporalio/workflow/execution_status.rb +0 -36
  465. data/lib/temporalio/workflow/future.rb +0 -138
  466. data/lib/temporalio/workflow/id_reuse_policy.rb +0 -36
  467. data/lib/temporalio/workflow/info.rb +0 -76
  468. data/lib/temporalio/workflow/query_reject_condition.rb +0 -33
  469. data/lib/thermite_patch.rb +0 -33
  470. data/sig/async.rbs +0 -17
  471. data/sig/protobuf.rbs +0 -16
  472. data/sig/protos/dependencies/gogoproto/gogo.rbs +0 -914
  473. data/sig/protos/google/protobuf/any.rbs +0 -157
  474. data/sig/protos/google/protobuf/descriptor.rbs +0 -2825
  475. data/sig/protos/google/protobuf/duration.rbs +0 -114
  476. data/sig/protos/google/protobuf/empty.rbs +0 -36
  477. data/sig/protos/google/protobuf/timestamp.rbs +0 -145
  478. data/sig/protos/google/protobuf/wrappers.rbs +0 -358
  479. data/sig/protos/temporal/api/batch/v1/message.rbs +0 -300
  480. data/sig/protos/temporal/api/command/v1/message.rbs +0 -1399
  481. data/sig/protos/temporal/api/common/v1/message.rbs +0 -528
  482. data/sig/protos/temporal/api/enums/v1/batch_operation.rbs +0 -79
  483. data/sig/protos/temporal/api/enums/v1/command_type.rbs +0 -68
  484. data/sig/protos/temporal/api/enums/v1/common.rbs +0 -118
  485. data/sig/protos/temporal/api/enums/v1/event_type.rbs +0 -264
  486. data/sig/protos/temporal/api/enums/v1/failed_cause.rbs +0 -277
  487. data/sig/protos/temporal/api/enums/v1/namespace.rbs +0 -108
  488. data/sig/protos/temporal/api/enums/v1/query.rbs +0 -81
  489. data/sig/protos/temporal/api/enums/v1/reset.rbs +0 -44
  490. data/sig/protos/temporal/api/enums/v1/schedule.rbs +0 -72
  491. data/sig/protos/temporal/api/enums/v1/task_queue.rbs +0 -92
  492. data/sig/protos/temporal/api/enums/v1/update.rbs +0 -64
  493. data/sig/protos/temporal/api/enums/v1/workflow.rbs +0 -371
  494. data/sig/protos/temporal/api/errordetails/v1/message.rbs +0 -551
  495. data/sig/protos/temporal/api/failure/v1/message.rbs +0 -581
  496. data/sig/protos/temporal/api/filter/v1/message.rbs +0 -171
  497. data/sig/protos/temporal/api/history/v1/message.rbs +0 -4609
  498. data/sig/protos/temporal/api/namespace/v1/message.rbs +0 -410
  499. data/sig/protos/temporal/api/operatorservice/v1/request_response.rbs +0 -643
  500. data/sig/protos/temporal/api/operatorservice/v1/service.rbs +0 -17
  501. data/sig/protos/temporal/api/protocol/v1/message.rbs +0 -84
  502. data/sig/protos/temporal/api/query/v1/message.rbs +0 -182
  503. data/sig/protos/temporal/api/replication/v1/message.rbs +0 -148
  504. data/sig/protos/temporal/api/schedule/v1/message.rbs +0 -1488
  505. data/sig/protos/temporal/api/sdk/v1/task_complete_metadata.rbs +0 -110
  506. data/sig/protos/temporal/api/taskqueue/v1/message.rbs +0 -486
  507. data/sig/protos/temporal/api/testservice/v1/request_response.rbs +0 -249
  508. data/sig/protos/temporal/api/testservice/v1/service.rbs +0 -15
  509. data/sig/protos/temporal/api/update/v1/message.rbs +0 -489
  510. data/sig/protos/temporal/api/version/v1/message.rbs +0 -184
  511. data/sig/protos/temporal/api/workflow/v1/message.rbs +0 -824
  512. data/sig/protos/temporal/api/workflowservice/v1/request_response.rbs +0 -7250
  513. data/sig/protos/temporal/api/workflowservice/v1/service.rbs +0 -22
  514. data/sig/protos/temporal/sdk/core/activity_result/activity_result.rbs +0 -380
  515. data/sig/protos/temporal/sdk/core/activity_task/activity_task.rbs +0 -386
  516. data/sig/protos/temporal/sdk/core/child_workflow/child_workflow.rbs +0 -323
  517. data/sig/protos/temporal/sdk/core/common/common.rbs +0 -62
  518. data/sig/protos/temporal/sdk/core/core_interface.rbs +0 -101
  519. data/sig/protos/temporal/sdk/core/external_data/external_data.rbs +0 -119
  520. data/sig/protos/temporal/sdk/core/workflow_activation/workflow_activation.rbs +0 -1473
  521. data/sig/protos/temporal/sdk/core/workflow_commands/workflow_commands.rbs +0 -1784
  522. data/sig/protos/temporal/sdk/core/workflow_completion/workflow_completion.rbs +0 -180
  523. data/sig/ruby.rbs +0 -12
  524. data/sig/temporalio/activity/context.rbs +0 -29
  525. data/sig/temporalio/activity/info.rbs +0 -43
  526. data/sig/temporalio/activity.rbs +0 -19
  527. data/sig/temporalio/bridge/connect_options.rbs +0 -19
  528. data/sig/temporalio/bridge/error.rbs +0 -8
  529. data/sig/temporalio/bridge/retry_config.rbs +0 -21
  530. data/sig/temporalio/bridge/tls_options.rbs +0 -17
  531. data/sig/temporalio/bridge.rbs +0 -71
  532. data/sig/temporalio/client/implementation.rbs +0 -38
  533. data/sig/temporalio/client/workflow_handle.rbs +0 -41
  534. data/sig/temporalio/client.rbs +0 -35
  535. data/sig/temporalio/connection/retry_config.rbs +0 -37
  536. data/sig/temporalio/connection/service.rbs +0 -14
  537. data/sig/temporalio/connection/test_service.rbs +0 -13
  538. data/sig/temporalio/connection/tls_options.rbs +0 -43
  539. data/sig/temporalio/connection/workflow_service.rbs +0 -48
  540. data/sig/temporalio/connection.rbs +0 -30
  541. data/sig/temporalio/data_converter.rbs +0 -35
  542. data/sig/temporalio/error/failure.rbs +0 -121
  543. data/sig/temporalio/error/workflow_failure.rbs +0 -9
  544. data/sig/temporalio/errors.rbs +0 -36
  545. data/sig/temporalio/failure_converter/base.rbs +0 -12
  546. data/sig/temporalio/failure_converter/basic.rbs +0 -86
  547. data/sig/temporalio/failure_converter.rbs +0 -5
  548. data/sig/temporalio/interceptor/activity_inbound.rbs +0 -21
  549. data/sig/temporalio/interceptor/activity_outbound.rbs +0 -10
  550. data/sig/temporalio/interceptor/chain.rbs +0 -24
  551. data/sig/temporalio/interceptor/client.rbs +0 -148
  552. data/sig/temporalio/interceptor.rbs +0 -6
  553. data/sig/temporalio/payload_codec/base.rbs +0 -12
  554. data/sig/temporalio/payload_converter/base.rbs +0 -12
  555. data/sig/temporalio/payload_converter/bytes.rbs +0 -9
  556. data/sig/temporalio/payload_converter/composite.rbs +0 -19
  557. data/sig/temporalio/payload_converter/encoding_base.rbs +0 -14
  558. data/sig/temporalio/payload_converter/json.rbs +0 -9
  559. data/sig/temporalio/payload_converter/nil.rbs +0 -9
  560. data/sig/temporalio/payload_converter.rbs +0 -5
  561. data/sig/temporalio/retry_policy.rbs +0 -25
  562. data/sig/temporalio/retry_state.rbs +0 -20
  563. data/sig/temporalio/runtime.rbs +0 -12
  564. data/sig/temporalio/testing/time_skipping_handle.rbs +0 -15
  565. data/sig/temporalio/testing/time_skipping_interceptor.rbs +0 -13
  566. data/sig/temporalio/testing/workflow_environment.rbs +0 -22
  567. data/sig/temporalio/testing.rbs +0 -35
  568. data/sig/temporalio/timeout_type.rbs +0 -15
  569. data/sig/temporalio/version.rbs +0 -3
  570. data/sig/temporalio/worker/activity_runner.rbs +0 -35
  571. data/sig/temporalio/worker/activity_worker.rbs +0 -44
  572. data/sig/temporalio/worker/reactor.rbs +0 -22
  573. data/sig/temporalio/worker/runner.rbs +0 -21
  574. data/sig/temporalio/worker/sync_worker.rbs +0 -23
  575. data/sig/temporalio/worker/thread_pool_executor.rbs +0 -23
  576. data/sig/temporalio/worker.rbs +0 -46
  577. data/sig/temporalio/workflow/async.rbs +0 -9
  578. data/sig/temporalio/workflow/execution_info.rbs +0 -55
  579. data/sig/temporalio/workflow/execution_status.rbs +0 -21
  580. data/sig/temporalio/workflow/future.rbs +0 -40
  581. data/sig/temporalio/workflow/id_reuse_policy.rbs +0 -15
  582. data/sig/temporalio/workflow/info.rbs +0 -55
  583. data/sig/temporalio/workflow/query_reject_condition.rbs +0 -14
  584. data/sig/temporalio.rbs +0 -2
  585. data/sig/thermite_patch.rbs +0 -15
@@ -1,1389 +0,0 @@
1
- use prost::Message;
2
- use rand::RngCore;
3
- use std::{fs::File, io::Write, path::PathBuf};
4
- use temporal_sdk_core::replay::TestHistoryBuilder;
5
- use temporal_sdk_core_protos::{
6
- coresdk::common::NamespacedWorkflowExecution,
7
- temporal::api::{
8
- common::v1::{Payload, WorkflowExecution},
9
- enums::v1::{EventType, StartChildWorkflowExecutionFailedCause, WorkflowTaskFailedCause},
10
- failure::v1::Failure,
11
- history::v1::*,
12
- },
13
- };
14
-
15
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
16
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
17
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
18
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
19
- /// 5: EVENT_TYPE_TIMER_STARTED
20
- /// 6: EVENT_TYPE_TIMER_FIRED
21
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
22
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
23
- pub fn single_timer(timer_id: &str) -> TestHistoryBuilder {
24
- let mut t = TestHistoryBuilder::default();
25
- t.add_by_type(EventType::WorkflowExecutionStarted);
26
- t.add_full_wf_task();
27
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
28
- t.add_timer_fired(timer_started_event_id, timer_id.to_string());
29
- t.add_workflow_task_scheduled_and_started();
30
- t
31
- }
32
-
33
- pub fn single_timer_wf_completes(timer_id: &str) -> TestHistoryBuilder {
34
- let mut t = single_timer(timer_id);
35
- t.add_workflow_task_completed();
36
- t.add_workflow_execution_completed();
37
- t
38
- }
39
-
40
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
41
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
42
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
43
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
44
- /// 5: EVENT_TYPE_TIMER_STARTED (cancel)
45
- /// 6: EVENT_TYPE_TIMER_STARTED (wait)
46
- /// 7: EVENT_TYPE_TIMER_FIRED (wait)
47
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
48
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
49
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
50
- /// 11: EVENT_TYPE_TIMER_CANCELED (cancel)
51
- /// 12: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
52
- pub fn cancel_timer(wait_timer_id: &str, cancel_timer_id: &str) -> TestHistoryBuilder {
53
- let mut t = TestHistoryBuilder::default();
54
- t.add_by_type(EventType::WorkflowExecutionStarted);
55
- t.add_full_wf_task();
56
- let cancel_timer_started_id = t.add_by_type(EventType::TimerStarted);
57
- let wait_timer_started_id = t.add_by_type(EventType::TimerStarted);
58
- t.add_timer_fired(wait_timer_started_id, wait_timer_id.to_string());
59
- // 8
60
- t.add_full_wf_task();
61
- // 11
62
- t.add(history_event::Attributes::TimerCanceledEventAttributes(
63
- TimerCanceledEventAttributes {
64
- started_event_id: cancel_timer_started_id,
65
- timer_id: cancel_timer_id.to_string(),
66
- ..Default::default()
67
- },
68
- ));
69
- // 12
70
- t.add_workflow_execution_completed();
71
- t
72
- }
73
-
74
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
75
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
76
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
77
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
78
- /// 5: EVENT_TYPE_TIMER_STARTED
79
- /// 6: EVENT_TYPE_TIMER_STARTED
80
- /// 7: EVENT_TYPE_TIMER_FIRED
81
- /// 8: EVENT_TYPE_TIMER_FIRED
82
- /// 9: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
83
- /// 10: EVENT_TYPE_WORKFLOW_TASK_STARTED
84
- pub fn parallel_timer(timer1: &str, timer2: &str) -> TestHistoryBuilder {
85
- let mut t = TestHistoryBuilder::default();
86
- t.add_by_type(EventType::WorkflowExecutionStarted);
87
- t.add_full_wf_task();
88
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
89
- let timer_2_started_event_id = t.add_by_type(EventType::TimerStarted);
90
- t.add_timer_fired(timer_started_event_id, timer1.to_string());
91
- t.add_timer_fired(timer_2_started_event_id, timer2.to_string());
92
- t.add_workflow_task_scheduled_and_started();
93
- t
94
- }
95
-
96
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
97
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
98
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
99
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
100
- /// 5: EVENT_TYPE_TIMER_STARTED
101
- /// 6: EVENT_TYPE_TIMER_FIRED
102
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
103
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
104
- /// 9: EVENT_TYPE_WORKFLOW_TASK_FAILED
105
- /// 10: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
106
- /// 11: EVENT_TYPE_WORKFLOW_TASK_STARTED
107
- pub fn workflow_fails_with_reset_after_timer(
108
- timer_id: &str,
109
- original_run_id: &str,
110
- ) -> TestHistoryBuilder {
111
- let mut t = single_timer(timer_id);
112
- t.add_workflow_task_failed_new_id(WorkflowTaskFailedCause::ResetWorkflow, original_run_id);
113
-
114
- t.add_workflow_task_scheduled_and_started();
115
- t
116
- }
117
-
118
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
119
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
120
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
121
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
122
- /// 5: EVENT_TYPE_TIMER_STARTED
123
- /// 6: EVENT_TYPE_TIMER_FIRED
124
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
125
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
126
- /// 9: EVENT_TYPE_WORKFLOW_TASK_FAILED
127
- /// 10: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
128
- /// 11: EVENT_TYPE_WORKFLOW_TASK_STARTED
129
- pub fn workflow_fails_with_failure_after_timer(timer_id: &str) -> TestHistoryBuilder {
130
- let mut t = single_timer(timer_id);
131
- t.add_workflow_task_failed_with_failure(
132
- WorkflowTaskFailedCause::WorkflowWorkerUnhandledFailure,
133
- Failure {
134
- message: "boom".to_string(),
135
- ..Default::default()
136
- },
137
- );
138
-
139
- t.add_workflow_task_scheduled_and_started();
140
- t
141
- }
142
-
143
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
144
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
145
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
146
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
147
- /// 5: EVENT_TYPE_TIMER_STARTED
148
- /// 6: EVENT_TYPE_TIMER_FIRED
149
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
150
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
151
- /// 9: EVENT_TYPE_WORKFLOW_TASK_FAILED
152
- /// 10: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
153
- /// 11: EVENT_TYPE_WORKFLOW_TASK_STARTED
154
- /// 12: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
155
- /// 13: EVENT_TYPE_TIMER_STARTED
156
- /// 14: EVENT_TYPE_TIMER_FIRED
157
- /// 15: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
158
- /// 16: EVENT_TYPE_WORKFLOW_TASK_STARTED
159
- /// 17: EVENT_TYPE_WORKFLOW_TASK_FAILED
160
- /// 18: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
161
- /// 19: EVENT_TYPE_WORKFLOW_TASK_STARTED
162
- pub fn workflow_fails_with_failure_two_different_points(
163
- timer_1: &str,
164
- timer_2: &str,
165
- ) -> TestHistoryBuilder {
166
- let mut t = single_timer(timer_1);
167
- t.add_workflow_task_failed_with_failure(
168
- WorkflowTaskFailedCause::WorkflowWorkerUnhandledFailure,
169
- Failure {
170
- message: "boom 1".to_string(),
171
- ..Default::default()
172
- },
173
- );
174
- t.add_full_wf_task();
175
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
176
- t.add_timer_fired(timer_started_event_id, timer_2.to_string());
177
- t.add_workflow_task_scheduled_and_started();
178
- t.add_workflow_task_failed_with_failure(
179
- WorkflowTaskFailedCause::WorkflowWorkerUnhandledFailure,
180
- Failure {
181
- message: "boom 2".to_string(),
182
- ..Default::default()
183
- },
184
- );
185
- t.add_workflow_task_scheduled_and_started();
186
-
187
- t
188
- }
189
-
190
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
191
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
192
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
193
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
194
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
195
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
196
- /// 7: EVENT_TYPE_ACTIVITY_TASK_COMPLETED
197
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
198
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
199
- pub fn single_activity(activity_id: &str) -> TestHistoryBuilder {
200
- let mut t = TestHistoryBuilder::default();
201
- t.add_by_type(EventType::WorkflowExecutionStarted);
202
- t.add_full_wf_task();
203
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
204
- let started_event_id = t.add_activity_task_started(scheduled_event_id);
205
- t.add_activity_task_completed(scheduled_event_id, started_event_id, Default::default());
206
- t.add_workflow_task_scheduled_and_started();
207
- t
208
- }
209
-
210
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
211
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
212
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
213
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
214
- /// 5: EVENT_TYPE_MARKER_RECORDED
215
- /// 6: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
216
- /// 7: EVENT_TYPE_WORKFLOW_TASK_STARTED
217
- pub fn single_local_activity(activity_id: &str) -> TestHistoryBuilder {
218
- let mut t = TestHistoryBuilder::default();
219
- t.add_by_type(EventType::WorkflowExecutionStarted);
220
- t.add_full_wf_task();
221
- t.add_local_activity_result_marker(1, activity_id, Default::default());
222
- t.add_workflow_task_scheduled_and_started();
223
- t
224
- }
225
-
226
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
227
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
228
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
229
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
230
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
231
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
232
- /// 7: EVENT_TYPE_ACTIVITY_TASK_FAILED
233
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
234
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
235
- pub fn single_failed_activity(activity_id: &str) -> TestHistoryBuilder {
236
- let mut t = TestHistoryBuilder::default();
237
- t.add_by_type(EventType::WorkflowExecutionStarted);
238
- t.add_full_wf_task();
239
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
240
- let started_event_id = t.add_activity_task_started(scheduled_event_id);
241
- t.add(
242
- history_event::Attributes::ActivityTaskFailedEventAttributes(
243
- ActivityTaskFailedEventAttributes {
244
- scheduled_event_id,
245
- started_event_id,
246
- ..Default::default()
247
- },
248
- ),
249
- );
250
- t.add_workflow_task_scheduled_and_started();
251
- t
252
- }
253
-
254
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
255
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
256
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
257
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
258
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
259
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
260
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
261
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
262
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
263
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
264
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
265
- pub fn cancel_scheduled_activity(activity_id: &str, signal_id: &str) -> TestHistoryBuilder {
266
- let mut t = TestHistoryBuilder::default();
267
- t.add_by_type(EventType::WorkflowExecutionStarted);
268
- t.add_full_wf_task();
269
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
270
- t.add_we_signaled(
271
- signal_id,
272
- vec![Payload {
273
- metadata: Default::default(),
274
- data: b"hello ".to_vec(),
275
- }],
276
- );
277
- t.add_full_wf_task();
278
- t.add(
279
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
280
- ActivityTaskCancelRequestedEventAttributes {
281
- scheduled_event_id,
282
- ..Default::default()
283
- },
284
- ),
285
- );
286
- t.add_workflow_execution_completed();
287
- t
288
- }
289
-
290
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
291
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
292
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
293
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
294
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
295
- /// 6: EVENT_TYPE_ACTIVITY_TASK_TIMED_OUT
296
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
297
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
298
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
299
- /// 10: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
300
- pub fn scheduled_activity_timeout(activity_id: &str) -> TestHistoryBuilder {
301
- let mut t = TestHistoryBuilder::default();
302
- t.add_by_type(EventType::WorkflowExecutionStarted);
303
- t.add_full_wf_task();
304
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
305
- t.add(
306
- history_event::Attributes::ActivityTaskTimedOutEventAttributes(
307
- ActivityTaskTimedOutEventAttributes {
308
- scheduled_event_id,
309
- ..Default::default()
310
- },
311
- ),
312
- );
313
- t.add_full_wf_task();
314
- t.add_workflow_execution_completed();
315
- t
316
- }
317
-
318
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
319
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
320
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
321
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
322
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
323
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
324
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
325
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
326
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
327
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
328
- /// 11: EVENT_TYPE_ACTIVITY_TASK_TIMED_OUT
329
- /// 12: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
330
- /// 13: EVENT_TYPE_WORKFLOW_TASK_STARTED
331
- /// 14: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
332
- /// 15: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
333
- pub fn scheduled_cancelled_activity_timeout(
334
- activity_id: &str,
335
- signal_id: &str,
336
- ) -> TestHistoryBuilder {
337
- let mut t = TestHistoryBuilder::default();
338
- t.add_by_type(EventType::WorkflowExecutionStarted);
339
- t.add_full_wf_task();
340
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
341
- t.add_we_signaled(
342
- signal_id,
343
- vec![Payload {
344
- metadata: Default::default(),
345
- data: b"hello ".to_vec(),
346
- }],
347
- );
348
- t.add_full_wf_task();
349
- t.add(
350
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
351
- ActivityTaskCancelRequestedEventAttributes {
352
- scheduled_event_id,
353
- ..Default::default()
354
- },
355
- ),
356
- );
357
- t.add(
358
- history_event::Attributes::ActivityTaskTimedOutEventAttributes(
359
- ActivityTaskTimedOutEventAttributes {
360
- scheduled_event_id,
361
- ..Default::default()
362
- },
363
- ),
364
- );
365
- t.add_full_wf_task();
366
- t.add_workflow_execution_completed();
367
- t
368
- }
369
-
370
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
371
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
372
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
373
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
374
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
375
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
376
- /// 7: EVENT_TYPE_ACTIVITY_TASK_TIMED_OUT
377
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
378
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
379
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
380
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
381
- pub fn started_activity_timeout(activity_id: &str) -> TestHistoryBuilder {
382
- let mut t = TestHistoryBuilder::default();
383
- t.add_by_type(EventType::WorkflowExecutionStarted);
384
- t.add_full_wf_task();
385
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
386
- let started_event_id = t.add(ActivityTaskStartedEventAttributes {
387
- scheduled_event_id,
388
- ..Default::default()
389
- });
390
- t.add(
391
- history_event::Attributes::ActivityTaskTimedOutEventAttributes(
392
- ActivityTaskTimedOutEventAttributes {
393
- scheduled_event_id,
394
- started_event_id,
395
- ..Default::default()
396
- },
397
- ),
398
- );
399
- t.add_full_wf_task();
400
- t.add_workflow_execution_completed();
401
- t
402
- }
403
-
404
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
405
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
406
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
407
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
408
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
409
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
410
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
411
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
412
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
413
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
414
- pub fn cancel_scheduled_activity_abandon(activity_id: &str, signal_id: &str) -> TestHistoryBuilder {
415
- let mut t = TestHistoryBuilder::default();
416
- t.add_by_type(EventType::WorkflowExecutionStarted);
417
- t.add_full_wf_task();
418
- t.add_activity_task_scheduled(activity_id);
419
- t.add_we_signaled(
420
- signal_id,
421
- vec![Payload {
422
- metadata: Default::default(),
423
- data: b"hello ".to_vec(),
424
- }],
425
- );
426
- t.add_full_wf_task();
427
- t.add_workflow_execution_completed();
428
- t
429
- }
430
-
431
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
432
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
433
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
434
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
435
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
436
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
437
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
438
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
439
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
440
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
441
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
442
- pub fn cancel_started_activity_abandon(activity_id: &str, signal_id: &str) -> TestHistoryBuilder {
443
- let mut t = TestHistoryBuilder::default();
444
- t.add_by_type(EventType::WorkflowExecutionStarted);
445
- t.add_full_wf_task();
446
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
447
- t.add(ActivityTaskStartedEventAttributes {
448
- scheduled_event_id,
449
- ..Default::default()
450
- });
451
- t.add_we_signaled(
452
- signal_id,
453
- vec![Payload {
454
- metadata: Default::default(),
455
- data: b"hello ".to_vec(),
456
- }],
457
- );
458
- t.add_full_wf_task();
459
- t.add_workflow_execution_completed();
460
- t
461
- }
462
-
463
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
464
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
465
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
466
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
467
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
468
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
469
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
470
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
471
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
472
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
473
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
474
- /// 12: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
475
- /// 13: EVENT_TYPE_WORKFLOW_TASK_STARTED
476
- /// 14: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
477
- /// 15: EVENT_TYPE_ACTIVITY_TASK_CANCELED
478
- /// 16: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
479
- /// 17: EVENT_TYPE_WORKFLOW_TASK_STARTED
480
- /// 18: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
481
- /// 19: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
482
- pub fn cancel_scheduled_activity_with_signal_and_activity_task_cancel(
483
- activity_id: &str,
484
- signal_id: &str,
485
- ) -> TestHistoryBuilder {
486
- let mut t = TestHistoryBuilder::default();
487
- t.add_by_type(EventType::WorkflowExecutionStarted);
488
- t.add_full_wf_task();
489
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
490
- t.add_we_signaled(
491
- signal_id,
492
- vec![Payload {
493
- metadata: Default::default(),
494
- data: b"hello ".to_vec(),
495
- }],
496
- );
497
- t.add_full_wf_task();
498
- t.add(
499
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
500
- ActivityTaskCancelRequestedEventAttributes {
501
- scheduled_event_id,
502
- ..Default::default()
503
- },
504
- ),
505
- );
506
- t.add_we_signaled(
507
- signal_id,
508
- vec![Payload {
509
- metadata: Default::default(),
510
- data: b"hello ".to_vec(),
511
- }],
512
- );
513
- t.add_full_wf_task();
514
- t.add(
515
- history_event::Attributes::ActivityTaskCanceledEventAttributes(
516
- ActivityTaskCanceledEventAttributes {
517
- scheduled_event_id,
518
- ..Default::default()
519
- },
520
- ),
521
- );
522
- t.add_full_wf_task();
523
- t.add_workflow_execution_completed();
524
- t
525
- }
526
-
527
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
528
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
529
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
530
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
531
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
532
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
533
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
534
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
535
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
536
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
537
- /// 11: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
538
- /// 12: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
539
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
540
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
541
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
542
- /// 16: EVENT_TYPE_ACTIVITY_TASK_CANCELED
543
- /// 17: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
544
- /// 18: EVENT_TYPE_WORKFLOW_TASK_STARTED
545
- /// 19: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
546
- /// 20: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
547
- pub fn cancel_started_activity_with_signal_and_activity_task_cancel(
548
- activity_id: &str,
549
- signal_id: &str,
550
- ) -> TestHistoryBuilder {
551
- let mut t = TestHistoryBuilder::default();
552
- t.add_by_type(EventType::WorkflowExecutionStarted);
553
- t.add_full_wf_task();
554
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
555
- t.add(ActivityTaskStartedEventAttributes {
556
- scheduled_event_id,
557
- ..Default::default()
558
- });
559
- t.add_we_signaled(
560
- signal_id,
561
- vec![Payload {
562
- metadata: Default::default(),
563
- data: b"hello ".to_vec(),
564
- }],
565
- );
566
- t.add_full_wf_task();
567
- t.add(
568
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
569
- ActivityTaskCancelRequestedEventAttributes {
570
- scheduled_event_id,
571
- ..Default::default()
572
- },
573
- ),
574
- );
575
- t.add_we_signaled(
576
- signal_id,
577
- vec![Payload {
578
- metadata: Default::default(),
579
- data: b"hello ".to_vec(),
580
- }],
581
- );
582
- t.add_full_wf_task();
583
- t.add(
584
- history_event::Attributes::ActivityTaskCanceledEventAttributes(
585
- ActivityTaskCanceledEventAttributes {
586
- scheduled_event_id,
587
- ..Default::default()
588
- },
589
- ),
590
- );
591
- t.add_full_wf_task();
592
- t.add_workflow_execution_completed();
593
- t
594
- }
595
-
596
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
597
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
598
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
599
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
600
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
601
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
602
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
603
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
604
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
605
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
606
- /// 11: EVENT_TYPE_ACTIVITY_TASK_CANCELED
607
- /// 12: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
608
- /// 13: EVENT_TYPE_WORKFLOW_TASK_STARTED
609
- /// 14: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
610
- /// 15: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
611
- pub fn cancel_scheduled_activity_with_activity_task_cancel(
612
- activity_id: &str,
613
- signal_id: &str,
614
- ) -> TestHistoryBuilder {
615
- let mut t = TestHistoryBuilder::default();
616
- t.add_by_type(EventType::WorkflowExecutionStarted);
617
- t.add_full_wf_task();
618
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
619
- t.add_we_signaled(
620
- signal_id,
621
- vec![Payload {
622
- metadata: Default::default(),
623
- data: b"hello ".to_vec(),
624
- }],
625
- );
626
- t.add_full_wf_task();
627
- t.add(
628
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
629
- ActivityTaskCancelRequestedEventAttributes {
630
- scheduled_event_id,
631
- ..Default::default()
632
- },
633
- ),
634
- );
635
- t.add(
636
- history_event::Attributes::ActivityTaskCanceledEventAttributes(
637
- ActivityTaskCanceledEventAttributes {
638
- scheduled_event_id,
639
- ..Default::default()
640
- },
641
- ),
642
- );
643
- t.add_full_wf_task();
644
- t.add_workflow_execution_completed();
645
- t
646
- }
647
-
648
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
649
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
650
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
651
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
652
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
653
- /// 6: EVENT_TYPE_ACTIVITY_TASK_STARTED
654
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
655
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
656
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
657
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
658
- /// 11: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
659
- /// 12: EVENT_TYPE_ACTIVITY_TASK_CANCELED
660
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
661
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
662
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
663
- /// 16: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
664
- pub fn cancel_started_activity_with_activity_task_cancel(
665
- activity_id: &str,
666
- signal_id: &str,
667
- ) -> TestHistoryBuilder {
668
- let mut t = TestHistoryBuilder::default();
669
- t.add_by_type(EventType::WorkflowExecutionStarted);
670
- t.add_full_wf_task();
671
- let scheduled_event_id = t.add_activity_task_scheduled(activity_id);
672
- t.add(ActivityTaskStartedEventAttributes {
673
- scheduled_event_id,
674
- ..Default::default()
675
- });
676
- t.add_we_signaled(
677
- signal_id,
678
- vec![Payload {
679
- metadata: Default::default(),
680
- data: b"hello ".to_vec(),
681
- }],
682
- );
683
- t.add_full_wf_task();
684
- t.add(
685
- history_event::Attributes::ActivityTaskCancelRequestedEventAttributes(
686
- ActivityTaskCancelRequestedEventAttributes {
687
- scheduled_event_id,
688
- ..Default::default()
689
- },
690
- ),
691
- );
692
- t.add(
693
- history_event::Attributes::ActivityTaskCanceledEventAttributes(
694
- ActivityTaskCanceledEventAttributes {
695
- scheduled_event_id,
696
- ..Default::default()
697
- },
698
- ),
699
- );
700
- t.add_full_wf_task();
701
- t.add_workflow_execution_completed();
702
- t
703
- }
704
-
705
- /// First signal's payload is "hello " and second is "world" (no metadata for either)
706
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
707
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
708
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
709
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
710
- /// 5: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
711
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
712
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
713
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
714
- pub fn two_signals(sig_1_id: &str, sig_2_id: &str) -> TestHistoryBuilder {
715
- let mut t = TestHistoryBuilder::default();
716
- t.add_by_type(EventType::WorkflowExecutionStarted);
717
- t.add_full_wf_task();
718
- t.add_we_signaled(
719
- sig_1_id,
720
- vec![Payload {
721
- metadata: Default::default(),
722
- data: b"hello ".to_vec(),
723
- }],
724
- );
725
- t.add_we_signaled(
726
- sig_2_id,
727
- vec![Payload {
728
- metadata: Default::default(),
729
- data: b"world".to_vec(),
730
- }],
731
- );
732
- t.add_workflow_task_scheduled_and_started();
733
- t
734
- }
735
-
736
- /// Can produce long histories that look like below. `num_tasks` must be > 1.
737
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
738
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
739
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
740
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
741
- /// --- Repeat num_tasks - 1 (the above is counted) times ---
742
- /// x: EVENT_TYPE_TIMER_STARTED
743
- /// x: EVENT_TYPE_TIMER_FIRED
744
- /// x: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
745
- /// x: EVENT_TYPE_WORKFLOW_TASK_STARTED
746
- /// x: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
747
- /// --- End repeat ---
748
- /// 4 + (num tasks - 1) * 4 + 1: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
749
- pub fn long_sequential_timers(num_tasks: usize) -> TestHistoryBuilder {
750
- let mut t = TestHistoryBuilder::default();
751
- t.add_by_type(EventType::WorkflowExecutionStarted);
752
- t.add_full_wf_task();
753
-
754
- for i in 1..=num_tasks {
755
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
756
- t.add_timer_fired(timer_started_event_id, i.to_string());
757
- t.add_full_wf_task();
758
- }
759
-
760
- t.add_workflow_execution_completed();
761
- t
762
- }
763
-
764
- /// Sends 5 large signals per workflow task
765
- pub fn lots_of_big_signals(num_tasks: usize) -> TestHistoryBuilder {
766
- let mut t = TestHistoryBuilder::default();
767
- t.add_by_type(EventType::WorkflowExecutionStarted);
768
- t.add_full_wf_task();
769
-
770
- let mut rng = rand::thread_rng();
771
- for _ in 1..=num_tasks {
772
- let mut dat = [0_u8; 1024 * 1000];
773
- for _ in 1..=5 {
774
- rng.fill_bytes(&mut dat);
775
- t.add_we_signaled(
776
- "bigsig",
777
- vec![Payload {
778
- metadata: Default::default(),
779
- data: dat.into(),
780
- }],
781
- );
782
- }
783
- t.add_full_wf_task();
784
- }
785
-
786
- t.add_workflow_execution_completed();
787
- t
788
- }
789
-
790
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
791
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
792
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
793
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
794
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
795
- /// 6: EVENT_TYPE_TIMER_STARTED
796
- /// 7: EVENT_TYPE_TIMER_FIRED
797
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
798
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
799
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
800
- /// 11: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
801
- /// 12: EVENT_TYPE_TIMER_STARTED
802
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
803
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
804
- pub fn unsent_at_cancel_repro() -> TestHistoryBuilder {
805
- let mut t = TestHistoryBuilder::default();
806
- t.add_by_type(EventType::WorkflowExecutionStarted);
807
- t.add_full_wf_task();
808
-
809
- let scheduled_event_id = t.add_activity_task_scheduled(1.to_string());
810
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
811
- t.add_timer_fired(timer_started_event_id, 1.to_string());
812
-
813
- t.add_full_wf_task();
814
- t.add_activity_task_cancel_requested(scheduled_event_id);
815
- t.add_by_type(EventType::TimerStarted);
816
- t.add_workflow_task_scheduled_and_started();
817
-
818
- t
819
- }
820
-
821
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
822
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
823
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
824
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
825
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
826
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
827
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
828
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
829
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
830
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
831
- /// 11: EVENT_TYPE_TIMER_STARTED
832
- /// 12: EVENT_TYPE_ACTIVITY_TASK_STARTED
833
- /// 13: EVENT_TYPE_ACTIVITY_TASK_COMPLETED
834
- /// 14: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
835
- /// 15: EVENT_TYPE_WORKFLOW_TASK_STARTED
836
- /// 16: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
837
- /// 17: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
838
- pub fn cancel_not_sent_when_also_complete_repro() -> TestHistoryBuilder {
839
- let mut t = TestHistoryBuilder::default();
840
- t.add_by_type(EventType::WorkflowExecutionStarted);
841
- t.add_full_wf_task();
842
-
843
- let scheduled_event_id = t.add_activity_task_scheduled("act-1");
844
- t.add_we_signaled(
845
- "sig-1",
846
- vec![Payload {
847
- metadata: Default::default(),
848
- data: b"hello ".to_vec(),
849
- }],
850
- );
851
- t.add_full_wf_task();
852
- t.add_activity_task_cancel_requested(scheduled_event_id);
853
- t.add_by_type(EventType::TimerStarted);
854
- let started_event_id = t.add(ActivityTaskStartedEventAttributes {
855
- scheduled_event_id,
856
- ..Default::default()
857
- });
858
- t.add(
859
- history_event::Attributes::ActivityTaskCompletedEventAttributes(
860
- ActivityTaskCompletedEventAttributes {
861
- scheduled_event_id,
862
- started_event_id,
863
- ..Default::default()
864
- },
865
- ),
866
- );
867
- t.add_full_wf_task();
868
- t.add_workflow_execution_completed();
869
-
870
- t
871
- }
872
-
873
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
874
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
875
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
876
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
877
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
878
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED (at-started)
879
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
880
- /// 8: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED (at-completed)
881
- /// 9: EVENT_TYPE_ACTIVITY_TASK_STARTED
882
- /// 10: EVENT_TYPE_ACTIVITY_TASK_COMPLETED
883
- /// 11: EVENT_TYPE_WORKFLOW_TASK_STARTED
884
- /// 12: EVENT_TYPE_WORKFLOW_TASK_TIMED_OUT
885
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
886
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
887
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
888
- /// 16: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
889
- pub fn wft_timeout_repro() -> TestHistoryBuilder {
890
- let mut t = TestHistoryBuilder::default();
891
- t.add_by_type(EventType::WorkflowExecutionStarted);
892
- t.add_full_wf_task();
893
- let scheduled_event_id = t.add_activity_task_scheduled("1");
894
- t.add_we_signaled(
895
- "at-started",
896
- vec![Payload {
897
- metadata: Default::default(),
898
- data: b"hello ".to_vec(),
899
- }],
900
- );
901
- t.add_workflow_task_scheduled();
902
- t.add_we_signaled(
903
- "at-completed",
904
- vec![Payload {
905
- metadata: Default::default(),
906
- data: b"hello ".to_vec(),
907
- }],
908
- );
909
- let started_event_id = t.add(ActivityTaskStartedEventAttributes {
910
- scheduled_event_id,
911
- ..Default::default()
912
- });
913
- t.add(ActivityTaskCompletedEventAttributes {
914
- scheduled_event_id,
915
- started_event_id,
916
- ..Default::default()
917
- });
918
- t.add_workflow_task_started();
919
- t.add_workflow_task_timed_out();
920
- t.add_full_wf_task();
921
- t.add_workflow_execution_completed();
922
-
923
- t
924
- }
925
-
926
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
927
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
928
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
929
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
930
- /// 5: EVENT_TYPE_TIMER_STARTED
931
- /// 6: EVENT_TYPE_TIMER_FIRED
932
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
933
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
934
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
935
- /// 10: EVENT_TYPE_WORKFLOW_EXECUTION_CONTINUED_AS_NEW
936
- pub fn timer_then_continue_as_new(timer_id: &str) -> TestHistoryBuilder {
937
- let mut t = TestHistoryBuilder::default();
938
- t.add_by_type(EventType::WorkflowExecutionStarted);
939
- t.add_full_wf_task();
940
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
941
- t.add_timer_fired(timer_started_event_id, timer_id.to_string());
942
- t.add_full_wf_task();
943
- t.add_continued_as_new();
944
- t
945
- }
946
-
947
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
948
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
949
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
950
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
951
- /// 5: EVENT_TYPE_TIMER_STARTED
952
- /// 6: EVENT_TYPE_TIMER_FIRED
953
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_CANCEL_REQUESTED
954
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
955
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
956
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
957
- /// 11: EVENT_TYPE_WORKFLOW_EXECUTION_CANCELED
958
- pub fn timer_wf_cancel_req_cancelled(timer_id: &str) -> TestHistoryBuilder {
959
- timer_cancel_req_then(timer_id, TestHistoryBuilder::add_cancelled)
960
- }
961
- pub fn timer_wf_cancel_req_completed(timer_id: &str) -> TestHistoryBuilder {
962
- timer_cancel_req_then(
963
- timer_id,
964
- TestHistoryBuilder::add_workflow_execution_completed,
965
- )
966
- }
967
- pub fn timer_wf_cancel_req_failed(timer_id: &str) -> TestHistoryBuilder {
968
- timer_cancel_req_then(timer_id, TestHistoryBuilder::add_workflow_execution_failed)
969
- }
970
-
971
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
972
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
973
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
974
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
975
- /// 5: EVENT_TYPE_TIMER_STARTED
976
- /// 6: EVENT_TYPE_TIMER_FIRED
977
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_CANCEL_REQUESTED
978
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
979
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
980
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
981
- /// 11: EVENT_TYPE_TIMER_STARTED
982
- /// 12: EVENT_TYPE_TIMER_FIRED
983
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
984
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
985
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
986
- /// 16: EVENT_TYPE_WORKFLOW_EXECUTION_CANCELED
987
- pub fn timer_wf_cancel_req_do_another_timer_then_cancelled() -> TestHistoryBuilder {
988
- timer_cancel_req_then("1", |t| {
989
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
990
- t.add_timer_fired(timer_started_event_id, "2".to_string());
991
- t.add_full_wf_task();
992
- t.add_cancelled();
993
- })
994
- }
995
-
996
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
997
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
998
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
999
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1000
- /// 5: EVENT_TYPE_TIMER_STARTED
1001
- /// 6: EVENT_TYPE_TIMER_FIRED
1002
- /// 7: EVENT_TYPE_WORKFLOW_EXECUTION_CANCEL_REQUESTED
1003
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1004
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
1005
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1006
- /// xxxxx
1007
- fn timer_cancel_req_then(
1008
- timer_id: &str,
1009
- end_action: impl Fn(&mut TestHistoryBuilder),
1010
- ) -> TestHistoryBuilder {
1011
- let mut t = TestHistoryBuilder::default();
1012
- t.add_by_type(EventType::WorkflowExecutionStarted);
1013
- t.add_full_wf_task();
1014
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
1015
- t.add_timer_fired(timer_started_event_id, timer_id.to_string());
1016
- t.add_cancel_requested();
1017
- t.add_full_wf_task();
1018
- end_action(&mut t);
1019
- t
1020
- }
1021
-
1022
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1023
- /// 2: EVENT_TYPE_WORKFLOW_EXECUTION_CANCEL_REQUESTED
1024
- /// 3: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1025
- /// 4: EVENT_TYPE_WORKFLOW_TASK_STARTED
1026
- /// 5: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1027
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_CANCELED
1028
- pub fn immediate_wf_cancel() -> TestHistoryBuilder {
1029
- let mut t = TestHistoryBuilder::default();
1030
- t.add_by_type(EventType::WorkflowExecutionStarted);
1031
- t.add_cancel_requested();
1032
- t.add_full_wf_task();
1033
- t.add_cancelled();
1034
- t
1035
- }
1036
-
1037
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1038
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1039
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1040
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1041
- /// 5: EVENT_TYPE_ACTIVITY_TASK_SCHEDULED
1042
- /// 6: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
1043
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1044
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1045
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1046
- /// 10: EVENT_TYPE_ACTIVITY_TASK_CANCEL_REQUESTED
1047
- /// 11: EVENT_TYPE_TIMER_STARTED
1048
- /// 12: EVENT_TYPE_ACTIVITY_TASK_STARTED
1049
- /// 13: EVENT_TYPE_ACTIVITY_TASK_TIMED_OUT
1050
- /// 14: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1051
- /// 15: EVENT_TYPE_WORKFLOW_EXECUTION_SIGNALED
1052
- /// 16: EVENT_TYPE_WORKFLOW_TASK_STARTED
1053
- /// 17: EVENT_TYPE_WORKFLOW_TASK_TIMED_OUT
1054
- /// 18: EVENT_TYPE_TIMER_FIRED
1055
- /// 19: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1056
- /// 20: EVENT_TYPE_WORKFLOW_TASK_STARTED
1057
- /// 21: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1058
- /// 22: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1059
- pub fn activity_double_resolve_repro() -> TestHistoryBuilder {
1060
- let mut t = TestHistoryBuilder::default();
1061
- t.add_by_type(EventType::WorkflowExecutionStarted);
1062
- t.add_full_wf_task();
1063
- let act_sched_id = t.add(
1064
- history_event::Attributes::ActivityTaskScheduledEventAttributes(
1065
- ActivityTaskScheduledEventAttributes {
1066
- activity_id: "1".to_string(),
1067
- ..Default::default()
1068
- },
1069
- ),
1070
- );
1071
- t.add_we_signaled("sig1", vec![]);
1072
- t.add_full_wf_task();
1073
- t.add_activity_task_cancel_requested(act_sched_id);
1074
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
1075
- t.add(ActivityTaskStartedEventAttributes {
1076
- scheduled_event_id: act_sched_id,
1077
- ..Default::default()
1078
- });
1079
- t.add(
1080
- history_event::Attributes::ActivityTaskTimedOutEventAttributes(
1081
- ActivityTaskTimedOutEventAttributes {
1082
- scheduled_event_id: act_sched_id,
1083
- ..Default::default()
1084
- },
1085
- ),
1086
- );
1087
- t.add_workflow_task_scheduled();
1088
- t.add_we_signaled("sig2", vec![]);
1089
- t.add_workflow_task_started();
1090
- t.add_workflow_task_timed_out();
1091
- t.add_timer_fired(timer_started_event_id, "2".to_string());
1092
- t.add_full_wf_task();
1093
- t.add_workflow_execution_completed();
1094
-
1095
- t
1096
- }
1097
-
1098
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1099
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1100
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1101
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1102
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1103
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1104
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1105
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1106
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1107
- fn start_child_wf_preamble(child_wf_id: &str) -> (TestHistoryBuilder, i64, i64) {
1108
- let mut t = TestHistoryBuilder::default();
1109
- t.add_by_type(EventType::WorkflowExecutionStarted);
1110
- t.add_full_wf_task();
1111
- let initiated_event_id = t.add(StartChildWorkflowExecutionInitiatedEventAttributes {
1112
- workflow_id: child_wf_id.to_owned(),
1113
- ..Default::default()
1114
- });
1115
- let started_event_id = t.add(ChildWorkflowExecutionStartedEventAttributes {
1116
- initiated_event_id,
1117
- workflow_execution: Some(WorkflowExecution {
1118
- workflow_id: child_wf_id.to_owned(),
1119
- ..Default::default()
1120
- }),
1121
- ..Default::default()
1122
- });
1123
- t.add_full_wf_task();
1124
- (t, initiated_event_id, started_event_id)
1125
- }
1126
-
1127
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1128
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1129
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1130
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1131
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1132
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1133
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1134
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1135
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1136
- /// 10: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_COMPLETED
1137
- /// 11: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1138
- /// 12: EVENT_TYPE_WORKFLOW_TASK_STARTED
1139
- /// 13: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1140
- /// 14: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1141
- pub fn single_child_workflow(child_wf_id: &str) -> TestHistoryBuilder {
1142
- let (mut t, initiated_event_id, started_event_id) = start_child_wf_preamble(child_wf_id);
1143
- t.add(
1144
- history_event::Attributes::ChildWorkflowExecutionCompletedEventAttributes(
1145
- ChildWorkflowExecutionCompletedEventAttributes {
1146
- initiated_event_id,
1147
- started_event_id,
1148
- // todo add the result payload
1149
- ..Default::default()
1150
- },
1151
- ),
1152
- );
1153
- t.add_full_wf_task();
1154
- t.add_workflow_execution_completed();
1155
- t
1156
- }
1157
-
1158
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1159
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1160
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1161
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1162
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1163
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1164
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1165
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1166
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1167
- /// 10: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_FAILED
1168
- /// 11: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1169
- /// 12: EVENT_TYPE_WORKFLOW_TASK_STARTED
1170
- /// 13: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1171
- /// 14: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1172
- pub fn single_child_workflow_fail(child_wf_id: &str) -> TestHistoryBuilder {
1173
- let (mut t, initiated_event_id, started_event_id) = start_child_wf_preamble(child_wf_id);
1174
- t.add(
1175
- history_event::Attributes::ChildWorkflowExecutionFailedEventAttributes(
1176
- ChildWorkflowExecutionFailedEventAttributes {
1177
- initiated_event_id,
1178
- started_event_id,
1179
- ..Default::default()
1180
- },
1181
- ),
1182
- );
1183
- t.add_full_wf_task();
1184
- t.add_workflow_execution_completed();
1185
- t
1186
- }
1187
-
1188
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1189
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1190
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1191
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1192
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1193
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1194
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1195
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1196
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1197
- /// 10: EVENT_TYPE_SIGNAL_WORKFLOW_EXECUTION_INITIATED
1198
- /// 11: EVENT_TYPE_EXTERNAL_WORKFLOW_EXECUTION_SIGNALED
1199
- /// 12: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_COMPLETED
1200
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1201
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
1202
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1203
- /// 16: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1204
- pub fn single_child_workflow_signaled(child_wf_id: &str, signame: &str) -> TestHistoryBuilder {
1205
- let (mut t, initiated_event_id, started_event_id) = start_child_wf_preamble(child_wf_id);
1206
- let id = t.add_signal_wf(signame, "fake_wid", "fake_rid");
1207
- t.add_external_signal_completed(id);
1208
- t.add(
1209
- history_event::Attributes::ChildWorkflowExecutionCompletedEventAttributes(
1210
- ChildWorkflowExecutionCompletedEventAttributes {
1211
- initiated_event_id,
1212
- started_event_id,
1213
- ..Default::default()
1214
- },
1215
- ),
1216
- );
1217
- t.add_full_wf_task();
1218
- t.add_workflow_execution_completed();
1219
- t
1220
- }
1221
-
1222
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1223
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1224
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1225
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1226
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1227
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1228
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1229
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1230
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1231
- /// 10: EVENT_TYPE_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_INITIATED
1232
- /// 11: EVENT_TYPE_EXTERNAL_WORKFLOW_EXECUTION_CANCEL_REQUESTED
1233
- /// 12: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_CANCELLED
1234
- /// 13: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1235
- /// 14: EVENT_TYPE_WORKFLOW_TASK_STARTED
1236
- /// 15: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1237
- /// 16: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1238
- pub fn single_child_workflow_cancelled(child_wf_id: &str) -> TestHistoryBuilder {
1239
- let (mut t, initiated_event_id, started_event_id) = start_child_wf_preamble(child_wf_id);
1240
- let id = t.add_cancel_external_wf(NamespacedWorkflowExecution {
1241
- workflow_id: child_wf_id.to_string(),
1242
- ..Default::default()
1243
- });
1244
- t.add_cancel_external_wf_completed(id);
1245
- t.add(
1246
- history_event::Attributes::ChildWorkflowExecutionCanceledEventAttributes(
1247
- ChildWorkflowExecutionCanceledEventAttributes {
1248
- initiated_event_id,
1249
- started_event_id,
1250
- ..Default::default()
1251
- },
1252
- ),
1253
- );
1254
- t.add_full_wf_task();
1255
- t.add_workflow_execution_completed();
1256
- t
1257
- }
1258
-
1259
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1260
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1261
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1262
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1263
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1264
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1265
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1266
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1267
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1268
- /// 10: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1269
- pub fn single_child_workflow_abandon_cancelled(child_wf_id: &str) -> TestHistoryBuilder {
1270
- let (mut t, _, _) = start_child_wf_preamble(child_wf_id);
1271
- t.add_workflow_execution_completed();
1272
- t
1273
- }
1274
-
1275
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1276
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1277
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1278
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1279
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1280
- /// 6: EVENT_TYPE_CHILD_WORKFLOW_EXECUTION_STARTED
1281
- /// 7: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1282
- /// 8: EVENT_TYPE_WORKFLOW_TASK_STARTED
1283
- /// 9: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1284
- /// 10: EVENT_TYPE_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_INITIATED
1285
- /// 11: EVENT_TYPE_EXTERNAL_WORKFLOW_EXECUTION_CANCEL_REQUESTED
1286
- /// 12: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1287
- /// 13: EVENT_TYPE_WORKFLOW_TASK_STARTED
1288
- /// 14: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1289
- /// 15: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1290
- pub fn single_child_workflow_try_cancelled(child_wf_id: &str) -> TestHistoryBuilder {
1291
- let (mut t, _, _) = start_child_wf_preamble(child_wf_id);
1292
- let id = t.add_cancel_external_wf(NamespacedWorkflowExecution {
1293
- workflow_id: child_wf_id.to_string(),
1294
- ..Default::default()
1295
- });
1296
- t.add_cancel_external_wf_completed(id);
1297
- t.add_full_wf_task();
1298
- t.add_workflow_execution_completed();
1299
- t
1300
- }
1301
-
1302
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1303
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1304
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1305
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1306
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_INITIATED
1307
- /// 5: EVENT_TYPE_START_CHILD_WORKFLOW_EXECUTION_FAILED
1308
- /// 6: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1309
- /// 7: EVENT_TYPE_WORKFLOW_TASK_STARTED
1310
- /// 8: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1311
- /// 9: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1312
- pub fn single_child_workflow_start_fail(child_wf_id: &str) -> TestHistoryBuilder {
1313
- let mut t = TestHistoryBuilder::default();
1314
- t.add_by_type(EventType::WorkflowExecutionStarted);
1315
- t.add_full_wf_task();
1316
- let initiated_event_id = t.add(StartChildWorkflowExecutionInitiatedEventAttributes {
1317
- workflow_id: child_wf_id.to_owned(),
1318
- ..Default::default()
1319
- });
1320
- t.add(StartChildWorkflowExecutionFailedEventAttributes {
1321
- workflow_id: child_wf_id.to_owned(),
1322
- initiated_event_id,
1323
- cause: StartChildWorkflowExecutionFailedCause::WorkflowAlreadyExists as i32,
1324
- ..Default::default()
1325
- });
1326
- t.add_full_wf_task();
1327
- t.add_workflow_execution_completed();
1328
- t
1329
- }
1330
-
1331
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1332
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1333
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1334
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1335
- /// 5: EVENT_TYPE_MARKER_RECORDED (la result)
1336
- /// 7: EVENT_TYPE_MARKER_RECORDED (la result)
1337
- /// 8: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1338
- pub fn two_local_activities_one_wft(parallel: bool) -> TestHistoryBuilder {
1339
- let mut t = TestHistoryBuilder::default();
1340
- t.add_by_type(EventType::WorkflowExecutionStarted);
1341
- t.add_full_wf_task();
1342
- let mut start_time = t.wft_start_time();
1343
- start_time.seconds += 1;
1344
- t.add_local_activity_result_marker_with_time(1, "1", b"hi".into(), start_time.clone());
1345
- if !parallel {
1346
- start_time.seconds += 1;
1347
- }
1348
- t.add_local_activity_result_marker_with_time(2, "2", b"hi2".into(), start_time);
1349
- t.add_workflow_execution_completed();
1350
- t
1351
- }
1352
-
1353
- /// 1: EVENT_TYPE_WORKFLOW_EXECUTION_STARTED
1354
- /// 2: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1355
- /// 3: EVENT_TYPE_WORKFLOW_TASK_STARTED
1356
- /// 4: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1357
- /// 5: EVENT_TYPE_MARKER_RECORDED (la result)
1358
- /// 6: EVENT_TYPE_TIMER_STARTED
1359
- /// 7: EVENT_TYPE_TIMER_FIRED
1360
- /// 8: EVENT_TYPE_WORKFLOW_TASK_SCHEDULED
1361
- /// 9: EVENT_TYPE_WORKFLOW_TASK_STARTED
1362
- /// 10: EVENT_TYPE_WORKFLOW_TASK_COMPLETED
1363
- /// 11: EVENT_TYPE_MARKER_RECORDED (la result)
1364
- /// 12: EVENT_TYPE_WORKFLOW_EXECUTION_COMPLETED
1365
- pub fn two_local_activities_separated_by_timer() -> TestHistoryBuilder {
1366
- let mut t = TestHistoryBuilder::default();
1367
- t.add_by_type(EventType::WorkflowExecutionStarted);
1368
- t.add_full_wf_task();
1369
- t.add_local_activity_result_marker(1, "1", b"hi".into());
1370
- let timer_started_event_id = t.add_by_type(EventType::TimerStarted);
1371
- t.add_timer_fired(timer_started_event_id, "1".to_string());
1372
- t.add_full_wf_task();
1373
- t.add_local_activity_result_marker(2, "2", b"hi2".into());
1374
- t.add_workflow_execution_completed();
1375
- t
1376
- }
1377
-
1378
- /// Useful for one-of needs to write a crafted history to a file. Writes it as serialized proto
1379
- /// binary to the provided path.
1380
- pub fn write_hist_to_binfile(
1381
- thb: &TestHistoryBuilder,
1382
- file_path: PathBuf,
1383
- ) -> Result<(), anyhow::Error> {
1384
- let as_complete_hist: History = thb.get_full_history_info()?.into();
1385
- let serialized = as_complete_hist.encode_to_vec();
1386
- let mut file = File::create(file_path)?;
1387
- file.write_all(&serialized)?;
1388
- Ok(())
1389
- }