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>
2.6 KiB
cart
How two parties work out what something means before one of them changes it — including when neither of them knows.
- The agreement —
v0
A cart is one bounded exchange. It starts, it runs, it converts, and then it is gone. The directory is only where a cart happens.
What it depends on
annotating/v0. Dailies
are annotated, and everything here rests on that.
Four roles it leaves to you
An agreement adopted with these uncast has not been adopted. It has been filed.
- Where a cart lives
- What durable record declines go into
- What isolates work in progress while a cart is open
- Who decides when the round ends — and this one is not a preference. When one party cannot feel a cost, the decision belongs to the party who can. An agent will not feel a cart filling and will keep writing until told to stop.
The agreement asks these as prompts. Answer them where you adopt it, not here.
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. Today "out of scope" means "lost."
Proposed as a third exit and not yet adopted; it is loom's to make. Recorded in
bedrock's event log, cart
almanac.
Provenance of this copy
Adopted by staribridge/substrate on 2026-08-21 and reconciled to v0 the
same day. Read many times, never edited. If loom's own copy differs, this
one is wrong and should be replaced before anybody adopts it.
v1 — 2026-09-07
Three additions. Adopters of v0 have a reconciliation.
The cart is local and not committed, because a committed cart in a shared repository grows a third daily by itself — the agreement's defence against one assumes somebody asks, and version control does not require anybody to ask. It is also what makes a round actually end: committed, "gone" means "no longer live"; ignored, gone means gone.
The write-ahead log, for findings that are not yet decisions, transferred to the durable record or discarded at conversion. Invented in practice and load- bearing for weeks before it was written down here.
The durable record must outlive the cart, and therefore cannot be inside it.
Implied by "durable" and never stated, so an adopter could have cast it to a path
in .loom/cart/ and this document would not have told them otherwise.