A straight line is a lovely way to draw a process.
It is a terrible way to run one.
Real work forks. Then it waits. Then it hands part of itself to another process entirely.
Post 14 drew our engine as an assembly line — eight boxes, joined up, reading left to right. True, and incomplete. Because the first thing anybody says when they see it is: our process isn't the same every time.
Nor should it be. A condo needs a document a single-family house doesn't. An account with an open balance needs a person to look at it. A clean one needs nobody.
So a step is allowed two exits.It reads a value the run is already carrying — a status, a count, a yes — and tests it. Equals. Doesn't equal. Contains. Is empty. Bigger than. Then it leaves by whichever exit matched, and everything hanging off the other one simply never happens. There is a four-way version for when two isn't enough.
Two roads eventually have to become one road again, so the join waits. Nothing past it moves until every branch feeding it has arrived.
Then the part I like most.
A flow can stop for three days.Not a program standing there with its finger on the pause button, holding a machine open all weekend. The run is written down, given a wake-up time, and let go of. Nothing is left running. When the time comes, a sweep picks up everything that is due and carries on from the exact step it stopped on. It survives a restart, because there was nothing to restart.
And a flow can call another flow — handing over everything the run knows, or just the three fields it needs.
So the five steps you built once don't get rebuilt in twelve places. When the wording changes, it changes once.
None of this is exotic. It is the difference between a diagram and a machine.
A machine has to survive the Tuesday it doesn't.
Next: the rehearsal — running a flow on your own data before it touches a customer.