There used to be a bug in the collision detection where things would count as collided if they were on the opposite side, but the bounding check should prevent this. I'm worried that that's not working for some reason now and that's come back, I think I've seen the player ship getting destroyed by things on the opposite side too recently.
Reprioritising as major if there's a possibility of the player ship being destroyed unintentionally.
I've bisected somewhat; this bug exists as far back as we're able to load the attached savefile.
I think this line from sphere.cpp:575 and sphere.cpp:631 should prevent this from happening, but something's going wrong with it? Possibly related to bounding circles being off but I think I've checked those, will double-check.