# X_ERROR_CODE_UNTHROWN

## Means

a registered error code is constructed by nothing and UNTHROWN_CODES in packages/cli/src/unthrown-codes.ts does not list it

## Typical cause

a code is registered and this page presents it as live, but no shipped source constructs it, so a reader matching on it waits for an error that cannot arrive. The waiver is a list, `UNTHROWN_CODES` in `packages/cli/src/unthrown-codes.ts`, or the code's place under Reserved codes — a row's wording waives nothing. Add the code to `UNTHROWN_CODES` and write "registered, thrown by nothing since <version>" into its row, naming the code that replaced it — or throw it again where it belongs. Never delete the registration: a shipped code never changes meaning

## Fix

`x errors explain X_ERROR_CODE_UNTHROWN --json`

[CLI and verify](/error-codes#cli-and-verify)
