This release includes breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+1 more
ReleasePort's take
Light signalv2.28.0 introduces timeline diffing, declarative project specs with idempotent apply, health‑check linting, clip filtering via `clip_where`, and enriched error responses; it also corrects version diff handling for renamed clips.
Why it matters: These feature additions enable precise change tracking, automated configuration reconciliation, proactive validation, efficient query capabilities, and clearer machine‑readable errors, while the bugfix ensures accurate diff reporting when clips are renamed or reordered.
Summary
AI summaryUpdates Highlights, Compatibility, and name across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds timeline version diffing reporting added, removed, moved, trimmed clips with summary counts. Adds timeline version diffing reporting added, removed, moved, trimmed clips with summary counts. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds declarative project spec with `apply_spec` for idempotent reconciliation of settings, timelines, and markers. Adds declarative project spec with `apply_spec` for idempotent reconciliation of settings, timelines, and markers. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds project health check `lint` action returning graded issue list for pre‑flight validation. Adds project health check `lint` action returning graded issue list for pre‑flight validation. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds `clip_where` timeline action to find clips matching named filters in a single call. Adds `clip_where` timeline action to find clips matching named filters in a single call. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Medium |
Adds optional `state` object to structured error responses for machine‑readable context. Adds optional `state` object to structured error responses for machine‑readable context. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Feature | Low |
Ensures `apply_spec` is idempotent and supports dry‑run, run_hooks, and continue_on_error options. Ensures `apply_spec` is idempotent and supports dry‑run, run_hooks, and continue_on_error options. Source: llm_adapter@2026-06-04 Confidence: high |
— |
| Bugfix | Low |
Fixes diff_versions to align clips by rename‑stable identity, treating reorders/renames as moves rather than delete‑and‑re‑add. Fixes diff_versions to align clips by rename‑stable identity, treating reorders/renames as moves rather than delete‑and‑re‑add. Source: llm_adapter@2026-06-04 Confidence: high |
— |
Full changelog
DaVinci Resolve MCP Server v2.28.0
Structural timeline diffing, a declarative project spec you can apply, a
project health check, a clip query DSL, and machine-readable error context.
Highlights
See exactly what an edit changed — timeline version diff
Comparing two archived timeline versions now reports the clips that were
added, removed, moved, and trimmed, with summary counts and before/after
clip totals. Clips are aligned by a rename-stable identity, so a reordered or
renamed clip reads as a move or change — not a delete-and-re-add.
timeline_versioning(action="diff_versions", timeline_name, from_version, to_version)
→{added, removed, moved, trimmed, summary}- Control panel:
GET /api/timeline_versions/diff?timeline_name=&from_version=&to_version=
Reproducible project setup — declarative spec + apply
Describe a project's desired settings, color preset, timelines, and markers in a
project.dvr.yaml (or .json) and reconcile the live project toward it. Apply
is idempotent (running twice is a no-op) and you can preview every change
first.
project: MyShow
color_preset: rec709_gamma24
settings:
timelineFrameRate: "24"
timelines:
- name: Edit_v2
fps: 24
markers:
- { frame: 0, color: Blue, name: HEAD }
- MCP (
project_manager):diff_to_spec,plan_spec,apply_spec(dry_run?, run_hooks?, continue_on_error?) - CLI:
davinci-resolve-mcp batch plan-spec SPECand
davinci-resolve-mcp batch apply SPEC [--dry-run] [--run-hooks] [--continue-on-error] - Color/HDR settings apply in dependency order; markers are only added when
absent; explicitsettingsoverride the namedcolor_preset; before/after
shell hooks are opt-in viarun_hooks.
Project health check — lint
project_manager(action="lint") returns a graded issue list (error / warning /
info): no project, no current timeline, mixed frame rates, empty timelines,
unset render format, unmanaged color science, offline media, and unanalyzed
clips. A fast pre-flight before an editing session.
Find clips in one call — clip_where
timeline(action="clip_where", ...) returns the clips on the current timeline
matching named filters (AND) instead of walking tracks by hand. Live filters:
track_type, track_index, name_contains, duration_lt, duration_gt. A
mistyped filter name is rejected rather than silently matching everything.
Machine-readable error context
Structured error responses can now carry an optional state object — a snapshot
of the relevant values at failure time — so callers can react without parsing
message text. All existing error fields are unchanged.
Compatibility
- Backward compatible. No tools, actions, or parameters were renamed or removed.
diff_versionskeeps its existingadded/removed/movedkeys and adds
trimmed+summary.
Notes
apply_specis the only new mutating path; it auto-checkpoints via the
existing timeline-versioning safeguards and supportsdry_run.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Beta — feedback welcome: [email protected]