P1 complete. Docs lexicon firewall (lexicon_meta_docs_test.go, 5 tests incl. G-013 walk-coverage + G-014 shared self-test). MkDocs Material scaffold with 26-page nav (G-011). README.md + docs/index.md + 7 docs/shared/ pages. Both firewalls green, go test ./... 22 packages green, no regression. ---ci--- project: oy phase: 1 milestone: v0.3 status: complete tag_base: v0.2.x phase_role: execution requirements: covered: [REQ-028] partial: [REQ-027] ---/ci---
2.3 KiB
Storage Pools
OpenYield has three Storage Pools (REQ-014). Each is a layer of custody responsibility, and none of them is a custodial position — the protocol holds the canonical state that records who owns what; the Holder, the Stand, and the mesh treasury each hold their own pool.
| Pool | Level | Held by | Purpose |
|---|---|---|---|
| Stash | Holder | a single Holder | the personal storage pool; the unit of self-service |
| Vault | Stand | a Stand (a governed group) | the Stand-level pool; the unit of shared ownership |
| Root-Pool | Mesh | the mesh treasury | the canonical treasury; the unit of the public good |
The Stash
The Stash is the Holder-level storage pool. A Holder needs only a Reach (an identity) and a Stash to begin. The Stash is the unit of self-service: the Holder owns it, controls it, and can delegate a scoped, time-limited, revocable Window to a partner or a service without giving up custody. See Watchers & Mirror for the attestation layer that records Stash state.
The Vault
The Vault is the Stand-level storage pool. A Stand is a governed group
(one of the nine Stand types: Household, Crew, Entity, Co-op, Circle,
Trust, Foundation, Confederation, Shadow) that holds a Vault in common. The
Stand's decision policy (threshold or weighted, mirroring the Cosmos SDK
x/group shape) governs how the Vault is used. See the Freeholders section
for Stands & Guilds.
The Root-Pool
The Root-Pool is the mesh treasury. It holds the canonical state of the Bread unit, the Watcher bonds, and the Root Basket. The Root-Pool is the unit of the public good: the Watchers attest to its state daily, and the Mirror mirrors it to the bearers so a Holder can verify the mesh's real return without trusting a single custodian.
Custody, not custody
The three pools are storage layers, not custodial positions. The protocol does not custody user value; it holds the canonical state that records who owns what. A Holder's Stash is theirs; a Stand's Vault is the Stand's; the Root-Pool is the mesh's. The Window primitive lets a Holder delegate a capability without delegating custody. See the Lexicon for why the docs say "Stash", "Vault", and "Root-Pool" rather than the words a legacy financial institution would use.