From 81c67f99e4fa7f245da976549ebc67f76fb27545 Mon Sep 17 00:00:00 2001 From: digital-garbage <133010426+digital-garbage@users.noreply.github.com> Date: Sun, 14 Jun 2026 11:05:58 +0300 Subject: [PATCH] Release 3.0.1: refinement keys + Cutting Room fixes Per-shortcut refinement keys (multi-key per-scene steering, timeline key preview, session-reset wipes all trained keys) plus Cutting Room fixes (comma-split replacements, i2v anchor prompt re-render, trigger-that-is-also -a-shortcut timeline split). Restore the dropped [3.0.0] CHANGELOG header and bump pyproject + README to 3.0.1. Co-Authored-By: Claude Opus 4.8 --- CHANGELOG.md | 4 ++++ README.md | 2 ++ pyproject.toml | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 76c1abe6..2b4f1f78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## [Unreleased] +## [3.0.1] - 2026-06-14 + ### Added **Multi-refinement-key support in the Movie Editor.** Refinement keys are now a first-class, per-shortcut training signal. (1) The Engine settings → FunPack Studio card has a **Refinement key** field, so a project can set/wire its own key (previously the key was fixed and unreachable even in full-control mode); it feeds the FunPackRefinementKeyLoader for Studio / Chain Sampler / SaveRefinementLatent. (2) The Shortcuts editor gains a **"Use non-default refinement key"** checkbox + key-name field — firing that shortcut means its key is being trained. (3) **Multi-key per scene:** a scene whose prompt fires several shortcuts bound to different keys now has its conditioning steered by *each* key and **averaged/merged** into one (one key ⇒ substitute the default; none ⇒ default). Rating that scene trains **every** participating key. A key counts for a scene only if one of its shortcuts fired in that scene's text (anchor-bound keys count for every scene); attribution falls back to the safe union if the prompt was rewritten or the split diverges. @@ -18,6 +20,8 @@ **Editor timeline dropped a scene when a transition trigger was also a shortcut.** If a scene-cut marker (e.g. `qcut`, `cut`) was *also* a shortcut — common now that cut markers can carry refinement keys (e.g. `qcut` → "cuts" key) — the lossless splitter expanded the trigger word away *before* detecting transitions, so the split was lost or misplaced. Classic symptom: "scene 2 removed from the timeline, scene 1 shows scene 2's prompt" until reload. `split_timeline_verbatim` now also scans the original (verbatim) text for triggers, catching trigger-shortcuts at their true position; genuine shortcut-driven splits (trigger only appears after expansion) and plain triggers are unchanged, and the result still round-trips losslessly. +## [3.0.0] - 2026-06-11 + ### Added **FunPack Cutting Room (Movie Editor)** — a full browser-based montage editor served from ComfyUI at `/funpack/movie`. Build multi-scene projects on a real NLE timeline (ruler, proportional clips, trim, split, drag-to-space pauses, crossfades, per-clip effects), preview the whole sequence in a program monitor with seamless scrubbing, and generate or stitch final video without leaving the UI. Includes a Media bin (upload, filter, sort, rename, export), Characters bible with per-scene assign, global prompt editor with lossless split markers, prompt Shortcuts library, Engine settings (FunPack Studio + LTXAV Scene Chain Sampler panels), Models & Pipeline wiring (built-in LTX pipeline or imported ComfyUI workflow), overlay tracks (text/image compositing with WYSIWYG preview), separated and inserted audio lanes, per-scene Refiner ratings, refinement key import/export, ComfyUI log viewer, git-based FunPack update UI, interactive welcome tour with sandbox demo, and first-run pipeline dependency installer (ComfyUI-Manager + LTXVideo / Video Helper Suite / KJNodes packs). diff --git a/README.md b/README.md index 3bf97441..446c35b7 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,8 @@ FunPack **3.0** introduces the **Cutting Room** — a dedicated montage editor a Going forward, **new features and UX work target the Cutting Room frontend**. The classic ComfyUI node popups (Studio, Refiner V2, Scene Chain Sampler, and other pre-3.0 nodes) remain fully usable but will receive **bugfixes only** — no significant UI reworks unless a fix requires it. If you live in ComfyUI graphs, nothing breaks; if you want the full montage workflow, use the Cutting Room. +**3.0.1** adds per-shortcut **refinement keys** (a shortcut can mark which key it trains, with per-scene multi-key steering and a timeline preview of the keys each scene will use) and fixes Cutting Room splitting/anchor bugs — see the [CHANGELOG](CHANGELOG.md). + See [`docs/MovieEditor.md`](docs/MovieEditor.md) for complete Cutting Room documentation. ## Installation diff --git a/pyproject.toml b/pyproject.toml index 188654a8..4091fec2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ [project] name = "ComfyUI-FunPack" # Unique identifier for your node. Immutable after creation. description = "A set of nodes for experiments with video generation models, including prompt refinement, adaptive LoRA weight workflows, story tools, video stitching, lorebook enhancement and more." -version = "3.0.0" # Custom Node version. Must be semantically versioned. +version = "3.0.1" # Custom Node version. Must be semantically versioned. license = { text = "GNU GPL v3" } dependencies = [] # Filled in from requirements.txt