Skip to content

release: v4.22.1 - scope coverage PR-body injection to release PRs,… - #240

Merged
Shinrai merged 4 commits into
masterfrom
next
Aug 20, 2026
Merged

release: v4.22.1 - scope coverage PR-body injection to release PRs,…#240
Shinrai merged 4 commits into
masterfrom
next

Conversation

@cldmv-bot

@cldmv-bot cldmv-bot Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

🚀 What's Changed

💥 Breaking Changes

No breaking changes

✨ Features

No new features

🐛 Bug Fixes

📦 Dependencies

No dependency updates

🔧 Other Changes

No other changes

👥 Contributors

Shinrai and others added 4 commits August 20, 2026 15:43
…e filename per branch

The coverage-pr-comment job in workflow-ci.yml gated only on
github.event_name == 'pull_request', so every feature PR into next got
whole-repo coverage injected into its description alongside the two
persistent release PRs. Key on github.head_ref instead, which is only
'next'/'hotfixes' for those release PRs.

Also derive badge_filename per branch (coverage.json for the default
branch, coverage-<branch>.json otherwise) so a future widening of the
coverage-badge trigger to next/hotfixes can't clobber master's badge
JSON with theirs. A caller-supplied non-default filename still wins.

Fixes #238
…list badge filenames

Addresses Copilot review on PR #239:

- coverage-pr-comment gated only on head_ref == 'next'/'hotfixes', which a
  fork PR could spoof by naming its own head branch 'next'/'hotfixes' and
  running the job (pull-requests: write + bot secrets) against untrusted
  code. Add a same-repo check.

- badge_filename derived via format('coverage-{0}.json', github.ref_name)
  against an arbitrary ref; GitHub Actions expressions have no
  string-replace function, so a branch name containing '/' would flow
  straight into the filename and break push-badge (no intermediate
  directory creation). Replace the open-ended format() with an explicit
  allowlist of the two known integration branch names (both guaranteed
  slash-free), falling back to the existing coverage.json otherwise.
@cldmv-bot cldmv-bot Bot added ! release → master v4 flow: persistent next → master release PR (carries the next feature release) release Marks a pull request as a pending release — merge to publish a new version semver: patch This release contains only backwards-compatible bug fixes type: bug Something is broken or not behaving as expected type: ci Changes to CI workflows, actions, or build pipelines type: config Changes to repository or project configuration files labels Aug 20, 2026
@Shinrai
Shinrai enabled auto-merge (squash) August 20, 2026 23:11
@Shinrai
Shinrai merged commit 968bfdd into master Aug 20, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

! release → master v4 flow: persistent next → master release PR (carries the next feature release) release Marks a pull request as a pending release — merge to publish a new version semver: patch This release contains only backwards-compatible bug fixes type: bug Something is broken or not behaving as expected type: ci Changes to CI workflows, actions, or build pipelines type: config Changes to repository or project configuration files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant