If you mean "client" in the sense of "Mastodon API client", then this is the wrong place to have that discussion.
-
If you mean "client" in the sense of "Mastodon API client", then this is the wrong place to have that discussion. The relevant parties here are HTTP user-agents and AS2 publishers/consumers. In the case of a generic server and generic client, the server is basically an agnostic storage and delivery component for arbitrary JSON-LD payloads (perhaps with a few constraints imposed by AS2-Core). The client in this case is occupying the same niche as a Mastodon instance: it generates AS2 activities which the server uses to publish a document/resource and deliver notifications. The document representing the "quote post" is entirely in the purview of whichever entity generates that document (the Mastodon instance). Downstream of the AS2 documents generated by Mastodon, this means that you will have to set those guidelines and expectations for the Mastodon API. For example, the Mastodon API will take a string starting with
@
or#
orhttps://
and attempt to interpret and auto-link those. Similarly, Twitter would auto-convert any post ending with a link to a tweet into a "quote tweet" (or auto-convert any post starting withd username
into a direct message, for that matter). But these kinds of transformations are out-of-scope here. As far as the protocol level is concerned,content
is an opaque string that may be parsed as HTML by default. What that HTML contains is dependent on who generated the AS2 document. So it is nonsensical to say "a server may implement the FEP, but a client of that server may not support creating quote posts." when the client is the one generating the AS2 document. There is nothing for the server to support about arbitrary and opaque data. The confusion likely stems from "server" being ambiguously used in the same sense as "Mastodon/etc instance" and not "ActivityPub server". If a Mastodon API client doesn't support quote posts, then it can't make quote posts. That's it. Any and all other concerns should be discussed with the Mastodon project.