What can be done when my assignment's requirements has been so vague that it is jeopardising the grade that can be achieved?
I am not versed in software writing assignment but there are a few things I can think of:


Submit your work with a memo, detailing how each of the assumptions was made to the assignment components that were not clearly specified. If you're so keen, list a couple alternatives you have thought about, with pros and cons, and why you made that choice. I have seen students sometimes do that in written tests and exams, and I often considered their point of view a bit differently.
For all the communications, if you have paper trail, keep the paper trail. If not, at the very least, have a log of meeting and discussion, jot down all main points. Any conversation about this project from now on, if possible, should have a paper trail, and if it's a face-to-face meeting, follow up with an e-mail detailing the main points covered in the meeting. If all go south, having this record to demonstrate i) your due diligence to clarify, and ii) the lack of clarity among the teaching staff would help you make the case if you decided to complain or grieve.


Good luck!