npub1kvt2wqqvvcwz9emscg8yf048ng3fxgvqhhhjvwhcjaarazfcnttquu0vtn (npub1kvt…0vtn) Yes, so first this is not running a fetch result, it is *deallocating* one. What you are seeing here is a classic overrelease effect. There could be more than one, unfortunately, that's the nature of heap corruption. You want the *cause*, which can be pretty separated in time. But I bet it is related to your core data models somehow.
You are right that dangling pointers are really unusual in Swift. But, regardless, start checking out zombies!