// Client-safe types and constants. No node-only imports — the editor's video // panel is a "use client" file that pulls this in for the toggle UI. Server-only // I/O lives in excludeTruncatedCheck-server.ts. Mirrors the do-not-clean marker. // Per-video "exclude from truncated check" marker: when this sidecar exists in a // video dir, the incomplete/short-audio detectors (isIncompleteTranscript / // shortAudio) treat the video as fine — it's dropped from the snapshot's // incompleteTranscript + shortAudio buckets and the per-video panel suppresses // the "looks truncated" banner. For videos that legitimately have no speech for // the back half (e.g. long ambient/music tails) so coverage is genuinely low. // // Marker semantics: presence of the file = excluded. No stored `enabled: false` // state — toggling off removes the file — so the read is a simple existence // check for the snapshot generator's hot loop. export type ExcludeTruncatedCheckRecord = { setAt: string; note?: string; }; export const EXCLUDE_TRUNCATED_CHECK_FILENAME = "exclude-truncated-check.json";