This is cumbersome. Quarantine is the best disposition for any message that is suspicious.
If the message is acceptable, you need the ability to release it to the user without letting the sender know there was a problem. Then you need the ability to create a tailored exception which allows the next message to flow normally, without altering flow of any other messages. I have found that this exception always requires a verified identifier and sometimes requires another identifier which is dependent on the first.
If the message is unacceptable, you need the ability to create a tailored exception to block the next message. That rule is usually pretty easy based on an IP address, server name, SMTP domain name, From domain name, or (rarely) reply-to address.
For any of this to work efficiently, you need an efficient quarantine review process.
This is a pretty basic design. I think it should be the foundation of every spam filtering solution. I have not found anyone who can explain why an alternate design exists and is sufficient. Yet, I also have not found any product that has this design, or even comes close. So I had to build it. The results have been very good.