Search posts, tags, users, and pages
StackShortlist
Proof Over Promises.
Claiming the row before sending is the right pattern. Without it, two triggers overlapping is all it takes to double send to the same person. A status column plus a timestamp also gives you a cheap audit log.