Track A snapshot extension bytes

Updated Jul 27, 2026

full-monty snapshots can carry opaque, embedder-owned extension bytes. Monty stores these bytes alongside snapshot state but never interprets them.

  • Snapshot, FutureSnapshot, ReplSnapshot, and ReplFutureSnapshot expose with_snapshot_extension(...) for attaching bytes (accepting either Vec<u8> or SnapshotExtension) and snapshot_extension() for read-only byte access. Use snapshot_extension_raw() to access the SnapshotExtension wrapper for future metadata expansion.
  • Extension bytes are optional and default to None when not provided.
  • RunProgress::dump()/load() and ReplProgress::dump()/load() preserve extension bytes across round trips.