32 of the ? help pages checked against the code and corrected.
Wrong claims fixed: Stitch Inpaint's empty-area check (20/255), what a
new video keeps on both Video Crop + Rotate + Pad pages, Load Video's
frame picker and player height, where Run Timer lists earlier runs,
inpainting on the Krea 2 Outpaint Model Patch page, Workflow Note's
banner layout and pack detection, Image Resize's pad bars and mask,
Save Image's path preview and tags, Free Memory's steps, and Latent
Size's sockets.
Image Crop + Rotate + Pad now follows the node from top to bottom; the
saved values no row shows moved under Technical details.
Controls are named the way the node shows them, with the input name
beside. Pages that opened with jargon now open with what the node does
and when to use it. LoRA Loader gained the Civitai lookup, suggested
strength and the gear options it did not name.
The help pages, the README and the changelog use the new names (Round
canvas to, Frames for, Server file, the Resize switch) and describe the
always-scrubbing timeline and its grip, the padlock rules, the "already
this shape" note, the resize warning and Even out, the preview switch
bringing its picture back, Compare's labels and the Workflow Note's Use it.
The editor's model table had columns for file, folder, size and URL but
none for the row's note, and the form read each row back without it. Save
(from the form or the JSON view) wrote every model with an empty note, so
the grey line under each file name was gone after the first edit. On a
note with model notes, Cancel and Escape also asked to discard changes
when nothing had changed, because the form never matched the saved card.
The table now builds its header and cells from MODEL_COLUMNS, which has
one column for every field a model row keeps, and reads rows back with
rowFromCells. That adds a Note column. tests/workflow_note.test.mjs checks
that the columns cover every kept field and that an unchanged table saves
back the same card.
On frontend 1.53.6 (classic canvas and Nodes 2.0), the LTX 2.3 Video
Outpaint example keeps its five model notes through a how-to edit and
Save; Cancel with no edits closes without asking; a note edited in the
new column and a model added with a note both show and survive a save and
reload. The table fits the dialog without scrolling sideways from 700 to
1800 px wide.
A note saved a few pixels shorter than its content showed a scrollbar and
hid its last row. The LTX 2.3 Video Outpaint note in the smaller example
layout (440 x 810) was 6 px short, so its links sat behind the scrollbar.
The classic canvas keeps a node's saved height; Nodes 2.0 already sized
the note to its content.
The note now measures its card's natural height at the node's width and
grows the node to fit when a workflow opens, after an edit, after the file
check, and when the node's width changes, since the text rewraps. It never
shrinks the node. The load fit runs before ComfyUI snapshots the opened
workflow, so a note that grows on load does not mark the workflow modified.
A corner drag stops at the fit, as it does in Nodes 2.0: holdNodeMinHeight
lifts the node's computeSize height to the measured floor. A card less
than half a pixel short is left alone, because Chrome rounds that away and
draws no scrollbar. Nodes 2.0 is untouched.