Skip to content

Conversation

@cto-new
Copy link

@cto-new cto-new bot commented Oct 16, 2025

Summary

This PR greatly extends the robustness of Vector's tool call parser and improves asset search reliability by supporting a broad range of XML and JSON-based tool call formats, including nested tags, attribute-based tags, comma-separated and array representations.

Details

  • The XML/JSON hybrid parser for tool calls now recognizes and extracts arguments from native function-calling JSON, standard XML with child elements, single XML tags with attributes, repeated tags as arrays, comma-separated values, and mixed/nested structures.
  • Asset search tags are extracted as arrays regardless of how the model emits them (array, string, CSV list, or nested XML).
  • Introduces deep, defensive extraction helpers for both strings and arrays to minimize brittle parsing logic and maximize compatibility across model output variations.
  • Improves error tolerance and validation to catch and report malformed or missing search parameters.
  • Documentation and decision summary updated to reflect these enhancements with implementation notes and test cases.

cto-new bot added 2 commits October 16, 2025 03:05
…ect command tool calling

Adds XML_VS_DIRECT_COMMANDS_ANALYSIS.md and DECISION_SUMMARY.md to document
analysis and rationale for keeping the XML-tag tool call approach in Vector.
Provides in-depth comparison versus native function calling, with clear decision
criteria and next steps. This supports future engineering discussions and offers
transparency for technical stakeholders. No runtime code is affected; these are
documentation enhancements only.
- Fixes asset search XML parsing: supports JSON, nested XML, comma-list, attributes
- Harden parser to handle tags as string, array, nested markup, or CSV
- Ensures tags always parsed as array regardless of model output format
- Adds deep string/array extraction helpers for tool argument flexibility
- Updates docs and decision summary to reflect parser improvements
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant