fix: gate Telegram exec tool warnings behind verbose mode (#20560)

Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 7ce94931f0
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com>
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com>
Reviewed-by: @obviyus
This commit is contained in:
Ayaan Zaidi
2026-02-19 09:05:49 +05:30
committed by GitHub
parent b228c06bbd
commit 6b05916c14
6 changed files with 98 additions and 2 deletions

View File

@@ -49,10 +49,16 @@ function shouldShowToolErrorWarning(params: {
hasUserFacingReply: boolean;
suppressToolErrors: boolean;
suppressToolErrorWarnings?: boolean;
verboseLevel?: VerboseLevel;
}): boolean {
if (params.suppressToolErrorWarnings) {
return false;
}
const normalizedToolName = params.lastToolError.toolName.trim().toLowerCase();
const verboseEnabled = params.verboseLevel === "on" || params.verboseLevel === "full";
if ((normalizedToolName === "exec" || normalizedToolName === "bash") && !verboseEnabled) {
return false;
}
const isMutatingToolError =
params.lastToolError.mutatingAction ?? isLikelyMutatingToolName(params.lastToolError.toolName);
if (isMutatingToolError) {
@@ -255,6 +261,7 @@ export function buildEmbeddedRunPayloads(params: {
hasUserFacingReply: hasUserFacingAssistantReply,
suppressToolErrors: Boolean(params.config?.messages?.suppressToolErrors),
suppressToolErrorWarnings: params.suppressToolErrorWarnings,
verboseLevel: params.verboseLevel,
});
// Always surface mutating tool failures so we do not silently confirm actions that did not happen.