// Client-safe types and constants. No node-only imports — the editor's // video panel is a "use client" file that may pull this in for the toggle UI. // Server-only I/O lives in doNotClean-server.ts. // Per-video "do not clean" marker: when this sidecar exists in a video dir, the // cleanup controllers (cleanAudioFromTranscribed / cleanExtraAudioFormats) skip // the dir and the snapshot's cleanup buckets exclude its id. Used to archive // media we want to keep (e.g. a deleted / members-only upload). // // Marker semantics: presence of the file = protected. There is no stored // `enabled: false` state — toggling off removes the file — which keeps // isDoNotClean a simple existence check for the controllers' hot loops. export type DoNotCleanRecord = { setAt: string; note?: string; }; export const DO_NOT_CLEAN_FILENAME = "do-not-clean.json";