Expand description
AFL-afl-showmap-style corpus replay.
Replays a persisted corpus through a fresh executor and emits one text file
per trial (or per corpus entry). Each line has the form <id>:<count>:
- EVM IDs use the deterministic
(bytecode_hash, pc)derived from the line-coverageHitMapso that IDs are stable acrossforgeinvocations and meaningful for cross-approach analysis. Format:evm_<bytecode_hash[:16]>_<pc:04x>. - Sancov IDs use the deterministic guard index from the sancov bitmap:
sancov_0x<index:04x>.
Counts are raw saturating-summed hitcounts across the replayed corpus.
Output is consumable by tools like riesentoaster/differential-coverage.
Structsยง
- Invariant
Replay Options - Invariant replay settings that affect when terminal checks run.
- Minimization
Replay Input - Replay
Observation - Facts observed while replaying one candidate for corpus minimization.
- Showmap
Opts - Per-replay options.
- Showmap
Replay Target - Test target metadata needed to replay corpus entries.
- Showmap
Stats - Stats returned from a single trial replay.
Enumsยง
- Replay
Failure - A structured identity for a failure observed during corpus replay.
- Showmap
Domain - Which coverage bitmap(s) to dump.
Constantsยง
Functionsยง
- accumulate_
evm ๐ - Saturating-add per-(bytecode, pc) hits from a
HitMapssnapshot intodst. - accumulate_
sancov ๐ - Saturating-add
src(u8 raw counts) intodst(u64 aggregated counts). - all_
invariants_ ๐failed - broken_
after_ ๐invariant - first_
broken_ ๐invariant - fuzz_
replay_ ๐call_ succeeded - has_
replay_ ๐invariant_ failure - invariant_
handlers_ ๐succeeded - Whether the just-executed handler call passed the campaignโs success gate.
- invariant_
replay_ ๐failures - Returns replay failures produced directly by a handler call, mirroring the campaign:
assertions are keyed by handler site, while a non-assertion revert breaks every invariant
configured with
fail_on_revert. - newly_
broken_ ๐invariants - replay_
corpus_ to_ showmap - Replay every corpus entry under
corpus_dirand emit showmap files. - replay_
failure_ ๐rank - replay_
failure_ ๐report - replay_
sequence_ for_ minimization - Replays one candidate input and returns coverage/failure facts for minimizers.
- should_
check_ ๐invariant - Whether the invariant predicate should be evaluated after the
accepted-th committed (non-vm.assume) call. - write_
evm ๐ - Each EVM ID is
evm_<bytecode_hash[:16hex]>_<pc:04x>. The 16-hex prefix (64 bits) of the keccak256 bytecode hash makes IDs deterministic across processes while keeping line lengths short. - write_
sancov ๐ - write_
showmap_ ๐file - Write a single showmap file. Returns 1 if a file was written, 0 if skipped (no nonzero entries).
Type Aliasesยง
- EvmShowmap ๐