Really the problem of capabilities is one that is deeply baked into the ActivityPub protocol. Which is to say, it is a problem that AP doesn't have any way of solving but in many ways depends on a functional solution to.
Consistently you can see how the protocol worries about "extensibility" but then turns around and punts this to JSON-LD and (more generally) Linked Data without actually solving it.
(Linked Data doesn't solve it either)