Use Future.cause() for completion checking