I am not sure that can be done that way. There are issues that are culture or specific business need related. Bad requirement is the hard part it seems. I think we all have been in situations, where 'common sense' is not common ( and does not translate to the same thing to various layers for people who pass it; and that does not even account for translation ).
This is usually how we end up with weird situations like currency coded as text so it can't be sorted by amount by end user and so on.
I agree that specs make or break the project, but at what point is it ok to assume "x should do y".