Make a Take stale when the Shot's playblast changes (#165) #176

Merged
crowmaki merged 2 commits from issue-165-previz-staleness into main 2026-10-11 05:40:07 +00:00
Owner

Closes #165

A sent Playblast now counts toward staleness. It is a Board/Keyframes Stale reason keyed previz, compared by previz version identity.

  • A new version: "Previz: v1 → v2". The same label appears when undoing an import goes back to an older version.
  • Excluding the playblast: "Previz no longer sent: excluded". Re-including it, or a playblast arriving on a Shot after the Take: "Previz added in Video 1".
  • Unmarking the Shot complex: "Previz no longer sent". The prompt's playblast sentence also goes away, so a Prompt reason appears alongside it.
  • The inputs table shows "Video 1 · v1" against "Video 1 · v2".
  • Accepting the reason and "Re-roll stale circled Takes" work unchanged. An acceptance lapses when the next version arrives.

Only staleness.rs changes. current_job now includes the video Slot list, and recorded_items reads the Take's recorded previz version. The frontend already renders Board/Keyframes reasons, so it needs no change.

Tests

New tests in crates/studio-core/tests/previz.rs cover each acceptance criterion, plus undo and a Shot that was marked complex after the Take. cargo test --workspace passes, and clippy reports no new warnings.

Closes #165 A sent Playblast now counts toward staleness. It is a Board/Keyframes Stale reason keyed `previz`, compared by previz version identity. - A new version: **"Previz: v1 → v2"**. The same label appears when undoing an import goes back to an older version. - Excluding the playblast: "Previz no longer sent: excluded". Re-including it, or a playblast arriving on a Shot after the Take: "Previz added in Video 1". - Unmarking the Shot complex: "Previz no longer sent". The prompt's playblast sentence also goes away, so a Prompt reason appears alongside it. - The inputs table shows "Video 1 · v1" against "Video 1 · v2". - Accepting the reason and "Re-roll stale circled Takes" work unchanged. An acceptance lapses when the next version arrives. Only `staleness.rs` changes. `current_job` now includes the video Slot list, and `recorded_items` reads the Take's recorded previz version. The frontend already renders Board/Keyframes reasons, so it needs no change. ## Tests New tests in `crates/studio-core/tests/previz.rs` cover each acceptance criterion, plus undo and a Shot that was marked complex after the Take. `cargo test --workspace` passes, and clippy reports no new warnings.
A sent Playblast is compared by its previz version, as a Board/Keyframes
reason labelled "Previz: vN → vM". Adding, excluding or re-including the
playblast, or unmarking the Shot complex, is a Previz reason too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
crowmaki deleted branch issue-165-previz-staleness 2026-10-11 05:40:07 +00:00
Sign in to join this conversation.
No description provided.