Comfy-Org / Comfy-Org/ComfyUI_frontend

Promoted subgraph widget doesn't mirror control_after_generate from source

Open
#10,218 1 comment 1 reaction 0 assignees View on GitHub
area:subgraph area:widgets
Dominant language
TypeScript
Stars
2k
Forks
699
Avg merge
1d 7h
Merged PRs (30d)
490

Description

## Description

When a primitive node with a `control_after_generate` fixture (Int, seed, float) is connected to a subgraph input, the promoted widget on the SubgraphNode doesn't inherit or lock the control mode from the source widget.

The external **Int** node has `control_after_generate` set to fixed (scissors icon), but the promoted `input_int` widget on the SubgraphNode shows the randomize icon — they're out of sync.

## Expected behavior

When a widget with `control_after_generate` is promoted to a subgraph boundary input, either:
1. Mirror the source widget's control mode on the promoted widget, or
2. Default to **fixed** when the input is being overridden by an external connection

This applies to all widget types that have `control_after_generate`: INT (seed), FLOAT, etc.

## Steps to reproduce

1. Create a subgraph with an INT input
2. Inside the subgraph, connect the INT input to a node (e.g. anything accepting an int)
3. Outside, connect a primitive **Int** node to the subgraph's promoted `input_int`
4. Set the Int node's control to "fixed"
5. Observe the promoted widget on the SubgraphNode still shows a different control mode

## Context

The `PromotedWidgetView` is created via prototype chain from the interior widget, but `control_after_generate` is managed separately by the widget options/extensions system. The promotion flow in `SubgraphNode._setWidget` doesn't currently propagate or constrain this setting.

Image
Image

┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-10218-Promoted-subgraph-widget-doesn-t-mirror-control_after_generate-from-source-3266d73d3650817aa362d84aa659cf3b) by [Unito](https://www.unito.io)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.