Files

2.9 KiB

Compatibility

  • Status: stable
  • Scope: verified environment, upstream touchpoints, and version-sensitive assumptions
  • Applies to: entire repository, especially frontend patches under web/js/**
  • Source of truth level: compatibility
  • Last verified commit: 9bb835c68f9a68ecccdbeae32bd41382a1eb3556
  • Update when: tested versions, browser validation target, or upstream touchpoints change
  • Supersedes: none
  • Superseded by: none

Verified environment

This repository is currently documented against:

  • ComfyUI 0.18.2 Portable
  • ComfyUI_frontend v1.41.21
  • Templates v0.9.36
  • Browser validation target: Edge 146.0.3

Why this file exists

This repository makes frontend changes that are sensitive to upstream implementation details. Version drift matters. Do not assume that a patch point from a different ComfyUI / frontend version is still valid here.

Upstream touchpoints to re-check when versions change

At minimum, re-read the relevant upstream frontend implementation before changing behavior that depends on internal details.

Important touchpoints include:

  • src/components/TopMenuSection.vue
  • src/components/actionbar/ComfyActionbar.vue
  • src/components/ui/button/Button.vue
  • src/components/ui/button/button.variants.ts
  • src/lib/litegraph/src/LGraphCanvas.ts
  • src/scripts/app.ts
  • any upstream file containing the specific method, getter, or DOM structure being patched or queried locally

Current local areas most sensitive to upstream drift

Action bar integration

Anything depending on:

  • the app.menu.element mount target
  • the placement of app.menu.element inside the upstream legacy-topbar-container
  • the surrounding actionbar-container structure
  • the order of controls in the built-in action bar area

is version-sensitive.

Anything that mounts inside the Vue-managed child list of ComfyActionbar should be treated as fragile.

Selection and item resolution

Anything relying on:

  • selectedItems
  • legacy selected_nodes
  • legacy selected_group
  • current group child tracking through children or _children

is version-sensitive.

Geometry and movement

Anything relying on:

  • boundingRect, _bounding, or bounding
  • pos and size
  • move() or setPos()

is version-sensitive.

Asset loading

Anything assuming how web/js modules auto-load or how CSS must be loaded from JS should be re-checked if frontend asset loading behavior changes.

Revalidation triggers

Re-check compatibility assumptions when:

  • ComfyUI version changes
  • ComfyUI_frontend version changes
  • Templates version changes in a way that affects UI behavior
  • browser validation target changes and a UI bug appears only in one browser
  • a patch against frontend internals stops behaving as documented

Maintenance rule

If a version-sensitive patch location changes, update both this file and the relevant feature doc in the same commit.