You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On frontend 1.46.x, a null entry in a subgraph host node's widgets_values meant "no host override — fall through to the interior widget's value". That fallthrough is gone on ≥1.47.9: host widgets_values is now the authoritative value (it seeds the display and compiles into the prompt), and a null entry loads as undefined rather than deferring to the interior node.
The result is that any workflow saved before the ADR-0009 / widget-store refactor, whose host widgets_values contains nulls, now opens with dead promoted widgets — no error, no warning, no migration.
This is not hypothetical: nulling those entries was the documented recovery workaround for #13601, so the workflows most likely to hit this are the ones whose owners followed the advice in that thread.
Evidence
A workflow saved under 1.46.x, subgraph host node with:
Inspect the host node's promoted widgets: the numeric ones have value === undefined and render blank/NaN instead of picking up the interior values.
How is this affecting you?
Workflows that opened fine before a routine frontend update now open with unusable promoted controls, and the failure is silent — nothing in the console indicates a migration happened or failed. Recovery means hand-editing JSON to write concrete values into widgets_values, which requires knowing the slot ordering.
Because the null-out was the recommended fix in #13601, this preferentially breaks workflows belonging to users who reported or worked around that bug.
Suggested fix
A load-time migration: when a host widgets_values entry is null/absent, resolve the value from the linked interior widget (the pre-1.47 semantics) instead of leaving it undefined. That keeps the new authoritative-host-value model while letting legacy files self-heal on open.
ComfyUI Frontend Version
1.47.11 (core v0.29.2). The behaviour change was already present at 1.47.9; not tested on 1.49.x, which landed #10392 (widgets_values_named) in this same serialization area.
Browser
Chrome — the broken state is in the loaded graph model, so it is not browser-specific.
Additional Context
Follow-up to #13601 (the original freeze, which I can confirm is fixed on 1.47.11 — see my comment there). This issue is the inverse failure introduced by the same refactor.
What happened?
On frontend 1.46.x, a
nullentry in a subgraph host node'swidgets_valuesmeant "no host override — fall through to the interior widget's value". That fallthrough is gone on ≥1.47.9: hostwidgets_valuesis now the authoritative value (it seeds the display and compiles into the prompt), and anullentry loads asundefinedrather than deferring to the interior node.The result is that any workflow saved before the ADR-0009 / widget-store refactor, whose host
widgets_valuescontains nulls, now opens with dead promoted widgets — no error, no warning, no migration.This is not hypothetical: nulling those entries was the documented recovery workaround for #13601, so the workflows most likely to hit this are the ones whose owners followed the advice in that thread.
Evidence
A workflow saved under 1.46.x, subgraph host node with:
loaded on frontend 1.47.11 / core v0.29.2 — 5 of the 8 promoted widgets come back with
value: undefined:The interior nodes still hold their real values — only the host-level view is broken — so the information needed to migrate is present in the file.
Steps to Reproduce
widgets_valuestonull(the Editing a promoted widget in the properties side panel permanently freezes that widget on the subgraph node (stale host widgets_values shadow) #13601 workaround), or otherwise obtain a workflow saved with nulls there.value === undefinedand render blank/NaN instead of picking up the interior values.How is this affecting you?
Workflows that opened fine before a routine frontend update now open with unusable promoted controls, and the failure is silent — nothing in the console indicates a migration happened or failed. Recovery means hand-editing JSON to write concrete values into
widgets_values, which requires knowing the slot ordering.Because the null-out was the recommended fix in #13601, this preferentially breaks workflows belonging to users who reported or worked around that bug.
Suggested fix
A load-time migration: when a host
widgets_valuesentry isnull/absent, resolve the value from the linked interior widget (the pre-1.47 semantics) instead of leaving itundefined. That keeps the new authoritative-host-value model while letting legacy files self-heal on open.ComfyUI Frontend Version
1.47.11 (core v0.29.2). The behaviour change was already present at 1.47.9; not tested on 1.49.x, which landed #10392 (
widgets_values_named) in this same serialization area.Browser
Chrome — the broken state is in the loaded graph model, so it is not browser-specific.
Additional Context
Follow-up to #13601 (the original freeze, which I can confirm is fixed on 1.47.11 — see my comment there). This issue is the inverse failure introduced by the same refactor.