Comfy-Org / Comfy-Org/ComfyUI_frontend
Expand behavioral coverage for migrated Litegraph settings watchers
- Dominant language
- TypeScript
- Stars
- 2k
- Forks
- 699
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 490
Description
- Cover every migrated watcher behavior.
- Parameterize updates, replacement, and dirtiness.
- Follow-up to approved PR #15980.
Full context for agent readers
Source comment: https://github.com/Comfy-Org/ComfyUI_frontend/pull/15980#discussion_r3867993726
## Scope
Add compact parameterized behavioral coverage for the `Comfy.LinkRenderMode`, `LiteGraph.Canvas.MinFontSizeForLOD`, and `Comfy.Graph.LinkMarkers` watcher migrations in `useLitegraphSettings`, reusing the existing reactive-edge setup where practical.
## Acceptance criteria
- Each migrated setting is verified to update the intended canvas field from the correct source.
- Canvas replacement is covered for every migrated watcher.
- Each path verifies the expected `setDirty` arguments.
- Tests are parameterized/compact and avoid duplicating the existing reactive-edge setup.
- Demonstrate that an intentional detector mutation fails before restoring it; focused tests then pass.
## Why deferred
DrJKL approved commit `877397f4165917c951b0527ad02e9bd5a2ce01ec` after verifying the critical `CanvasInfo` regression test red on base and green on the PR, and explicitly called this behavioral expansion follow-up feedback. Existing production behavior and the regression edge are covered; broader path-by-path assurance is valuable but non-blocking and belongs in a focused test-only change.
Contributor guide
Research direction
Start by locating useLitegraphSettings and the existing reactive-edge test setup. Add compact parameterized behavioral tests for Comfy.LinkRenderMode, LiteGraph.Canvas.MinFontSizeForLOD, and Comfy.Graph.LinkMarkers, covering source updates, canvas replacement, and expected setDirty arguments; verify the focused tests pass and that an intentional detector mutation fails.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend, testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 72/100