I still can't tell you how the closure become corrupted but I now know how to get rid of it. I'm also pretty sure that closures work fine (as you say) and that I probably mistook the same corrupt instance for different instances.
Yes, but can you see how Fuel can construct bad instances? Is so, you must see that Fuel needs fixing.
I'll have to look into that a bit more. From what I know now, Fuel signals an exception when it detects a method with changed bytecodes (when installing compiled methods). So it seems unlikely to me that Fuel should have created the corrupt closure.
Max