A cache merge that preferred the longer list was keeping removed files forever. Fresh Comfy lists now replace the cache, including shrinks, and xiagen- typos stay off AIGen like xaigen-.
Co-authored-by: Cursor <cursoragent@cursor.com>
Stop empty Comfy blips from freezing the LoRA cache timestamp, and refresh the picker list from Comfy on each poll. Engine tagging (flux/krea) and xaigen platform filtering stay as they were.
Co-authored-by: Cursor <cursoragent@cursor.com>
The Sep 2 engine filter required a flux-/krea- name tag, so newly added files were discovered but hidden. Only hide files clearly tagged for the other engine.
Co-authored-by: Cursor <cursoragent@cursor.com>
A failed held shot-batch no longer blocks waiting work, ghost Comfy pending no longer freezes Start now, and Start now force-starts when the GPU is idle.
Co-authored-by: Cursor <cursoragent@cursor.com>
Previewing a still or clip only updates the output pane; Use as input stays on the current workspace instead of forcing Image for image stills.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keeps the same overwrite behavior as video/image Comfy uploads so prompt jobs do not leave unique copies in Shared input.
Co-authored-by: Cursor <cursoragent@cursor.com>
Name uploads by content hash so the same still overwrites itself, enable stale input sweeps on purge, and remove the pile already on the desktop Shared input folder.
Co-authored-by: Cursor <cursoragent@cursor.com>
Extend no longer blanks wrappers when a part omitted them, Use as input inherits family pre/post, and non-image stills stay on Video instead of being forced into Image mode.
Co-authored-by: Cursor <cursoragent@cursor.com>
Prefer clip anchor PNGs for handoffs, optionally run Bilateral+Flux cleanup before I2V, and save decoded last-frame anchors so sequential extensions accumulate less compression damage.
Co-authored-by: Cursor <cursoragent@cursor.com>
Repair all owners before the busy check, stop treating orphan running/held rows as GPU locks, and settle finished Comfy ghosts so waiting items actually start.
Co-authored-by: Cursor <cursoragent@cursor.com>
The earlier change blocked generate stills and skipped prompts/LoRAs/config. Use as input again fills the form from the library item so you can regenerate.
Co-authored-by: Cursor <cursoragent@cursor.com>
Loading a library still as input now only fills the start-still slot and stays on Video. Video/Image cards switch mode directly instead of relying on fragile query links.
Co-authored-by: Cursor <cursoragent@cursor.com>
Purge was skipping Beast input copies and never sending image names to the host agent, so studio temps piled up on the desktop. Also sweep stale hex-/aigen-prefixed inputs.
Co-authored-by: Cursor <cursoragent@cursor.com>
Queue page and Music get a nuclear clear that cancels studio/live work, wipes shot batches, and force-stops Comfy so images/video/other music can run again.
Co-authored-by: Cursor <cursoragent@cursor.com>
The host agent PowerShell process probe matched its own command line, so /start always returned already/booting and never launched Comfy.
Co-authored-by: Cursor <cursoragent@cursor.com>
Settings and the header menu can cancel invisible queue/pending work and force-stop Beast when Sleep is blocked.
Co-authored-by: Cursor <cursoragent@cursor.com>
YuE ignored interrupt/clear and held the GPU; force stop is needed to unblock Studio when the queue will not drain.
Co-authored-by: Cursor <cursoragent@cursor.com>
Long jobs were succeeding on Beast then failing the save step when /view briefly dropped; retries plus host-agent file serving keep finished MP4s from being orphaned.
Co-authored-by: Cursor <cursoragent@cursor.com>
A stray outputFocus assignment left outside selectStudioKind caused npm run build to fail, so auto-deploys never shipped the branch UI.
Co-authored-by: Cursor <cursoragent@cursor.com>
Require section tags before queueing YuE and keep the ACE/YuE path changes that were already in progress.
Co-authored-by: Cursor <cursoragent@cursor.com>
Lead rows with Start/pN labels and fork headers, collapse hidden frame strips to one glow, and stop Library part thumbs from leaking or cloning the Start frame.
Co-authored-by: Cursor <cursoragent@cursor.com>
Collapsed cards use parts/forks/longest instead of pN codes; expanded Studio and Library trees get fork headers and from/branch labels.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep mmgp profile 2 (no quanto), node-legal token floor, two Stage-A segments, and document why profiles 3-5 blow up under InferenceMode.
Co-authored-by: Cursor <cursoragent@cursor.com>
Cap Stage-A segments and use a heavier mmgp profile so long lyrics stop OOMing mid-run, and show that Comfy is actually working.
Co-authored-by: Cursor <cursoragent@cursor.com>
A live job stuck at 8% with no Comfy prompt was treated as still owning the GPU, so waiting work never started.
Co-authored-by: Cursor <cursoragent@cursor.com>
Audio never called purge, image stills used untagged names, and a locked file could abort the whole host-agent delete.
Co-authored-by: Cursor <cursoragent@cursor.com>
The motion prompt field is what Comfy actually runs. Wrappers are now composed into that string on submit, and shot 1 falls back to it if the separate pre/post fields do not arrive.
Co-authored-by: Cursor <cursoragent@cursor.com>
A finished job no longer closes a draft or jumps the page, and a second extend from the same part saves as p8b instead of another p8.
Co-authored-by: Cursor <cursoragent@cursor.com>
Library items already stored those fields, but Details showed one blob and Use as input left the form's empty pre/post in place.
Co-authored-by: Cursor <cursoragent@cursor.com>
Extensions imported watch helpers from comfyLifecycle after they moved, so npm run build failed and every deploy since this morning rolled back.
Co-authored-by: Cursor <cursoragent@cursor.com>
Queued generate/extend no longer hijacks the live progress bar, and Generate Extension stays clickable so another extension can wait in the job queue.
Co-authored-by: Cursor <cursoragent@cursor.com>
The box was disabled for last-frame extract and a stuck videoBusy flag, so typing died after a finished job.
Co-authored-by: Cursor <cursoragent@cursor.com>
The right column was stuck to the viewport, so the list only had a sliver left. Both columns now stretch together and the library scrolls after that.
Co-authored-by: Cursor <cursoragent@cursor.com>
With no clip loaded, the output frame no longer reserves a full video aspect, so the library list can scroll more than one card.
Co-authored-by: Cursor <cursoragent@cursor.com>
The info popover was clipped to the card, so the prompt sat inside the thumbnail frame instead of over the page.
Co-authored-by: Cursor <cursoragent@cursor.com>
Saving the MP4 used to freeze Node, which made xAIGen unreachable and left the player empty even though the library already had the video.
Co-authored-by: Cursor <cursoragent@cursor.com>
The pre/prompt/post split renamed the variable but one console.info still used the old name, which crashed POST /api/generate on xAIGen.
Co-authored-by: Cursor <cursoragent@cursor.com>
The 401 was the session wall, not a missing token. The ingest route now uses the shared Bearer secret, and both apps default that secret so Coolify vars are optional.
Co-authored-by: Cursor <cursoragent@cursor.com>