Skip to content

v1.9.27 — Session Context: Where you left off

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 12 Apr 21:54
· 1469 commits to main since this release

OpenCut v1.9.27 — Session Context

First of five feature releases landing this cycle. Small, zero-risk,
surfaces existing data the panel was already collecting.

What's new

"Where you left off" card. On the first successful connection
after launching the panel — or reconnecting after a server restart —
a dismissible card now appears above the workspace listing the last
5 completed OpenCut jobs, plus any jobs that were mid-flight when
the server died.

Each history row has three quick actions:

  • Open — launches the output file in its default app (Premiere,
    VLC, Photos, whatever) via os.startfile on Windows, open on
    macOS, xdg-open on Linux.
  • Reveal — shows the file in Explorer / Finder / the system file
    manager (explorer /select, / open -R / xdg-open on parent
    dir).
  • Re-run — replays the same job with the same params, using the
    stored endpoint and payload already persisted in
    ~/.opencut/jobs.db.

Interrupted jobs get their own inline banner with a View history
jump that expands the existing job-history tray — no more generic
showAlert() popup that users couldn't act on.

Behavior

  • Card appears once per panel session (the _updateCheckDone gate).
    Dismiss is sticky for the rest of the session.
  • If there's nothing to show (fresh machine, empty history), the
    card silently stays hidden — no empty state noise.
  • Loading skeleton while fetching; clear error text if the history
    endpoint is unreachable.
  • Responsive: rows collapse to a stacked layout below 720 px panel
    width. Focus-visible rings on every action button.

Under the hood

  • New route: POST /system/open-path — CSRF-protected, validates
    the path through validate_filepath (no traversal, null bytes, or
    UNC), dispatches to the OS file manager. Only mode=open and
    mode=reveal are accepted.
  • No new data infrastructure. Uses the existing
    /jobs/history?limit=5&status=complete and /jobs/interrupted
    endpoints plus the SQLite job store that's been persisting
    endpoint + payload since v1.5.
  • Frontend: one new card component in main.js with empty /
    loading / error states, slide-in animation matching the alert
    banner shell, and styles that respect the existing Studio
    Graphite palette.

Tests

  • tests/test_new_features.TestOpenPath — 6 cases covering CSRF,
    empty path, bad mode, missing file, traversal rejection, and a
    platform-aware OS-dispatch mock.
  • Broader suite: 158 passed, 3 skipped.

Artifact

Windows x64 PyInstaller build attached as
OpenCut-Server-v1.9.27-win-x64.zip (~226 MB). Unzip and run
OpenCut-Server\OpenCut-Server.exe or the standard launchers.

What's next

v1.9.28 (in progress): Operation Journal + one-click Rollback —
every OpenCut action that modifies the Premiere project becomes
revertable from a Journal tab.