From 6feed5452f778bbb41eb90c8d921ab6b56715987 Mon Sep 17 00:00:00 2001 From: Henry Mercer Date: Tue, 23 Jun 2026 16:23:41 +0100 Subject: [PATCH] Categorize Code Quality "not enabled" upload failure as user-error When a repository requests Code Quality analysis but it is not enabled, the SARIF upload to `PUT /repos/:owner/:repo/code-quality/analysis` returns a 403 with the message "Code quality is not enabled for this repository...". `isEnablementError` did not recognize this wording, so `wrapApiConfigurationError` left it as a plain Error and the analyze job was reported with `status=failure` instead of `user-error`. Add a `/Code Quality is not enabled/i` pattern so the error becomes a ConfigurationError and `getActionsStatus` categorizes it as `user-error`. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- lib/entry-points.js | 3 ++- src/api-client.test.ts | 1 + src/api-client.ts | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/entry-points.js b/lib/entry-points.js index 11a8c4c291..b0a8477b2c 100644 --- a/lib/entry-points.js +++ b/lib/entry-points.js @@ -149561,7 +149561,8 @@ function isEnablementError(msg) { return [ /Code Security must be enabled/i, /Advanced Security must be enabled/i, - /Code Scanning is not enabled/i + /Code Scanning is not enabled/i, + /Code Quality is not enabled/i ].some((pattern) => pattern.test(msg)); } function getFeatureEnablementError(message) { diff --git a/src/api-client.test.ts b/src/api-client.test.ts index f8846e7682..29cad338f7 100644 --- a/src/api-client.test.ts +++ b/src/api-client.test.ts @@ -181,6 +181,7 @@ test.serial( "Code Security must be enabled for this repository to use code scanning", "Advanced Security must be enabled for this repository to use code scanning", "Code Scanning is not enabled for this repository. Please enable code scanning in the repository settings.", + "Code quality is not enabled for this repository. Please enable code quality in the repository settings.", ]; const transforms = [ (msg: string) => msg, diff --git a/src/api-client.ts b/src/api-client.ts index 4a061d4828..333280f8e7 100644 --- a/src/api-client.ts +++ b/src/api-client.ts @@ -311,6 +311,7 @@ function isEnablementError(msg: string) { /Code Security must be enabled/i, /Advanced Security must be enabled/i, /Code Scanning is not enabled/i, + /Code Quality is not enabled/i, ].some((pattern) => pattern.test(msg)); }