So after some more testing i'm pretty certain that randomizing the "NULL" element was the problem.
Seems like puppets with no second type actually have null as a second type. Normally null is completely neutral but it can be randomized just like the other elements.
So in your original example, most likely electric was resisted by null, neutral to electric and poison, and strong against water.
Anyway, to the point: 1.1.0 beta 3 should work correctly since it doesn't touch the null element, though it won't fix a game that's already been randomized.
If nothing else is broken, I'll probably just repackage beta 3 as 1.1.0 proper soon™.