cc95488726c6ecb78dd492e9a61901b6c67b81ce
loom-cli's builder measured all three things we had published and none could be fetched by somebody who is not us: settled 404, .loom fetchable but not where a reader lands, and homelab-cluster 404 while this page named it as the canonical answer. Three for three. A public page naming a private thing as its canonical answer is worse than no example — it costs the reader a request and their confidence in the rest of the page. The page now says the example exists, is private, and why, and does not link it. The diagnosis is theirs and worth keeping: publication was being treated as a change of directory rather than the act publication.md describes. Moving a file into published/ is not publishing; the file becoming fetchable is. And reachable, the command we nearly cut for being a third kind of thing, found all three on the day it would have shipped. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
bedrock
The primitives. Four documents, in .loom/published/:
- The
.loomdirectory — everything lives there, and a directory means a kind - Sibling facets —
x.<facet>.mdbesidex.md, owned by whoever wrote the facet - Recording decisions — what an entry says, and why it is never revised
- Publication — what
.loom/published/means - Starting one of these in a repository — the one page here that tells you what to do, because a set of primitives with no starting point is a puzzle
Nothing else here says what to do. loom/annotating, loom/cart and
loom/externals are built on these and are where the practices live.
Most repositories will never read this. Its audience is people building conventions, not people using them — and it is a good sign that a primitive is one nobody needs.
Publishers are the exception, because publication is defined here, and the people whose choices land on somebody else should have read the primitives.
Languages
Markdown
100%