Module: Woods::Storage::Snapshotter
- Defined in:
- lib/woods/storage/snapshotter.rb,
lib/woods/storage/snapshotter/vector.rb,
lib/woods/storage/snapshotter/metadata.rb
Overview
Namespace for the Snapshotter pair that persists and hydrates in-memory storage adapters to/from disk.
Two adapters live here:
-
Vector — handles VectorStore::InMemory round-trips via pack(“e*”).
-
Metadata — handles MetadataStore::InMemory round-trips via MessagePack.
Persistent backends (pgvector, Qdrant, SQLite) never touch the Snapshotter. Passing one to Vector.dump or Metadata.dump raises InapplicableBackend immediately.
PR 2 ships stub implementations: load_or_empty always returns an empty store and dump is a validated no-op. PR 3 wires in the real serialization paths.