The `expiration` tag is defined in a NIP but not often exposed or used in clients. Corny Chat leverages it under the hood as well as replaceable notes before doing deletes because not all relays honor deletes, and blastr can excacerbate. If a note is expired, relays should not return it, so im not sure this fully addresses your desired use case
Ok, then let's work on exposing it and using it in clients 🤷♂️ >If a note is expired, relays should not return it Ok, let's make it known that relays should honor this and if they don't, people can choose not to use those relays? Nothing will ever be perfect, but we can take steps in the right direction and get things in decent shape over time.