Blobs
A blob is a fixed sequence of bytes, identified by the hash of those bytes. All content in a store is a blob: profiles, mesh geometry, textures, compiled scripts. A blob’s bytes never change, and its hash is its only name.
Because the ID is the hash:
- the same bytes are stored once, no matter how many spaces reference them;
- integrity is checkable by recomputing the hash;
- anyone holding the hash can fetch it from any store that has it.
Editing an asset produces a new blob with a new hash; references to the old one keep working.
Documents carry their heavier content as blobs. An entry’s content is the bytes’ hash, not the bytes themselves, so a store that holds a document holds everything it needs without parsing its formats.
Retention
A store keeps bytes only while something it hosts references them, or while they are pinned: an explicit request to hold a blob for a stated duration. When a pin expires, the store reclaims the space. A store bounds its own disk without judging what the content is.