perfected taskCompletion checking