OK, a further revision - probably the last for today - but I wanted to take in @JFallows’ useful observations.
Until testing for this article**, I’d never thought about OnRemove. I’d not consider it something a new user should want to try out first. I think the mechanism is simple. My understanding is that after the first cycle of an agent, it doesn’t throw away existing aliases (efficiency) but re-evaluated in scope notes. It adds aliases for new matches, retains pre-existing match aliases and removes aliases to now non-matching notes. The last provides a perfectly good trigger point for OnRemove to fire. As with an agent’s action (its OnAdd equivalent) the OnRemove evaluates in the context of the alias and not the original.
** After 14+ years of Tinderbox use, I’m still finding things I’d overlooked or forgotten. Writing reference articles does that sort of thing!
New edit is online here.