I found what I think is the same bug: Bug in swap with wait
My solution is to check which room the player is in before the wait, and if the room has changed, don't execute the swap.
To set this up, I keep a global player_room
variable up to date using the Player object's on enter
event to set it: player_room = event.room
The downside to this is that the wait loop was meant to eventually restore the tile to its original state, and this prevents that, so the tile needs to be reset some other way; I used on enter
on the temporary sprite tile to swap it back to the original.
I hope this bug can be fixed soon, but I'm having fun with Pulp!