Quester Studio

join

Barrier with N incoming edges — collect predecessor outputs by node id

Waits for every live predecessor, then emits an object of their outputs keyed by node id. Use this for diamond fan-in and reconvergence after if / switch / try.

All other nodes allow at most one incoming edge. Prefer merge when you need deep-merge of named sources rather than a barrier.

in ×N join out ×1
N arms in, one collect-map out. Fan-out from join shares the same object.

Data

FieldTypeDescription
labelstringOptional UI label

Input / output

Value
Execute inputBuilt by the engine as { [predId]: output } for completed predecessors
OutputSame collect-map object

Exclusive-branch arms that were not taken are not waited on (XOR orphan awareness). Diamond fan-out waits for both arms (AND).

Examples

Diamond

start → a → b ↘
             join → …
      → a → c ↗
{
  "id": "j",
  "type": "join",
  "data": { "label": "Both arms" }
}

Example output after b/c templates:

{ "b": "from-b", "c": "from-c" }