Submit tool outputs to run

When a run has status “requires_action”, I can successfully retrieve the run and parse the JSON function arguments.

What I am confused is…

Do I need to submit the retrieved tool outputs again to Assistant? Why, if I already got the function arguments?

My Swift code bellow does this:

       case .requires_action:
            print("Run requires action")
            await fetchAndSaveArguments() //this works as expected

            let callID = self.run.requiredAction?.submitToolOutputs?.toolCalls?.first?.id
            submitToolOutputs(for: threadId, runId: run.id ?? "", callID: callID ?? "") //this prints  status "Queued", 

But then submitToolOutputs status is “Queued”. So I am not sure if I need to get something back from submitToolOutputs?