ADR-011: Name the project Luria, after The Mind of a Mnemonist

Status Active · Filed 2026-08-03 · Supersedes ADR-010

Context

ADR-010 named the package chester, after Chesterton’s Fence. Three problems surfaced almost immediately, and none of them is about taste.

It names one failure, not the faculty. Chesterton’s Fence is about not removing a constraint you don’t understand. That is one thing the record prevents. It says nothing about the failed approach a debugger needs, the changelog an operator reads, or the principle that stops an argument recurring — which are most of what the four layers hold (ADR-001).

The allusion doesn’t survive shortening. “chester” reads as a name, not a reference. A reader who knows the parable gets it; everyone else gets a word that has to be explained, which is the property ADR-010 rejected acronyms for.

It frames the record defensively. A tool named for “don’t touch that” argues against change. The record’s actual job is the opposite: knowing why a constraint exists is what makes it safe to remove. A name that reads as conservatism sets the wrong expectation for the thing it labels.

Decision

Name the package Luria, after Alexander Luria — the neuropsychologist whose The Mind of a Mnemonist (1968) is a thirty-year case study of Solomon Shereshevsky, a man who could not forget.

The fit is closer than the fence’s:

  • It names the faculty, not one of its failure modes. Memory that survives the session is what the package supplies; every check in it exists to keep that memory true.
  • Shereshevsky’s memory was externalized and total — the condition a stateless collaborator needs the repository to provide, since it cannot provide it itself.
  • The book is a case study: one long, particular, honestly-reported narrative about how a mind actually worked. That is the devlog’s genre exactly, down to the wrong theories being the interesting part.

And the cautionary half is the point, not a blemish. Shereshevsky’s recall was a burden. He could not forget, could not abstract, could not summarize; the detail crowded out the meaning. A record with that pathology is one nobody reads — which is why the four layers have different lifecycles, why fragments are collected and deleted rather than accumulated forever, why a principle replaces the argument instead of storing every instance of it, and why the status reports exist to surface what has gone stale (ADR-007). The name carries the design brief and its failure mode together, which is more than the fence did.

Alternatives considered

  • Keep chester. The status quo, and the three problems above are all structural rather than aesthetic. A name is cheap to change on day one and expensive later; this is the day.
  • mnemonist. Names the book’s subject directly and is more legible than a surname. Rejected: it describes the pathology — the man who couldn’t forget — rather than the study of it, and it is already a well-known JavaScript data structures library.
  • shereshevsky. Unambiguous and unpronounceable.
  • A descriptive name (project-memory). Still the safe answer, still inert; the reasoning in ADR-010 holds.

Consequences

  • ADR-010 is Superseded, not deleted or rewritten. Its body stands, its reasoning is still readable, and its status line points here. That is the supersession rule (ADR-001) demonstrated on the corpus that documents it.
  • This decision’s own reference to a retired document is acknowledged with an inactive-ok-file directive at the top of this file — which makes this page the worked example of that mechanism too (ADR-008).
  • Like the fence, the allusion needs explaining. Unlike the fence, the explanation is a paragraph a reader benefits from: it describes what the tool is for, and what it must not become.