[AutoDiff] Need assistance with debugging the compiler

You can call pullback(at: of:) and pass it a unit vector of the function's output TangentVector type to get what would happen automatically by calling gradient(at:of:) for a function with an output that conforms to FloatingPoint

let pullbackFunction = pullback(at: myData) { myData in
    foowrapper(myData, argument: 3)
}
let unitVector = DiffData.TangentVector.init(x: 1, y: 1, z: 1)
let grad = pullbackFunction(unitVector)

here's some more context
see also autodiff tutorials, specifically part 3
or this section of the Differentiable Programming Manifesto