fix: NSID rejects TLD starting with digit, AT-URI validates components
NSID parser now enforces that the first domain segment (TLD) must start
with a letter, per the spec regex. Previously accepted strings like
"1.0.0.127.record".
AT-URI parser now validates all components: authority must be a valid DID
or handle, collection must be a valid NSID, rkey must be a valid record
key. Also rejects forbidden characters (space, #, ?).
Found by running official atproto-interop-tests fixtures.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>