Required vs. recommended
A quick checklist: what the automation simply won't work without, and what only improves the experience and maintainability.
Required (without it the automation won't work)
Every chain must start with a single event square - you can't run an automation without a trigger.
Every action that operates on something specific (an element, a screen, a table) needs that target filled in - otherwise it's a silent no-op, with no error shown.
If you want several elements per row - wrap them in a single container first and put that container as the loop's only child.
Starts with a letter/underscore, only letters/digits/underscore, and unique within the app.
"Turn on notifications" must run in response to a genuine user click (a browser restriction) - it won't work from an event like "App entry".
Recommended (improves experience and maintainability)
Add "Show message" after meaningful actions (save, submit, delete) so the visitor knows something happened.
Decide up front whether each table needs to be shared (global) or private per visitor - and remember that a Data Loop always reads global.
shortId is easy to type but not guaranteed unique (only 900 combinations) - for real visitor/order identification, prefer genId.
Test every automation chain in preview before publishing - especially "yes"/"no" branches and edge cases.
Make sure the collection name matches exactly (case, spaces) between the Data Loop element and the dbSet/dbGet actions that feed it.