Skip to content

Conversation

@ltdrdata
Copy link
Member

@ltdrdata ltdrdata commented Dec 11, 2025

Summary

Add frontend setting to override live preview method per prompt execution.

Changes

Review Focus

  • 'default' option does not send preview_method to backend (uses server CLI setting)
  • Legacy UI intentionally not modified (deprecated, maintains backward compatibility)
  • versionAdded: '1.35.3' assigned tentatively; adjust as needed for actual release version

┆Issue is synchronized with this Notion page by Unito

@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Dec 11, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 11, 2025

📝 Walkthrough

Walkthrough

Adds a new Comfy.Execution.PreviewMethod setting (options: default, none, auto, latent2rgb, taesd); adds localization, schema/type exports, registers it in core settings, and forwards a chosen preview method from the queue flow to the backend when explicitly set.

Changes

Cohort / File(s) Summary
Localization
src/locales/en/settings.json
Adds Comfy_Execution_PreviewMethod localization entry with name, tooltip, and options.
Core settings
src/platform/settings/constants/coreSettings.ts
Adds Comfy.Execution.PreviewMethod to CORE_SETTINGS (combo type, options, default 'default', category, versionAdded: '1.36.0').
Schema & types
src/schemas/apiSchema.ts
Adds zPreviewMethod enum and exported PreviewMethod type; includes 'Comfy.Execution.PreviewMethod': zPreviewMethod in zSettings.
API surface
src/scripts/api.ts
Imports PreviewMethod; adds preview_method?: PreviewMethod to QueuePromptRequestBody, previewMethod?: PreviewMethod to QueuePromptOptions; conditionally includes extra_data.preview_method when options.previewMethod is provided and not 'default'.
Queue integration / app
src/scripts/app.ts
Reads previewMethod from settings inside queue loop, threads it into ComfyApi.queuePrompt call; updates queuePrompt signature to accept optional previewMethod?: string.

Sequence Diagram(s)

mermaid
sequenceDiagram
participant UI as Settings UI
participant App as Comfy App (queue)
participant API as ComfyApi.queuePrompt
participant Backend as Server

UI->>App: user sets/changes PreviewMethod
App->>App: read previewMethod from settings during queue processing
App->>API: queuePrompt(..., previewMethod)
alt previewMethod provided and != 'default'
    API->>Backend: POST /queue with extra_data.preview_method = previewMethod
else omitted or 'default'
    API->>Backend: POST /queue without preview_method (server default)
end
Backend-->>API: enqueue response
API-->>App: response
App-->>UI: update queue/status
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dr-feat-livepreview

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 364c9ce and b329abd.

📒 Files selected for processing (5)
  • src/locales/en/settings.json (1 hunks)
  • src/platform/settings/constants/coreSettings.ts (1 hunks)
  • src/schemas/apiSchema.ts (2 hunks)
  • src/scripts/api.ts (4 hunks)
  • src/scripts/app.ts (2 hunks)
🧰 Additional context used
📓 Path-based instructions (6)
src/**/*.{vue,ts}

📄 CodeRabbit inference engine (.github/copilot-instructions.md)

src/**/*.{vue,ts}: Leverage VueUse functions for performance-enhancing styles
Implement proper error handling
Use vue-i18n in composition API for any string literals. Place new translation entries in src/locales/en/main.json

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
src/**/*.ts

📄 CodeRabbit inference engine (.github/copilot-instructions.md)

src/**/*.ts: Use es-toolkit for utility functions
Use TypeScript for type safety

Minimize the surface area (exported values) of each module and composable

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
src/**/*.{ts,tsx,vue}

📄 CodeRabbit inference engine (src/CLAUDE.md)

src/**/*.{ts,tsx,vue}: Sanitize HTML with DOMPurify to prevent XSS attacks
Avoid using @ts-expect-error; use proper TypeScript types instead
Use es-toolkit for utility functions instead of other utility libraries
Implement proper TypeScript types throughout the codebase

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
src/**/*.{vue,ts,tsx}

📄 CodeRabbit inference engine (src/CLAUDE.md)

Follow Vue 3 composition API style guide

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
**/*.{ts,tsx,js,jsx,vue,json}

📄 CodeRabbit inference engine (AGENTS.md)

Code style: Use 2-space indentation, single quotes, no trailing semicolons, and 80-character line width (see .prettierrc)

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
  • src/locales/en/settings.json
**/*.{ts,tsx,vue}

📄 CodeRabbit inference engine (AGENTS.md)

**/*.{ts,tsx,vue}: Imports must be sorted and grouped by plugin; run pnpm format before committing
Use TypeScript for type safety; never use any type - use proper TypeScript types
Never use as any type assertions; fix the underlying type issue instead
Use es-toolkit for utility functions
Write code that is expressive and self-documenting; avoid comments unless absolutely necessary; do not add or retain redundant comments
Keep functions short and functional
Minimize nesting in code (e.g., deeply nested if or for statements); apply the Arrow Anti-Pattern principle
Avoid mutable state; prefer immutability and assignment at point of declaration
Favor pure functions, especially testable ones

Files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
🧠 Learnings (3)
📚 Learning: 2025-12-09T03:39:54.501Z
Learnt from: DrJKL
Repo: Comfy-Org/ComfyUI_frontend PR: 7169
File: src/platform/remote/comfyui/jobs/jobTypes.ts:1-107
Timestamp: 2025-12-09T03:39:54.501Z
Learning: In the ComfyUI_frontend project, Zod is on v3.x. Do not suggest Zod v4 standalone validators (z.uuid, z.ulid, z.cuid2, z.nanoid) until an upgrade to Zod 4 is performed. When reviewing TypeScript files (e.g., src/platform/remote/comfyui/jobs/jobTypes.ts) validate against Zod 3 capabilities and avoid introducing v4-specific features; flag any proposal to upgrade or incorporate v4-only validators and propose staying with compatible 3.x patterns.

Applied to files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
📚 Learning: 2025-12-11T12:25:15.470Z
Learnt from: christian-byrne
Repo: Comfy-Org/ComfyUI_frontend PR: 7358
File: src/components/dialog/content/signin/SignUpForm.vue:45-54
Timestamp: 2025-12-11T12:25:15.470Z
Learning: This repository uses CI automation to format code (pnpm format). Do not include manual formatting suggestions in code reviews for Comfy-Org/ComfyUI_frontend. If formatting issues are detected, rely on the CI formatter or re-run pnpm format. Focus reviews on correctness, readability, performance, accessibility, and maintainability rather than style formatting.

Applied to files:

  • src/schemas/apiSchema.ts
  • src/scripts/api.ts
  • src/scripts/app.ts
  • src/platform/settings/constants/coreSettings.ts
📚 Learning: 2025-12-09T04:35:43.971Z
Learnt from: christian-byrne
Repo: Comfy-Org/ComfyUI_frontend PR: 6300
File: src/locales/en/main.json:774-780
Timestamp: 2025-12-09T04:35:43.971Z
Learning: In the Comfy-Org/ComfyUI_frontend repository, locale files other than `src/locales/en/main.json` are generated automatically on every release. Developers only need to add English (en) key/values in `src/locales/en/main.json` when making PRs; manual updates to other locale files (fr, ja, ko, ru, zh, zh-TW, es, ar, tr, etc.) are not required and should not be suggested in reviews.

Applied to files:

  • src/locales/en/settings.json
🧬 Code graph analysis (1)
src/scripts/api.ts (1)
src/schemas/apiSchema.ts (1)
  • PreviewMethod (382-382)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: deploy-and-comment
  • GitHub Check: setup
  • GitHub Check: test
  • GitHub Check: lint-and-format
  • GitHub Check: collect
🔇 Additional comments (3)
src/platform/settings/constants/coreSettings.ts (1)

810-820: Confirm versionAdded and backend value contract for Comfy.Execution.PreviewMethod.
Setting shape/options look fine, but PR objectives mention a tentative versionAdded of 1.35.3 while the code uses 1.36.0 (Line 819). Also please confirm the backend expects exactly these strings (default|none|auto|latent2rgb|taesd) and behavior for older backends.

src/schemas/apiSchema.ts (1)

375-383: Good centralization of PreviewMethod schema + Settings typing.
Zod v3 enum + exported PreviewMethod type and wiring into zSettings looks consistent and avoids string-union drift.

Also applies to: 445-446

src/scripts/api.ts (1)

45-47: Verify backend compatibility for preview_method in extra_data or implement feature-flag gating.
The conditional omission of preview_method when set to 'default' is good practice, but older backends may reject or mishandle unknown fields in extra_data. Either verify that the backend safely ignores unrecognized fields, or gate transmission of non-default preview_method behind server-capability detection to maintain backward compatibility.


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

@github-actions
Copy link

github-actions bot commented Dec 11, 2025

🎨 Storybook Build Status

Build completed successfully!

⏰ Completed at: 12/12/2025, 12:25:15 AM UTC

🔗 Links


🎉 Your Storybook is ready for review!

@github-actions
Copy link

github-actions bot commented Dec 11, 2025

🎭 Playwright Test Results

⚠️ Tests passed with flaky tests

⏰ Completed at: 12/12/2025, 12:34:41 AM UTC

📈 Summary

  • Total Tests: 502
  • Passed: 492 ✅
  • Failed: 0
  • Flaky: 1 ⚠️
  • Skipped: 9 ⏭️

📊 Test Reports by Browser

  • chromium: View Report • ✅ 483 / ❌ 0 / ⚠️ 1 / ⏭️ 9
  • chromium-2x: View Report • ✅ 2 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • chromium-0.5x: View Report • ✅ 1 / ❌ 0 / ⚠️ 0 / ⏭️ 0
  • mobile-chrome: View Report • ✅ 6 / ❌ 0 / ⚠️ 0 / ⏭️ 0

🎉 Click on the links above to view detailed test results for each browser configuration.

@github-actions
Copy link

github-actions bot commented Dec 11, 2025

Bundle Size Report

Summary

  • Raw size: 17.1 MB baseline 17.1 MB — 🔴 +1.13 kB
  • Gzip: 3.39 MB baseline 3.39 MB — 🔴 +342 B
  • Brotli: 2.6 MB baseline 2.6 MB — 🔴 +95 B
  • Bundles: 97 current • 97 baseline • 39 added / 39 removed

Category Glance
App Entry Points 🔴 +751 B (3.24 MB) · Graph Workspace 🔴 +378 B (987 kB) · Vendor & Third-Party ⚪ 0 B (8.56 MB) · Other ⚪ 0 B (3.81 MB) · Panels & Settings ⚪ 0 B (298 kB) · UI Components ⚪ 0 B (178 kB) · + 3 more

Per-category breakdown
App Entry Points — 3.24 MB (baseline 3.23 MB) • 🔴 +751 B

Main entry bundles and manifests

File Before After Δ Raw Δ Gzip Δ Brotli
assets/index-DG4nj-8P.js (new) 3.01 MB 🔴 +3.01 MB 🔴 +626 kB 🔴 +476 kB
assets/index-mxeuW8kg.js (removed) 3.01 MB 🟢 -3.01 MB 🟢 -625 kB 🟢 -476 kB
assets/index-DckKyltn.js (removed) 224 kB 🟢 -224 kB 🟢 -47.8 kB 🟢 -39.4 kB
assets/index-XaCYWJEO.js (new) 224 kB 🔴 +224 kB 🔴 +47.8 kB 🔴 +39.4 kB
assets/index-BGicejOP.js (removed) 345 B 🟢 -345 B 🟢 -242 B 🟢 -208 B
assets/index-k5clCp1g.js (new) 345 B 🔴 +345 B 🔴 +245 B 🔴 +234 B

Status: 3 added / 3 removed

Graph Workspace — 987 kB (baseline 987 kB) • 🔴 +378 B

Graph editor runtime, canvas, workflow orchestration

File Before After Δ Raw Δ Gzip Δ Brotli
assets/GraphView-B6CjlPuh.js (new) 987 kB 🔴 +987 kB 🔴 +191 kB 🔴 +146 kB
assets/GraphView-D5rRi3p1.js (removed) 987 kB 🟢 -987 kB 🟢 -191 kB 🟢 -146 kB

Status: 1 added / 1 removed

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

Top-level views, pages, and routed surfaces

File Before After Δ Raw Δ Gzip Δ Brotli
assets/UserSelectView-CHfXTi36.js (new) 6.54 kB 🔴 +6.54 kB 🔴 +2.14 kB 🔴 +1.9 kB
assets/UserSelectView-hOjXjQIO.js (removed) 6.54 kB 🟢 -6.54 kB 🟢 -2.14 kB 🟢 -1.9 kB

Status: 1 added / 1 removed

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

Configuration panels, inspectors, and settings screens

File Before After Δ Raw Δ Gzip Δ Brotli
assets/LegacyCreditsPanel-DhdBpxAM.js (removed) 21.4 kB 🟢 -21.4 kB 🟢 -5.15 kB 🟢 -4.5 kB
assets/LegacyCreditsPanel-kHKzoPXq.js (new) 21.4 kB 🔴 +21.4 kB 🔴 +5.16 kB 🔴 +4.5 kB
assets/KeybindingPanel-C8ExAniJ.js (new) 13.6 kB 🔴 +13.6 kB 🔴 +3.42 kB 🔴 +3.01 kB
assets/KeybindingPanel-DBLBUWns.js (removed) 13.6 kB 🟢 -13.6 kB 🟢 -3.42 kB 🟢 -3.01 kB
assets/ExtensionPanel-Bs5kyNSM.js (removed) 10.8 kB 🟢 -10.8 kB 🟢 -2.57 kB 🟢 -2.26 kB
assets/ExtensionPanel-KyId35zZ.js (new) 10.8 kB 🔴 +10.8 kB 🔴 +2.58 kB 🔴 +2.26 kB
assets/AboutPanel-pjVXdQX6.js (new) 9.16 kB 🔴 +9.16 kB 🔴 +2.46 kB 🔴 +2.21 kB
assets/AboutPanel-xeATxg2h.js (removed) 9.16 kB 🟢 -9.16 kB 🟢 -2.46 kB 🟢 -2.21 kB
assets/ServerConfigPanel-B-ZQYPaC.js (new) 6.56 kB 🔴 +6.56 kB 🔴 +1.83 kB 🔴 +1.63 kB
assets/ServerConfigPanel-gtsAYh9Y.js (removed) 6.56 kB 🟢 -6.56 kB 🟢 -1.83 kB 🟢 -1.63 kB
assets/UserPanel-B72rXwnL.js (new) 6.23 kB 🔴 +6.23 kB 🔴 +1.72 kB 🔴 +1.51 kB
assets/UserPanel-DC3_5fJ8.js (removed) 6.23 kB 🟢 -6.23 kB 🟢 -1.72 kB 🟢 -1.5 kB
assets/settings-BhbWhsRg.js 101 B 101 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-BXTtSH4O.js 33.3 kB 33.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-C9Pzn-NG.js 25.2 kB 25.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CCy2fA_h.js 27.3 kB 27.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-CQpqEFfl.js 26.6 kB 26.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DHcnxypw.js 21.7 kB 21.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DhFTK9fY.js 25.1 kB 25.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DlT4t_ui.js 25.9 kB 25.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-DRgSrIdD.js 24.2 kB 24.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/settings-tjkeqiZq.js 21.1 kB 21.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 6 added / 6 removed

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

Reusable component library chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/Load3D.vue_vue_type_script_setup_true_lang-Bt7pS-s2.js (removed) 53.7 kB 🟢 -53.7 kB 🟢 -8.48 kB 🟢 -7.28 kB
assets/Load3D.vue_vue_type_script_setup_true_lang-DTwKz3qw.js (new) 53.7 kB 🔴 +53.7 kB 🔴 +8.48 kB 🔴 +7.29 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-1yHNQGJr.js (new) 48.1 kB 🔴 +48.1 kB 🔴 +10.4 kB 🔴 +8.98 kB
assets/WidgetSelect.vue_vue_type_script_setup_true_lang-C4CauD5v.js (removed) 48.1 kB 🟢 -48.1 kB 🟢 -10.4 kB 🟢 -8.98 kB
assets/LazyImage.vue_vue_type_script_setup_true_lang-Ddmkcwox.js (new) 48 kB 🔴 +48 kB 🔴 +10.6 kB 🔴 +9.32 kB
assets/LazyImage.vue_vue_type_script_setup_true_lang-DYtTd1_h.js (removed) 48 kB 🟢 -48 kB 🟢 -10.6 kB 🟢 -9.31 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-5HyQOdm0.js (new) 12.9 kB 🔴 +12.9 kB 🔴 +3.37 kB 🔴 +2.96 kB
assets/WidgetInputNumber.vue_vue_type_script_setup_true_lang-DanXSXQw.js (removed) 12.9 kB 🟢 -12.9 kB 🟢 -3.37 kB 🟢 -2.97 kB
assets/ComfyQueueButton-CS-rRT7m.js (removed) 8.44 kB 🟢 -8.44 kB 🟢 -2.47 kB 🟢 -2.21 kB
assets/ComfyQueueButton-qYSqOKTW.js (new) 8.44 kB 🔴 +8.44 kB 🔴 +2.48 kB 🔴 +2.21 kB
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-BZyN_w2P.js (removed) 2.47 kB 🟢 -2.47 kB 🟢 -935 B 🟢 -803 B
assets/WidgetLayoutField.vue_vue_type_script_setup_true_lang-CZ82Setc.js (new) 2.47 kB 🔴 +2.47 kB 🔴 +935 B 🔴 +807 B
assets/MediaTitle.vue_vue_type_script_setup_true_lang-BsOoipDa.js (new) 897 B 🔴 +897 B 🔴 +501 B 🔴 +437 B
assets/MediaTitle.vue_vue_type_script_setup_true_lang-DIQvtXTF.js (removed) 897 B 🟢 -897 B 🟢 -502 B 🟢 -442 B
assets/UserAvatar.vue_vue_type_script_setup_true_lang-DROonty0.js 1.34 kB 1.34 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetButton-CK5wnnsh.js 2.04 kB 2.04 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 7 added / 7 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-_FOp8MAC.js (removed) 7.51 kB 🟢 -7.51 kB 🟢 -1.83 kB 🟢 -1.58 kB
assets/keybindingService-CKWHz8ud.js (new) 7.51 kB 🔴 +7.51 kB 🔴 +1.84 kB 🔴 +1.58 kB
assets/audioService-D0IEjwVF.js (removed) 2.2 kB 🟢 -2.2 kB 🟢 -960 B 🟢 -822 B
assets/audioService-Dct_jubd.js (new) 2.2 kB 🔴 +2.2 kB 🔴 +960 B 🔴 +822 B
assets/serverConfigStore-C8zDWJOU.js 2.83 kB 2.83 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 2 added / 2 removed

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

Helpers, composables, and utility bundles

File Before After Δ Raw Δ Gzip Δ Brotli
assets/audioUtils-C2FsesvA.js (removed) 1.41 kB 🟢 -1.41 kB 🟢 -649 B 🟢 -544 B
assets/audioUtils-CXdAFl00.js (new) 1.41 kB 🔴 +1.41 kB 🔴 +651 B 🔴 +548 B
assets/mathUtil-CD4DsosH.js 1.32 kB 1.32 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeFilterUtil-CXKCRJ-m.js 460 B 460 B ⚪ 0 B ⚪ 0 B ⚪ 0 B

Status: 1 added / 1 removed

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

External libraries and shared vendor chunks

File Before After Δ Raw Δ Gzip Δ Brotli
assets/vendor-chart-QtHvZroj.js 452 kB 452 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-other-Es5IU4iT.js 3.98 MB 3.98 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-primevue-DRta5A0j.js 1.96 MB 1.96 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-three-aR6ntw5X.js 1.37 MB 1.37 MB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-tiptap-1u_V6HbC.js 232 kB 232 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-vue-30uFjOtU.js 160 kB 160 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/vendor-xterm-BZLod3g9.js 407 kB 407 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
Other — 3.81 MB (baseline 3.81 MB) • ⚪ 0 B

Bundles that do not match a named category

File Before After Δ Raw Δ Gzip Δ Brotli
assets/WidgetRecordAudio-CdBR_270.js (new) 20.4 kB 🔴 +20.4 kB 🔴 +5.23 kB 🔴 +4.62 kB
assets/WidgetRecordAudio-CZL9Mlhd.js (removed) 20.4 kB 🟢 -20.4 kB 🟢 -5.23 kB 🟢 -4.62 kB
assets/AudioPreviewPlayer-_AbNGjKq.js (removed) 13.4 kB 🟢 -13.4 kB 🟢 -3.37 kB 🟢 -3.01 kB
assets/AudioPreviewPlayer-B4cpCD6h.js (new) 13.4 kB 🔴 +13.4 kB 🔴 +3.37 kB 🔴 +3.01 kB
assets/WidgetGalleria-CKaew-56.js (removed) 4.1 kB 🟢 -4.1 kB 🟢 -1.44 kB 🟢 -1.31 kB
assets/WidgetGalleria-D2eSc1b5.js (new) 4.1 kB 🔴 +4.1 kB 🔴 +1.44 kB 🔴 +1.31 kB
assets/WidgetColorPicker-B-DSzuHO.js (new) 3.41 kB 🔴 +3.41 kB 🔴 +1.38 kB 🔴 +1.23 kB
assets/WidgetColorPicker-CbBNmL8A.js (removed) 3.41 kB 🟢 -3.41 kB 🟢 -1.38 kB 🟢 -1.23 kB
assets/WidgetTextarea-CRuYbT6Q.js (new) 3.08 kB 🔴 +3.08 kB 🔴 +1.22 kB 🔴 +1.07 kB
assets/WidgetTextarea-gBV616J9.js (removed) 3.08 kB 🟢 -3.08 kB 🟢 -1.22 kB 🟢 -1.07 kB
assets/WidgetMarkdown-7k124-Xa.js (new) 3.08 kB 🔴 +3.08 kB 🔴 +1.28 kB 🔴 +1.12 kB
assets/WidgetMarkdown-BAJ00i9N.js (removed) 3.08 kB 🟢 -3.08 kB 🟢 -1.28 kB 🟢 -1.12 kB
assets/WidgetAudioUI-C5vleXNO.js (new) 2.85 kB 🔴 +2.85 kB 🔴 +1.16 kB 🔴 +1.05 kB
assets/WidgetAudioUI-CQ3l4sWV.js (removed) 2.85 kB 🟢 -2.85 kB 🟢 -1.16 kB 🟢 -1.05 kB
assets/WidgetInputText-a0cTFQFt.js (new) 1.99 kB 🔴 +1.99 kB 🔴 +919 B 🔴 +849 B
assets/WidgetInputText-Dguilinf.js (removed) 1.99 kB 🟢 -1.99 kB 🟢 -917 B 🟢 -851 B
assets/WidgetToggleSwitch-DU_NWjOx.js (new) 1.76 kB 🔴 +1.76 kB 🔴 +834 B 🔴 +730 B
assets/WidgetToggleSwitch-hO8MOUjk.js (removed) 1.76 kB 🟢 -1.76 kB 🟢 -834 B 🟢 -726 B
assets/MediaImageBottom-BD7INtu-.js (removed) 1.55 kB 🟢 -1.55 kB 🟢 -731 B 🟢 -638 B
assets/MediaImageBottom-Bq7MU4Pc.js (new) 1.55 kB 🔴 +1.55 kB 🔴 +731 B 🔴 +638 B
assets/MediaAudioBottom-BAUePt18.js (new) 1.51 kB 🔴 +1.51 kB 🔴 +730 B 🔴 +647 B
assets/MediaAudioBottom-esHyzH8q.js (removed) 1.51 kB 🟢 -1.51 kB 🟢 -731 B 🟢 -646 B
assets/Media3DBottom-Dl3G2W7Q.js (new) 1.5 kB 🔴 +1.5 kB 🔴 +729 B 🔴 +646 B
assets/Media3DBottom-fAJhmx4N.js (removed) 1.5 kB 🟢 -1.5 kB 🟢 -733 B 🟢 -645 B
assets/MediaVideoBottom-BFJ6bwvi.js (new) 1.5 kB 🔴 +1.5 kB 🔴 +728 B 🔴 +646 B
assets/MediaVideoBottom-WIyYTna-.js (removed) 1.5 kB 🟢 -1.5 kB 🟢 -731 B 🟢 -647 B
assets/Media3DTop-8TNEbH32.js (removed) 1.49 kB 🟢 -1.49 kB 🟢 -765 B 🟢 -651 B
assets/Media3DTop-Dd54IJrG.js (new) 1.49 kB 🔴 +1.49 kB 🔴 +766 B 🔴 +653 B
assets/WidgetSelect-Bgw1lVpY.js (removed) 655 B 🟢 -655 B 🟢 -342 B 🟢 -308 B
assets/WidgetSelect-Bkj0QvEX.js (new) 655 B 🔴 +655 B 🔴 +344 B 🔴 +286 B
assets/WidgetInputNumber-DRtHwkGp.js (new) 595 B 🔴 +595 B 🔴 +329 B 🔴 +271 B
assets/WidgetInputNumber-EDNR2W2B.js (removed) 595 B 🟢 -595 B 🟢 -330 B 🟢 -273 B
assets/Load3D-BaddX_eD.js (new) 424 B 🔴 +424 B 🔴 +268 B 🔴 +222 B
assets/Load3D-CEgFsjFk.js (removed) 424 B 🟢 -424 B 🟢 -267 B 🟢 -222 B
assets/WidgetLegacy-BUZlAIgw.js (new) 364 B 🔴 +364 B 🔴 +239 B 🔴 +193 B
assets/WidgetLegacy-cQkCdZSf.js (removed) 364 B 🟢 -364 B 🟢 -238 B 🟢 -193 B
assets/commands-_s-RvhJR.js 13.6 kB 13.6 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BuUILW6P.js 13 kB 13 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BV4R6fLx.js 14.9 kB 14.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-BWp4HdfU.js 101 B 101 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CLwPdnT6.js 14.2 kB 14.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-CWMchBmd.js 15.9 kB 15.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DazTQhtc.js 12.9 kB 12.9 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DmWrOe93.js 13.7 kB 13.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-DwiH7Kr6.js 13.8 kB 13.8 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/commands-mS3LCNPn.js 14.5 kB 14.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-BMi-Aksj.js 99 kB 99 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-CqR8skJT.js 73.1 kB 73.1 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-Cw9RZWRY.js 89 B 89 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DcRHAFEy.js 81.7 kB 81.7 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DdFdLxku.js 72.2 kB 72.2 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DJAtuVu5.js 84.3 kB 84.3 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-DK8I9Rk3.js 114 kB 114 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-gP_ssnMb.js 83.4 kB 83.4 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-nxXY9vGp.js 94 kB 94 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/main-Ycd3gqkA.js 86.5 kB 86.5 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaAudioTop-DPi7DMtd.js 1.46 kB 1.46 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaImageTop-BixOCGRS.js 1.75 kB 1.75 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/MediaVideoTop-DM7ksxDd.js 2.65 kB 2.65 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-BC3OlaIn.js 342 kB 342 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-BsqN8-W1.js 285 kB 285 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-Bw_Jitw_.js 101 B 101 B ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CK2saYDx.js 307 kB 307 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-Cm5kR4Hi.js 306 kB 306 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-CMrh-uxB.js 310 kB 310 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DlUIOit1.js 369 kB 369 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DNu_xoP2.js 282 kB 282 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-DpcvlpZe.js 303 kB 303 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/nodeDefs-IyjOYIl-.js 317 kB 317 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetChart-B6jx9bUF.js 2.48 kB 2.48 kB ⚪ 0 B ⚪ 0 B ⚪ 0 B
assets/WidgetImageCompare-D6EQY_DK.js 2.21 kB 2.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: 18 added / 18 removed

@ltdrdata ltdrdata force-pushed the dr-feat-livepreview branch 2 times, most recently from ed73c36 to 364c9ce Compare December 11, 2025 23:58
Allow users to override the preview method (default/none/auto/latent2rgb/taesd)
from frontend settings. 'default' uses the server CLI setting.

- Add PreviewMethod type using zod schema in apiSchema.ts
- Add Comfy.Execution.PreviewMethod setting with combo options
- Read preview method setting inside queuePrompt() for centralized access
- Send preview_method in extra_data when not 'default'
@ltdrdata ltdrdata force-pushed the dr-feat-livepreview branch from 364c9ce to b329abd Compare December 12, 2025 00:23
@jtydhr88 jtydhr88 merged commit 3e8a835 into main Dec 12, 2025
28 checks passed
@jtydhr88 jtydhr88 deleted the dr-feat-livepreview branch December 12, 2025 03:45
@christian-byrne christian-byrne added needs-backport Fix/change that needs to be cherry-picked to the current feature freeze branch core/1.34 labels Dec 15, 2025
@github-actions
Copy link

⚠️ Backport to core/1.34 failed

Reason: Merge conflicts detected during cherry-pick of 3e8a835

📄 Conflicting files
src/schemas/apiSchema.ts
🤖 Prompt for AI Agents
Backport PR #7385 (https://github.com/Comfy-Org/ComfyUI_frontend/pull/7385) to core/1.34.
Cherry-pick merge commit 3e8a83547d94a37aefe1c93e127b0f68e3c36d3c onto new branch
backport-7385-to-core-1.34 from origin/core/1.34.
Resolve conflicts in: src/schemas/apiSchema.ts .
For test snapshots (browser_tests/**/*-snapshots/), accept PR version if
changed in original PR, else keep target. For package.json versions, keep
target branch. For pnpm-lock.yaml, regenerate with pnpm install.
Ask user for non-obvious conflicts.
Create PR titled "[backport core/1.34] <original title>" with label "backport".
See .github/workflows/pr-backport.yaml for workflow details.

cc @ltdrdata

1 similar comment
@github-actions
Copy link

⚠️ Backport to core/1.34 failed

Reason: Merge conflicts detected during cherry-pick of 3e8a835

📄 Conflicting files
src/schemas/apiSchema.ts
🤖 Prompt for AI Agents
Backport PR #7385 (https://github.com/Comfy-Org/ComfyUI_frontend/pull/7385) to core/1.34.
Cherry-pick merge commit 3e8a83547d94a37aefe1c93e127b0f68e3c36d3c onto new branch
backport-7385-to-core-1.34 from origin/core/1.34.
Resolve conflicts in: src/schemas/apiSchema.ts .
For test snapshots (browser_tests/**/*-snapshots/), accept PR version if
changed in original PR, else keep target. For package.json versions, keep
target branch. For pnpm-lock.yaml, regenerate with pnpm install.
Ask user for non-obvious conflicts.
Create PR titled "[backport core/1.34] <original title>" with label "backport".
See .github/workflows/pr-backport.yaml for workflow details.

cc @ltdrdata

christian-byrne pushed a commit that referenced this pull request Dec 15, 2025
Add frontend setting to override live preview method per prompt
execution.

- **What**: New setting `Comfy.Execution.PreviewMethod` allows users to
override preview method (default/none/auto/latent2rgb/taesd) from
frontend. Applied to Queue Prompt, Queue Front, Run Selected Nodes, and
Auto Queue.
- **Dependencies**: Requires backend support from
Comfy-Org/ComfyUI#11261

- `'default'` option does not send `preview_method` to backend (uses
server CLI setting)
- Legacy UI intentionally not modified (deprecated, maintains backward
compatibility)
- `versionAdded: '1.35.3'` assigned tentatively; adjust as needed for
actual release version

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7385-feat-add-live-preview-method-setting-for-prompt-execution-2c66d73d365081759c9cebaec29f451c)
by [Unito](https://www.unito.io)
christian-byrne added a commit that referenced this pull request Dec 15, 2025
… execution (#7521)

## Summary

Backport of #7385 to core/1.34.

Add frontend setting to override live preview method per prompt
execution.

- **What**: New setting `Comfy.Execution.PreviewMethod` allows users to
override preview method (default/none/auto/latent2rgb/taesd) from
frontend.

## Conflict Resolution

- `src/schemas/apiSchema.ts`: Kept both `Comfy.Queue.ImageFit` (target
branch) and `Comfy.Execution.PreviewMethod` (PR addition)

Co-authored-by: Dr.Lt.Data <[email protected]>
Enferlain pushed a commit to Enferlain/ComfyUI_frontend that referenced this pull request Dec 18, 2025
…#7385)

## Summary

Add frontend setting to override live preview method per prompt
execution.

## Changes

- **What**: New setting `Comfy.Execution.PreviewMethod` allows users to
override preview method (default/none/auto/latent2rgb/taesd) from
frontend. Applied to Queue Prompt, Queue Front, Run Selected Nodes, and
Auto Queue.
- **Dependencies**: Requires backend support from
Comfy-Org/ComfyUI#11261

## Review Focus

- `'default'` option does not send `preview_method` to backend (uses
server CLI setting)
- Legacy UI intentionally not modified (deprecated, maintains backward
compatibility)
- `versionAdded: '1.35.3'` assigned tentatively; adjust as needed for
actual release version

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7385-feat-add-live-preview-method-setting-for-prompt-execution-2c66d73d365081759c9cebaec29f451c)
by [Unito](https://www.unito.io)
Yourz pushed a commit that referenced this pull request Dec 24, 2025
## Summary

Add frontend setting to override live preview method per prompt
execution.

## Changes

- **What**: New setting `Comfy.Execution.PreviewMethod` allows users to
override preview method (default/none/auto/latent2rgb/taesd) from
frontend. Applied to Queue Prompt, Queue Front, Run Selected Nodes, and
Auto Queue.
- **Dependencies**: Requires backend support from
Comfy-Org/ComfyUI#11261

## Review Focus

- `'default'` option does not send `preview_method` to backend (uses
server CLI setting)
- Legacy UI intentionally not modified (deprecated, maintains backward
compatibility)
- `versionAdded: '1.35.3'` assigned tentatively; adjust as needed for
actual release version

┆Issue is synchronized with this [Notion
page](https://www.notion.so/PR-7385-feat-add-live-preview-method-setting-for-prompt-execution-2c66d73d365081759c9cebaec29f451c)
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

needs-backport Fix/change that needs to be cherry-picked to the current feature freeze branch size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants