Skip to content

ci: make Accept gate fail when any required job fails#585

Merged
DaniPopes merged 3 commits into
mainfrom
prestwich/fix-accept-gate
May 11, 2026
Merged

ci: make Accept gate fail when any required job fails#585
DaniPopes merged 3 commits into
mainfrom
prestwich/fix-accept-gate

Conversation

@prestwich
Copy link
Copy Markdown
Member

Summary

The Accept job in ci.yml was a single-step run: "true" that depended on all the real CI jobs. With default GitHub Actions semantics, when any job in needs: fails, dependent jobs are skipped, not failed.

GitHub branch protection treats a skipped required status check as non-blocking, so the required Accept check never reported failure even when test/clippy failed. PR #576 hit exactly this — automerge fired with failing CI because Accept was reported as skipped rather than failure.

This PR runs Accept unconditionally (if: always()) and explicitly fails when any dep is not success, turning it into a real failing required check that branch protection blocks on.

Test plan

  • Open this PR; confirm Accept runs and reports success when all jobs pass.
  • Push a commit that breaks a test on a draft PR; confirm Accept reports failure (not skipped) and that branch protection blocks merge.

🤖 Generated with Claude Code

The Accept job used the default GitHub Actions behavior, which skips
downstream jobs when a dependency fails. Branch protection treats a
"skipped" required check as non-blocking, so an automerge could fire
even with failing tests/clippy (as happened on #576).

Run Accept unconditionally with `if: always()` and explicitly fail
when any need is not "success", turning the gate into a real failure
that branch protection blocks on.
@prestwich prestwich requested a review from recmo as a code owner May 8, 2026 07:43
Copy link
Copy Markdown
Member

@DaniPopes DaniPopes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented May 8, 2026

Merging this PR will degrade performance by 10.41%

❌ 2 regressed benchmarks
✅ 384 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
base_convert/128/128/10/be 13.6 ms 15.2 ms -10.41%
most_significant_bits/4096/4096 26 µs 29 µs -10.32%

Comparing prestwich/fix-accept-gate (ed9be8c) with main (c910174)

Open in CodSpeed

@prestwich prestwich requested a review from DaniPopes May 8, 2026 11:41
Adopts the alls-green pattern used in alloy-rs/core for consistency
across the org.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@prestwich
Copy link
Copy Markdown
Member Author

🫡

@DaniPopes DaniPopes merged commit 09af8b8 into main May 11, 2026
19 checks passed
@DaniPopes DaniPopes deleted the prestwich/fix-accept-gate branch May 11, 2026 09:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants