Glossary
noy-db is an encrypted, offline-first document store; a single database instance is called a vault. Some of its vocabulary spans more than one package — a term coined for one feature is reused by adapters, by the docs, and by klum-db, the companion control plane that manages a fleet of vaults. This section pins those shared terms down so each one means exactly one thing everywhere it appears.
The glossary currently contains four vocabulary sets:
Core vocabulary
The four structural terms every page relies on, each with exactly one meaning:
- Hub — the
@noy-db/hubpackage / core library / trust boundary (the three senses spelled out). - Vault — an isolated runtime data space with its own keys; what
openVault()returns. - Collection — a typed record set inside a vault, addressed by
(vault, collection, id). - Kernel / enclave — the always-on part of the hub, and its innermost key-holding region (enclave ⊂ kernel ⊂ hub).
Schema migration
Terms for evolving a record schema from one generation to the next:
- Transform — a pure function mapping one decrypted record from schema generation N to N+1.
- Cutover — the coordinated in-place transition of one vault to the next generation (fence, quiesce, transform, bump).
- Rollout — the orchestration of Cutovers across a set of vaults, owned by klum-db.
- The strategy axis — in-place, expand–contract, and blue-green, and which side of the vault boundary each falls on.
Satellite collection vocabulary
Terms for satellite collections (experimental, since 0.3.0-pre.6) — off-row storage that splits a record's heavy, rarely-read fields into a second encrypted envelope so hot reads never pay to decrypt them:
- Satellite (collection) — the companion collection holding the heavy fields, keyed 1:1 by the base record's id.
- Joined handle — the merged base ⊕ satellite view returned by
vault.joined(name). - Existence authority — the rule that the base row alone decides whether a record exists.
- Pairing marker — the persisted record that locks a satellite's configuration to its first declaration.
Deletion vocabulary
Terms for the three ways a record stops existing (experimental, since 0.3.0-pre.7):
- Physical delete — plain removal of the envelope on a non-synced collection.
- Delete marker — the version-ordered
_delenvelope a synceddelete()writes so the delete converges across peers; a higher-version re-create resurrects the id. - Forget tombstone — the terminal crypto-shred
vault.forget()leaves; sync never lets a live envelope win against it. - Resurrection window / freeze / target-purge — why markers can't be purged early, and the period-gated operations that reclaim them.
New vocabulary sets are added here as features introduce terms that cross package boundaries. For a task-oriented entry point into the rest of the docs, use the Orientation map.