I dont think there is anything wrong with Activitypub. Some things need to be more specified (eg groups), but that will happen naturally over time as implementations converge. You just have to keep in mind what the protocol is, and what problems it can solve. Its basically a low-level protocol for communication between http servers, or essentially an api. Many of the problems that you think of in Activitypub are caused by specific implementations (mastodon), or lack of development/design. There are many more possibilities with Activitypub which havent been tried in practice.
I dont think there is anything wrong with Activitypub. Some things need to be more specified (eg groups), but that will happen naturally over time as implementations converge. You just have to keep in mind what the protocol is, and what problems it can solve. Its basically a low-level protocol for communication between http servers, or essentially an api. Many of the problems that you think of in Activitypub are caused by specific implementations (mastodon), or lack of development/design. There are many more possibilities with Activitypub which havent been tried in practice.