mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-05-23 14:16:00 +00:00
When a host SubgraphNode's child has deduplicated promoted widget names (e.g. `text`, `text_1`), the legacy `proxyWidgets` migration was matching only by widget name and always picked the first widget. The third tuple element (source-node id disambiguator, e.g. `["3", "text", "2"]`) was preserved in the normalized entry but never consulted during resolution, so outer subgraph nodes ended up exposing the wrong interior widget. Add `findSourceWidget` that prefers a `PromotedWidgetView` whose interior identity (`sourceNodeId`, `sourceWidgetName`) matches the disambiguator, falling back to a name match. Wire it into `classify` and `repairCreateSubgraphInput`. Update the existing browser test to actually inspect the outer subgraph node's exposed widget value (the previous assertion only checked the inner node, so it passed against the regression). Add a unit test for the disambiguator path. Re-flip the "deep leaf" SubgraphWidgetPromotion test to assert resolution via the immediate child's PromotedWidgetView identity, which is the correct behavior under ADR 0009. Amp-Thread-ID: https://ampcode.com/threads/T-019e1db0-3c55-75fe-a542-8bfcbcf87d60 Co-authored-by: Amp <amp@ampcode.com>