MCP: Cut and Edit package (#200) #214
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
needs-info
needs-triage
question
ready-for-agent
ready-for-human
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crowmaki/ai-studio!214
Loading…
Reference in a new issue
No description provided.
Delete branch "issue-200-mcp-cut"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #200. Part of #157.
A harness can now shape the rough cut and hand it to Resolve. Each tool wraps an existing
ApiImplcommand. Line assignment lands in the undo log with its usual labels ("Assign line to 1B", "Reset line to default").Tools
read_animatic: a Scene's Animatic. It has each Line's timing, the Shots over it and the Shot it plays from (overriddenwhen assigned by hand). Each stretch of the Cut comes with its Shot and the circled Take it plays, or else a Board, Playblast or "no coverage" slate. The Performance's audio blob id is left out.assign_cut_line: assigns a Line (with its dual dialogue partner) to a Shot over it, or resets it whenshotIdis absent. Returnsread_animaticfor the Line's Scene.export_edit_package: exports every non-NG Take, or withcircledOnlyonly the circled ones. Returnsfolder,clips,unchanged,setAsideandtimelines, the absolute paths of the timeline files written.foldermust be absolute. When absent, the export goes to the folder the Project remembers.sceneIdsdefaults to every production Scene. When the client sends a progress token, each file goes out as a progress notification (doneoftotal, named), with a last one at the total.Core
The export result didn't list the timeline files, so
EditPackageOutcome(and its DTO andbindings.ts) now hastimelines: per-Scene ones in script order, then the whole film's. The UI could show them too. A newstudio-coretest checks the list.Tests
src-tauri/tests/mcp_cut.rscovers each acceptance criterion:It also covers: the Animatic playing a circled Take, refusing a Shot that doesn't cover the Line, refusing a relative folder, and reusing the remembered folder (with an error before any export).
The full
cargo testpasses, and so doesnpm run check.Known limits
If the client cancels an export request, the export still runs to the end in the background, as it does in the UI.