n8n Expressions n8n's expression language is JavaScript embedded in blocks. They run synchronously, on a single item at a time ( ), with access to upstream nodes ( ), Luxon for dates, and most of native JS. Non-negotiable Reference data by node name, not . Use (or ). works but breaks when any node clears item context (Aggregate, Code with Run for All, branching merges) or a refactor adds an intermediate. Failures are silent, and downstream gets the wrong data with no error. Node-name references are stable. Strong defaults - No Set nodes whose only purpose is to feed a single downstream field.…