Skip to content

Fix pre-release badges and develop ruleset auto-merge stall - #85

Merged
ptr727 merged 1 commit into
mainfrom
develop
May 13, 2026
Merged

Fix pre-release badges and develop ruleset auto-merge stall#85
ptr727 merged 1 commit into
mainfrom
develop

Conversation

@ptr727

@ptr727 ptr727 commented May 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • Closes Develop ruleset strict "branches up to date" flag stalls bot auto-merge when sibling PR lands mid-CI #82 — drop strict "Require branches to be up to date before merging" from the develop ruleset (already applied on the live ruleset id 15886282). With strict on, two bot PRs against develop landing within the same window left the second OPEN forever: the first merge flipped it to mergeStateStatus: BEHIND, GitHub's auto-merge will not fire while strict is on, and the merge-bot only enables auto-merge on opened/reopened.
  • Closes README pre-release badges (GitHub + NuGet) show latest stable instead of latest pre-release #83 — fix the GitHub Pre-Release shield with &filter=*-g* (NBGV pre-release tags carry a -g<sha> suffix, stable tags don't); drop the NuGet Pre-Release badge because shields.io's vpre endpoint accepts no filter parameter and silently returns the latest stable whenever one exists.
  • AGENTS.md "Branching Model" + README.md "Rules / Rulesets" updated in lockstep — both rulesets now document distinct reasons for omitting the strict flag.

Test plan

  • Visual: rendered README badge row shows three pre-release-aware badges (GitHub Release, GitHub Pre-Release, NuGet Release) — NuGet Pre-Release is gone.
  • Shield URL spot-check: https://img.shields.io/github/v/release/<owner>/<repo>?include_prereleases&filter=*-g* renders an NBGV pre-release tag, not the latest stable.
  • gh api repos/ptr727/ProjectTemplate/rulesets/15886282 | jq '.rules[] | select(.type=="required_status_checks")' shows strict_required_status_checks_policy: false (already verified).
  • Next pair of overlapping Dependabot/codegen PRs against develop both auto-merge without one stalling in BEHIND.

… (#84)

## Summary

- Closes #82 — drop strict "Require branches to be up to date before
merging" from the `develop` ruleset (already flipped on the live repo,
id 15886282). With strict on, two bot PRs against `develop` landing
within the same window left the second OPEN forever: the first merge
flipped it to `mergeStateStatus: BEHIND`, GitHub's auto-merge will not
fire while strict is on, and the merge-bot only enables auto-merge on
`opened`/`reopened` (never auto-updates bot branches). Squash mechanics,
linear history, textual-conflict detection, and the required `Check pull
request workflow status` still gate merges.
- Closes #83 — fix the GitHub Pre-Release shield with `&filter=*-g*`
(NBGV pre-release tags carry a `-g<sha>` suffix, stable tags don't);
drop the NuGet Pre-Release badge because shields.io's `vpre` endpoint
accepts no filter parameter and silently returns the latest stable
whenever one exists (the steady state after every release).
- AGENTS.md "Branching Model" + README.md "Rules / Rulesets" updated in
lockstep with the ruleset flip; both rulesets now omit the strict flag
for related-but-distinct reasons (documented inline).

## Test plan

- [ ] Visual: rendered README badge row shows three pre-release-aware
badges (GitHub Release, GitHub Pre-Release, NuGet Release) plus Docker
Latest/Develop and PyPI Release — `NuGet Pre-Release` is gone.
- [ ] Shield URL spot-check against a downstream consumer with current
pre-releases:
`https://img.shields.io/github/v/release/ptr727/LanguageTags?include_prereleases&filter=*-g*`
renders an NBGV pre-release tag (e.g. `1.2.40-g0f69a1b0a0`), not the
latest stable.
- [ ] `gh api repos/ptr727/ProjectTemplate/rulesets/15886282 | jq
'.rules[] | select(.type=="required_status_checks")'` shows
`strict_required_status_checks_policy: false` — already verified.
- [ ] Next pair of overlapping Dependabot/codegen PRs against `develop`
both auto-merge without one stalling in `BEHIND`.
Copilot AI review requested due to automatic review settings May 13, 2026 20:02

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the template documentation to reflect a ruleset configuration change for develop (disabling “Require branches to be up to date before merging” to prevent bot auto-merge stalls) and fixes the README’s pre-release badge behavior to correctly show NBGV pre-release tags.

Changes:

  • Update develop/main ruleset documentation to state the “up to date” requirement is intentionally disabled on both branches, with distinct rationales.
  • Fix the GitHub Pre-Release badge to filter for NBGV -g<sha> tags and remove the NuGet Pre-Release badge that can’t be filtered reliably.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
README.md Removes the NuGet pre-release badge, fixes GitHub pre-release badge filtering, and updates the “Rules / Rulesets” docs to match the intended ruleset behavior.
AGENTS.md Updates the “Branching Model” section to document that both branch rulesets omit the strict “up to date” requirement, with branch-specific reasoning.

@ptr727
ptr727 merged commit d72c5fc into main May 13, 2026
45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants