mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-05-11 08:20:53 +00:00
## Summary Packing nodes inside a subgraph into a nested subgraph no longer blanks the parent subgraph node's promoted widget values. ## Changes - **What**: After `convertToSubgraph` moves interior nodes into a nested subgraph, `_repointAncestorPromotions` rewrites the promotion store entries on all host SubgraphNodes so they chain through the new nested node. `rebuildInputWidgetBindings()` then clears the stale `input._widget` PromotedWidgetView cache and re-resolves bindings from current connections. - The root cause was two separate sets of PromotedWidgetView references: `node.widgets` (rebuilt from the store — correct) vs `input._widget` (cached at promotion time — stale). `SubgraphNode.serialize()` reads `input._widget.value`, which resolved against removed node IDs → `missing-node` → blank values on the next `checkState` cycle. ## Review Focus - `_repointAncestorPromotions` iterates all graphs to find host nodes of the current subgraph type — verify this covers all cases (multiple instances of the same subgraph type). - `rebuildInputWidgetBindings()` clears `_promotedViewManager` and re-resolves — confirm no side effects on event listeners or pending promotions. - The nested node gets duplicate promotion entries (from both `_repointAncestorPromotions` and `promoteRecommendedWidgets` via the `subgraph-converted` event). `store.promote()` deduplicates via `isPromoted`, but worth verifying. ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-10532-fix-repoint-ancestor-promoted-widget-bindings-when-packing-nested-subgraphs-32e6d73d365081109d5aea0660434082) by [Unito](https://www.unito.io) --------- Co-authored-by: Amp <amp@ampcode.com> Co-authored-by: Benjamin Lu <benjaminlu1107@gmail.com> Co-authored-by: Christian Byrne <cbyrne@comfy.org> Co-authored-by: GitHub Action <action@github.com> Co-authored-by: Comfy Org PR Bot <snomiao+comfy-pr@gmail.com> Co-authored-by: christian-byrne <72887196+christian-byrne@users.noreply.github.com> Co-authored-by: github-actions <github-actions@github.com> Co-authored-by: pythongosssss <125205205+pythongosssss@users.noreply.github.com> Co-authored-by: Yourz <crazilou@vip.qq.com>