Files
jhonny-editor/code/docs/uxp-ripple-delete-workflows.md
João Henrique b541f502ba feat: initial commit - Jhonny Editor
- Adicionado estrutura completa do projeto
- Configurado MCP server para Premiere Pro
- Adicionado documentação e skills
- Configurado Gitignore para o projeto
2026-09-08 09:59:31 -04:00

2.6 KiB
Executable File

Guarded contiguous track-item ripple delete through stable UXP

ripple_delete_track_item_uxp is a narrow documented-UXP counterpart to the pinned antipaster ripple_delete competitor command. It deletes exactly one audio or video clip item only when its immediate following same-track clip is contiguous, allowing a bounded successor readback to prove the closed cut.

Authority and API boundary

The implementation uses stable Premiere UXP 25.6+ SequenceEditor.getEditor() and createRemoveItemsAction(), TrackItemSelection.createEmptySelection() and addItem(), the documented Constants.MediaType values, audio/video TrackItem timing and source-item getters, and Project.lockedAccess() plus Project.executeTransaction(). It does not use CEP, QE, raw evaluation, UI automation, or a native SDK.

Guarded flow

  1. Call action: "inspect" with one bounded media type, track index, and clip index. The command returns the active project/sequence identities, count, and complete target and immediate-successor snapshots.
  2. Call action: "apply" with that unchanged snapshot, confirm_ripple_delete: true, and a required operation_id.
  3. The panel serializes requests with guarded slips, slides, and append duplicates for the project/sequence/media-track key. Within that lock it re-resolves both coordinates, rejects any stale snapshot or changed successor, creates exactly one single-item selection and documented remove action with ripple: true, then commits one locked undoable transaction.
  4. It reads only the successor at the removed coordinate, confirms the track count decreased by one, and confirms that successor retained its source identity/data while its timeline range shifted left by the deleted item's timeline duration.

The selected item and successor must both have positive duration and meet at one exact cut. This command refuses final items, gaps, another track, or a linked A/V pair. It has no general selection, range, or cross-track ripple surface.

Proof boundary

Automated tests cover closed schemas, missing authority, stale/final/gap rejection, replay, per-track serialization, one action inside one transaction, and a poisoned unrelated-item getter proving preflight and post-readback stay bounded to the target/successor. They are mock/static contract evidence only. No licensed Premiere host has validated media handles, linked A/V synchronization, rendered frames, playback, persistence after reopening, or Undo. A verification failure can occur after the host transaction commits; inspect the affected successor before another edit.