Debugging failure of the API is really difficult, if you don't catch TaskRuntimeError specifically and print the inner exceptions
For that reason, TaskRuntimeError should include the inner exception into its message, such that you see the inner exceptions as well if the exceptions are not directly caught by your code.
Background