Undo marking as read is tricky, now that I think about it. We can’t go the naive way of just holding off for 5-10 seconds, since if you reload/close it’ll either cancel the mark read action or I’ll have to build some way to ensure that the mark read action will still fire. And then there’s the issue of what happens while feeds are being marked as read, which can take a few seconds per 100 feeds. Users with 500+ feeds (there are maaaaany of you out there, including myself with 350 accumulated test subscriptions) would have up to 20 seconds where they are in this in-between state and loading a new feed isn’t yet marked as read.
So that leaves the fuller implementation, which is to mark everything as read and keep a log. But marking a feed as read involves a lot of cleanup work. Undo-ing all of that cleanup work is expensive to both build and run. There are a *lot* of mark read operations any given minute and they would all need to be stored in a log that could undo lots of changes, only for people to use it once in a blue moon.
If I see the demand, sure, I’d love to build something to pleasantly deal with a pretty bad edge case. But it’s too complex to build without that demand, unfortunately.