Ability to rerun a workflow from a specific step
The Idea: Please add the ability to rerun a workflow job from a specific step. For example, if a workflow has 5 steps and fails on step 3, I want to be able to choose where the workflow reruns from. I could have it rerun from step 3, so that steps 1 and 2 are not rerun, or I could rerun it from step 2 so that all steps but step 1 would rerun.
The Reason:
We regularly deal with failed workflow steps, the most common of which is Procore File Upload failing and SQL Upserts failing. This is sometimes due to an unknown issue, and is sometimes due to bad data entry on the form.
However, these steps are always preceded by email notifications that are sent out first. So if we rerun the whole workflow in order to retry the failed steps, duplicate email notifications would be sent out, confusing our users.
Because of this limitation, we have a standard of breaking out each template's workflows into 3: A "Route" workflow that handles email notifications, form updates, etc., an "SQL" workflow that handles all SQL data syncs from the form, and a "Procore" workflow that handles the upload of documents to Procore. This means that for the majority of our templates, they have a minimum of 3 workflows. We do this so that if SQL or Procore fails, we can rerun the workflow without having to rerun all of the steps within the "Route".
This has been fine for us up to this point, however, with the new throttling measure (only 10 workflow jobs can run at one time), this method just means we have 3x the number of cars on the highway per submitted form. We would have 1/3 of the jobs running per day if we could have all of the steps under one workflow for each template.