Apologies if the title seems a bit vague. It's rare in the sense that this was hard to pin down but I have a reproducible sample.
So basically I have a custom moving actor that moves between mapspots.
In this test map a you'll see a flying zombieman moving between three points.
Two points in the STARTAN2 room and a third one is in the red room which is actually though a line portal.
When the zombieman attempts to fly back into the STARTAN2 room, it will vanish at the point where it should cross the portal. A few seconds later it'll be back, coming through a wall.
What's happened is that the zombieman ended up behind the portal's "buffer zone" instead of actually transitioning through the portal.
It's just a simple two-way static portal set up. (You can walk back and forth no problem.)
I've no idea if it's something to do with level.Vec3Offset() or Vec3To() since that's the only thing special in its code.
Spoiler: ZScript code