I don’t think this is a good idea. Keep in mind that different instances have different policies, moderators, and users. This leads to different rule enforcement, culture, and federation status. Even if a magazine/community has the same name and the same discussion topics does not mean it’s the same group of people reading those posts (some might be, due to cross-instance federation, but not all will be). In short, they are different groups and cannot be treated as the same without pissing off people.
The proper solution is to let each community just evolve until one naturally emerges over time as the go-to community or they all differentiate themselves enough to be considered different (albeit with similar names). Adding a bot to cross-post content just slows that process down and makes the problem persist for longer. If a topic is truly small enough that getting enough people for critical mass is difficult (like your DIY cobbling example), then it shouldn’t be hard to start a discussion in each of the separate communities to suggest assigning one as the “main” one and then just stop using the others. This is something that should be driven by the communities, not the software.
No, you’re not quite understanding what ActivityPub is. The data under all the fediverse services is not the same infrastructure at all. The communication between those various services just uses the same language (ActivityPub). Those various services can interpret and store (or ignore) ActivityPub messages any way they want. Service instances add another layer to the whole thing as well.
In order for an “everything app” to be successful (if you buy the argument that it feasibly can be), it would have to be a centralized service. Decentralization, by its very nature, encourages the opposite of that – want to make some niche service because existing services don’t satisfy some fringe need you have, but still want to interact with others on other platforms? You can do that with the fediverse. But that also means your new service isn’t part of an “everything app”… it just can potentially talk to one that might exist.