update tasks and pass in the done