What is actually missing from AT Proto to be usable in the way Doctorow describes? He writes:
Bluesky lacks the one federated feature that is absolutely necessary for me to trust it: the ability to leave Bluesky and go to another host and continue to talk to the people I've entered into community with there. While there are many independently maintained servers that provide services to Bluesky and its users, there is only one Bluesky server. A federation of multiple servers, each a peer to the other, has been on Bluesky's roadmap for as long as I've been following it, but they haven't (yet) delivered it.
But according to the source code repo, federation features are fully available, including independent servers. There's even a guide for setting up an independent server: https://atproto.com/guides/self-hosting
Edit: looks like I'm probably not missing anything, and the protocol is fully capable of what Doctorow wants, it just doesn't have any other large instances yet: https://social.coop/@bnewbold/113420983888441504