An edge delivers one named output port to one named input port
The rule
- An edge delivers a value from a named output port on its source node to a named input port on its target node.
- Both port names are taken from the edge's endpoint handles; an endpoint that names no port delivers nothing, and neither warns nor fails the run.
- Delivery turns on the presence of the port's key in the source node's output, not on the value being non-null: a source that emits an explicit
nulldeliversnull, and that deliverednulloutranks the target's configuration and its schema default. - A source that omits the key delivers nothing at all, and the target port falls through to its configuration and then to its schema default.
What it means
What decides whether a value is delivered is whether the source's output
contains the wired key at all, not whether the value found there is useful.
Even an explicit null counts as delivered, and a delivered null still
outranks whatever the target's own configuration or schema default would
otherwise supply.
The other side of the same clause is silent absence: an edge whose handle cannot be split into a port name — because the direction marker is missing — names no port, and delivers nothing. Nothing is logged and the run is not failed; the target simply falls through to its own configuration and default, exactly as if the edge had never been drawn.
Example
A node wires another node's result output to its data input, but the
source's actual output never carried a result key.
{"other": "alpha"}{}A handle with no -output-/-input- marker to split on behaves the same
way: the port name resolves to nothing, and nothing arrives.