All sounds very upsetting for your DS. Some serious admin stuff up here, but that is all it is, an admin stuff up. Which will get sorted once it hits the right people. Somehow an exam board this year has made a decision based on marks excluding last year's resits - weird but university admin can be quite something. It is good advice from pp to screenshot everything. But regardless, the university will not have lost those marks, there will be paperwork from all of the previous boards for them to go back and look at.
Your DS has the email from last year telling him he meets the criteria to progress.
He has in fact, progressed, and completed the current academic year.
What documentation/evidence does he have telling him about this year's two resits? That's the important bit now. Based on that he needs to push hard to find out when those resits will take place (even if the portal will not let him book into them). Does he know anyone else who needs to take those resits?
If not I would suggest to go back to the SPO with a follow up email saying simply that while they sort out the administration errors please advise asap the dates of those two exams to ensure he does not miss them, and cc that to
personal tutor, student support officer and director of undergraduate studies.
Then I agree with pp, work on the basis that the admin will be corrected, get the dissertation submitted and start preparing for the resits. Most universities will publish general resit dates on their webpage even if not a specific timetable, if that is available it would that will give your DS some idea of whether it's going to be late July or mid August for example.
I'm sure it will all work out and there will be no need to escalate to Office for Students etc. I also don't think that calling to speak to anyone will be of great value at this point, because many staff are away and it's easier to set out in an email what has happened so that once the right person starts to investigate they will be able to make the necessary corrections.