From 5f620d85228d5b7a53387720096ea6142e89a588 Mon Sep 17 00:00:00 2001 From: Anton Vinogradov Date: Fri, 26 Jun 2026 01:22:27 +0300 Subject: [PATCH 1/2] IGNITE-28821 Protected Classes CI check: report as warning instead of failing the PR build Replace the hard `exit 1` with a separate non-blocking check "Rolling upgrade compatibility" (action_required conclusion), keeping the existing PR comment and `compatibility` label. The main "Rolling Upgrade check" job now always succeeds. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/check-protected-classes.yml | 28 +++++++++++++++++-- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/.github/workflows/check-protected-classes.yml b/.github/workflows/check-protected-classes.yml index 4abab25b790b8..062f8c09c0680 100644 --- a/.github/workflows/check-protected-classes.yml +++ b/.github/workflows/check-protected-classes.yml @@ -28,6 +28,7 @@ jobs: permissions: issues: write pull-requests: write + checks: write steps: - uses: actions/checkout@v6 with: @@ -114,7 +115,28 @@ jobs: labels: ['compatibility'], }); - - name: Fail on affected check + - name: Warning check on affected if: steps.check.outputs.affected == 'true' - run: | - exit 1 + uses: actions/github-script@v8 + with: + script: | + const fs = require('fs'); + const hits = fs.readFileSync('/tmp/protected-hits.txt', 'utf8').trim(); + await github.rest.checks.create({ + owner: context.repo.owner, + repo: context.repo.repo, + name: 'Rolling upgrade compatibility', + head_sha: context.payload.pull_request.head.sha, + status: 'completed', + conclusion: 'action_required', + output: { + title: 'Possible compatibility issues', + summary: [ + 'This PR modifies protected classes (with **Order** annotation).', + 'Changes to these classes can break rolling upgrade compatibility.', + '', + '**Affected files:**', + hits.split('\n').map(f => '- `' + f.trim() + '`').join('\n'), + ].join('\n'), + }, + }); From 4387b5364922e5472b77acbbc2c05f94b9b4f7aa Mon Sep 17 00:00:00 2001 From: Anton Vinogradov Date: Tue, 30 Jun 2026 16:47:45 +0300 Subject: [PATCH 2/2] Use neutral conclusion (action_required renders as red/Resolve, not a warning) --- .github/workflows/check-protected-classes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-protected-classes.yml b/.github/workflows/check-protected-classes.yml index 062f8c09c0680..99adde52dc6c9 100644 --- a/.github/workflows/check-protected-classes.yml +++ b/.github/workflows/check-protected-classes.yml @@ -128,7 +128,7 @@ jobs: name: 'Rolling upgrade compatibility', head_sha: context.payload.pull_request.head.sha, status: 'completed', - conclusion: 'action_required', + conclusion: 'neutral', output: { title: 'Possible compatibility issues', summary: [