Skip to content

v2.39.0

Choose a tag to compare

@samuelgursky samuelgursky released this 10 Jun 00:20

v2.39.0

Governance enforce mode and actor identity — the staged Phase 3 of the Resolve 21 AI-ops work, built on three recorded design decisions: single-editor/multi-client concurrency target, instance-level identity, render-ops-only governance scope.

Added

  • Governance mode for the media-creating AI ops (motion deblur, speech generation): advisory (default — today's behavior, confirm-preview warnings only) or enforce, where an over-tier run is blocked with a structured GOVERNANCE_BLOCKED error before token issuance, naming the exceeded dimensions and usage. Escape hatches: raise the tier or thresholds via set_ai_governance, relax the mode, or pass override_governance=true to consciously exceed the tier once. set_ai_governance accepts mode (and preset is now optional when only mode/overrides change); get_ai_governance reports it.
  • Instance-level actor identity: each entry point declares itself at startup — stdio, network-sse, network-http, control-panel, batch-cli — and AI-ops ledger rows, brain edits, and timeline versions now carry an actor column (<instance>:<pid>) alongside the existing initiator. Initiator says why a row exists; actor says who wrote it.
  • Schema v8 (additive actor columns on three tables). The updater's eager migration handles existing databases.

Validation

  • Offline unit suite: 1,049 tests, 0 failures, 0 errors (17 new for this phase).
  • v8 migration verified against a copy of a real project database (v6 → v8; 38 brain edits and 14 timeline versions preserved; originals untouched).
  • No DaVinci Resolve scripting behavior changed; the enforce gate and identity stamping are local logic on already-confirm-gated paths.