Plugin type of the edge's source node.
Source port name (already normalized; out should be
resolved to success by the caller).
Catalog-derived lookup from buildPortSpecs.
OptionalportsOverride: PortSpec
When given, resolved instead of portSpecs[sourceType]
— used for a supernode instance, whose actual ports come from
supernodePortSpec rather than the type catalog.
Resolves the PortDecl.kind of a source node's output port, falling back to
successstyling for a port name the type's catalog spec doesn't declare (or a type missing from the catalog entirely) — mirroring PluginNode's default-pair fallback so an unknown port never renders as an error edge by mistake.Resolves the node's effective outputs via
resolveOutputs— the same helper PluginNode uses to render handles — so entry/terminal types (e.g. the supernode boundary pseudo-nodes) are classified identically here and on the canvas.