The current process_results method has grown unwieldy and difficult to understand, with deep branching logic for different output types (for example multiple_input, 'multiple_output`) and implicit type conversions. We can simplify this by keeping the method focused on the usual case with explicit types, while more complicated scenarios can be handled by overloading the method in custom tasks.