rules:
  - id: go-fuzz-to-native-fuzzing
    patterns:
            - pattern: func Fuzz($DATA []byte) int { $...BODY }
    fix: |
      // remove gofuzz build tag
      // rename file to _test.go
      // convert corpus with file2fuzz
      func FuzzData(f *testing.F) {
        f.Fuzz(func(t *testing.T, $DATA []byte) {
          func() int {
            $...BODY
          }()
        })
      }
    message: "old-style go-fuzz fuzz function found"
    languages: [go]
    severity: ERROR
