Skip to main content

Module export

Module export 

Source
Expand description

Export a store’s facts as JSONL — one JSON object per line — WITHOUT an embedder.

The design constraint is the second half of the store’s ownership story: list_memories audits a store the daemon can serve, and THIS path reads a store the daemon may refuse — a provenance mismatch (#1751) blocks the service from opening, and blocking the user’s own data behind the very misconfiguration they are trying to escape would make the refusal a trap instead of a guard. Reading content requires no vectors, so the export opens the engine directly and never builds an embedder at all.

Same enumeration as the migration rebuild (crate::migration, #1762): the id-keyed cursor walk, complete and TTL-skipping — an export must show what the store would still serve, and an expired fact is not it.

Functions§

export_jsonl
Write every live fact of the store at store_dir to out, one JSON object per line: {"id", "id_str", "content", "metadata"}. Returns how many lines were written.