Fix pre-release badges (#83) and develop ruleset auto-merge stall (#82) - #84
Merged
ptr727 merged 1 commit intoMay 13, 2026
Merged
Conversation
Issue #82: Drop "Require branches to be up to date before merging" from develop ruleset. With strict on, two bot PRs against develop landing in the same window leave the second OPEN with all checks green — GitHub's auto-merge will not fire while strict is on, and the merge-bot only enables auto-merge on opened/reopened. Squash mechanics, linear history, textual-conflict detection, and the required status check still gate merges. Ruleset already flipped on the live repo (id 15886282). Issue #83: README's GitHub Pre-Release shield now uses filter=*-g* to select the latest NBGV pre-release tag (which carries the -g<sha> suffix) instead of the latest release. The NuGet Pre-Release badge is dropped — shields.io's vpre endpoint accepts no filter parameter and silently returns the latest stable whenever one exists, which is the steady state after every release.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates repository documentation and README badges to reflect the current branch ruleset behavior and correct pre-release badge semantics.
Changes:
- Removes the NuGet pre-release badge and fixes the GitHub pre-release shield filter.
- Documents why both
developandmainrulesets omit the “Require branches to be up to date before merging” setting. - Keeps README and AGENTS branching/ruleset guidance aligned.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
README.md | Updates badge list/link definitions and documents the revised ruleset configuration. |
AGENTS.md | Updates the authoritative branching model guidance for strict status check behavior on both branches. |
Uh oh!
There was an error while loading. Please reload this page.
ptr727
deleted the
fix-issues-82-83-pre-release-badges-and-develop-ruleset
branch
May 13, 2026 20:01
ptr727
restored the
fix-issues-82-83-pre-release-badges-and-develop-ruleset
branch
May 13, 2026 20:03
ptr727
deleted the
fix-issues-82-83-pre-release-badges-and-develop-ruleset
branch
July 7, 2026 21:05
ptr727 added a commit
that referenced
this pull request
Aug 28, 2026
## Summary `catalog/snippets/configs/dependabot.yml`'s reference config grouped every package in an ecosystem into one catch-all PR (`patterns: ["*"]`), with no exclusion for the fleet's own lint/format toolchain packages. A formatter or linter version bump can change its own output or rule set and start flagging previously-compliant code the bump never touched, so bundling it into the catch-all group means one tool's self-bump can block an arbitrary number of unrelated, otherwise-mergeable dependency bumps together, indefinitely, with no obvious signal why. ## Evidence Investigated live via `#1055` ("Dependabot PRs stuck BLOCKED despite auto-merge enabled and all checks green"). That issue's premise doesn't hold — every affected PR checked has a real, currently-failing required check, so `mergeStateStatus: BLOCKED` is GitHub behaving correctly. One of the confirmed root causes is this hub template gap: - `ptr727/PhotoCleaner#81`-`#84`: a 13-update `nuget-deps` group bump included `csharpier` 1.2.6 -> 1.3.0. The new csharpier version reformats raw string literals differently, so `dotnet csharpier check .` now flags pre-existing, previously-compliant code (`PhotoCleaner/Database.cs`) that the bump never touched — holding the other 12 unrelated, harmless updates in the same PR hostage. Full findings (this repo and two others) posted as a comment on #1055. ## Change Add `exclude-patterns` to the `nuget-deps` and `pypi-deps` groups, naming the fleet-standard toolchain package names per `.agents/skills/dotnet-codestyle/SKILL.md` and `.agents/skills/python-codestyle/SKILL.md`: - `nuget-deps`: `csharpier`, `husky`, `dotnet-outdated-tool` - `pypi-deps`: `ruff`, `pyright`, `mypy` Each excluded package falls out of the catch-all group and gets its own individual PR instead, diagnosable and mergeable (or holdable) on its own. `actions-deps` is left unchanged — the third repo in #1055's report (ESPHome-Config) hit a different, already-tracked cause (`docs/eol-lf-rollout.md`), not a grouping/hostage problem. ## Verification - `python3 -c "import yaml; yaml.safe_load(open('catalog/snippets/configs/dependabot.yml'))"` — valid YAML. - `scripts/prose_lint.py` and `scripts/repo_gate.py` — both clean. - Pre-commit hooks ran clean on commit. 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Documented dependency update exclusions for .NET and Python tooling. * Clarified which development tools are excluded from automated update groups across main and develop branches. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
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 freeto 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.
Summary
developruleset (already flipped on the live repo, id 15886282). With strict on, two bot PRs againstdeveloplanding within the same window left the second OPEN forever: the first merge flipped it tomergeStateStatus: BEHIND, GitHub's auto-merge will not fire while strict is on, and the merge-bot only enables auto-merge onopened/reopened(never auto-updates bot branches). Squash mechanics, linear history, textual-conflict detection, and the requiredCheck pull request workflow statusstill gate merges.&filter=*-g*(NBGV pre-release tags carry a-g<sha>suffix, stable tags don't); drop the NuGet Pre-Release badge because shields.io'svpreendpoint accepts no filter parameter and silently returns the latest stable whenever one exists (the steady state after every release).Test plan
NuGet Pre-Releaseis gone.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")'showsstrict_required_status_checks_policy: false— already verified.developboth auto-merge without one stalling inBEHIND.