From a91bc60e18dcbc192f7db6cede3670669d0d8fb2 Mon Sep 17 00:00:00 2001 From: Shivangi Sharma <132820332+Shivangisharma4@users.noreply.github.com> Date: Mon, 23 Feb 2026 01:54:58 +0530 Subject: [PATCH] fix(core): add uniqueness guard to edit tool (#19890) Co-authored-by: Bryan Morgan --- packages/core/src/tools/edit.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/core/src/tools/edit.ts b/packages/core/src/tools/edit.ts index da230be95e..edd6959949 100644 --- a/packages/core/src/tools/edit.ts +++ b/packages/core/src/tools/edit.ts @@ -138,6 +138,17 @@ async function calculateExactReplacement( const normalizedReplace = new_string.replace(/\r\n/g, '\n'); const exactOccurrences = normalizedCode.split(normalizedSearch).length - 1; + const expectedReplacements = params.expected_replacements ?? 1; + + if (exactOccurrences > expectedReplacements) { + return { + newContent: currentContent, + occurrences: exactOccurrences, + finalOldString: normalizedSearch, + finalNewString: normalizedReplace, + }; + } + if (exactOccurrences > 0) { let modifiedCode = safeLiteralReplace( normalizedCode,