fix(nodes): let Load Image Metadata value outputs drive dropdown widgets

model_name, sampler_name and scheduler were declared as COMBO outputs, so the
documented wiring failed at queue time with "Return type mismatch between linked
nodes". ComfyUI only accepts a COMBO output into a node that declares its
dropdown as COMBO/IO.Combo, while Load Checkpoint, KSampler and the LoRA Manager
loaders expose their options as a plain list; comfy_execution.validation rejects
any non-string input type there, and a STRING output is rejected the same way.

Declare the three sockets untyped ("*"), the type ComfyUI's own Primitive node
uses to feed widget inputs. Verified with execution.validate_inputs that they now
link into both classic list dropdowns and IO.Combo inputs.

Also corrects the wiring guide, which claimed COMBO was the supported type.
This commit is contained in:
Will Miao
2026-09-29 10:20:05 +08:00
parent 013c378a7a
commit 18504c712c
3 changed files with 35 additions and 7 deletions
+10 -5
View File
@@ -24,11 +24,16 @@ this change and refresh the page. This Python node needs no Vue widget build.
model/LoRA names, local resolution status and warnings. The original `report`
output remains notes followed by formatted JSON; it is not a pure JSON string.
`model_name`, `sampler_name`, and `scheduler` use COMBO outputs for converted
dropdown inputs in current ComfyUI. `model_name` contains the matching local
checkpoint or diffusion-model filename. The report identifies the resolved type;
connect it to the appropriate loader. Lookup searches both categories regardless
of how the original metadata labels the model.
`model_name`, `sampler_name`, and `scheduler` are declared as untyped (`*`)
outputs so they can feed the dropdown widget inputs on both
**Load Checkpoint**/**KSampler** and the LoRA Manager loaders. Typing them
`COMBO` does not work: ComfyUI only accepts a `COMBO` output into a node that
declares its dropdown as `COMBO`/`IO.Combo`, while classic dropdowns expose a
plain option list, and the server rejects the link with "Return type mismatch
between linked nodes". `model_name` contains the matching local checkpoint or
diffusion-model filename. The report identifies the resolved type; connect it to
the appropriate loader. Lookup searches both categories regardless of how the
original metadata labels the model.
For a diffusion-model workflow, connect `model_name` to **Unet Loader
(LoraManager)** and select the correct text encoder(s), VAE, latent node and