fix(core): prevent omission placeholder deletions in replace/write_file (#19870)

Co-authored-by: Bryan Morgan <bryanmorgan@google.com>
This commit is contained in:
Nick Salerni
2026-02-22 11:58:31 -08:00
committed by GitHub
parent d96bd05d36
commit faa1ec3044
9 changed files with 282 additions and 8 deletions
+6
View File
@@ -47,6 +47,7 @@ import type { MessageBus } from '../confirmation-bus/message-bus.js';
import { debugLogger } from '../utils/debugLogger.js';
import { WRITE_FILE_DEFINITION } from './definitions/coreTools.js';
import { resolveToolDeclaration } from './definitions/resolver.js';
import { detectOmissionPlaceholders } from './omissionPlaceholderDetector.js';
/**
* Parameters for the WriteFile tool
@@ -486,6 +487,11 @@ export class WriteFileTool
}`;
}
const omissionPlaceholders = detectOmissionPlaceholders(params.content);
if (omissionPlaceholders.length > 0) {
return "`content` contains an omission placeholder (for example 'rest of methods ...'). Provide complete file content.";
}
return null;
}