(Breakdown of a larger issue - full story here)
I did a masters research project as part of a grant project my professor received. Her project was to redo a standard, widely design using a new technology as a feasibility comparison, to see if the technology should be adapted as an accepted (possibly standard) design. My thesis project was to redesign key part of the original design in order to provide her with design parameters; we then iterated over each design twice more to finalize on common parameters.
It took a couple months to get clear criteria from the sponsor, and we finished a couple months behind schedule, but ultimately our work was a success. Our work was combined in a single dual report to serve as both my thesis and her official report.
Following my successful defense, with no changes from my committee, she bluntly refused to sign off on my graduation paperwork until she had official acceptance of the report from the entity funding the grant. She admitted this was an entirely separate issue but "wanted something to hold over my head in case they ask for changes". This delayed my graduation significantly, which has had serious consequences for my professional career. As far as I can tell, the was done solely for her benefit to secure full grant payment (to her) and not as any part of the school's needs or my graduation requirements.
If all the requirements of a prescribed study program are met, are there any situations when it would be appropriate for a professor to deliberately delay a student's graduation?