What's a use case for the extra arguments in submit_tool_outputs?

The function submit_tool_outputs allows you to pass additional arguments to the API, but it isn’t clear to me when or how you would use them. Would extra_query be something like: “The value was invalid, ask the user again”?

    def submit_tool_outputs(
        run_id: str,
        thread_id: str,
        tool_outputs: List[run_submit_tool_outputs_params.ToolOutput],
        # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
        # The extra values given here take precedence over values defined on the client or passed to this method.
        extra_headers: Headers | None = None,
        extra_query: Query | None = None,
        extra_body: Body | None = None,
        timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
    ) -> Run:
        When a run has the `status: "requires_action"` and `required_action.type` is
        `submit_tool_outputs`, this endpoint can be used to submit the outputs from the
        tool calls once they're all completed. All outputs must be submitted in a single

          tool_outputs: A list of tools for which the outputs are being submitted.

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds

The use case for adding the same extra options to every single method by the automated SDK creator that makes the code from OpenAPI specification of the API?

Future use or allowing additional undocumented specification or parameters through the otherwise restrictive library.

It doesn’t indicate there is any possible additional information you can pass that will be accepted.