Activiti commits the database transaction when it reaches a wait state (like a user task or an asynchronous task) or when the process is ended. So in your example the 5th task is executed in the same transaction as the 4th asynchronous task. Because the node goes down, this database transaction is not committed and the database state is still in the 4th asynchronous task. When the Activiti Engine is started again, the job executor will poll for remaining jobs to be executed and the process instance will continue again from the 4th task.
If you mean with failed processes, failed jobs then we have a JobQuery that you can use to query on these failed jobs.
Best regards,