I think we may have to settle for different rules in different states and/or countries. In New Jersey, the base map seems to kind of have municipal boundaries, but a lot of them seem to be "Areas" surrounding nearby by better-known towns (e.g., Old Bridge Area, Woodbridge Area, etc.). This, IMHO, is worse than any other alternative methods I've seen discussed about this in these forums.
Municipal boundaries would be ideal, since they are recognized by the state, but a strict municipal boundary rule in New Jersey would create naming conflicts in Waze, as we have several Washington Townships, Springfield Townships, and Union Townships (just for starters) in different counties across the state. This creates a problem in Waze because it tries to draw a single polygon around all of them (and now even puts down automated UR (AR?) pins) even though they are not the same "cities."
Zip codes provide the only completely objective system in New Jersey that is guaranteed to be unique by city name throughout the entire state. Of course, the downside is that you lose things like true municipal, and in some cases even county boundaries, but personally, I think it's more important for Waze to not try to draw incorrect single city polygons clear across the state.
Wazing the Garden State... one jughandle at a time.AM: New York City; New JerseyAT&T iPhone 5 / iOS 7.1.1 / Waze 3.7.8