By extracting evaluation of the source stream into a separate process `RecoverableStream` provides a way to isolate upstream errors and recover from them.