97834b9e

By: Michael Lynch <git@mtlynch.io>

Reject unqualified domains in NewEmail and add more invalid-email tests

net/mail accepts bare hostnames like joe@example (no TLD), which are not
valid internet email addresses. Add a check that the domain part contains
at least one dot. Add test cases for joe, @example.com, joe@.com, @.com,
joe@example, and joe@ to cover the full range of malformed inputs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>