I'm starting to wonder if the distinction of doing operations that can fail in the view versus model was a little arbitrary. I think it also depends on 'how likely they are to fail', and 'whether we wish to handle failure' by modifying 'details/parts of the view', or 'modifying the entire result given to the client'. The former case might be a case where yes, we do some operations that can fail inside the view, and the view changes in accordance with the results. The latter case should be handled in the controller.
Of course the ViewModel is not strictly in either... but it is generated at controller runtime...
My knowledge of MVC here falls apart, but I have been sort of assuming that ViewModels are basically meant to look like a static set of data