I have been working on some functionality and a new feature for questions and quizzes.
The first piece causes standard auto-saves to be converted to a full save(gets retained in the history of the question attempt) after a administrator configured time period has elapsed since the last full save.
The second piece then allows compatible questions with compatible behaviours to be "undone" to previous saves. This piece of functionality was internally dubbed the "Oh shit!" button, short for "Oh shit I accidentally deleted 45 minutes worth of work on an essay question and pressed next resulting in me losing all my work!"
I don't think the functionality is complete(Need to log events when a save is converted and when question responses are "undone") but it should be stable. The tracker for it is https://tracker.moodle.org/browse/MDL-56317 and I am working on the master branch and the 3.1 stable branch(what we use at my employer).
The changes are quite substantive and involve modification of data mapper SQL statements, database indexes/columns, question behaviours, question attempts, question attempt steps, question usage, auto-save functionality include the return data etc.
I appreciate any and all feedback as I am sure I have missed something and would probably feel rather awkward if everything passed without me having to go back and rework something I missed.