From bdacd8469ffa80547b2ea7bdaf0778751c20936e Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Sun, 31 May 2026 03:31:12 -0700 Subject: [PATCH] fix: count cancelled github checks as failed (#4077) --- src/shared/hosted-review-github.test.ts | 11 +++++++++++ src/shared/hosted-review-github.ts | 5 ++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/shared/hosted-review-github.test.ts b/src/shared/hosted-review-github.test.ts index 744424025..d01c9307b 100644 --- a/src/shared/hosted-review-github.test.ts +++ b/src/shared/hosted-review-github.test.ts @@ -80,6 +80,17 @@ describe('hostedReviewSummaryFromGitHubPRInfo', () => { expect(summary.checksStatus).toBe('failure') }) + it('treats cancelled checks as failed in hosted review summaries', () => { + const summary = hostedReviewSummaryFromGitHubPRInfo({ + pr: { ...pr, checksStatus: 'success' }, + owner: 'acme', + repo: 'orca', + checks: [{ name: 'ci', status: 'completed', conclusion: 'cancelled', url: null }] + }) + + expect(summary.checksStatus).toBe('failure') + }) + it('distinguishes loaded empty comments from unknown comments', () => { expect( hostedReviewSummaryFromGitHubPRInfo({ diff --git a/src/shared/hosted-review-github.ts b/src/shared/hosted-review-github.ts index 4ed77b715..b9f3f8c2f 100644 --- a/src/shared/hosted-review-github.ts +++ b/src/shared/hosted-review-github.ts @@ -36,7 +36,10 @@ function deriveChecksStatus( return prChecksStatus } const hasFailure = checks.some( - (check) => check.conclusion === 'failure' || check.conclusion === 'timed_out' + (check) => + check.conclusion === 'failure' || + check.conclusion === 'timed_out' || + check.conclusion === 'cancelled' ) if (hasFailure) { return 'failure'