fix(patch): cherry-pick 7ec7845 to release/v0.15.0-preview.1-pr-12905 [CONFLICTS] (#12962)

Co-authored-by: anj-s <32556631+anj-s@users.noreply.github.com>
Co-authored-by: Anjali Sridhar <anjsridhar@gmail.com>
This commit is contained in:
gemini-cli-robot
2025-11-12 12:31:21 -08:00
committed by GitHub
parent 48fa48ca38
commit e27197096a
8 changed files with 48 additions and 13 deletions
+2 -2
View File
@@ -1080,8 +1080,8 @@ const SETTINGS_SCHEMA = {
label: 'Use Write Todos',
category: 'Advanced',
requiresRestart: false,
default: false,
description: 'Enable the write_todos_list tool.',
default: true,
description: 'Enable the write_todos tool.',
showInDialog: false,
},
security: {
@@ -20,7 +20,7 @@ const createTodoHistoryItem = (todos: Todo[]): HistoryItem =>
id: '1',
tools: [
{
name: 'write_todos_list',
name: 'write_todos',
callId: 'tool-1',
status: ToolCallStatus.Success,
resultDisplay: {
+1 -1
View File
@@ -200,7 +200,7 @@ export const INFORMATIVE_TIPS = [
'Set the number of lines to keep when truncating outputs (/settings)...',
'Enable policy-based tool confirmation via message bus (/settings)...',
'Enable smart-edit tool for more precise editing (/settings)...',
'Enable write_todos_list tool to generate task lists (/settings)...',
'Enable write_todos tool to generate task lists (/settings)...',
'Enable model routing based on complexity (/settings)...',
'Enable experimental subagents for task delegation (/settings)...',
//Settings tips end here
+1 -1
View File
@@ -514,7 +514,7 @@ export class Config {
params.truncateToolOutputLines ?? DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES;
this.enableToolOutputTruncation = params.enableToolOutputTruncation ?? true;
this.useSmartEdit = params.useSmartEdit ?? true;
this.useWriteTodos = params.useWriteTodos ?? false;
this.useWriteTodos = params.useWriteTodos ?? true;
this.initialUseModelRouter = params.useModelRouter ?? false;
this.useModelRouter = this.initialUseModelRouter;
this.disableModelRouterForAuth = params.disableModelRouterForAuth ?? [];
+34
View File
@@ -173,14 +173,48 @@ export class WriteTodosTool extends BaseDeclarativeTool<
},
},
required: ['description', 'status'],
additionalProperties: false,
},
},
},
required: ['todos'],
additionalProperties: false,
},
);
}
override get schema() {
return {
name: this.name,
description: this.description,
parametersJsonSchema: this.parameterSchema,
responseJsonSchema: {
type: 'object',
properties: {
todos: {
type: 'array',
items: {
type: 'object',
properties: {
description: {
type: 'string',
},
status: {
type: 'string',
enum: TODO_STATUSES,
},
},
required: ['description', 'status'],
additionalProperties: false,
},
},
},
required: ['todos'],
additionalProperties: false,
},
};
}
protected override validateToolParamValues(
params: WriteTodosToolParams,
): string | null {