Skip to content

merge queue: checking #1879 on main (f97f630), stacked on #1882 - #1884

Closed
mergify[bot] wants to merge 4 commits into
mainfrom
mergify/merge-queue/2ce9f2919a
Closed

mergify[bot] wants to merge 4 commits into
mainfrom
mergify/merge-queue/2ce9f2919a

Conversation

@mergify

@mergify mergify Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

🎉 This pull request has been checked successfully and will be merged soon. 🎉

#1879 is queued for merge on branch main (f97f630).

Stacked behind 1 pull request queued ahead of this batch, not part of it. These checks run on a tip that also carries its commits, so a failure here can come from it as much as from #1879.

Queued ahead of this batch:

This pull request has been created by Mergify to speculatively check the mergeability of #1879.
You don't need to do anything. Mergify will close this pull request automatically when it is complete.

Required conditions of queue rule default for merge:

Required conditions to stay in the queue:

---
all_scopes: false
checking_base_sha: c256da52215d48ae9f8133a4df05dca3b4f665fc
previous_check_retries: []
previous_failed_batches: []
pull_requests:
  - number: 1879
    scopes: []
scopes: []
...

sileht and others added 4 commits October 5, 2026 14:53
`mergify ci scopes` decodes `git diff` output lossily, so a Latin-1
`critical/caf\xe9.txt` reaches the scope globs as
`critical/caf\u{FFFD}.txt`. The ticket read that as corruption and
leaned toward hard-erroring like `mergify_stack`'s `run_git_capture`.

It is not corruption. The engine scopes a pull request from GitHub's
files API, and that API reports the same path with the same U+FFFD
replacement (checked on a sandbox repository holding a Latin-1 and a
Shift-JIS name). The lossy decode is therefore the name the engine
matches. An error would fail CI on a pull request the engine scopes
fine, and no pattern in the UTF-8 YAML config can spell the raw bytes.

Keep the decode, say why in the doc comment that used to describe it
as a known defect, and pin both probed names in a test so a later
switch to strict decoding fails loudly. The test helpers now also drop
GIT_INDEX_FILE and friends, since the new one writes the index
directly.

What still differs on such paths, and on any non-ASCII path, is glob
semantics: globset's `?` and `[...]` match bytes, the engine's match
characters, so `caf?.txt` misses `caf\u{FFFD}.txt` here and hits it
there. That is MRGFY-10066; matching.rs no longer claims exact parity.

Fixes MRGFY-8289

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Change-Id: I37852b3d50345f42b6dfe8cca6e1b36c8858a3fb
The step summary truncated each ref to 7 bytes, not 7 chars. A branch
name whose 7th byte falls inside a multi-byte char (`releasé-2026`)
panicked with "byte index 7 is not a char boundary" and exit 101.
It runs on every GitHub Actions run (`$GITHUB_STEP_SUMMARY`) and on
Buildkite, with the base taken from `--base`, the event's default
branch, or BUILDKITE_PULL_REQUEST_BASE_BRANCH.

Truncate by chars. While here, escape the ref range like scope names
already are: a ref with a backtick or a newline could close the code
span and write its own heading into the summary.

A ref that is not valid UTF-8 never reaches this code: clap rejects
it for `--base`, env reads treat it as unset, and the event JSON is
UTF-8.

Fixes MRGFY-8855

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Change-Id: I6106bdddb1d2bb288d4bebd4e23d8b8ad6279f63
@mergify
mergify Bot deployed to Mergify Merge Protections October 5, 2026 15:01 Active
@mergify
mergify Bot deployed to func-tests-live October 5, 2026 15:03 Active
@mergify mergify Bot closed this Oct 5, 2026
@mergify
mergify Bot deleted the mergify/merge-queue/2ce9f2919a branch October 5, 2026 15:10

This branch was successfully deployed

2 active deployments
func-tests-live — d9c0a42e Deployed Oct 5, 2026 by mergify[bot] via live-tests #1978
Mergify Merge Protections — d9c0a42e Deployed Oct 5, 2026 by mergify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant