• Sound mode S-12, pre-alpha
  • Design record 0007, Accepted

TSR1201

'@{0}' is not allowed in sound mode. Fix the error, or use '// @ts-r-unsafe: <reason>' for sound-mode errors.

A '@ts-ignore' or '@ts-expect-error' directive is used in a sound file. Fix the error; for sound-mode errors use '// @ts-r-unsafe: <reason>'.

Rule S-12: No suppression comments, overload implementations or global augmentation (level: sound). Reported by ts-r-check and ts-r-lsp in files that opt in to sound mode. See Sound mode.

What it means

Suppression comments hide type errors without saying why, so @ts-ignore and @ts-expect-error are errors in sound files. They still suppress, so the underlying error isn't reported twice.

Example

Spec case from design record 0007 (checked by the record's case harness, not by this site's build)
// The ignore directive is not allowed in a sound file.
// @ts-ignore // @expect TSR1201
const n: number = 1;
export { n };

How to fix

  • Fix the tsc error the directive hides.
  • For a sound-mode error, use // @ts-r-unsafe: <reason> instead (it only suppresses TSR codes).
  • Planned: ts-r-check --sound-report will list each directive with the error it hides.

Sound mode is defined in design record 0007 (accepted 2026-10-15).