Join / correlation config from [join]. Present only on join nodes.
A join node has two or more in-ports carrying distinct schemas. Arrivals
are correlated by the value of the on field (a field name present in every
input payload) — when all in-ports have produced a payload for the same key,
the node's pure_core receives the map %{port => payload} and emits the
joined result.
on— the correlation-key field name (not a predicate).timeout_ms— how long to wait for the other side(s) before giving up.deadletter— the name of an out-port; a partial match that times out is emitted there (as an%{key, ports, payloads}envelope) so nothing is lost. Optional — without it, a timed-out partial is dropped with a[:bloccs, :join, :timeout]event.
Summary
Types
@type t() :: %Bloccs.Manifest.Join{ deadletter: atom() | nil, on: String.t(), timeout_ms: pos_integer() | nil }