pub(crate) fn snapshot_workspace(
store: &Store,
workspace_id: &str,
) -> Option<Value>Expand description
Read the given workspace’s tabs/blocks/layout directly from the store and
build a durable, block-id-independent snapshot (real block ids are
replaced with positional placeholders — CreateBlock always assigns a
fresh id, so the snapshot can never reference one that will exist again).
Returns None for an empty/unknown workspace (nothing worth persisting).