I think a straight error for conflicts is best. I don't like things to be silently shadowed.

If a user wants to resolve a conflict manually, you could have a way for the user to specify that some registered method of a plugin should be "hidden". I don't know how you'd do that in straight.plugin in practice, but in theory I think it gives us both what we want.