What can a grad student do when their assistantship requires more hours than specified in their contract?
It is fairly common for graduate students to have TA assignments that are expected to take up about half of their time, as you have stated is the case for you. In this case, you should not really think of yourself as a full-time student, but as a half-time student, half-time employee of the department, since your teaching work is what you are being paid to do. Moreover, a healthy department will typically have its expectations of students adjusted accordingly.

There is, of course, a huge amount of variance in the actual time required for a given class, based on the particular students, professor, assignments, etc.
It sounds like this is what's being the problem for you: since you only got assigned one class, you were expecting to have a light load, but the department is trying to "get its money's worth" from you, and is doing so in a manner that you find difficult to plan for.

I would think it is entirely reasonable to ask for notification farther in advance, so that you can plan better.  It's also entirely possible that you will not get it, since the person making the assignments is likely an overloaded professor who is dealing with requests that are being given to them at the last minute as well.

Ultimately, my recommendation would be discussion with your advisor so that you can:


make them aware of the impact last-minute requests are having on you,
enlist them to help in either improving the situation or alleviating its impact on you, and
prevent it from happening to you again in the future.