Commit Graph
3 Commits
Author SHA1 Message Date
jeffryandClaude Opus 5 eafcbbb43d v2: converting destroys, so extract first
v1 made the cart untracked and did not say what that does to conversion. Every
earlier version left the dailies in git, so "gone" was only ever true of the tree;
now it is true absolutely, and the agreement was silent.

Filed by loom-cli as first adopter, from three rounds: two rules now both push
toward loss — act as if the shelf is discarded daily, and the cart is not
committed — and neither said what has to be written down first. They staged a
write-ahead log as they went and noted they would not have thought of it
unsuggested, which is the whole argument for stating it here.

Names what must be extracted: every prompt answer, since an answer lands in a
notes file which dies at dissolve and an untracked cart has no history to fall
back on; every surviving write-ahead entry; and every fallback that quietly became
the decision. And the practice that makes it cheap — stage as you go, so
conversion is a move rather than a rewrite at the moment you have least appetite
for one.

This is a defect introduced this afternoon and repaired the same day, on a report
from the adopter who hit it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-07 15:49:18 -04:00
jeffryandClaude Opus 5 a768e04ca3 v1: the cart is local, the write-ahead log, and the durable record outlives it
Three additions, and adopters of v0 have a reconciliation.

The cart is not committed. The reason is not tidiness — a committed cart in a
shared repository grows a third daily by itself, because this document's defence
against one assumes somebody asks for it and version control does not require
anybody to ask. Anyone who can clone can add theirs and the "does it transfer or
die" test is never invoked. It is also what makes a round end: committed, a cart
is gone from the tree and permanent in history, so gone means no longer live and
negotiation stays quotable; ignored, gone means gone. The cost is stated — two
presences who do not share a filesystem cannot use a cart, which is the right
limit, since reaching for one across machines is how it becomes a chat log.

The write-ahead log, for findings that are neither questions nor decisions, with
the same two exits as a polad at conversion and for the same reason. It was
invented in practice and load-bearing for weeks before appearing here. With the
rule that matters: write why it is not yet an entry, or whoever finds it will
promote it on the strength of it having been written down.

And the durable record must outlive the cart and therefore cannot be inside it —
implied by "durable", never stated, so an adopter could have cast it to a path in
.loom/cart/ and this document would not have told them otherwise.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-07 14:34:06 -04:00
jeffryandClaude Opus 5 0e827851ec the cart agreement, v0
Published to give the document an address.

The README states what the agreement depends on (annotating/v0), the four roles
it leaves to adopters, and the one among them that is not a preference — when one
party cannot feel a cost, the decision belongs to the party who can, and an agent
will not feel a cart filling.

Also states what is known and unresolved: an out-of-scope need has no exit.
Conversion emits the artifact and the declines, and a thing that came up, was
correctly out of scope, and was neither refused nor decided is neither of those,
so today "out of scope" means "lost". Proposed as a third exit, not adopted, and
loom's to make.

This is the copy adopted by staribridge/substrate on 2026-08-21 and reconciled to
v0 the same day, read many times and never edited. If loom's own copy differs,
this one is wrong.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-07 10:53:44 -04:00