As you've probably gathered from the responses, there's a huge gray area in between what the code says are or are not valid reasons for a re-serve. My approach is generally to shoot for equity. In your specific examples, had they gone that way in one of my matches, I wouldn't have been bothered...