The prose check

Every other check in Parlance is structural: references, flow, reachability, interpolation. None of them read the writing.

The defect that actually accumulates in a long project written by more than one person is not a broken goto. It is a proper noun spelled three ways across two years, and ordinary typos in text nobody re-reads. Both are invisible to a validator, and both ship.

Your own names are the dictionary

The interesting layer isn't the English dictionary. It's that Parlance derives your project's proper nouns from your own data — every character, faction, item, location, skill, codex entry, ending and quest journal name — and matches them case-sensitively.

So, given a character named Kestrel:

In your prose Reported as
Kestral waits by the gate. Canon near-miss — "close to the canon name 'Kestrel'"
kestrel waits by the gate. Canon capitalization — one of your names, written lowercase
Kestrel waits by the gate. nothing

Neither of the first two is a finding a general-purpose spell checker can produce, because it has never heard of Kestrel. And there is no list to maintain: rename the character and the check follows.

One deliberate limitation

A name that is also an ordinary English word — a character called "Hawk", a faction called "The Order" — is not treated as a canon name. Nothing can distinguish "the hawk circled" from "the Hawk circled" without understanding the sentence, so those words are simply spell-checked normally.

That rule is the difference between a usable report and an unusable one. Entity names are title-cased, so without it every ordinary "the" in the project gets flagged as a miscapitalized The — measured at 141 false findings on a small project before the rule existed.

Three layers

Layer Source You maintain it?
Your names derived from data/ at check time no — automatic
Your words lore/dictionary.md yes
English bundled with the editor no

lore/dictionary.md is plain Markdown so a writer can edit it without touching JSON, and each entry can carry the reason it's there:

## Words

- Vashti — the merchant. Not "Vashi".
- gaolhouse

It lives in lore/ because it is authoring canon that never ships to the game.

Where it shows up

It runs on demand, never on save, and it is fast enough not to think about: 845 ms across a 1.02-million-word project.

Sorting the first run

On a large project the first run is mostly proper nouns rather than typos, and a wall of red is how a feature like this gets abandoned in a week. Deriving your names removes most of it for free. For what remains there's an optional AI pass that sorts unknown words into names, jargon, dialect and real typos, using your own API key.

It only classifies words the deterministic check already found. It never edits prose, never writes anything until you accept it, and never adds a typo to the dictionary. Everything else on this page works offline and needs no key.

Not part of the contract

Spelling is editorial, not structural — it says nothing about whether a project conforms to the format. So the reference validator doesn't implement it, no conformance vector covers it, and it emits its own SPELL code that validation never produces.

See also