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.21Templates 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.vuesrc/components/actionbar/ComfyActionbar.vuesrc/components/ui/button/Button.vuesrc/components/ui/button/button.variants.tssrc/lib/litegraph/src/LGraphCanvas.tssrc/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.elementmount target - the placement of
app.menu.elementinside the upstreamlegacy-topbar-container - the surrounding
actionbar-containerstructure - 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
childrenor_children
is version-sensitive.
Geometry and movement
Anything relying on:
boundingRect,_bounding, orboundingposandsizemove()orsetPos()
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.