Damian Gryski
Damian Gryski
https://medium.com/@siddontang/use-chaos-to-test-the-distributed-system-linearizability-4e0e778dfc7d
It's seems like of your package is cgo you're better off using afl or libfuzzer to fuzz the C library directly.
Related to `testing/quick` and https://github.com/google/gofuzz
I don't think requiring the use of `encoding/gob` is unreasonable.
SmartCheck: Automatic and Efficient Counterexample Reduction and Generalization https://www.cs.indiana.edu/~lepike/pubs/smartcheck.pdf Amd the Haskell implementation: https://github.com/leepike/SmartCheck
Also http://www.eecs.northwestern.edu/~robby/pubs/papers/oopsla2010-kff.pdf
And a property-based testing implementation in C, which might be easier to take ideas from than the functional-based side of things. https://github.com/silentbicycle/theft I'm getting more and more convinced that go-fuzz...
If we have structured input we can access via reflection, it appears the best minimization algorithm is http://blog.acolyer.org/2015/11/17/hierarchical-delta-debugging/
A minimal implementation of this might be to add a helper function to turn the `[]byte` into a structure with a dumb application of `binary.Read` or equivalent. More intelligence can...
Even without a fix yet, it seems like we can add a note to the documentation about using go-fuzz with goroutines.