@mcc @miss_rodent my shallow understanding is that not only does the stack need to be fully duplicated for interoperability but there must also be a complex interconnection between the services in the stack.
All the relays need to consume and replicate the same firehouse of data
All the PDSes must accept "pull requests" from all the relays (I don't know enough about ATProto to know how the relays "register" with PDSes
All the appviews and labelers need to interact with all the relays and clients
...and so on. The ATmosphere is really kinda effed up, like they took Fediverse and put it through a pivot table to turn everything sideways. Each fedi instance implements the whole stack of serviced to manage just what is relevant to itself. ATmosphere is a composition composed of all these services that each must manage everything, everywhere, all at once, but with an open protocol.
So, the vision of atmosphere is instead of picking a "home server" you pick a "set of services"...