I think there specifying rules for this is impossible. For example a rules for this case would be: We ensure no method change in interfaces, but may change the return value. This does not make sense at all.
I think we can only try to maintain BC as good as possible. If there is no way to keep BC (like here), we have to break BC and document it. Or ignore the feature (which would stop most development).