I'm guessing #[validate(email)] is following the syntax from RFC5322.
However there is no point (for me — and I'm guessing for most devs) in using a validation create if I have to write my own custom validator for something as common as email.
This can stay as is for backwards compatibility.
But I suggest implementing #[validate(email_strict)] which will validate the top-level domain as well!