That's exactly the concern, and one that we had a real situation with SwiftLog, Vapor, and IBM.
In some aspects, we can wash our hands clean and say "That's the developer's error. These two libraries are incompatible", but we can't do that in the SwiftLog, SwiftMetrics, etc. case where it's expected to be mostly compatible, or when there's several layers to an end-user's dependency tree and two "middleware" packages aren't aware of needing to warn their users that their implementation details are incompatible with others out in the ecosystem.