Fix: handle malformed XML in follow-up suggestions and improve error … #3444
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related GitHub Issue
Closes: 3404
Test Procedure
see issue
Type of Change
srcor test files.Pre-Submission Checklist
npm run lint).console.log) has been removed.npm test).mainbranch.npm run changesetif this PR includes user-facing changes or dependency updates.Screenshots / Videos
Documentation Updates
Does this PR necessitate updates to user-facing documentation?
Changes Made:
Changes Made
Modifications to
src/core/tools/askFollowupQuestionTool.tsImproved XML Parsing:
follow_upparameter, containing suggestion XML, is now consistently wrapped in a<suggestions>root element before parsing.<suggest>tags without a root), preventing "Invalid operations xml format" errors.Updated Error Messages (Lines 49–50):
cline.saychanged from:"Failed to parse operations: ..."→"Failed to parse follow-up suggestions: ..."formatResponse.toolErrorchanged from:"Invalid operations xml format"→"Invalid suggestions format. Please provide well-formed XML with tags."New Test File:
src/core/tools/__tests__/askFollowupQuestionTool.test.tsPurpose: Introduced a comprehensive Jest test suite for the
askFollowupQuestionTool.Test Coverage Includes:
cline.askerrors.<suggest>elements.Impact
Increased Robustness:
Improved Error Reporting:
Enhanced Maintainability & Reliability:
Direct Issue Resolution:
Additional Notes