I have an interesting idea that I hope I can properly convey. ActivePieces, like pretty much all similar automation tools, processes a workflow in a very linear fashion.
This make sense if Step 2 was dependent on Step 1 and Step 3 was dependent on Step 2. However, in my experience, this is not how most automations work.
@joeworkman Your proposal is interesting. I’m more familiar with the idea of “multiple triggers” where you can add Trigger 1, Trigger 2, Trigger 3 then all of them lead to executing the same consequent steps.
Now when it’s 1 Trigger and multi paths, do you have a real life scenario where this could help?
Also, a simple workaround for this is to add the trigger then send 3 HTTP requests to 3 async URLs (other flows that start with Webhooks on Activepieces for example) which allows you to run the 3 flows in parallel, all triggered by 1 Trigger.
Steps 1-3 must run. Although I will eliminate step 3 and guarantee a result in Step 2.
Step 6 requires Step 5.
The rest of the actions only rely on data from Step 2. Therefore, steps 4 on could be ran asynchronously.
Another benefit of running async is that a failure in one step will not stop the execution of the other steps below it since they will not be dependent.
I too felt it. While a linear approach offers simplicity, it can be quite restrictive. Similar to algorithm functions, we should have the flexibility to incorporate conditions like “if” and others for a more dynamic approach.
@ashrafsam I was wondering your thoughts on this? Think the idea has any legs?
Another potential implementation of this idea could be that if you want a step to be asynchronous, then that step should be a separate workflow. That separate workflow could then have whatever steps you want.
The idea of asynchronous flows makes so much sense… I use different automation platforms, the ones that allow asynchronous flows are 100% on top of my list.
I think it would be a great feature to add to your automation builder.