Versioned, checksummed fixed-response replay files.
The JSON envelope holds an uncompressed ETF payload decoded with :safe;
only inert scalars, lists, tuples and maps are accepted. PIDs, references,
ports and functions are rejected. Existing atoms only: importing a contract
with application atoms requires loading that application's modules first.
Files are capped at 64 MiB and nesting at 128 levels. SHA-256 detects damage,
not malicious replacement; files should come from a trusted experiment.
Manifests freeze engine/kernel versions, registered contract fingerprints and
admission limits. Scheduling and replay mode are intentionally excluded.
Use replay_identity at run startup to freeze strategy, dataset and evaluation
options for a scientific comparison. Import is all-or-nothing after validation.