Skip to content

fix(mergify): use status-success for ecp/cross-pr-conflict#398

Merged
coseto6125 merged 1 commit into
mainfrom
fix/mergify-status-success
May 23, 2026
Merged

fix(mergify): use status-success for ecp/cross-pr-conflict#398
coseto6125 merged 1 commit into
mainfrom
fix/mergify-status-success

Conversation

@coseto6125
Copy link
Copy Markdown
Owner

Symptom

PRs #386 #387 #388 reached every required-check green, mergeStateStatus=CLEAN, with correct ecp:area-* + merge-queue labels — but Mergify check stayed at completed/neutral · Merge queue is ready with payload queue_rule_name: null. None of our queue_conditions matched.

Root cause

ecp/cross-pr-conflict is a commit status (set via gh api -X POST repos/.../statuses/$HEAD_SHA in ecp-pr-analyze.yml). GitHub's Checks API and Statuses API are two different stores in their schema. Mergify's check-success= queries Checks API only — so check-success=ecp/cross-pr-conflict could never match no matter how green the status was.

Mergify's parallel keyword status-success= queries the Statuses API. Same syntax, just routes the query to the right store.

Fix

sed -i 's|check-success=ecp/cross-pr-conflict|status-success=ecp/cross-pr-conflict|g' .mergify.yml across all 5 queue_rules.

Test plan

PRs #386 #387 #388 reached every required-check green, mergeStateStatus=CLEAN,
correct ecp:area-* + merge-queue labels — but Mergify check stayed at
'completed/neutral · Merge queue is ready' with payload queue_rule_name=null.
None of our queue_conditions matched.

Diagnosis: ecp/cross-pr-conflict is a *commit status* set via
`gh api -X POST repos/.../statuses/$HEAD_SHA` in ecp-pr-analyze.yml
(line 1300 area). Mergify's `check-success=` condition queries the
GitHub Checks API, not the Statuses API. The two are separate stores
in GitHub. So our `check-success=ecp/cross-pr-conflict` could never
match no matter how green the status was.

Mergify's documented keyword for matching commit statuses is
`status-success=` (parallel keyword to check-success, same syntax,
queries the Statuses API instead). Switch all 5 queue_rules.

After this lands, the 3 test PRs should auto-embark on next sync.
@coseto6125 coseto6125 merged commit efb5fc4 into main May 23, 2026
8 of 9 checks passed
@coseto6125 coseto6125 deleted the fix/mergify-status-success branch May 23, 2026 15:15
@github-actions
Copy link
Copy Markdown
Contributor

[]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ecp:risk-low ecp signal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant