Always prepend the Comfy identity prefix and keep refs on every shot.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Towsty
2026-08-27 07:19:56 -05:00
co-authored by Cursor
parent 4840b2719d
commit d540b8c283
3 changed files with 17 additions and 15 deletions
+12 -10
View File
@@ -309,17 +309,17 @@ async function queueMiniMax(
const done = watchComfyJob(job, { persist: params.persist })
job.status = 'uploading'
const uploading = (job.library?.chainIndex || 0) > 0
? 'Uploading last frame to ComfyUI...'
: 'Uploading image to ComfyUI...'
const chainIndex = job.library?.chainIndex || 0
const uploading = params.useIdentityRefs
? (chainIndex > 0 ? 'Uploading identity stills for next shot...' : 'Uploading image to ComfyUI...')
: (chainIndex > 0 ? 'Uploading last frame to ComfyUI...' : 'Uploading image to ComfyUI...')
const queueing = (job.library?.chainIndex || 0) > 0
? 'Queueing extension on MiniMax H3...'
: 'Queueing MiniMax H3 job...'
emitChainJob(job, { type: 'status', message: uploading, progress: 4 })
const uploaded = await uploadImage(params.image, job.id)
const referenceNames: string[] = ['', '', '', '']
const chainIndex = job.library?.chainIndex || 0
if (chainIndex === 0) {
if (params.useIdentityRefs) {
for (const [index, ref] of (params.referenceImages || []).entries()) {
if (!ref?.data?.length) continue
const next = await uploadImage({
@@ -353,8 +353,8 @@ async function queueMiniMax(
sound: params.sound,
workflow: params.workflow,
duration: params.duration,
useIdentityRefs: chainIndex === 0 && params.useIdentityRefs,
referenceImageNames: chainIndex === 0 ? referenceNames : []
useIdentityRefs: params.useIdentityRefs,
referenceImageNames: params.useIdentityRefs ? referenceNames : []
})
const queued = await queuePrompt(graph, job.clientId)
@@ -466,7 +466,9 @@ async function runGeneration(
await ensureComfyReady(ready)
await queueMiniMax(job, {
prompt: ext.prompt,
image: { filename: 'last_frame.png', data: frame, type: 'image/png' },
image: params.useIdentityRefs
? params.image
: { filename: 'last_frame.png', data: frame, type: 'image/png' },
width: params.width,
height: params.height,
steps: params.steps,
@@ -481,8 +483,8 @@ async function runGeneration(
persist: isLast,
workflow: params.workflow,
duration: ext.duration,
useIdentityRefs: false,
referenceImages: []
useIdentityRefs: params.useIdentityRefs,
referenceImages: params.useIdentityRefs ? params.referenceImages : []
})
if (!isLast) {