- LiteGraph caches a widget's .width the first time it lays a custom-typed
widget out and reuses that cached value on every later draw() call. For a
divider/status/preset widget added before the node reaches its final size,
that cached width goes stale and never updates, making section-divider
lines and the status box stop partway across the node instead of spanning
it, and clipping/unevenly sizing the preset chips. All three shared
widgets now read node.size[0] directly in draw() instead of trusting the
widgetWidth parameter, which sidesteps the stale cache entirely.
- Add a ?v=2 query string to every import of the shared/*.mjs modules.
aiohttp's static file server doesn't send Cache-Control: no-store for
these (unlike the top-level registered extension .js files), so browsers
were free to keep serving an old cached copy even across a hard reload.
A versioned import URL forces a fresh fetch regardless of cache state.