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>
67 lines
2.6 KiB
Markdown
67 lines
2.6 KiB
Markdown
# cart
|
|
|
|
**How two parties work out what something means before one of them changes it —
|
|
including when neither of them knows.**
|
|
|
|
- [The agreement](.loom/published/cart.md) — `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`](https://git.hypertheory-labs.dev/loom/annotating).** *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`](https://git.hypertheory-labs.dev/loom/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.*
|