[Atp] Re: Draft "at" URI Scheme Document (legacy not-actually-URI version)

Ryan Barrett <public@ryanb.org> Tue, 06 October 2026 22:02 UTC

Received: from relay1-d.mail.gandi.net (relay1-d.mail.gandi.net [217.70.183.193]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by mx.ietf.org (Postfix) with ESMTPS id D265A4B for <atp@ietf.org>; Tue, 06 Oct 2026 22:02:07 +0000 (UTC)
Authentication-Results: mx.ietf.org; dkim=pass header.d=ryanb.org header.s=gm1 header.b=lb9DV5+e; spf=pass (mx.ietf.org: domain of public@ryanb.org designates 217.70.183.193 as permitted sender) smtp.mailfrom=public@ryanb.org; dmarc=pass (policy=none) header.from=ryanb.org
Received: by mail.gandi.net (Postfix) with ESMTPSA id 80CAC3EBA1 for <atp@ietf.org>; Tue, 6 Oct 2026 22:02:00 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ryanb.org; s=gm1; t=1791324120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Pow2i6s3LjVDjaFLfE4X5i5ZWspqmBNj/wl5ql9rc6s=; b=lb9DV5+eEVkV8HqHxremhvV3U5ZwiW63GVEHEnJEuPh57nzzT7V64NP7lTXIHWR9zITf8M jp6nLX/H6Z0ve1b7L30cVR23bH4BpIZAqil7uGmVwMsmw3vjyJO6RTM5CtDFyWLcrZ+LjG Ia9H1U8K+OoWllMHKBqIA5w0B5HBx5c1sarxcNA4ssYogcTVz49XYS7Qi4LVidUZx0oL0B 2lpcCwybcpFqqK9qYOIEoje++obCQixcQDlMwFAf08/f9ZV5ozES6SlfRWJnG2rH7S9V90 8gEwuJijJPhNG1bQ4v8PQQsWTIx85BwC1KkGDJU73QONbJvH3GXiiNv97j5VKQ==
Received: by mail-qv1-f50.google.com with SMTP id 6a1803df08f44-91953e11914so14179516d6.2 for <atp@ietf.org>; Tue, 06 Oct 2026 15:02:00 -0700 (PDT)
X-Forwarded-Encrypted: i=1; AKwUvBz5ElM1OmPaCpacjVp8RHQ1dq64tFi+G1t1GcQcDn+IgTCGwK37Kmr9j09NlG9ryvsWNxM=@ietf.org
X-Gm-Message-State: AFuF++lnJzojrCDZJv3xMdVFTH1CrdC+gGHTiZV3d/nCHhrLnmMiHYyV ApBOIiQG/0qSAqSrWnNq05FHytIXKTecJA3ZqyWCiXwbBF2JRCT4UdfKjKEnt2vI8x7mhwa+2Hp Uuddvbm73NxEzrXnyqqxESMvxAnVksYo=
X-Received: by 2002:a05:6214:250c:b0:919:952c:8073 with SMTP id 6a1803df08f44-919978bb000mr6186706d6.53.1791324119341; Tue, 06 Oct 2026 15:01:59 -0700 (PDT)
MIME-Version: 1.0
References: <CABFYohjmXRfDgPJ37Xp61jRHdeSpLBgr6FBYtJV=XRtd-OSEhA@mail.gmail.com> <CAE6sXqhTo1hoxKsbajvvbp4LFbithnx9q1nuPxBtajc78R=SEg@mail.gmail.com> <CABFYohib8VdecPJbhKKbPEVC5x+YP-pY1wzJ908T8MrPg2qmHw@mail.gmail.com>
In-Reply-To: <CABFYohib8VdecPJbhKKbPEVC5x+YP-pY1wzJ908T8MrPg2qmHw@mail.gmail.com>
From: Ryan Barrett <public@ryanb.org>
Date: Tue, 06 Oct 2026 15:01:22 -0700
X-Gmail-Original-Message-ID: <CA+caGh_2ZBWHEeE2ooHsrDy_a5uQbZGtED8J8pFZPVH7OT5Kiw@mail.gmail.com>
X-Gm-Features: AclHuK9nLeMFbD7Rkp4Z5fSJ7d8cBInsm5MCzotbUwvb-T40__R-pnYOUvDxsFY
Message-ID: <CA+caGh_2ZBWHEeE2ooHsrDy_a5uQbZGtED8J8pFZPVH7OT5Kiw@mail.gmail.com>
To: Bryan Newbold <bryan@blueskyweb.xyz>
Content-Type: multipart/alternative; boundary="000000000000cfa39f065d332565"
X-GND-Sasl: public@ryanb.org
X-GND-State: clean
X-GND-Score: -100
X-GND-Cause: dmFkZTEen7cso/ExRk+hY/XakkwTnjhj8yC9/idzy1j/mdF+pDIV3MxJL9uEXS6jk8B2ltx9c1KQstn0xa5M0Nae0bOuZxPO2ntbtsjFJdg1d7ilURn/jonT3rTO5upWd9SuWDmoPqVsN0SzhQWkUMP4Isc7ita78N0HlpFzHL4WzcfXn7CB32ObCyYBqzhtOblqkN1s5i26h9EyDVE6Iix7EwvzSe3/FtFrB8LC6epeltQeKSt24NiI3RdP9vm4b5TvnTMJYHFBTKmJlvi9AXjkc5jMbDzuLXq+K/Mhtbyae7O8rv/TLbRgc6TDB8MbENAVz8mbdVB53hXMoQgYldAM0w81n3bnJiZvA0GQw+7UjIpY+CCcqwpvVMiHcOzI8z3AOQmkE7k3Qrx8nDmPG0m72ObeC53ptxeT5oo1ft2MMjNLezfkGjLPDofcauup1YnRCb6JwvvKjqkukjrWCeXxpZBJDUe4fEGI1qrUkDZoDM5dBhW7svYxGHRdaQHG9+Pn72fmhzG4J1nBIUobZIJAlOT3Z9Yac498I/z+uhSMtqYza+Gvg4ksBU6pKkSenk6DeeTBFUVg4NevNuj1cbm0PQJN1lmpGL7tc9GRIGap08zM7kfOyeeDGzPTOWAagUHF0fQgvbK/iluK27DXbNtoZ+ARdOvJddTthvQwwVtZHrQ+6g
X-Spamd-Bar: ----
Message-ID-Hash: 3DO4EENZ2PVT4SJCQS5JGS7UKJ7V3WMM
X-Message-ID-Hash: 3DO4EENZ2PVT4SJCQS5JGS7UKJ7V3WMM
X-MailFrom: public@ryanb.org
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Aaron Goldman <goldmanaaron@gmail.com>, atp@ietf.org
X-Mailman-Version: 3.3.10
Precedence: list
Subject: [Atp] Re: Draft "at" URI Scheme Document (legacy not-actually-URI version)
List-Id: Authenticated Transfer <atp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/atp/M5nqvvYFiapO8K3tACEw1rjRUW0>
List-Archive: <https://mailarchive.ietf.org/arch/browse/atp>
List-Help: <mailto:atp-request@ietf.org?subject=help>
List-Owner: <mailto:atp-owner@ietf.org>
List-Post: <mailto:atp@ietf.org>
List-Subscribe: <mailto:atp-join@ietf.org>
List-Unsubscribe: <mailto:atp-leave@ietf.org>

Interesting ideas, Aaron! Thanks for writing them up!

Overall, I agree with Bryan. These are valid possibilities for expansion,
but they'd noticeably increase the complexity of the protocol, and the
burden on implementors. ATProto is already an ambitious protocol, and
building a PDS - which these drafts describe the core of - requires a
pretty deep understanding of some nontrivial techniques and structures,
along with a fair amount of work. These generalizations would make that
burden even heavier. I'd be curious to hear more about the user-facing
functionality you have in mind that needs these changes and you think is
worth prioritizing.

Also, one small comment inline...

On Mon, Oct 5, 2026 at 7:18 PM Bryan Newbold <bryan=
40blueskyweb.xyz@dmarc.ietf.org> wrote:

> 1. **Clarify Trust Foundations:** Explicitly define the account identifier
>> as a cryptographic fingerprint, and relegate handles to ephemeral,
>> non-authoritative convenience aliases.
>>
>
> I agree that the account identifier is primary, and that handles are
> ephemeral aliases/pointers. If that is unclear anywhere in the current
> draft text, patches are definitely welcome.
>

Re "cryptographic fingerprint": account identifiers are DIDs with one of
two methods, did:plc or did:web. did:plc is cryptographically based, but
did:web isn't.




> Handles are not even in-scope for the current WG charter, and not
> mentioned in the repo sync document. I mentioned them in the aturi document
> because the syntax does get used when declaring handles (as "at://
> handle.example.com" in DID documents), and we need to support them in
> that context.
>
>
>> 2. **Decouple Hosting from Verification & Standardize Ticks:** Clarify
>> that network hosting is a non-exclusive fallback, and introduce signed tick
>> objects for offline/cached freshness proofs.
>>
>
> Agree that account identifier is the real "authority", not the network
> host, and that data could be fetched from other locations and even
> alternative transports/mechanisms. However, I think it is important for
> interoperability for there to be a baseline synchronization mechanism. Is
> there a tension between what you phrased as "fallback" versus "mandatory"?
>
> If I understand the "signed tick" concept, it might be as simple as
> emitting no-op `#commit` events on the firehose, which would increment the
> clock (revision) without changing the repo contents? I think that is
> interesting and worth discussion. There seems like there would be a
> trade-off between time between updates ("how stale") and message overhead
> (rate of commits).
>
> A related topic would be adding cryptographic commitments over some
> `#account` and `#identity` events. Eg, it would be possible for accounts to
> sign messages when the deactivate/reactivate, or when they change some
> identity metadata (like handles). I think it might be hard to cover all
> such events though (eg, account takedowns).
>
>
>> 3. **Generalize Path Depth:** Replace the rigid 2-segment path
>> requirement (`collection/record`) with arbitrary-depth pathing, utilizing
>> prefix-based capability scoping.
>> 4. **Enable In-Repo Chunking:** Standardize lexicographical chunk
>> delimiter semantics (`key:partXXXX`) to support large binary objects
>> directly within repository trees.
>>
>
> These feel like pretty major expansions in scope, and might require
> holistic changes elsewhere in the protocol to support. Probably best to
> discuss in separate mailing list threads?
>
>
>> 5. **Generalize Tree Envelopes:** Abstract the repository tree
>> requirements to accommodate both deterministic MSTs and general Merkle
>> B-Trees.
>>
>
> I think that adding "optionality" in lower-level details like this would
> dramatically increase implementation complexity and be in tension with
> consistent interoperability.
>
> --bryan
> _______________________________________________
> Atp mailing list -- atp@ietf.org
> To unsubscribe send an email to atp-leave@ietf.org
>


-- 
https://snarfed.org/