Open jernst opened 4 months ago
I appreciate the input, but I think with an established specification, we don't have a lot of optionality in making editorial changes right now. I personally think the idea of "client" and "server" in the HTTP conversation is pretty clear, but I also understand that the roles could be better defined ("federation server", "API server", etc.). I'm going to mark this as "next version", meaning when we go to a working group for ActivityPub, we consider these terminology changes for clarity.
@bobwyman brings up the good point that we can discuss these terms without necessarily making a change to the ActivityPub spec. In that spirit, I'd like to create a Primer page that covers the idea of client and server as described in ActivityPub, so it's clearer for our developers.
As I'm going through the spec with a fine comb for the purposes of identifying which piece of software has which responsibilities under which circumstances, so we can build a test suite, I am noticing that the term "server" is used for several things, and it makes reading the spec more confusing than necessary. Specifically:
So when the spec talks about a "server", it's often not immediately clear which of those meanings is meant, and whether a given requirement, for example, applies to all of those or just some of those and which ones.
For my purposes, I am identifying five roles:
They probably should have distinct names, so the spec can be clearer.
P.S. Sometimes "server" appears to only refer to things that are both participating in the federation protocol and as servers in the client-to-server protocol, but does not when the client-to-server protocol is not used.