That’s not exactly true as some actions are synchronous (set state for example) and many can be made to behave synchronously (e.g., create, make changes) when they depend on the outputs of previous workflow steps. Also Element Actions in plugin elements can be made to behave synchronously (as they do in Floppy).
So, one cannot accurately describe workflow behavior this simply.
Yeah, client side Action plugins (not to be confused with Element Actions or with server-side actions) don’t really have any way to be synchronous (also, the API there is pretty deficient for doing anything “data-ey” as they can’t return values to the workflow).
So they’re kind of only useful for things we might do to manipulate the DOM. Like the other day I saw someone had done a little “confetti shower” plugin and that was the first example I’ve seen in a while of a good use for the client-side Action API
Consequently, the “when a conditional is true” is triggered and step 5 of workflow part 2 resets the Refresh Chart custom state back to “no”, so that the “when a conditional is true” can be triggered again if needed.
My doubt is the following: how do I make sure that step 5 in workflow part 1 is not setting the Refresh Chart custom state to “yes” before the previous steps 1, 2, 3 and 4 have completed?
You wrote: “Break the original workflow down and when action is complete set state to yes”
How do I tell to step 5 of workflow part 1 that previous actions were completed?
Wow thank you for this thread. Had a “Make change to thing” that was X = X+input and following conditional based on X. Was trying to use step-by-step mode to understand what was happening but the bug remains.
Ended up using result of previous step to enforce the sequence. Thanks for all the help!