Skip to content

Conversation

@AustinMroz
Copy link
Collaborator

@AustinMroz AustinMroz commented Jan 16, 2026

When a link is made to a widget with control (like seed) , the control widget can no longer be used to update it's state. To better communicate this, the control widgets are now given the disabled property when their parent widget is linked.

Before After
before after

┆Issue is synchronized with this Notion page by Unito

@AustinMroz AustinMroz requested a review from a team as a code owner January 16, 2026 21:03
@dosubot dosubot bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jan 16, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 16, 2026

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (2)
  • browser_tests/tests/primitiveNode.spec.ts-snapshots/primitive-node-connected-chromium-linux.png is excluded by !**/*.png
  • browser_tests/tests/primitiveNode.spec.ts-snapshots/static-primitive-connected-chromium-linux.png is excluded by !**/*.png

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

📝 Walkthrough

Walkthrough

Adds dynamic 'disabled' getters to valueControl and comboFilter widgets to propagate the disabled state from targetWidget.computedDisabled. The getters are implemented using Object.defineProperty as read-only accessors without modifying existing logic or public APIs.

Changes

Cohort / File(s) Summary
Widget disabled state propagation
src/scripts/widgets.ts
Adds read-only 'disabled' property getters to valueControl and comboFilter widgets using Object.defineProperty to reflect targetWidget.computedDisabled state

Suggested reviewers

  • DrJKL
  • christian-byrne

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

github-actions bot commented Jan 16, 2026

🎭 Playwright Tests: ⚠️ Passed with flaky tests

Results: 503 passed, 0 failed, 2 flaky, 8 skipped (Total: 513)

❌ Failed Tests

📊 Browser Reports
  • chromium: View Report (✅ 491 / ❌ 0 / ⚠️ 2 / ⏭️ 8)
  • chromium-2x: View Report (✅ 2 / ❌ 0 / ⚠️ 0 / ⏭️ 0)
  • chromium-0.5x: View Report (✅ 1 / ❌ 0 / ⚠️ 0 / ⏭️ 0)
  • mobile-chrome: View Report (✅ 9 / ❌ 0 / ⚠️ 0 / ⏭️ 0)

@github-actions
Copy link

github-actions bot commented Jan 16, 2026

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 01/16/2026, 09:52:08 PM UTC

🔗 Links


🎉 Your Storybook is ready for review!

@github-actions
Copy link

github-actions bot commented Jan 16, 2026

Bundle Size Report

Summary

  • Raw size: 19.8 MB baseline 19.8 MB — 🔴 +273 B
  • Gzip: 4.04 MB baseline 4.04 MB — 🔴 +71 B
  • Brotli: 3.08 MB baseline 3.08 MB — 🟢 -83 B
  • Bundles: 99 current • 99 baseline • 38 added / 38 removed

Category Glance
App Entry Points 🔴 +273 B (3.36 MB) · Vendor & Third-Party ⚪ 0 B (9.34 MB) · Other ⚪ 0 B (5.38 MB) · Graph Workspace ⚪ 0 B (1.14 MB) · Panels & Settings ⚪ 0 B (372 kB) · UI Components ⚪ 0 B (203 kB) · + 3 more

Per-category breakdown
App Entry Points — 3.36 MB (baseline 3.36 MB) • 🔴 +273 B

Main entry bundles and manifests

File Before After Δ Raw Δ Gzip Δ Brotli
assets/index-CdImUOp4.js (new) 3.16 MB 🔴 +3.16 MB 🔴 +662 kB 🔴 +502 kB
assets/index-B5aWirBx.js (removed) 3.16 MB 🟢 -3.16 MB 🟢 -662 kB 🟢 -503 kB
assets/index-BlO634rR.js (new) 200 kB 🔴 +200 kB 🔴 +44.1 kB 🔴 +36.4 kB
assets/index-D_ncDpdZ.js (removed) 200 kB 🟢 -200 kB 🟢 -44.1 kB 🟢 -36.4 kB
assets/index-D3DRfXM1.js (new) 345 B 🔴 +345 B 🔴 +245 B 🔴 +234 B
assets/index-Dyn0978C.js (removed) 345 B 🟢 -345 B 🟢 -245 B 🟢 -240 B

Status: 3 added / 3 removed

Graph Workspace — 1.14 MB (baseline 1.14 MB) • ⚪ 0 B

Graph editor runtime, canvas, workflow orchestration

File Before After Δ Raw Δ Gzip Δ Brotli
assets/GraphView-DE9U5cU9.js (new) 1.14 MB 🔴 +1.14 MB 🔴 +217 kB 🔴 +164 kB
assets/GraphView-DQDZ3JX7.js (removed) 1.14 MB 🟢 -1.14 MB 🟢 -217 kB 🟢 -164 kB

Status: 1 added / 1 removed

Views & Navigation — 6.66 kB (baseline 6.66 kB) • ⚪ 0 B

Top-level views, pages, and routed surfaces

File Before After Δ Raw Δ Gzip Δ Brotli
assets/UserSelectView-C3gtFvjR.js (removed) 6.66 kB 🟢 -6.66 kB 🟢 -2.16 kB 🟢 -1.91 kB
assets/UserSelectView-CLy4Vm4m.js (new) 6.66 kB 🔴 +6.66 kB 🔴 +2.16 kB 🔴 +1.92 kB

Status: 1 added / 1 removed

Panels & Settings — 372 kB (baseline 372 kB) • ⚪ 0 B

Configuration panels, inspectors, and settings screens

File Before After Δ Raw Δ Gzip Δ Brotli
assets/LegacyCreditsPanel-0ggsFUY_.js (new) 25.2 kB 🔴 +25.2 kB 🔴 +5.75 kB 🔴 +5.01 kB
assets/LegacyCreditsPanel-CpRF0gFA.js (removed) 25.2 kB 🟢 -25.2 kB 🟢 -5.76 kB 🟢 -5.02 kB
assets/KeybindingPanel-CbnD_zIB.js (new) 14.9 kB 🔴 +14.9 kB 🔴 +3.59 kB 🔴 +3.13 kB
assets/KeybindingPanel-IxdO_fbJ.js (removed) 14.9 kB 🟢 -14.9 kB 🟢 -3.59 kB 🟢 -3.14 kB
assets/ExtensionPanel-D_mbrkTw.js (removed) 11.1 kB 🟢 -11.1 kB 🟢 -2.63 kB 🟢 -2.31 kB
assets/ExtensionPanel-DBmkMeOO.js (new) 11.1 kB 🔴 +11.1 kB 🔴 +2.63 kB 🔴 +2.31 kB
assets/AboutPanel-CeeeKbvG.js (new) 9.2 kB 🔴 +9.2 kB 🔴 +2.48 kB 🔴 +2.22 kB
assets/AboutPanel-D6f8biV1.js (removed) 9.2 kB 🟢 -9.2 kB 🟢 -2.48 kB 🟢 -2.22 kB
assets/ServerConfigPanel-CbkEMHTR.js (removed) 7.55 kB 🟢 -7.55 kB 🟢 -2.06 kB 🟢 -1.82 kB
assets/ServerConfigPanel-D8V8UY6t.js (new) 7.55 kB 🔴 +7.55 kB 🔴 +2.06 kB 🔴 +1.82 kB
assets/UserPanel-C9ISVbNa.js (new) 6.92 kB 🔴 +6.92 kB 🔴 +1.8 kB 🔴 +1.57 kB
assets/UserPanel-k0nZPTJx.js (removed) 6.92 kB 🟢 -6.92 kB 🟢 -1.8 kB 🟢 -1.58 kB
assets/settings-BGQfQzTx.js 25.6 kB 25.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-BVE4KHTw.js 22.7 kB 22.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-BVtpJmlU.js 30.9 kB 30.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-C2aO00Dz.js 28.6 kB 28.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-Cm3ieBXR.js 27.8 kB 27.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CzQKMdK3.js 26.2 kB 26.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CzYUIUnL.js 27.1 kB 27.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DwKpL7jw.js 26.3 kB 26.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DX8feV4n.js 25.3 kB 25.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-mWzYycGc.js 22 kB 22 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-U4AdZ8Rl.js 34.9 kB 34.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 6 added / 6 removed

UI Components — 203 kB (baseline 203 kB) • ⚪ 0 B

Reusable component library chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/LazyImage.vue_vue_type_script_setup_true_lang-DNLAABKg.js (removed) 63.9 kB 🟢 -63.9 kB 🟢 -12.8 kB 🟢 -11.2 kB
assets/LazyImage.vue_vue_type_script_setup_true_lang-DxkrRH7f.js (new) 63.9 kB 🔴 +63.9 kB 🔴 +12.8 kB 🔴 +11.2 kB
assets/Load3D.vue_vue_type_script_setup_true_lang-6-kfU7MK.js (removed) 56.4 kB 🟢 -56.4 kB 🟢 -8.78 kB 🟢 -7.53 kB
assets/Load3D.vue_vue_type_script_setup_true_lang-D1AYpzuu.js (new) 56.4 kB 🔴 +56.4 kB 🔴 +8.78 kB 🔴 +7.54 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-BaMZNCSF.js (new) 48.1 kB 🔴 +48.1 kB 🔴 +10.4 kB 🔴 +9 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-Dtto2CDM.js (removed) 48.1 kB 🟢 -48.1 kB 🟢 -10.4 kB 🟢 -9 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-DG5iq1ld.js (removed) 16.4 kB 🟢 -16.4 kB 🟢 -4.11 kB 🟢 -3.64 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-DHwlCVc0.js (new) 16.4 kB 🔴 +16.4 kB 🔴 +4.12 kB 🔴 +3.65 kB
assets/ComfyQueueButton-BmL2oehY.js (removed) 8.87 kB 🟢 -8.87 kB 🟢 -2.6 kB 🟢 -2.32 kB
assets/ComfyQueueButton-DlnGdZ27.js (new) 8.87 kB 🔴 +8.87 kB 🔴 +2.6 kB 🔴 +2.31 kB
assets/WidgetWithControl.vue_vue_type_script_setup_true_lang-BI-Drhfz.js (removed) 3.75 kB 🟢 -3.75 kB 🟢 -1.47 kB 🟢 -1.33 kB
assets/WidgetWithControl.vue_vue_type_script_setup_true_lang-CjaYy1dy.js (new) 3.75 kB 🔴 +3.75 kB 🔴 +1.47 kB 🔴 +1.33 kB
assets/WidgetButton-CeEZfgiT.js (removed) 2.25 kB 🟢 -2.25 kB 🟢 -1.01 kB 🟢 -912 B
assets/WidgetButton-Cwx9DRb9.js (new) 2.25 kB 🔴 +2.25 kB 🔴 +1.01 kB 🔴 +908 B
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-B-8nX1tR.js (removed) 2.14 kB 🟢 -2.14 kB 🟢 -891 B 🟢 -771 B
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-BtX75XMR.js (new) 2.14 kB 🔴 +2.14 kB 🔴 +892 B 🔴 +771 B
assets/UserAvatar.vue_vue_type_script_setup_true_lang-DYuISk5v.js 1.34 kB 1.34 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 8 added / 8 removed

Data & Services — 12.5 kB (baseline 12.5 kB) • ⚪ 0 B

Stores, services, APIs, and repositories

File Before After Δ Raw Δ Gzip Δ Brotli
assets/keybindingService-BF2ULHAm.js (new) 7.51 kB 🔴 +7.51 kB 🔴 +1.83 kB 🔴 +1.58 kB
assets/keybindingService-DwjBAmGn.js (removed) 7.51 kB 🟢 -7.51 kB 🟢 -1.83 kB 🟢 -1.57 kB
assets/audioService-B4f2EbBj.js (new) 2.2 kB 🔴 +2.2 kB 🔴 +962 B 🔴 +822 B
assets/audioService-BYw3CZ3m.js (removed) 2.2 kB 🟢 -2.2 kB 🟢 -963 B 🟢 -823 B
assets/serverConfigStore-UAfw346M.js 2.83 kB 2.83 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 2 added / 2 removed

Utilities & Hooks — 1.41 kB (baseline 1.41 kB) • ⚪ 0 B

Helpers, composables, and utility bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/audioUtils-C089N6tx.js (removed) 1.41 kB 🟢 -1.41 kB 🟢 -650 B 🟢 -540 B
assets/audioUtils-DCNyHHAX.js (new) 1.41 kB 🔴 +1.41 kB 🔴 +651 B 🔴 +551 B

Status: 1 added / 1 removed

Vendor & Third-Party — 9.34 MB (baseline 9.34 MB) • ⚪ 0 B

External libraries and shared vendor chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/vendor-chart-B6cS_vC9.js 452 kB 452 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-other-qQ0OqwZI.js 3.93 MB 3.93 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-primevue-C6JjJDK2.js 1.95 MB 1.95 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-reka-ui-DDrshcJ8.js 111 kB 111 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-three-y3pikHUU.js 2.08 MB 2.08 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-tiptap-CsIL_yPi.js 232 kB 232 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-vue-8yQe0SeB.js 165 kB 165 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-xterm-BF8peZ5_.js 420 kB 420 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
Other — 5.38 MB (baseline 5.38 MB) • ⚪ 0 B

Bundles that do not match a named category

File Before After Δ Raw Δ Gzip Δ Brotli
assets/SubscriptionRequiredDialogContent-19eReIR5.js (new) 29.3 kB 🔴 +29.3 kB 🔴 +6.51 kB 🔴 +5.66 kB
assets/SubscriptionRequiredDialogContent-CK-l-B9H.js (removed) 29.3 kB 🟢 -29.3 kB 🟢 -6.51 kB 🟢 -5.66 kB
assets/WidgetRecordAudio-CGNzsro0.js (removed) 20.5 kB 🟢 -20.5 kB 🟢 -5.24 kB 🟢 -4.64 kB
assets/WidgetRecordAudio-DoTNTR8t.js (new) 20.5 kB 🔴 +20.5 kB 🔴 +5.24 kB 🔴 +4.65 kB
assets/AudioPreviewPlayer-BzJWtA2e.js (removed) 13.4 kB 🟢 -13.4 kB 🟢 -3.36 kB 🟢 -3.01 kB
assets/AudioPreviewPlayer-VVT1HUwR.js (new) 13.4 kB 🔴 +13.4 kB 🔴 +3.37 kB 🔴 +3.01 kB
assets/ValueControlPopover-BEFKM667.js (new) 5.53 kB 🔴 +5.53 kB 🔴 +1.72 kB 🔴 +1.53 kB
assets/ValueControlPopover-C44JR4r_.js (removed) 5.53 kB 🟢 -5.53 kB 🟢 -1.72 kB 🟢 -1.53 kB
assets/WidgetGalleria-D210isIC.js (removed) 4.14 kB 🟢 -4.14 kB 🟢 -1.46 kB 🟢 -1.32 kB
assets/WidgetGalleria-pB8ftyQ9.js (new) 4.14 kB 🔴 +4.14 kB 🔴 +1.46 kB 🔴 +1.32 kB
assets/WidgetColorPicker-oJKZq5jR.js (removed) 3.44 kB 🟢 -3.44 kB 🟢 -1.4 kB 🟢 -1.25 kB
assets/WidgetColorPicker-QBuyMWgK.js (new) 3.44 kB 🔴 +3.44 kB 🔴 +1.4 kB 🔴 +1.26 kB
assets/WidgetTextarea-D-x4pnkq.js (new) 3.12 kB 🔴 +3.12 kB 🔴 +1.23 kB 🔴 +1.1 kB
assets/WidgetTextarea-UZ5YOekd.js (removed) 3.12 kB 🟢 -3.12 kB 🟢 -1.23 kB 🟢 -1.11 kB
assets/WidgetMarkdown-Biy9ZURz.js (new) 3.12 kB 🔴 +3.12 kB 🔴 +1.3 kB 🔴 +1.14 kB
assets/WidgetMarkdown-DxCIq0QJ.js (removed) 3.12 kB 🟢 -3.12 kB 🟢 -1.29 kB 🟢 -1.14 kB
assets/WidgetAudioUI-C23a_ryj.js (new) 2.93 kB 🔴 +2.93 kB 🔴 +1.19 kB 🔴 +1.07 kB
assets/WidgetAudioUI-C8zTbzjx.js (removed) 2.93 kB 🟢 -2.93 kB 🟢 -1.18 kB 🟢 -1.07 kB
assets/WidgetToggleSwitch-C0hIg10d.js (new) 2.7 kB 🔴 +2.7 kB 🔴 +1.14 kB 🔴 +1.02 kB
assets/WidgetToggleSwitch-s5n7HngL.js (removed) 2.7 kB 🟢 -2.7 kB 🟢 -1.14 kB 🟢 -1.05 kB
assets/WidgetInputText-Cfx7B4Vs.js (new) 2.03 kB 🔴 +2.03 kB 🔴 +938 B 🔴 +857 B
assets/WidgetInputText-PNHa3yqo.js (removed) 2.03 kB 🟢 -2.03 kB 🟢 -936 B 🟢 -865 B
assets/Media3DTop-CQw4_ZkJ.js (new) 1.53 kB 🔴 +1.53 kB 🔴 +780 B 🔴 +670 B
assets/Media3DTop-D263Hz5A.js (removed) 1.53 kB 🟢 -1.53 kB 🟢 -784 B 🟢 -667 B
assets/WidgetSelect-BO1dXmHl.js (new) 772 B 🔴 +772 B 🔴 +376 B 🔴 +353 B
assets/WidgetSelect-DFNE4zy7.js (removed) 772 B 🟢 -772 B 🟢 -375 B 🟢 -344 B
assets/WidgetInputNumber-Bs7xwmob.js (new) 712 B 🔴 +712 B 🔴 +363 B 🔴 +330 B
assets/WidgetInputNumber-BW2zp-nu.js (removed) 712 B 🟢 -712 B 🟢 -361 B 🟢 -331 B
assets/Load3D-BIqGt7rt.js (removed) 463 B 🟢 -463 B 🟢 -281 B 🟢 -237 B
assets/Load3D-C9oXDWr0.js (new) 463 B 🔴 +463 B 🔴 +282 B 🔴 +238 B
assets/WidgetLegacy-BGogCs2S.js (removed) 403 B 🟢 -403 B 🟢 -250 B 🟢 -210 B
assets/WidgetLegacy-DRP8P3p6.js (new) 403 B 🔴 +403 B 🔴 +251 B 🔴 +211 B
assets/commands-B32ZbeYu.js 16.5 kB 16.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-B7wQT83I.js 17 kB 17 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BK3JVjMG.js 15.7 kB 15.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-C6twMpaZ.js 15.5 kB 15.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CDUWpEwM.js 18.3 kB 18.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CfZ6FPZ-.js 15.7 kB 15.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-COIPP_pv.js 17 kB 17 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CoPn_77e.js 14.7 kB 14.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CuRNS4XD.js 14.9 kB 14.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DBHjCSPA.js 16.2 kB 16.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DZJaRLKH.js 15.7 kB 15.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-8BNo1weg.js 110 kB 110 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-BPRfdNvb.js 127 kB 127 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-CezbcLlR.js 98.1 kB 98.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-COBPG1am.js 134 kB 134 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-COodTO5z.js 112 kB 112 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-D2h56mz4.js 97.4 kB 97.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DkeDO8xU.js 110 kB 110 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DNecFfxQ.js 138 kB 138 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DPtAQ-XV.js 114 kB 114 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-R06XJOVT.js 116 kB 116 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-yFuDcHL9.js 154 kB 154 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaAudioTop-BbasJLNf.js 1.46 kB 1.46 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaImageTop-Cg8GhF1C.js 1.75 kB 1.75 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaVideoTop-Blp7MPtz.js 2.65 kB 2.65 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-2h3z0SXa.js 324 kB 324 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-4bBZvQjV.js 298 kB 298 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-B1OXtv5-.js 295 kB 295 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-C_xG1nNM.js 324 kB 324 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CAgbt7pL.js 365 kB 365 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-Cghy43iq.js 399 kB 399 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DHrs5gc0.js 328 kB 328 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DPFlfVHx.js 321 kB 321 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DsMfXcAJ.js 366 kB 366 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DWdQhd19.js 337 kB 337 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-mAfdiTdx.js 317 kB 317 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/OBJLoader2WorkerModule-DTMpvldF.js 109 kB 109 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetChart-BicTiHSA.js 2.48 kB 2.48 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetImageCompare-DUGS9EoD.js 3.21 kB 3.21 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/widgetPropFilter-BIbGSUAt.js 1.28 kB 1.28 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 16 added / 16 removed

@DrJKL DrJKL added the New Browser Test Expectations New browser test screenshot should be set by github action label Jan 16, 2026
@github-actions
Copy link

Updating Playwright Expectations

@github-actions github-actions bot removed the New Browser Test Expectations New browser test screenshot should be set by github action label Jan 16, 2026
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well this is tragic to see. Is this just a slight difference of length between 1 and 0 ?

@christian-byrne christian-byrne merged commit 3fcebe7 into main Jan 17, 2026
27 checks passed
@christian-byrne christian-byrne deleted the austin/disable-control-widgets branch January 17, 2026 05:11
@AustinMroz AustinMroz mentioned this pull request Jan 19, 2026
AustinMroz added a commit that referenced this pull request Jan 19, 2026
#8112 updated control widgets to be disabled when the controlled widget
is disabled. However, some workflows already exist that contain a
promoted control widget which does not function. This widget wouldn't be
marked as disabled (and thus, demoted) until the interior subgraph was
entered as updating `computedDisabled` is tacked to node draw. This is
fixed by having subgraphs eagerly update the `computedDisabled` state on
each node when configured.

Additionally, when `createCopyForNode` was used, linkedWidget retained
pointers to widgets which no longer have relation to the newly cloned
widget. This is resolved by instead not copying linkedWidgets.
Functionally, linkedWidgets is only used for control widgets and not
copying has the effect of ensuring that seed widgets linked to a
subgraph input will not display a control popover button in vue mode
which does nothing.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8160-Control-widget-fixes-2ed6d73d3650816cb397f83f558471b3)
by [Unito](https://www.unito.io)
AustinMroz added a commit that referenced this pull request Jan 19, 2026
When a link is made to a widget with control (like seed) , the control
widget can no longer be used to update it's state. To better communicate
this, the control widgets are now given the disabled property when their
parent widget is linked.

| Before | After |
| ------ | ----- |
| <img width="360" alt="before"
src="https://github.com/user-attachments/assets/9b6c6c02-2481-486a-bb07-c19d00abe36d"
/> | <img width="360" alt="after"
src="https://github.com/user-attachments/assets/837000ac-8a12-4d51-879b-a58e0577ff10"
/>|

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8112-Disable-control-widgets-on-link-to-parent-2ea6d73d365081afad77db6c5f56e085)
by [Unito](https://www.unito.io)

---------

Co-authored-by: github-actions <[email protected]>
AustinMroz added a commit that referenced this pull request Jan 19, 2026
#8112 updated control widgets to be disabled when the controlled widget
is disabled. However, some workflows already exist that contain a
promoted control widget which does not function. This widget wouldn't be
marked as disabled (and thus, demoted) until the interior subgraph was
entered as updating `computedDisabled` is tacked to node draw. This is
fixed by having subgraphs eagerly update the `computedDisabled` state on
each node when configured.

Additionally, when `createCopyForNode` was used, linkedWidget retained
pointers to widgets which no longer have relation to the newly cloned
widget. This is resolved by instead not copying linkedWidgets.
Functionally, linkedWidgets is only used for control widgets and not
copying has the effect of ensuring that seed widgets linked to a
subgraph input will not display a control popover button in vue mode
which does nothing.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8160-Control-widget-fixes-2ed6d73d3650816cb397f83f558471b3)
by [Unito](https://www.unito.io)
@christian-byrne christian-byrne added needs-backport Fix/change that needs to be cherry-picked to the current feature freeze branch core/1.37 Backport PRs for core 1.37 cloud/1.37 Backport PRs for cloud 1.37 labels Jan 19, 2026
github-actions bot pushed a commit that referenced this pull request Jan 19, 2026
When a link is made to a widget with control (like seed) , the control
widget can no longer be used to update it's state. To better communicate
this, the control widgets are now given the disabled property when their
parent widget is linked.

| Before | After |
| ------ | ----- |
| <img width="360" alt="before"
src="https://github.com/user-attachments/assets/9b6c6c02-2481-486a-bb07-c19d00abe36d"
/> | <img width="360" alt="after"
src="https://github.com/user-attachments/assets/837000ac-8a12-4d51-879b-a58e0577ff10"
/>|

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8112-Disable-control-widgets-on-link-to-parent-2ea6d73d365081afad77db6c5f56e085)
by [Unito](https://www.unito.io)

---------

Co-authored-by: github-actions <[email protected]>
github-actions bot pushed a commit that referenced this pull request Jan 19, 2026
When a link is made to a widget with control (like seed) , the control
widget can no longer be used to update it's state. To better communicate
this, the control widgets are now given the disabled property when their
parent widget is linked.

| Before | After |
| ------ | ----- |
| <img width="360" alt="before"
src="https://github.com/user-attachments/assets/9b6c6c02-2481-486a-bb07-c19d00abe36d"
/> | <img width="360" alt="after"
src="https://github.com/user-attachments/assets/837000ac-8a12-4d51-879b-a58e0577ff10"
/>|

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8112-Disable-control-widgets-on-link-to-parent-2ea6d73d365081afad77db6c5f56e085)
by [Unito](https://www.unito.io)

---------

Co-authored-by: github-actions <[email protected]>
@comfy-pr-bot
Copy link
Member

@AustinMroz Successfully backported to #8165

@comfy-pr-bot
Copy link
Member

@AustinMroz Successfully backported to #8166

@github-actions github-actions bot removed the needs-backport Fix/change that needs to be cherry-picked to the current feature freeze branch label Jan 19, 2026
DrJKL pushed a commit that referenced this pull request Jan 19, 2026
Manual backport of #8112 and #8160 to `cloud/1.37`

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8163-backport-cloud-1-37-control-widget-fixes-2ed6d73d3650815cb458e8adc44ad4bc)
by [Unito](https://www.unito.io)

---------

Co-authored-by: github-actions <[email protected]>
godwiniheuwa pushed a commit to godwiniheuwa/ComfyUI_frontend that referenced this pull request Jan 22, 2026
Comfy-Org#8112 updated control widgets to be disabled when the controlled widget
is disabled. However, some workflows already exist that contain a
promoted control widget which does not function. This widget wouldn't be
marked as disabled (and thus, demoted) until the interior subgraph was
entered as updating `computedDisabled` is tacked to node draw. This is
fixed by having subgraphs eagerly update the `computedDisabled` state on
each node when configured.

Additionally, when `createCopyForNode` was used, linkedWidget retained
pointers to widgets which no longer have relation to the newly cloned
widget. This is resolved by instead not copying linkedWidgets.
Functionally, linkedWidgets is only used for control widgets and not
copying has the effect of ensuring that seed widgets linked to a
subgraph input will not display a control popover button in vue mode
which does nothing.

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-8160-Control-widget-fixes-2ed6d73d3650816cb397f83f558471b3)
by [Unito](https://www.unito.io)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cloud/1.37 Backport PRs for cloud 1.37 core/1.37 Backport PRs for core 1.37 size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants