Most cachers never have this dilema. They just don't take the time to log DNF's either because they are too lazy or embarrased. I have never knowingly not logged a DNF.
I have used options 2,3,5 and 6. Never 1 or 4. I think there are too many what if's to really resolve this issue. In the rare case where you decide to replace, logging a find is an important way to signal that there is a cache there. You can always watchlist the cache and when/if others find it, you can change your log. Some bad, unmaintained caches just need to be archived