Repository navigation
🚨 DO NOT MERGE — canary for merge-gate timing (#943) - #946
Closed
thekevinbot wants to merge 1 commit into
Closed
thekevinbot wants to merge 1 commit into
thekevinbot wants to merge 1 commit into
Conversation
Touches five trigger surfaces so most workflows fire, to observe whether the Mergify protection now stays pending until every other check completes. skip-changelog: CI trigger canary
This was referenced Aug 14, 2026
thekevinbot
added a commit
that referenced
this pull request
Aug 17, 2026
Merge gating returns to pr-monitor's CI Gate check. Mergify's check-run condition vocabulary cannot express "everything expected has finished": `#check-failure = 0` alone is vacuously green before and during CI (#943), adding `#check-pending = 0` deadlocks on Mergify's own in-progress check (#832, confirmed by canary #946), and named anchors died with path filtering (#834). pr-monitor polls workflow runs instead, so path-filtered workflows need no enumeration, in-flight runs hold the gate, and startup_failure is visible. The restored workflow differs from the pre-#830 one: minimum-checks: 0 (zero-check PRs are legitimate post-#834 and the old floor of 1 burned the timeout as a false red), pre-sleep: 30 (sole dispatch-race guard once the floor is 0; observed fan-out is ~2s), timeout: 20 (full fan-out completes in ~3 min, so a timeout means a hang), and the deprecated job-name input is dropped in favor of the action's run-ID self-exclusion. Requires maintainer follow-up outside the repo: require CI Gate in branch protection instead of Mergify Merge Protections, enable native auto-merge, uninstall the Mergify app. Fixes #948 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015NeVzsUB4JoenXCCXBfwR3
2 tasks done
thekevinbot
added a commit
that referenced
this pull request
Aug 17, 2026
Merge gating returns to pr-monitor's CI Gate check. Mergify's check-run condition vocabulary cannot express "everything expected has finished": `#check-failure = 0` alone is vacuously green before and during CI (#943), adding `#check-pending = 0` deadlocks on Mergify's own in-progress check (#832, confirmed by canary #946), and named anchors died with path filtering (#834). pr-monitor polls workflow runs instead, so path-filtered workflows need no enumeration, in-flight runs hold the gate, and startup_failure is visible. The restored workflow differs from the pre-#830 one: minimum-checks: 0 (zero-check PRs are legitimate post-#834 and the old floor of 1 burned the timeout as a false red), pre-sleep: 30 (sole dispatch-race guard once the floor is 0; observed fan-out is ~2s), timeout: 20 (full fan-out completes in ~3 min, so a timeout means a hang), and the deprecated job-name input is dropped in favor of the action's run-ID self-exclusion. Requires maintainer follow-up outside the repo: require CI Gate in branch protection instead of Mergify Merge Protections, enable native auto-merge, uninstall the Mergify app. Fixes #948 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
thekevinbot
added a commit
that referenced
this pull request
Aug 17, 2026
Merge gating returns to pr-monitor's CI Gate check. Mergify's check-run condition vocabulary cannot express "everything expected has finished": `#check-failure = 0` alone is vacuously green before and during CI (#943), adding `#check-pending = 0` deadlocks on Mergify's own in-progress check (#832, confirmed by canary #946), and named anchors died with path filtering (#834). pr-monitor polls workflow runs instead, so path-filtered workflows need no enumeration, in-flight runs hold the gate, and startup_failure is visible. The restored workflow differs from the pre-#830 one: minimum-checks: 0 (zero-check PRs are legitimate post-#834 and the old floor of 1 burned the timeout as a false red), pre-sleep: 30 (sole dispatch-race guard once the floor is 0; observed fan-out is ~2s), timeout: 20 (full fan-out completes in ~3 min, so a timeout means a hang), and the deprecated job-name input is dropped in favor of the action's run-ID self-exclusion. Requires maintainer follow-up outside the repo: require CI Gate in branch protection instead of Mergify Merge Protections, enable native auto-merge, uninstall the Mergify app. Fixes #948
2 tasks done
Collaborator
Author
|
Closing: this was a deliberate timing canary for #943, never intended to merge. The merge-gate question it probed is settled — the fleet now runs the dirsql ruleset with 'CI Gate' as the single required check, and the wait-for-checks behaviour lives in pr-monitor itself. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Do not merge. Close after reading. Throwaway observation PR for #943.
Verifies that after #945 the
Mergify Merge Protectionscheck stays pending until every other check completes, rather than going green ~25s in.Touches five trigger surfaces (comment lines / trailing newline only) so most workflows fire:
testing-conventions.tomlputitoutthere.tomlinternals/checks/testing-conventions.tomlplugins/dirsql-plugin-embeddings/testing-conventions.tomldocs/index.mdNot covered:
changelog-check. Triggering it needs apackages/**change, and putitoutthere's globs are barepackages/rust/**etc., so any such touch also fires the full release build matrix. Not worth the flake risk for a timing observation.Pass criterion
Mergify Merge Protections'scompleted_atis later than every other check's. Before #945 it was ~2m21s earlier.E2E Verification
N/A - canary, no source change