When a model does not support native function/tool calling (common with
some OpenAI-compatible proxies), it outputs tool calls as XML text
instead of structured tool_call events. The extension previously rejected
these with a "Model Response Incomplete" error.
This commit adds a fallback parser that detects XML-formatted tool calls
in text responses (e.g. <read_file><path>...</path></read_file>) and
converts them to ToolUse blocks, allowing the tools to execute normally.
The fallback only activates when no native tool_use blocks are found in
the assistant message, ensuring zero impact on providers that already
support native function calling.
Closes#11187