This is the same issue as I had posted, and the "Recover grades default" option is not the solution. We originally had it set to no, since that is the default, and the reset wasn't working correctly. Then we changed it to yes, as we do want grade to be recovered UNTIL a reset is run, and it didn't make a difference with the reset not working to remove students/role assignment.
The "Recover grades default" option is working correctly, if it's set to no and a student is removed and re-enrolled by the enrollment plugin, their grades will not be recovered. If it's set to yes, the grades will be recovered. But if you try to run a course reset to unenroll students and delete their grades (instead of removing them via the enrollment plugin), nothing happens.
We have not found a good solution for this. The only thing that is saving us right now is that we use the external database enrollment plugin, and at least that removes all of the students from the class at the end of the quarter. But if they are ever re-enrolled in the future for an incomplete grade or to re-take the class, this will be a problem.
Maybe we need to post it in the bug tracker?