fix(crafter): exclude radamsa -M seed header line from RADAMSA_REPORT iteration count

Merged
JA
3mo ago
+117-32

Summary

Excludes radamsa's per-run seed: header line from the RADAMSA_REPORT iteration count.

radamsa writes each -M metadata log as a single seed: header line (identifying the run) followed by one line per mutation. The parser counted every non-blank line as a record, so the seed: header was counted as a fuzzing iteration, inflating the count by one per log. This affected both the craft-time records annotation and the eval-time input.elements that a radamsa-min-iterations gate counts, making the gate more lenient than intended.

The fix drops run-header records (those carrying a seed key) in parseEntry, the single chokepoint shared by InspectReport (craft) and ParseReportBytes (eval), so both sides reflect only real mutations. All seed-bearing records are dropped, so a concatenated multi-run log is handled correctly. radamsa.Parse remains a faithful line parser.

Fixes PFM-6903.

AI disclosure

Assisted by Claude Code.