Release v0.28.0: active timelines, app-created projects and client fixes - #139
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This release fixes ignored edits in nested projects, adds compilation into projects created by CapCut, reduces agent command-discovery payloads, and fixes quoted Windows paths in the Python client. All release changes were consolidated in this PR; it supersedes #140.
--active-timelineexplicitly follows a validatedTimelines/project.jsonpointer on unverified app builds. Invalid, deleted, symlinked or conflicting selected documents are refused. Root and active IDs are preserved, other timelines are untouched, and existing automatic selection remains the default. Library callers can useloadDraft(path, { activeTimeline: true }).compile --into <project>fills an empty app-created project while preserving each document's identity, app markers, unknown settings and shared store registration. Media copies and import registration use conflict checks, backups and rollback; changes during staging invalidate the empty-project check even with--force-write. Preview modes write nothing. Embedded timeline sidecars commit once, queue locks cover root/nested aliases, and restore commits active mirrors together.describe --compactprovides a small index; repeated--command <name>returns selected complete contracts. The full v2 registry remains the default, and unrelated free-text arguments retain their behavior.0.1.3fixes Windows quoting, escaped quotes, empty arguments and trailing backslashes, and forwards compact/filtered discovery. CI covers Linux, macOS and Windows with Python 3.9/3.14. English/Chinese guidance and command contracts are updated.Validation: 1,134 CLI tests pass locally, with one platform-specific skip; 19 Python client tests pass. Lint, 52 focused safety/queue tests, npm installation smoke tests, actual FFmpeg-media shell compilation, Python wheel integration and
twine checkpass. All 13 checks in this PR's refreshed CI pass ona27bbed3889250a3a189dd21fd00c4ae2eea9315: CI run.Published as one coordinated release after review and merge: npm
capcut-cli@0.28.0, PyPIcapcut==0.1.3(wheel and source distribution), and GitHubv0.28.0containing the CI-built Wasm component, checksum, license and third-party notices. All 13 post-merge CI checks pass on tagged commitcb348edce6c2c5f23fde9e34cd8759a5333d3442. Every public download matches its tested artifact; fresh public npm/Python installation and real FFmpeg shell-compilation checks pass. The Wasm component uses an external MCP host; this repository has no standalone MCP server package or public server endpoint to publish to the MCP Registry.CapCut desktop acceptance for the new opt-in paths remains unverified. Create an empty project in the app, quit CapCut, check the compile plan, compile into it, then open/save/close/reopen to confirm persistence. #50 and #52 remain open for that acceptance check.