From e2061694f2a975c611cbe68ea9edaaa90171d9b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20=C3=81ngel?= Date: Tue, 24 Mar 2026 18:37:12 -0400 Subject: [PATCH] fix(producer): pass entryFile to renderStream handler + add debug logging The renderStream handler was missing entryFile in createRenderJob, causing all composition renders to fall back to index.html. Also adds logging for staticDuration and entryFile to help diagnose duration detection issues. Co-Authored-By: Claude Opus 4.6 (1M context) --- packages/producer/src/server.ts | 1 + packages/producer/src/services/renderOrchestrator.ts | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/packages/producer/src/server.ts b/packages/producer/src/server.ts index 26c95991e2..586a10884a 100644 --- a/packages/producer/src/server.ts +++ b/packages/producer/src/server.ts @@ -436,6 +436,7 @@ export function createRenderHandlers(options: HandlerOptions = {}): RenderHandle workers: input.workers, useGpu: input.useGpu, debug: input.debug, + entryFile: input.entryFile, logger: log, }); const abortController = new AbortController(); diff --git a/packages/producer/src/services/renderOrchestrator.ts b/packages/producer/src/services/renderOrchestrator.ts index e331d86da6..9ea1953c20 100644 --- a/packages/producer/src/services/renderOrchestrator.ts +++ b/packages/producer/src/services/renderOrchestrator.ts @@ -398,6 +398,15 @@ export async function executeRenderJob( perfStages.compileOnlyMs = Date.now() - compileStart; writeCompiledArtifacts(compiled, workDir, Boolean(job.config.debug)); + log.info("Compiled composition metadata", { + entryFile, + staticDuration: compiled.staticDuration, + width: compiled.width, + height: compiled.height, + videoCount: compiled.videos.length, + audioCount: compiled.audios.length, + }); + const composition: CompositionMetadata = { duration: compiled.staticDuration, videos: compiled.videos, @@ -445,7 +454,10 @@ export async function executeRenderJob( if (composition.duration <= 0) { const discoveredDuration = await getCompositionDuration(probeSession); assertNotAborted(); + log.info("Probed composition duration from browser", { discoveredDuration, staticDuration: compiled.staticDuration }); composition.duration = discoveredDuration; + } else { + log.info("Using static duration from data-duration attribute", { duration: composition.duration }); } // Resolve unresolved composition durations via window.__timelines