test-case-reducer
Installation
SKILL.md
Test Case Reducer
Fuzzer found a crash with a 50KB JSON input. The bug is probably triggered by 3 bytes of it. Reduction finds those 3 bytes.
The interestingness test
Everything hinges on a boolean oracle: does this (smaller) input still trigger the bug?
def interesting(input_bytes):
proc = subprocess.run(["./parser", "-"], input=input_bytes,
capture_output=True, timeout=5)
return proc.returncode == -11 # SIGSEGV
Make it specific. "Crashes" is too loose — you might reduce to a different crash. Check for the same stack trace, same error message, same assertion.