▸ ▸ ▸ ▸

CARule Clean · Step 2

Automatic rule-based cleanup — no AI.
Each row: toggle (amber = on) · name · rule count · chevron. Click a row’s chevron to expand its description in place. Multiple can be on at once; the bar badge shows how many. Scrollable if the list grows.
Raw transcript
Load the transcript JSON (the file named with the job number, e.g. 15490-js.json) — not job.json.
Drop any job file: transcript / timing / audio / notes / recording log
Closed-list substitutions: one wrong input → one canonical right answer. Literal matches. This is the only set the AI may apply, and the set that mid-edit flagging adds to.
House-style normalizations: fillers, spacing, caps, numbers, mojibake. Order matters — rules run top to bottom.
Repeated-token joins: word, word or word.  word → word -- word (stutters / false starts). Deterministic — same input, same output every run. Protected Phrases (next tab) are shielded from these before they run.
Phrases shielded from the doublings pass so a real repeat isn't wrongly joined. Example: you, you know stays as-is instead of becoming you -- you know, because the second "you" begins the phrase "you know."