This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+1 more
Summary
AI summaryUpdates Validation, silent, and 1.27 across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Low |
Adds background jobs support for long operations via `background=true`. Adds background jobs support for long operations via `background=true`. Source: llm_adapter@2026-07-14 Confidence: high |
— |
| Feature | Low |
Adds `timeline set_current` selection by stable id or name. Adds `timeline set_current` selection by stable id or name. Source: llm_adapter@2026-07-14 Confidence: high |
— |
| Feature | Low |
Enhances `action_help` to list all valid actions and distinguish unknown vs undocumented. Enhances `action_help` to list all valid actions and distinguish unknown vs undocumented. Source: llm_adapter@2026-07-14 Confidence: high |
— |
| Feature | Low |
Adds `create_variant_from_ranges` pack mode to butt clips together gap‑free. Adds `create_variant_from_ranges` pack mode to butt clips together gap‑free. Source: llm_adapter@2026-07-14 Confidence: low |
— |
| Feature | Low |
Introduces `create_variant_from_ranges` pack mode (`pack=true`) to concatenate clips gap‑free across differing frame rates. Introduces `create_variant_from_ranges` pack mode (`pack=true`) to concatenate clips gap‑free across differing frame rates. Source: granite4.1:30b@2026-07-14-audit Confidence: low |
— |
| Bugfix | Medium |
Fixes `get_items` and `get_items_in_track` to validate track selector and return structured errors. Fixes `get_items` and `get_items_in_track` to validate track selector and return structured errors. Source: llm_adapter@2026-07-14 Confidence: high |
— |
| Bugfix | Medium |
Fixes `apply_cuts` to report skipped cuts with reasons. Fixes `apply_cuts` to report skipped cuts with reasons. Source: llm_adapter@2026-07-14 Confidence: high |
— |
| Bugfix | Medium |
Fixes `create_variant_from_ranges` to report actual placement and add `placement_mismatches`. Fixes `create_variant_from_ranges` to report actual placement and add `placement_mismatches`. Source: llm_adapter@2026-07-14 Confidence: low |
— |
| Bugfix | Medium |
Fixes transport wedge by running synchronous tool bodies in a worker thread. Fixes transport wedge by running synchronous tool bodies in a worker thread. Source: llm_adapter@2026-07-14 Confidence: low |
— |
| Bugfix | Low |
Makes `create_variant_from_ranges` report actual placement frames and adds `placement_mismatches` count; improves dry‑run validation and response details. Makes `create_variant_from_ranges` report actual placement frames and adds `placement_mismatches` count; improves dry‑run validation and response details. Source: granite4.1:30b@2026-07-14-audit Confidence: low |
— |
Full changelog
v2.62.0
Community contribution by @lukeashford (#87, closing #88): server robustness for long operations plus a batch of timeline-tool ergonomics and correctness fixes. Every new option is opt-in; default behavior is unchanged.
Added
- Background jobs for long ops — transcription, subtitle generation, scene-cut/Dolby analysis, and timeline export/import can exceed the MCP client's tool-window timeout. Passing
background=truenow returns ajob_idimmediately; poll withresolve_control(action="job_status")or list withlist_jobs(both connection-free). Generic registry insrc/utils/background_jobs.py; workers run under theresolve_busygate, and finished jobs are pruned after an hour. create_variant_from_rangespack mode —pack=truebutts clips together at the end of each track (omitsrecordFrame), gap-free even when source and timeline frame rates differ.timeline set_currentby id/name — accepts a stableid/nameselector (precedence id → name → index), not only the shifting 1-based index.
Fixed
- Transport wedge — synchronous tool bodies ran inline on the single asyncio event-loop thread, so a blocking Resolve call (or the up-to-60s launch wait) froze the whole server including the stdio read loop, requiring a client restart. Sync tool bodies now run in a worker thread, serialized on a bridge lock so the single-threaded scripting bridge is never entered concurrently; degrades to inline behavior if the SDK shape changes.
create_variant_from_rangeshonesty — results report actual placement (items[].placedin both frame spaces, plus aplacement_mismatchescount) instead of echoing the requested frames;dry_runresolves clip ids and validates frame ranges so it fails on the same errors as the commit path (and no longer leaves an orphan timeline on a bad id); the response reports audio presence and warns on a video-only (silent) range list.get_items/get_items_in_track— validate their track selector (structured error instead of a bareKeyError), acceptindexortrack_index, and gainedaction_helpentries.apply_cuts— reportsskippedcuts with reasons instead of silently dropping non-applicable entries.action_help— lists every valid action (not only the documented subset) and distinguishes an unknown action (UNKNOWN_ACTION) from a valid-but-undocumented one (HELP_NOT_REGISTERED).
Documentation
- Corrected
create_variant_from_rangeshelp:clip_idis a media-pool item id (not a timeline-item id);start_frame/end_frameare SOURCE frames,end_frameexclusive. Stated the timeline tool's frame-space convention once, clarifiedlift_rangeripple behavior on empty gaps,begin_run/end_runbatching, and the timeline-subtitle vs clip-level transcript distinction.
Validation
- Full offline suite: 1,483 tests green (70 new).
- Transport offload, background jobs, and
create_variant_from_rangesplacement/pack behavior were live-validated against Resolve Studio 21 by the contributor; the threaded-dispatch SDK coupling was additionally verified against the pinned mcp SDK (1.27) over a real stdio session.
Thanks @lukeashford for the detailed issue and the fix — integrated with co-author credit on each commit.
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]