feat(plan): refactor ToolConfirmationPayload to union type (#17980)

This commit is contained in:
Jerop Kipruto
2026-01-30 14:51:45 -05:00
committed by GitHub
parent 6396ab1ccb
commit 71308caf05
8 changed files with 127 additions and 15 deletions

View File

@@ -180,7 +180,7 @@ export class AskUserInvocation extends BaseToolInvocation<
payload?: ToolConfirmationPayload,
) => {
this.confirmationOutcome = outcome;
if (payload?.answers) {
if (payload && 'answers' in payload) {
this.userAnswers = payload.answers;
}
},

View File

@@ -693,14 +693,18 @@ export interface ToolEditConfirmationDetails {
ideConfirmation?: Promise<DiffUpdateResult>;
}
export interface ToolConfirmationPayload {
// used to override `modifiedProposedContent` for modifiable tools in the
// inline modify flow
newContent?: string;
// used for askuser tool to return user's answers
answers?: { [questionIndex: string]: string };
export interface ToolEditConfirmationPayload {
newContent: string;
}
export interface ToolAskUserConfirmationPayload {
answers: { [questionIndex: string]: string };
}
export type ToolConfirmationPayload =
| ToolEditConfirmationPayload
| ToolAskUserConfirmationPayload;
export interface ToolExecuteConfirmationDetails {
type: 'exec';
title: string;