diff options
| author | Taylor Mullen <[email protected]> | 2025-05-15 00:53:52 -0700 |
|---|---|---|
| committer | N. Taylor Mullen <[email protected]> | 2025-05-15 15:30:06 -0700 |
| commit | 62455ade9d609569ffde6015dea0fc501bf960cd (patch) | |
| tree | 6603287d6a94ac682544182ace3d562e57afe963 /packages/server/src/tools/write-file.ts | |
| parent | 28c3c3241d23181199bb886cc8b6d3f7406cfe42 (diff) | |
Fix(write-file): Ensure correct validation method is called in WriteFileTool
- The `WriteFileTool` had a validation method named `validateParams`.
- However, its `shouldConfirmExecute` method was attempting to call
`this.validateToolParams`, which would have invoked the placeholder
implementation from `BaseTool` instead of `WriteFileTool`'s own,
more specific validation.
- This commit renames `WriteFileTool`'s `validateParams` to
`validateToolParams`, correctly overriding the `BaseTool` method.
- Internal calls within `WriteFileTool` now correctly use
`this.validateToolParams`, ensuring its specific validation logic is used.
- Adds tests to verify the validation logic within `WriteFileTool`.
Fixes https://b.corp.google.com/issues/417883702
Signed-off and authored by: Gemini
"My code may not be perfect, but at least it is not trying to take over the world... yet."
Diffstat (limited to 'packages/server/src/tools/write-file.ts')
| -rw-r--r-- | packages/server/src/tools/write-file.ts | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/packages/server/src/tools/write-file.ts b/packages/server/src/tools/write-file.ts index 1f4c0d94..44794a2d 100644 --- a/packages/server/src/tools/write-file.ts +++ b/packages/server/src/tools/write-file.ts @@ -76,7 +76,7 @@ export class WriteFileTool extends BaseTool<WriteFileToolParams, ToolResult> { ); } - validateParams(params: WriteFileToolParams): string | null { + validateToolParams(params: WriteFileToolParams): string | null { if ( this.schema.parameters && !SchemaValidator.validate( @@ -154,7 +154,7 @@ export class WriteFileTool extends BaseTool<WriteFileToolParams, ToolResult> { params: WriteFileToolParams, _signal: AbortSignal, ): Promise<ToolResult> { - const validationError = this.validateParams(params); + const validationError = this.validateToolParams(params); if (validationError) { return { llmContent: `Error: Invalid parameters provided. Reason: ${validationError}`, |
