Branching, loops, data residency and a cost shape that does not punish success. The price: you own the 3am failure.
That trade buys three things. Branching and loops, real logic, not a linear chain. Data residency, self hosted means the payload never leaves your infrastructure, and in the Gulf, with government and semi government clients, this is frequently the difference between a project existing and not existing. Cost shape, per task pricing punishes exactly the workflows that succeed.
The cost is real: you now own the server, the updates and the 3am failure. Be honest about whether your organisation has anyone who will do that. Tool today: n8n.
A workflow is a graph of nodes. Triggers start it, actions do things, and the nodes in between are where the actual engineering lives: IF branches, switches, merges, loops over items, code nodes for the thing no node covers. The important mental shift from Day 11: n8n passes items, usually many at once, and a node runs per item. Beginner failures are one of two things, building for a single item and being surprised by twenty, or looping manually when the node already iterates.
The pattern behind most useful production workflows. Ingest, pull from an API, a webhook, a sheet, a mailbox, on a schedule or on an event. Transform, clean, filter, deduplicate, and run the AI step for extraction or classification with a locked output format. Persist, write to a database or sheet, with deduplication on a stable key so a re-run does not double everything. Deduplication is the step people discover they needed after the schedule has run forty times.
An AI node inside an unattended workflow is a judgement call running with nobody watching. Structure it: demand a fixed output shape, typically JSON with named fields, validate the shape before the next node touches it, route anything that fails validation to a human, not to the bin, and log the raw model output alongside the parsed result, so when something odd reaches a client you can reconstruct what happened. Force garbage into it on purpose and confirm the guard holds. Untested error handling is decoration.
Read the execution log after it has run a few times, not the successes, the odd ones. Every workflow run in production does something unexpected in the first week, and every time it is visible in the log before it is visible to a person. Then document it on one page: what it does, what it touches, what breaks it, who to call. A workflow only you understand is a liability disguised as an asset.
NOVA reacts, nothing is scored, nothing is stored against you.
Rebuild your Day 11 automation in n8n so you can see the same job expressed as a flow. Then add one branch: if the email is from a known domain, tag it differently.
Build a three stage pipeline. Pull data from a public source on a schedule, pass it through a language model with a locked prompt for extraction and formatting, then write the structured result into a database or sheet with deduplication. Add an error branch that notifies a human. Document the whole thing for handover.
Day 12 in progress
Tomorrow, Day 13: you train a model yourself, badly, in ten minutes, and every vendor claim lands differently forever.