Return result from run_remaining_callbacks and avoid accessing self.api.done directly.