private async Task UpdateStepResultRecordAsync(
            RecipeContext recipeContext,
            bool IsSuccessful,
            Exception exception = null)
        {
            var recipeResult = await _recipeStore.FindByExecutionIdAsync(recipeContext.ExecutionId);

            if (recipeResult != null)
            {
                var recipeStepResult = recipeResult.Steps.FirstOrDefault(step => step.StepId == recipeContext.RecipeStep.Id);

                if (recipeStepResult != null)
                {
                    recipeStepResult.IsCompleted  = true;
                    recipeStepResult.IsSuccessful = IsSuccessful;
                    recipeStepResult.ErrorMessage = exception?.ToString();

                    await _recipeStore.UpdateAsync(recipeResult);
                }
            }
        }