Finding last time an item was a certain value

You don’t even need persistence. It’s very common to use an associated separate timestamp Item for this purpose, for key Items.
There’s even a channel profile to make that easier.

Or you can use persistence with previousState(true), and examine the timestamp of the object returned.