Quality gates
Understand OpenBBQ's hard structural gates, advisory draft findings, and opt-in professional review.
OpenBBQ checks work at every stage, but not every finding has the same effect. Hard structural gates protect valid workspace state and fresh artifacts. In the default agent workflow, ordinary low-confidence words, display budgets, and glossary consistency remain advisory, and the result is explicitly labeled as an editable draft. Full semantic or visual review is available when the work needs human-reviewed quality.
Draft and professional paths
The default agent init/next/apply/finish path resolves structural blockers and delivers a draft without creating mandatory full-coverage review queues. The expert commands below let you inspect or activate stricter review state. Once review state exists, export respects it; human edits remain authoritative.
Here are the controls available in the manual and professional workflow, in the order you meet them.
1. Listening check — openbbq asr check
Before anything is translated, OpenBBQ points at what the recognizer wasn't sure about: doubtful words, and segments that look repeated. Each one needs a decision with a reason — accept or replace for words and names, keep_first or drop for repeated segments.
Cutting the transcript into subtitle lines (segment) waits for ready: true. See Transcription and listening checks.
2. Translation check — openbbq translate check
Once lines are translated, this gate catches missing lines, lines too long to read in their time on screen, zero-length time budgets, and terminology issues. These block a clean export. See Translation and review.
3. Line-by-line review — openbbq translate audit
A full-coverage semantic review: every line is shown with its neighbors for context, and every line gets an accept or revise decision with a reason. Export blocks current unaudited items unless you deliberately pass --allow-quality-warnings for a draft.
4. Visual review — openbbq review
When a review.<lang>.json exists — created by the local review editor — export waits until every line in that scope is marked reviewed. --allow-unreviewed produces a draft. See Visual review.
5. Final check — openbbq delivery check --to zh
The hard gate before you serve anything. It re-verifies the listening decisions, the translation check, the semantic review, the exact bilingual ASS content (ASS is the styled subtitle format used for burning), export and burn freshness, burn provenance — which video and which subtitle file went in — and that the MP4 is non-empty. Any failure answers ready: false with a non-zero exit code.
Visual layout is not a default gate: models that can't see images don't need to inspect frames, and aren't penalized for skipping them.
Draft escape hatches
Every gate has an explicit way through when you knowingly want a draft. Each one has to be passed deliberately, every time:
--allow-missing— export even though some lines are untranslated--allow-quality-warnings— export despite open translation or audit warnings--allow-unreviewed— export before the review scope is complete--allow-stale— burn even though the subtitle file changed since export
None of them mark anything as done; they only let this one run through.
Seeing it with your own eyes (optional)
When you explicitly ask for a visual check, three commands help you look. They never choose a subtitle preset or trigger a reburn on their own:
openbbq qa render— sample subtitle-bearing frames from the burned MP4 (--countfrom 1 to 9, default 7).openbbq qa check— re-verify the MP4 and frame hashes, read-only.openbbq qa attest --result pass|fail --reason "what you saw"— record a human or agent visual judgment; repeat--issuefor structured failure notes.
Where next?
- Workspaces and stages — what the gates are guarding.
- Export and burn — the last steps before serving.
- CLI reference — every command and option.