When executing Temporal tests locally, workflows with the same workflow_id, and COMPLETED status are not rerun. They raise a WorkflowExecutionAlreadyStartedFailure.
But this is not the case in production, where COMPLETED workflows with the same workflow_id are rerun without passing {workflow_id_reuse_policy: :allow} explicitly.
I have currently patched
|
reuse_policy = options[:workflow_id_reuse_policy] || :allow_failed |
, to use
:allow as the default value.
Is this intended behavior ? I feel the testing environment should be as close as possible to dev & production.
When executing Temporal tests locally, workflows with the same
workflow_id, andCOMPLETEDstatus are not rerun. They raise aWorkflowExecutionAlreadyStartedFailure.But this is not the case in production, where
COMPLETEDworkflows with the sameworkflow_idare rerun without passing{workflow_id_reuse_policy: :allow}explicitly.I have currently patched
temporal-ruby/lib/temporal/testing/temporal_override.rb
Line 83 in b5efd2c
:allowas the default value.Is this intended behavior ? I feel the testing environment should be as close as possible to dev & production.