chore(release): 0.14.25 - #1182
Merged
Merged
Conversation
Setting a widget no longer hangs for 30 seconds after a ComfyUI restart (#1161). Once ComfyUI had been restarted mid-session, setting any widget on any node timed out every time, while every other panel command answered instantly. Setting a widget is the one action that reads the backend's node definitions before it writes, and a restart can leave the browser holding a connection that never answers and never fails, so that read waited forever. The panel already had a second way to ask -- the raw HTTP route added by #982 for exactly this failure -- but it was never reached, because nothing gave up on the first one. Each transport is now bounded against one shared budget, so a route that stops answering falls through to the one that does and the write succeeds. Verified live against a 4304-type install: a hung client route recovers the full schema in ~11s where it previously hung to the caller's 30s timeout, and the healthy path still costs no second request. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Releases the #1161 fix merged in #1179.
Setting a widget no longer hangs for 30 seconds after a ComfyUI restart (#1161)
Once ComfyUI had been restarted mid-session,
panel_set_widgettimed out on every node, every time, while every other panel command answered instantly. Setting a widget is the one action that reads the backend's node definitions before it writes, and a restart can leave the browser holding a connection that never answers and never fails — so that read waited forever.The panel already had a second way to ask: the raw
GET /object_inforoute added by #982 for exactly this failure, and the very request the original reporter ran by hand to prove their backend was fine. It was never reached, because nothing gave up on the first one.Each transport is now bounded against one shared budget, so a route that stops answering falls through to the one that does and the write simply succeeds.
graph_remove_widgetandgraph_get_object_infoare fixed by the same change — the latter calls the oracle directly, with no cache in front.Verified
Live against a 4304-type install with the real payload, using the production call shape:
Unit suite 4130 pass / 0 fail; typecheck and scope check clean.
Known and documented
performance.now()guarantees; a stub clock that under-reports is reachable only through the injected test seam.graph_add_nodeandpanel_refresh_nodesstill hang on the same half-open socket — filed as graph_add_node and panel_refresh_nodes still hang on the half-open socket #1161 fixed for set_widget #1180, deliberately not folded in here becauseadd_nodeuses a per-class routeset_widgetstructurally cannot.