- Replace full missing-models list rendering with virtual scroll container
- Improve splitter responsiveness by lowering layout frame stride to 1
- Add custom modal resize handle with pointer-event driven sizing
- Reduce live layout throttle from 40ms to 16ms
- Update related route assertions for new layout behavior
Enable matching files in the HuggingFace author index by SHA-256 in
addition to filename. Enrich the author index with hashes from repo
tree responses, store them in the index metadata, and use them as a
primary lookup path during search_huggingface_for_file before falling
back to filename-based search. Also update the author index cache
version to 2 and add tests for the new behavior.
- Skip name fallback in search provider runner when request already has sha256
- Add direct SQLite hash lookup in lora_manager_archive with result caching
- Add timing and logging for archive search
- Refresh HuggingFace author index metadata
- Add tests for hash search and provider fallback behavior
- Detect subgraph instance scope and distinguish top-level vs nested nodes
- Aggregate inner resolved models for outer subgraph instances so menus show
promoted and hidden models together
- Patch both class prototypes and individual node instances when they define
getExtraMenuOptions or getMenuOptions, preserving native menu hooks
- Re-inject context menu after loadedGraphNode and queueMicrotask for
subgraph-created nodes
- Add tests for menu injection on overridden getMenuOptions and instance
patching, plus subgraph scope and aggregation behavior
Previously, _get_promoted_widget_context_cache_key included widgets_values
from context nodes, so changing a widget inside a promoted subgraph
invalidated the entire cache snapshot even when promotion topology and
other nodes were unchanged.
This makes promoted-context snapshots key off node structure and
topology only, while individual nodes are still reanalyzed when their
widgets_values actually change.
- Wrap node.widgets.splice in rgthree Power Lora Loader adapter so removals
made through the context menu trigger model resolution updates.
- Delay node context menu analysis when a workflow refresh is already
pending to avoid stale analysis.
- Extend workflow refresh retry logic to also retry when ComfyUI is still
serializing the previous workflow after a node widget change.
- Add tests for context menu removal detection, refresh retry behavior,
and deferred context analysis.
When a subgraph exposes a promoted widget and the instance value or connected
inner widget contains a usable model path, create a top-level model reference
on the subgraph node instead of only pointing to the inner definition node.
This lets resolution, location, and queue updates target the instance widget
directly.
Also handle serialized subgraph instances that omit proxyWidgets by
reconstructing the same promotion from subgraph input/link metadata, and
extend widget values for promoted inputs in the workflow updater.