Skip to content

CI: add all-checks-passed gate job - #7

Closed
jnasbyupgrade wants to merge 1 commit into
Postgres-Extensions:mainfrom
jnasbyupgrade:add-all-checks-passed-gate
Closed

CI: add all-checks-passed gate job#7
jnasbyupgrade wants to merge 1 commit into
Postgres-Extensions:mainfrom
jnasbyupgrade:add-all-checks-passed-gate

Conversation

@jnasbyupgrade

Copy link
Copy Markdown
Contributor

Have claude setup branch protection when this merges!

Summary

  • Adds a stable all-checks-passed job (needs: [test], if: always()) as a single required-status-check name that survives future job renames/matrix changes, instead of requiring a real job name directly. Mirrors Postgres-Extensions/pg_count_nulls' current ci.yml pattern, including its self-check step that fails loudly if a new job is ever added to jobs: without also being added to all-checks-passed's own needs: list.
  • Drops paths-ignore: '**.md' from both triggers. With it, a doc-only push/PR never runs this workflow at all -- so a required all-checks-passed check would never report on one and would sit stuck Pending in branch protection forever, instead of passing. test is one cheap Perl job with no matrix to skip for cost reasons, so there's no real tradeoff in just always running it -- same reasoning pg_count_nulls' own changes job documents for why it must run unconditionally.
  • This PR only adds the job -- it does not itself configure branch protection, since that's a live repo setting (gh api --method PUT .../branches/main/protection), not something a git merge can apply. Postgres-Extensions/pg_count_nulls had no branch protection on master at all, so a PR could show mergeStateStatus: CLEAN even with zero completed check-runs; the same gap currently exists here.

Test plan

  • This change only affects a GitHub Actions workflow file.
  • After merge: configure branch protection on main requiring the all-checks-passed context, then confirm on an open PR that mergeStateStatus reflects a real pending/completed run rather than showing CLEAN with no check having run.

Adds a stable all-checks-passed job (needs: [test], if: always()) so branch
protection has one required-status-check name that survives future job
renames/additions, instead of requiring a real job name directly. Mirrors
Postgres-Extensions/pg_count_nulls' current ci.yml pattern, including its
self-check step that fails loudly if a new job gets added to `jobs:` without
also being added to all-checks-passed's own `needs:` list.

Also drops paths-ignore: '**.md' from both triggers: with it, a doc-only
push/PR never runs this workflow at all, so a required all-checks-passed
check would never report on one and would sit stuck Pending in branch
protection forever rather than passing. test is one cheap Perl job with no
matrix to skip for cost reasons, so there's no real tradeoff in just always
running it -- same reasoning pg_count_nulls' own `changes` job documents for
why it must run unconditionally.

This PR only adds the job; it does not itself configure branch protection,
since that's a live repo setting, not something a git merge can apply.
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 8188765a-db36-4bf4-a115-5efb089412eb

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

jnasbyupgrade added a commit that referenced this pull request Aug 9, 2026
Folds in #4 and #7 (both closed in favor of this PR):

- #4's actions/checkout@v6 -> v7 bump on claude.yml and ci.yml's `test`
  job. Its bump to claude-code-review.yml's checkout step is superseded
  by this PR's earlier commit, which already rewrote that step to use
  v7 as part of removing the broken fork-checkout override entirely.
- #7's all-checks-passed gate job in ci.yml (needs: [test], if: always(),
  fails on failure/cancelled -- a stable required-status-check name that
  survives future job renames) and dropping paths-ignore: '**.md' from
  both triggers, since a doc-only push/PR would otherwise never run this
  workflow at all and a required all-checks-passed check would sit stuck
  Pending forever instead of passing. Its new job's own checkout step is
  bumped to v7 too, for consistency with the rest of this commit.

Branch protection requiring all-checks-passed is still a manual follow-up
after this merges -- that's a live repo setting, not something a merge
can apply. See the PR description's reminder.
@jnasbyupgrade

Copy link
Copy Markdown
Contributor Author

Folded into #3 (which now bundles all the open CI-only PRs). Closing in favor of #3.

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.

1 participant