Comfy-Org / Comfy-Org/ComfyUI_frontend

Promoted subgraph widget changes do not invoke the source node widget callback

Open
#14,692 2 comments 1 reaction 0 assignees View on GitHub
area:subgraph Potential Bug Public API
Dominant language
TypeScript
Stars
2k
Forks
702
Avg merge
1d 8h
Merged PRs (30d)
512

Description

### Prerequisites

- [x] I am running the latest version of ComfyUI
- [ ] I have custom nodes enabled

### What happened?

ComfyUI frontend version: 1.50.0 (nightly)
Regression observed since: approximately 1.47.x

Steps to reproduce:
1. Create a custom node with a COMBO widget and assign a widget.callback in a frontend extension.
2. Place the node inside a subgraph.
3. Promote that widget to the subgraph's outer node interface.
4. Change the promoted widget value on the outer subgraph node.

Expected:
Changing the promoted widget invokes the source widget callback, or ComfyUI exposes a supported event/API for custom nodes to react to the change.

Actual:
The inner node's widget.callback is not invoked. The promoted input writes directly to the widget value store, so custom-node logic depending on the original callback does not run.

Impact:
Dependent widget state cannot be refreshed. For example, changing a promoted project selector should fetch and populate a dependent task selector on the inner custom node.

Relevant frontend behavior:
In frontend 1.50.0, promotedInputWidget.callback calls only:
store.setValue(widgetId, next)

It does not forward the change to the source widget callback.

### Steps to Reproduce

1. Create a custom node with a COMBO widget and assign a widget.callback in a frontend extension.
2. Place the node inside a subgraph.
3. Promote that widget to the subgraph's outer node interface.
4. Change the promoted widget value on the outer subgraph node.

### How is this affecting you?

Feature doesn't work as expected

### ComfyUI Frontend Version

1.47.+

### Browser

Chrome/Chromium

### Console Errors

```javascript

```

### Logs

```shell

```

### Additional Context

_No response_

Contributor guide

Open the contributing guide

Research direction

Search the frontend for promotedInputWidget.callback and the store.setValue call described in the issue, then trace how the promoted input relates to its source widget. Reproduce the subgraph and COMBO-widget scenario, and verify that changing the outer value produces the expected callback behavior or supported event/API response.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.