Nodes/comfy-ovum/Passthru Input And Output Is List Ovum
ComfyUI Node

Passthru Input And Output Is List Ovum

The spy node that keeps lists as lists

By sfinktah·Created about a year ago·Updated 10 months ago· 7
Passthru Input And Output Is List Ovum
  • any_in
  • any_out

The purest member of the pack's passthrough family: it takes any value, declares it a list on the way in, declares it a list on the way out, and dumps what it saw to your console and the node's canvas. PassthruInputAndOutputIsListOvum is a zero-transform spy node that exists to answer one question - "what is actually flowing down this wire, and in what shape?" - while keeping the list-shaped semantics intact for whatever it feeds.

How it works

Input is any_in (*, optional - leave it unconnected and it still logs "None", which is itself informative). The node sets both INPUT_IS_LIST and OUTPUT_IS_LIST: ComfyUI delivers the full list, and the any_out output is announced to downstream as a list. The status text shows a compact pretty-printed rendering of the value with its type, and the same rendering goes to the ComfyUI console prefixed with the node's title and ID. Like its siblings, IS_CHANGED always returns NaN, so it re-executes on every run and the dump is never stale.

The output is any_out (*) - the value unchanged, just wearing the "this is a list" sign. That's the whole deal: no mutation, just visibility plus an explicit list contract.

Why you'd reach for it

Two jobs. Debugging is the obvious one - if a downstream node keeps flattening or rejecting a list, drop this on the wire and read the canvas status to see the shape, then decide whether you actually needed the list interpretation. Type contract is the subtler one: some ComfyUI nodes output list-shaped data that the engine then unpacks element-wise downstream, and you want to force the list interpretation all the way through. This node is the explicit way to say "this wire is a list, treat it as such," without altering the data at all.

Installing it

Ships in comfy-ovum. ComfyUI Manager → search "comfy-ovum", or:

cd ComfyUI/custom_nodes
git clone https://github.com/sfinktah/comfy-ovum

Restart, find it under ovum/debug (display name "Passthru Input And Output Is List Ovum"). No models, no special dependencies.

The gotcha

Don't let "list" fool you into thinking it converts anything - it declares the input as a list to the engine, but it does not force non-list data into a Python list. If the upstream value is a single string, that's still what flows out; the flags shape how ComfyUI routes the value, not what the value is. And like any debug node, it's meant to be removed or muted once the mystery is solved - it re-runs every time and writes to the console, which you don't want in a permanent pipeline.

Categoryovum/debug

Inputs (1)

NameTypeDefaultDescription
any_inopt*

Outputs (1)

NameTypeDescription
any_out*