From 00604e293d720586c89de87da1c9c1e1405174f1 Mon Sep 17 00:00:00 2001 From: 0xDevNinja Date: Fri, 26 Jun 2026 12:53:20 +0530 Subject: [PATCH] fix: defer composition runtime choice to Present Both gate in reference-analyst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The video-reference-analyst capability audit pre-locked Remotion as the default composition engine ('Remotion is the default ... Never default to FFmpeg when Remotion is available'). Because the analyst skill runs first in any reference-led flow, this silently locked the runtime before the user was ever offered a choice — violating the 'Present Both Composition Runtimes (HARD RULE)' in AGENT_GUIDE.md, which forbids silently picking a default and treats Remotion and HyperFrames as parallel, non-ranked runtimes. It also omitted HyperFrames from the engine list entirely, so it was never surfaced as an option in the reference-led path. Update Step 2 (Capability Audit) to: - add HyperFrames to the audited runtime list - remove the 'Remotion is the default / preferred' framing - defer engine selection to the AGENT_GUIDE 'Present Both' gate - keep FFmpeg scoped to standalone ops, not composition Closes #60 --- skills/meta/video-reference-analyst.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/skills/meta/video-reference-analyst.md b/skills/meta/video-reference-analyst.md index 35232c6..9df7983 100644 --- a/skills/meta/video-reference-analyst.md +++ b/skills/meta/video-reference-analyst.md @@ -126,16 +126,18 @@ REFERENCE NEEDS YOUR CAPABILITIES GAP Video clips (sci-fi) Video gen: 0/12 configured BLOCKED without key Narration (deep male) TTS: ElevenLabs available READY Background music Music: MusicGen available READY -Composition engine Remotion: available READY (preferred) - FFmpeg: available READY (fallback only) +Composition engine Remotion: available READY + HyperFrames: available READY + FFmpeg: available READY (standalone ops) ``` -**Composition engine priority:** Remotion is the **default** composition engine for -ALL final renders — video clips, images, animated scenes, mixed content. It embeds -video natively via `` and handles transitions, overlays, and profile -scaling in a single React render pass. FFmpeg is only used when Remotion is -unavailable, or for standalone operations (trim, transcode, subtitle burn) outside -the composition pipeline. **Never default to FFmpeg when Remotion is available.** +**Composition engine selection:** Remotion and HyperFrames are parallel, non-ranked +composition runtimes — do NOT pre-lock either one here. When both are available, the +"Present Both Composition Runtimes (HARD RULE)" gate in `AGENT_GUIDE.md` governs the +choice: present both options to the user with tradeoffs at the proposal stage and wait +for explicit approval before locking `render_runtime`. Silently picking a default is +forbidden. FFmpeg is not a composition runtime in this flow — it is reserved for +standalone operations (trim, transcode, subtitle burn) outside the composition pipeline. Be honest about gaps. If video generation is needed but unavailable, say so clearly: