When updating project pipeline settings in Azure DevOps using the updateBuildGeneralSettings function, the enableShellTasksArgsSanitizing setting does not get applied.
Expected Behavior
{ enableShellTasksArgsSanitizing: true } should update the setting accordingly, both in the API response and in the ADO UI.
Actual Behavior
Even though the API request completes successfully, the response still returns enableShellTasksArgsSanitizing: false, and the setting remains disabled in the UI.
Sample code:
import * as azdev from 'azure-devops-node-api'
const token = process.env.AZDO_PERSONAL_ACCESS_TOKEN;
const authHandler = azdev.getPersonalAccessTokenHandler(token);
const connection = await new azdev.WebApi("https://dev.azure.com/org", authHandler);
const buildApiClient = await connection.getBuildApi();
const result = await buildApiClient.updateBuildGeneralSettings(
{
disableClassicReleasePipelineCreation: true,
enableShellTasksArgsSanitizing: true,
},
"project"
);
console.log(result);
Response:
{
enforceReferencedRepoScopedToken: false,
disableClassicPipelineCreation: false,
disableClassicBuildPipelineCreation: false,
disableClassicReleasePipelineCreation: true,
forkProtectionEnabled: false,
buildsEnabledForForks: false,
enforceJobAuthScopeForForks: false,
enforceNoAccessToSecretsFromForks: false,
isCommentRequiredForPullRequest: false,
requireCommentsForNonTeamMembersOnly: false,
requireCommentsForNonTeamMemberAndNonContributors: false,
enableShellTasksArgsSanitizing: false,
enableShellTasksArgsSanitizingAudit: false,
disableImpliedYAMLCiTrigger: false,
statusBadgesArePrivate: false,
enforceSettableVar: false,
enforceJobAuthScope: false,
enforceJobAuthScopeForReleases: false,
publishPipelineMetadata: false
}
enableShellTasksArgsSanitizing is still false and the setting is turned off in the UI:

Environment
azure-devops-node-api: 14.1.0
Node.js: v22.13.0
When updating project pipeline settings in Azure DevOps using the
updateBuildGeneralSettingsfunction, theenableShellTasksArgsSanitizingsetting does not get applied.Expected Behavior
{ enableShellTasksArgsSanitizing: true }should update the setting accordingly, both in the API response and in the ADO UI.Actual Behavior
Even though the API request completes successfully, the response still returns
enableShellTasksArgsSanitizing: false, and the setting remains disabled in the UI.Sample code:
Response:
{ enforceReferencedRepoScopedToken: false, disableClassicPipelineCreation: false, disableClassicBuildPipelineCreation: false, disableClassicReleasePipelineCreation: true, forkProtectionEnabled: false, buildsEnabledForForks: false, enforceJobAuthScopeForForks: false, enforceNoAccessToSecretsFromForks: false, isCommentRequiredForPullRequest: false, requireCommentsForNonTeamMembersOnly: false, requireCommentsForNonTeamMemberAndNonContributors: false, enableShellTasksArgsSanitizing: false, enableShellTasksArgsSanitizingAudit: false, disableImpliedYAMLCiTrigger: false, statusBadgesArePrivate: false, enforceSettableVar: false, enforceJobAuthScope: false, enforceJobAuthScopeForReleases: false, publishPipelineMetadata: false }enableShellTasksArgsSanitizingis still false and the setting is turned off in the UI:Environment
azure-devops-node-api: 14.1.0
Node.js: v22.13.0