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>

Suite timing

Time to Start Worker time Duration Time to finish
Config 3m41s 1s 1s 3m42s
Eval 3m42s 38s 38s 4m21s
Build 28m13s 3m25s 3m27s 31m41s
Test - - - -
Deploy - - - -
Suite 3m41s 4m04s 27m59s 31m41s

Timeline

0s4m4m20s28m20s28m40s29m29m20s29m40s30m30m20s30m40s31m31m20s31m40s