Skip to content

v0.0.8 - ComfyUI canvas node pack, draining ETA

Choose a tag to compare

@an80sPWNstar an80sPWNstar released this 16 Aug 05:53
· 23 commits to main since this release

The ComfyUI node pack is the headline

comfyui-relay/ was a one-file shim that rebroadcast progress messages so the widget could see
foreign jobs. It is now also a pack of ten display nodes you drop on the ComfyUI canvas — the
watcher's readouts, drawn on the graph itself, so you can see step position, rate, elapsed, ETA and
VRAM without leaving the tab you are working in.

  • Four layouts — Four Wells, Plate, Bar, Trace — each with and without a VRAM strip,
    plus two standalone VRAM nodes (the cards your workflow selected, or every card on the box).
  • Style is a widget on the node, not a node type. Switching between rack and glass never
    costs a node its wires or its position.
  • The VRAM node shows only the cards the graph actually uses: a MultiGPU device widget naming
    cuda:1 is honoured, and with nothing pinned it falls back to ComfyUI's own device. The face
    prints which rule applied.
  • Install: copy comfyui-relay/ into custom_nodes/, restart ComfyUI. It ships inside the
    installer too, under resources/comfyui-relay/ — the (i) button in the app tells you where.

A finished run keeps its numbers. The rate used to blank to N/A the moment a job ended, throwing
away the figure the node had just spent the whole run measuring while the step count and elapsed
time beside it stayed. Now steps, rate and elapsed all hold, and the ETA well — which has nothing
left to say — relabels itself to FINISHED, or FAILED / STOPPED. A node that has never run keeps
its ETA label; there is no end state to report.

The ETA counts down between steps

On a MiniMax-H3 sampler at 20-30 seconds per step, steps left / rate only changed when a step
landed: the figure sat frozen for half a minute and then jumped, which reads as a stuck widget
rather than a slow job. The step in flight is now counted apart from the ones after it, so the ETA
drains at one second per second. It stops at the end of the current step — if a job stalls, the
figure holds at the whole steps remaining instead of counting down to a finish that is not coming.

Fixed alongside it: the ETA was computed from the fresh rate estimate, which is null on the first
step of every batch item because the rate window has just been emptied. The held rate beside it kept
reading, so on a 28-image run the ETA blanked once per image while the rate did not.

Reactor panel: readable across a desk

  • Everything went up about a quarter — header, annunciators, well captions, dial end words and
    figure, the build-info windows, recorder labels, bulb-bank captions, identity plate. The four
    middle-column boxes (STEPS LEFT / ETA / ELAPSED / QUEUE) were already sized and are unchanged.
  • The dial figure is ink now, not lamp light. In the Control Room idiom it was drawn in the same
    amber the lamps use — pale orange on a cream face, and the hardest thing on the panel to read. It
    is mixed down to a dark tint that keeps the state colour (amber running, jade done, red fault) at
    printed-ink contrast. The Reactor Console is untouched: its face is glass, and the figure there
    really is light.

Also

  • Relay verdict window 10s → 90s. A host whose relay was verifiably working was being reported
    absent, because an H3 sampler only speaks every 20-30 seconds and a 10-second window routinely
    held nothing.
  • fmtSec printed "3m60s" at 239.6 seconds.

Downloads

Windows only this time. The Linux AppImage and .deb are built in WSL, and WSL2 will not start on
the build machine tonight (virtualisation is off at the firmware level, HypervisorPresent=False).
They will be attached to this release once that box is back — nothing in this build is
platform-specific, so the 0.0.7 Linux artifacts remain usable in the meantime.