Skip to content

v2.55.0

Choose a tag to compare

@samuelgursky samuelgursky released this 18 Jun 18:41

v2.55.0

Governance for catastrophic Media Pool deletes (exhaustive audit EX2/EX3).

Behavior change

media_pool delete_clips, delete_folders, and delete_timelines now require
a confirm token — the same two-step handshake timeline.delete_track already
uses. The first call returns status: "confirmation_required" with a
confirm_token and a preview (count + names); re-call with params.confirm_token
to execute. Callers that disable gating via the
destructive.require_confirm_token=false preference are unaffected.

Fixed

  • The destructive-action registry listed granular function names
    (delete_media_pool_clips, move_media_pool_folders, …) that the compound
    media_pool tool never dispatches, so is_destructive() returned False and
    these catastrophic deletes silently skipped version-on-mutate archiving and
    change logging. The registry now uses the real compound action strings, so the
    deletes are archived/logged as intended.

Added

  • Confirm-token gating + previews for the three deletes; the registry fix also
    re-enables the existing media-pool change log for them.

Validation

  • Full offline unit/static suite green (1270 tests; new
    tests/test_media_pool_delete_governance.py).
  • Live-validated against DaVinci Resolve Studio 21.0.0, non-destructively
    (tests/live_delete_governance_check.py): the no-token call returns
    confirmation_required and deletes nothing; the registry recognizes the real
    delete actions as destructive.