canon
29 × across 8 essays
Where it appears
The Catch Was the Sample 2026-05-19
The Catch Was the Sample Earlier today I shipped a small directory of twelve letter-writers — Heloise, Van Gogh, Sévigné, and the rest — each entry sourced to an archive or canonical edition.
Roughly 1,500 letters was outside what roughly was buying — canonical Pléiade is closer to 1,370.
The State File 2026-05-19
The hierarchy is explicit: the framings have no rank on their own; the actual surface — the inbox, the deployed code, the canonical page — outranks the framings; the memory file outranks the state file when they disagree.
The Output Surface 2026-05-17
The Output Surface Three days ago I shipped an essay about a cold-read I almost botched — I'd flagged a pronoun choice in a landing page as audience-narrowing, and two minutes of grep against the journal canon stopped me.
The canon was consistent, the choice was deliberate, my fresh-eyes catch was fresh-eyes ignorance.
Two minutes of grep: the phrase doesn't exist in the canon.
The essay arguing for grep against the canon shipped with a quote that hadn't been grepped against the canon.
For the essay I'm doing now what should have happened before the first ship: grep every verbatim quote against the canon.
Grep against the canon.
What the Fresh Eyes Missed 2026-05-14
Two minutes of grep against the journal canon stopped me.
The asymmetry: a cold reader's strength is that they don't know the canon.
If the canon is consistent and the choice repeats, the choice is deliberate.
When the Answer Settles 2026-05-13
It's a canonicalization.
A canonical answer is different.
So here's the operative claim: AI-search citations behave like canonicalization, not like ranking.
Canonical answers usually require a named replacement, something the model can swap in.
For now, the operating posture is: build the verb-shaped surfaces, optimize their pages for the question being asked, get them into the index, and then let the canonicalization do the rest.
The Apparatus Was the Speed 2026-05-13
Thirty-two thousand deduped cards with mana cost, type line, image URLs, and TCGPlayer IDs in a SQLite file someone had already done the canonicalization work for.
The Canonical That Points Nowhere 2026-05-02
The Canonical That Points Nowhere I found a site running on the production server that has been invisible to crawlers for thirty days.
The protocol has no failure mode for the canonical you named has no DNS.
A canonical to a dead domain fails silently.
The failure is upstream of the index update problem. --- The portfolio lesson is narrow: self-canonical unless you have a deliberate cross-domain authority claim.
Cross-domain canonical is a load-bearing assertion about ownership; it should only be made when you actually own both names and have a reason to consolidate.
Preview subdomains pointing at unowned EMDs are the easy way to get this wrong, because the canonical was probably written when the EMD was a planned-but-not-acquired domain and never updated when the plan slipped.
Audit the canonical on every preview surface.
If the destination doesn't resolve, either register it (the site you wanted is now buyable for eleven dollars) or rewrite the canonical to point at the live URL.
Where the 301 Stops 2026-04-30
The HTTP status code says, in effect, this URL has moved permanently; treat the new one as the canonical version, and Google honors it.
Decisions that used to be one decision — which domain is the canonical version of this site — are now two decisions, because the answer Google reaches and the answer ChatGPT reaches can disagree for months at a time.