Skip to content

v2.42.0

Choose a tag to compare

@samuelgursky samuelgursky released this 10 Jun 15:35

Deep shot-level vision tier — Phase B of the analysis + edit-engine program. Opt-in, estimate-first per-shot field filling for the Visual / Content / Production / Editorial / Cuttability groups the shot pages already render.

Added

  • media_analysis actions: deepen (estimate → confirm_token → deferred host-vision payload per clip/shot), commit_shot_vision (writes vision_deep_v1 provenance rows, updates the canonical blob, re-exports analysis.json in lockstep), vision_pending_sweep (lists clips stuck in pending_host_analysis; reoffer=true returns the stored payload, expire=true stamps them).
  • Deep depth in the analyze flow: depth="deep" extends the deferred payload with the per-shot schema and requires confirm_deep=true after a token-cost estimate. Caps pre-call refusal applies on both paths.
  • Panel: Deepen analysis (clip view) and Deepen this shot (shot view) copy ready-made chat prompts. Shots with no sampled frames on disk get 1–2 frames re-extracted via ffmpeg, downscaled per caps; source media stays read-only.

Fixed

  • Analysis-store provenance: a source re-deriving an unchanged value no longer re-attributes the row (a deep pass would otherwise claim every untouched field).

Validation

  • Full offline suite: 1081 tests (15 new); 3 known live-Resolve environmental failures only.
  • Real end-to-end deep pass on the 2026-05-17 sample clip: estimate → confirm → frames read by the host chat → commit → rows/blob/export parity → fields visible in the panel shot view. Guide screenshots regenerated from the live panel.