I thought about this some more. I think that the problem truly occurs because of classloading of Option. The Option used in the plugin and the one used by the tests are different. Through what I will admit must have been blind luck, I based my structural type on the method that returns Int, which should be the same no matter what classloader we are in.