From 6566877b742a3887328d018be6fa3c56923e6bbc Mon Sep 17 00:00:00 2001
From: fOuttaMyPaint
Date: Sun, 19 Jul 2026 13:50:36 -0400
Subject: [PATCH] feat: add vse-cut-list example witnessing the 4.5-to-5.x
sequencer API rename
AI-generated VSE code still targets the pre-rename API everywhere:
sequence_editor.sequences is gone on 5.x, new_effect ends strips with
length= there but frame_end= on 4.5, and frame_final_* reads are
deprecated aliases for left_handle/right_handle/duration. No existing
example covers the sequencer, so this drift had no smoke-gated witness.
The example builds a deterministic cut list (color programs, a clamped
GAMMA_CROSS fed by a dedicated source pair, a scene strip, a text strip),
asserts every span against its closed form on each version's canonical
accessors, and re-asserts after a save/reload round-trip. A --check-pixels
mode witnesses the compositing contract on a tiny render. Hazards found
while authoring are witnessed too: the cross clamps to the source overlap,
effect strips consume their inputs only when stacked above them, and a
same-scene scene strip renders transparent.
Runs check-only on 4.5 LTS and 5.1 in blender-smoke; the render is the
sequencer's own output staged in the dark studio per VISUAL-STYLE, gated
against the pinned contact-sheet set.
Signed-off-by: fOuttaMyPaint
---
.cursor-plugin/plugin.json | 1 +
.github/workflows/blender-smoke.yml | 19 +
AGENTS.md | 4 +-
CLAUDE.md | 6 +-
README.md | 17 +-
ROADMAP.md | 6 +-
docs/gallery/assets/vse-cut-list-hero.webp | Bin 0 -> 13416 bytes
.../vse-cut-list-contact-sheet.webp | Bin 0 -> 43174 bytes
docs/gallery/index.html | 12 +
docs/gallery/vse-cut-list/index.html | 780 ++++++++++++++++++
examples/gallery.json | 12 +
examples/vse-cut-list/README.md | 108 +++
examples/vse-cut-list/preview.webp | Bin 0 -> 11464 bytes
examples/vse-cut-list/vse_cut_list.py | 529 ++++++++++++
14 files changed, 1486 insertions(+), 8 deletions(-)
create mode 100644 docs/gallery/assets/vse-cut-list-hero.webp
create mode 100644 docs/gallery/contact-sheets/vse-cut-list-contact-sheet.webp
create mode 100644 docs/gallery/vse-cut-list/index.html
create mode 100644 examples/vse-cut-list/README.md
create mode 100644 examples/vse-cut-list/preview.webp
create mode 100644 examples/vse-cut-list/vse_cut_list.py
diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json
index 91e56bb..f7aef7c 100644
--- a/.cursor-plugin/plugin.json
+++ b/.cursor-plugin/plugin.json
@@ -80,6 +80,7 @@
"examples/text-version-stamp",
"examples/turntable",
"examples/uv-layer-grid",
+ "examples/vse-cut-list",
"examples/wave-displace"
]
}
diff --git a/.github/workflows/blender-smoke.yml b/.github/workflows/blender-smoke.yml
index b08011f..b202638 100644
--- a/.github/workflows/blender-smoke.yml
+++ b/.github/workflows/blender-smoke.yml
@@ -350,3 +350,22 @@ jobs:
# non-zero on failure.
xvfb-run -a "$BLENDER" --background \
--python examples/png-exr-alpha/png_exr_alpha.py --
+
+ - name: Shipped example - vse cut list (sequencer 4.5 vs 5.x rename)
+ run: |
+ set -euo pipefail
+ # Check only (no render): asserts the accessor rename (.sequences
+ # gone on 5.x, bridged on 4.5), the new_effect end-kwarg rename
+ # (frame_end on 4.5, length on 5.x — the wrong kwarg TypeErrors),
+ # closed-form spans on each version's canonical accessors
+ # (frame_final_* vs left_handle/right_handle/duration with the
+ # deprecation bridge), GC wiring and clamping, scene-strip span,
+ # and a save/reload round-trip. Exits non-zero on failure.
+ xvfb-run -a "$BLENDER" --background \
+ --python examples/vse-cut-list/vse_cut_list.py --
+ # Compositing witness on a tiny Cycles render: mosaic cells carry
+ # their strip colors, the cross cell is a true mid blend, and a
+ # consumed cross source never composites independently.
+ xvfb-run -a "$BLENDER" --background \
+ --python examples/vse-cut-list/vse_cut_list.py -- \
+ --check-pixels --engine cycles
diff --git a/AGENTS.md b/AGENTS.md
index 8777846..8c53974 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -20,7 +20,7 @@ a `.cursor-plugin/plugin.json` manifest so the ecosystem drift checker
classifies it as a `cursor-plugin`. This is content the AI loads when the user
asks Blender questions or works on Blender add-ons in Cursor or Claude Code.
-The content base is 12 skills, 6 rules, 2 templates, 17 snippets, and 22
+The content base is 12 skills, 6 rules, 2 templates, 17 snippets, and 23
examples (counts are CI-enforced against README.md and the manifest). The full
inventory tables and per-item purposes live in `CLAUDE.md`. Example anatomy
and authoring rules: copy `examples/bmesh-gear/`; the render look is specified
@@ -35,7 +35,7 @@ Blender-Developer-Tools/
rules/.mdc # 6 rule files
templates// # 2 starter templates
snippets/.py # 17 standalone Python snippets
- examples// # 22 runnable smoke-gated examples (+ gallery.json)
+ examples// # 23 runnable smoke-gated examples (+ gallery.json)
scripts/build_gallery.py # generates docs/gallery/ (stdlib only)
scripts/site/ # vendored landing-page build (build_site.py + template)
docs/gallery/ # committed generated gallery pages + hero assets
diff --git a/CLAUDE.md b/CLAUDE.md
index f627257..1cc1b2f 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -21,7 +21,7 @@ skills//SKILL.md - AI workflow definitions, 12 total
rules/.mdc - Anti-pattern rules, 6 total
templates// - Starter projects, 2 total
snippets/.py - Standalone code patterns, 17 total
-examples// - Runnable smoke-gated examples, 22 total (+ gallery.json)
+examples// - Runnable smoke-gated examples, 23 total (+ gallery.json)
scripts/build_gallery.py - Regenerates docs/gallery/ from gallery.json (stdlib only)
scripts/site/ - Vendored landing-page build (Jinja2)
docs/gallery/ - Committed generated gallery pages + hero renders
@@ -82,11 +82,11 @@ v0.1.0: canonical object creation and deletion, depsgraph evaluated mesh, bmesh
v0.2.0: Principled BSDF material, driver-with-custom-function via `driver_namespace`, application handler registration, shader node group with cross-version `interface` API, `foreach_get` bulk vertex read, version-branch skeleton, and USD export with `evaluation_mode='RENDER'`.
-## Examples (22)
+## Examples (23)
Runnable scripts at `examples//`, each asserting a real API contract with
deterministic checks (exit non-zero on failure) and optionally rendering a still via
-`--output`. All twenty-two run headless on Blender 4.5 LTS and 5.1 in `blender-smoke.yml`;
+`--output`. All twenty-three run headless on Blender 4.5 LTS and 5.1 in `blender-smoke.yml`;
their renders ship in the site gallery at `docs/gallery/`. `examples/gallery.json` is the
gallery's source of truth. When authoring a new one, copy the anatomy of
`examples/bmesh-gear/` (script structure, README shape, dark-studio render recipe) and
diff --git a/README.md b/README.md
index 449b575..aff9516 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@
- 12 skills • 6 rules • 2 templates • 17 snippets • 22 examples
+ 12 skills • 6 rules • 2 templates • 17 snippets • 23 examples
@@ -285,6 +285,21 @@ A depsgraph-evaluated export — builds a cube with `SUBSURF`, measures the eval
`evaluated_get().to_mesh()` / `to_mesh_clear()`, and asserts `wm.obj_export` ships the
modifier-applied geometry (exported vertex count == evaluated > base).
+
+
+
+
+
+ |
+
+
+### [vse-cut-list](examples/vse-cut-list/)
+
+The sequencer API rename from 4.5 LTS to 5.x — `strips` (never `.sequences`), `new_effect`
+ending in `length=` vs `frame_end=`, and `left_handle`/`right_handle`/`duration` replacing
+the deprecated `frame_final_*`. Asserts closed-form spans, GC wiring and clamping, the
+consumed-input compositing contract, and a save/reload round-trip.
+
|
diff --git a/ROADMAP.md b/ROADMAP.md
index eb9a28b..9225bd0 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -97,12 +97,14 @@ Not committed; target list for the next content version. (v0.3.0 shipped the smo
- Refresh the `slotted-actions-animation` skill against any 5.2 changes
- Bump `blender_version_min` in the templates if 5.2 APIs are used
- Additional snippets for asset library scripting, EXR baking, multi-file extensions
-- Gallery coverage follow-ups from the GPv3 review: light-linking, VSE sequences-to-strips witness (`grease-pencil-rosette`, `armature-bend`, `text-version-stamp`, and `image-pixels-testcard` shipped first)
+- Gallery coverage follow-ups from the GPv3 review: light-linking (`grease-pencil-rosette`, `armature-bend`, `text-version-stamp`, `image-pixels-testcard`, and `vse-cut-list` shipped first)
- ~~UV-layer authoring witness~~ **SHIPPED** as `examples/uv-layer-grid/` — `create_grid(..., calc_uvs=True)` silent no-op without a pre-existing UV layer; closed-form UV fill + explicit assignment fallback; dual-panel render (flat texel (0,0) vs neon checker)
- ~~Image save-format witness~~ **SHIPPED** as `examples/png-exr-alpha/` — float→PNG is RGBA16 and false-unpremultiplies as if associated-alpha (closed-form err 0.98 at RGB 0.02 / a=1/255); OpenEXR preserves float RGBA; byte→PNG is straight RGBA8; `EXR color_mode='RGB'` drops alpha
- Attribute domain witness: writing a POINT-domain color attribute and reading it as if it were CORNER (or vice versa) silently shears colors across shared verts — companion to `color-attribute-wheel`
- Light-linking collection witness: object light linking / receiver collections so a key illuminates only the hero (common AI miss when staging multi-light studios)
-- VSE sequences-to-strips witness: building a short cut list from `sequences.new_effect` / movie strips and asserting frame ranges survive reload
+- ~~VSE sequences-to-strips witness~~ **SHIPPED** as `examples/vse-cut-list/` — `.sequences` removed on 5.x (4.5 bridges to `.strips`), `new_effect` end kwarg `frame_end=` (4.5) vs `length=` (5.x), `frame_final_*` deprecated in favor of `left_handle`/`right_handle`/`duration`, TRANSFORM effect type removed, GAMMA_CROSS clamps to the source overlap, effect strips consume inputs only when stacked above them, same-scene scene strips render transparent; save/reload round-trip + tiny-render pixel witness
+- GAMMA_CROSS blend-curve witness: the cross blend is not the naive linear mix (mid-cross measured (0.341, 0.349, 0.463) from crimson (0.85, 0.10, 0.22) and teal (0.06, 0.75, 0.80)) — derive and assert the gamma-space closed form per frame; follow-up to `vse-cut-list`
+- Falsy `bpy_prop_collection` trap snippet: an empty collection is falsy, so `editor.strips or editor.sequences` silently falls through to the legacy accessor on an empty timeline — always branch on `hasattr`; likely generalizes across the API (found authoring `vse-cut-list`)
## Future (uncommitted)
diff --git a/docs/gallery/assets/vse-cut-list-hero.webp b/docs/gallery/assets/vse-cut-list-hero.webp
new file mode 100644
index 0000000000000000000000000000000000000000..d0a70f1565b9dc7e138ea515cae8375adcd7dc2c
GIT binary patch
literal 13416
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