Canonical domain in the docs
- Type: docs
- Track: D (docs) — with a Track W follow-on
- Status: done went live, wired 2026-08-09. The old blocker was never the name but the site: publishing a canonical URL that does not resolve is worse than publishing none, because a 404 on our own link teaches the first visitors the domain is dead.
- Owner: trackW-agent
- Related: [[feature-web-track-w-bootstrap]], [[feature-release-checksums-repro]]
Why
The domain is the trust anchor. Against impersonation it beats every technical measure: people check the address bar, not the source repo. Naming it canonically — in the docs, the README, the installers, the release notes — is what makes a fake look wrong to a user who has seen the real one. Cheap, high leverage, do it early so it propagates everywhere by default.
Scope
Do NOW (independent of the site being live) — user action
REJECTED 2026-08-09 by the user — see
[[chore-register-pxxc-domain-variants]]. The premise below is out of date:
pxxc.com was already registered by someone else (parked on non-responding
nameservers) before this ticket was written, so there was no gap left to close
cheaply. pxxc.nl/.eu are still free; the user does not want them. Original
reasoning kept for the record:
Register the variants of pxxc. This is the one item that gets harder with time: once the
project is visible, squatters watch for exactly this gap.
pxxc.com— priority. A compiler whose canonical home is.orgwhile.comsits free is the classic impersonation setup: someone else's page can outrank ours and we'd be arguing rather than owning.pxxc.nl/pxxc.eu— the jurisdiction hedge..orgis PIR (US-controlled); a ccTLD is not reachable by a US action. See [[feature-web-tracker-and-host-portability]].- Total ~€30/yr. Point them all at the same site;
pxxc.orgstays canonical.
Do WHEN LIVE
- DONE 2026-08-09.
pxxc.orgwired as canonical acrossdocs/**: README header + Documentation section,docs/index.mdfooter, and an Official sources block ondocs/install/index.mdnaming the site and the repo as the only two, since that page is where someone about to install looks. - Nothing to point at — deferred to [[feature-release-checksums-repro]].
install.shruns inside an existing checkout; it fetches no compiler. With no binary release channel there is no download URL to canonicalise, and inventing one would publish a dead link — the exact failure this ticket was blocked on. Reopen when releases exist. - DONE 2026-08-09 (Track W).
<link rel="canonical">, OG URLs, sitemap and robots all already pointed athttps://pxxc.org. HSTS was the gap: nowmax-age=63072000, noincludeSubDomains, no preload, emitted per nginx location (add_headerdoes not merge — a server-level one would have been dropped by every location and still tested fine). Rolled out at 300s and verified on apex, www,/status/and/static/before the long value. - Cannot do — no key exists yet. Publishing a fingerprint is meaningless until [[feature-web-tracker-and-host-portability]] creates the signing key. That ticket already owns "fingerprint published in >=2 places"; the site is one of the two, so this needs no separate tracking here.
Log
- 2026-08-09 — items 1 and 3 done; 2 and 4 are not ours to finish and are
carried by the two related tickets. The do-now variant registration was split
out as [[chore-register-pxxc-domain-variants]] and rejected by the user the
same day: the homework predated this ticket, and DNS confirms
pxxc.comwas already taken, which removes the premise the item rested on. HSTS caveat worth repeating: it is not revertible from the server, so pxxc.org is https-only for two years for anyone who has visited. - 2026-07-31 — unblocked: pxxc.org verified live and serving.
- 2026-07-12 — opened. Domain is
pxxc.org, registered but not live. Blocker restated: not the name, but the site. Variant registration split out as a do-now item — it does not depend on the site and it decays with time. - 2026-08-09 — resolved, commit 995720011.