reconcile externals.md: the lock's fourth column

First real reconcile. loomctl external check found externals.md moved, staged it,
apply took it, and the generator put a banner on the externals guide.

The guide did not actually need changing — it was written against the four-column
format a day before the document caught up. So this is the known limit doing
exactly what it does: the banner fires when a document moves, not when the
sentence a guide leaned on changed. It cannot be more precise, and the
.usages.md files are what say which sentence was leaned on.

The cart here was opened only so apply had somewhere to stage, and is discarded
rather than converted. What the conversation turned out to be: not a
conversation.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-08 09:52:24 -04:00
co-authored by Claude Opus 5
parent 969524b8ea
commit 96794f3e32
4 changed files with 46 additions and 4 deletions
+1 -1
View File
@@ -10,4 +10,4 @@ git.hypertheory-labs.dev/loom/bedrock/recording-decisions.md https://git.hyperth
git.hypertheory-labs.dev/loom/bedrock/sibling-facets.md https://git.hypertheory-labs.dev/loom/bedrock/raw/branch/main/.loom/published/sibling-facets.md "a46446a34ccb8bfc533d3cce19f4c88548c4fa04" public
git.hypertheory-labs.dev/loom/bedrock/starting.md https://git.hypertheory-labs.dev/loom/bedrock/raw/branch/main/.loom/published/starting.md "b9eefba0f4668a496ccfc6a1377277f0721456d2" public
git.hypertheory-labs.dev/loom/cart/cart.md https://git.hypertheory-labs.dev/loom/cart/raw/branch/main/.loom/published/cart.md "15331f1a9cc81bf61a44830cfbb7c274f4c2b119" public
git.hypertheory-labs.dev/loom/externals/externals.md https://git.hypertheory-labs.dev/loom/externals/raw/branch/main/.loom/published/externals.md "a7586eb52caf275d9bcedbbd8042c43e5aaad0b9" public
git.hypertheory-labs.dev/loom/externals/externals.md https://git.hypertheory-labs.dev/loom/externals/raw/branch/main/.loom/published/externals.md "50673ccffc14d57150ac0a9027b0712d9dcf940d"
@@ -62,6 +62,7 @@ what to decide are not.**
- **where it was fetched from** — *resolved, as above*
- **the publisher's `ETag`** — *verbatim*
- **the visibility the source could be read at, when it was fetched**
**It is committed**, because the thing it locks is committed, and *a lock that
travels separately from what it locks is the drift this is meant to prevent.*
@@ -71,6 +72,26 @@ travels separately from what it locks is the drift this is meant to prevent.*
> asserts your copy is the one being served, which is the thing you were going to
> check.
### Why visibility is in the lock and not left to the moment
**Access is checked once and the copy is durable.** *A token gets you the read;
nothing revisits it afterwards.* **So the adoption's legitimacy rests on the
relative visibility of two repositories — and that is changeable by a checkbox, a
year later, by somebody who never saw the adoption.**
> **Record `public` or `not-public`. Never `private`.** *An anonymous request can
> tell you a repository is not public. It cannot tell two repositories private to
> **different people** apart* — **which is exactly the case where private into
> private genuinely widens access.** *Record the word you can verify.*
**Checking it costs one request per run, not one per document**, *because the only
thing that must be current is **your own** visibility.* **Re-check a source only
when the alarm would fire** — *you are public, it was recorded not-public* — *and
if it has since gone public, update the lock and say nothing.*
*A stored visibility decays in both directions, which is why the alarm re-checks
rather than trusting the record.*
## Freshness is a conditional request
**Locked on the publisher's `ETag`, verbatim — never a hash you compute.** *A
+23 -2
View File
@@ -5,8 +5,8 @@ loom:
generated: true
path: git.hypertheory-labs.dev/loom/externals/externals.md
source: https://git.hypertheory-labs.dev/loom/externals/raw/branch/main/.loom/published/externals.md
etag: '"a7586eb52caf275d9bcedbbd8042c43e5aaad0b9"'
visibility: public
etag: '"50673ccffc14d57150ac0a9027b0712d9dcf940d"'
visibility: unknown
---
**How a repository records what it depends on, and finds out when it changes.**
@@ -70,6 +70,7 @@ what to decide are not.**
- **where it was fetched from** — *resolved, as above*
- **the publisher's `ETag`** — *verbatim*
- **the visibility the source could be read at, when it was fetched**
**It is committed**, because the thing it locks is committed, and *a lock that
travels separately from what it locks is the drift this is meant to prevent.*
@@ -79,6 +80,26 @@ travels separately from what it locks is the drift this is meant to prevent.*
> asserts your copy is the one being served, which is the thing you were going to
> check.
### Why visibility is in the lock and not left to the moment
**Access is checked once and the copy is durable.** *A token gets you the read;
nothing revisits it afterwards.* **So the adoption's legitimacy rests on the
relative visibility of two repositories — and that is changeable by a checkbox, a
year later, by somebody who never saw the adoption.**
> **Record `public` or `not-public`. Never `private`.** *An anonymous request can
> tell you a repository is not public. It cannot tell two repositories private to
> **different people** apart* — **which is exactly the case where private into
> private genuinely widens access.** *Record the word you can verify.*
**Checking it costs one request per run, not one per document**, *because the only
thing that must be current is **your own** visibility.* **Re-check a source only
when the alarm would fire** — *you are public, it was recorded not-public* — *and
if it has since gone public, update the lock and say nothing.*
*A stored visibility decays in both directions, which is why the alarm re-checks
rather than trusting the record.*
## Freshness is a conditional request
**Locked on the publisher's `ETag`, verbatim — never a hash you compute.** *A
+1 -1
View File
@@ -3,7 +3,7 @@ title: externals
loom:
writtenAgainst:
- path: git.hypertheory-labs.dev/loom/externals/externals.md
etag: '"a7586eb52caf275d9bcedbbd8042c43e5aaad0b9"'
etag: '"50673ccffc14d57150ac0a9027b0712d9dcf940d"'
---
A copy of somebody's document, a lock recording where it came from, and — beside