add better task error handling and UI