Skip to content

ci: open changelog PR instead of pushing to protected branch [4.x]#125

Merged
ManukMinasyan merged 4 commits into
4.xfrom
fix/changelog-workflow-pr
May 12, 2026
Merged

ci: open changelog PR instead of pushing to protected branch [4.x]#125
ManukMinasyan merged 4 commits into
4.xfrom
fix/changelog-workflow-pr

Conversation

@ManukMinasyan
Copy link
Copy Markdown
Contributor

Summary

  • The release-triggered Changelog workflow pushes CHANGELOG.md straight to 4.x via stefanzweifel/git-auto-commit-action. Branch protection ("Changes must be made through a pull request") rejects that push, so every release since v4.0.10 has shipped without its CHANGELOG entry — most recent failure: https://github.com/relaticle/flowforge/actions/runs/25747807718
  • Swap the commit-and-push step for peter-evans/create-pull-request, which opens a PR from chore/changelog-<tag> with the skip-changelog label, then enables auto-merge (squash) so the PR lands without human intervention
  • 4.x requires 0 reviews and has no required status checks, so the auto-merge clears immediately
  • Added the skip-changelog label to the repo (referenced in .github/release.yml but didn't exist yet) so these PRs stay out of future release notes

Test plan

  • Cut a patch release after merge; verify the Changelog workflow opens and auto-merges a chore/changelog-vX.Y.Z PR
  • Confirm CHANGELOG.md on 4.x gains the new release entry
  • Confirm the changelog PR is excluded from the next release's auto-generated notes

eduardoribeirodev and others added 4 commits May 11, 2026 22:17
According to the documentation, the CreateAction should receive the 'column' identifier inside the $arguments array in the mutateDataUsing method. This fix ensures the column argument is properly passed down to the action, allowing developers to know which column triggered the creation.
…ctions

Reproduces issue #124: a CreateAction registered via columnActions() on a
BoardResourcePage previously dropped the wire:click `column` argument, so
mutateDataUsing() callbacks received an empty arguments array. The fix in
0a7df87 now mirrors upstream InteractsWithActions::resolveActions() and
propagates arguments via mergeArguments().

Adds:
- TestResource + TestBoardResourcePage fixtures
- SchemasServiceProvider registration in TestCase (needed for
  assertSchemaExists macro)
- Pest test using Filament's TestAction macro to call the column action
  with column=in_progress and assert the created Task lands in the right
  column
mutateFormDataUsing was deprecated in Filament 5 in favour of
mutateDataUsing. Both go through the same code path, so this is a pure
naming swap.
The release-triggered Changelog workflow was pushing the CHANGELOG.md
update directly to 4.x via stefanzweifel/git-auto-commit-action. Branch
protection on 4.x ("Changes must be made through a pull request") rejects
that push, so every release since v4.0.10 has shipped without its
CHANGELOG entry.

Swap the commit-and-push step for peter-evans/create-pull-request, which
opens a PR from chore/changelog-<tag> with the skip-changelog label, then
enable auto-merge (squash) so the PR lands without human intervention.
4.x has no required status checks and 0 required reviews, so auto-merge
clears immediately.

Also tag the PR with skip-changelog so it's excluded from the next
release's auto-generated notes (per .github/release.yml).
Copilot AI review requested due to automatic review settings May 12, 2026 16:39
@ManukMinasyan ManukMinasyan merged commit c283b16 into 4.x May 12, 2026
6 checks passed
ManukMinasyan added a commit that referenced this pull request May 12, 2026
The release-triggered Changelog workflow has been silently failing since
v4.0.10 because it pushed directly to the protected 4.x branch. The
workflow itself is now fixed in #125; this commit backfills the three
missing entries from the existing GitHub release notes so CHANGELOG.md
stays in sync with the published releases.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

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 release-triggered changelog automation to avoid pushing directly to a protected branch by opening an auto-merged PR instead. It also includes library/test/doc changes to ensure Filament column action arguments are properly propagated into mutateDataUsing.

Changes:

  • Update .github/workflows/changelog.yml to use peter-evans/create-pull-request + gh pr merge --auto --squash instead of direct pushes.
  • Update BoardResourcePage::resolveActions() to (a) guard table-action resolution behind HasTable, (b) merge action arguments, and (c) only cache mounted action schemas when mounting.
  • Add test fixtures + a Pest test validating column action arguments reach mutateDataUsing, and update docs examples accordingly.

Reviewed changes

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

Show a summary per file
File Description
.github/workflows/changelog.yml Switch changelog updates to PR-based flow + attempt auto-merge.
src/BoardResourcePage.php Fix/adjust action resolution for board/table actions; propagate action arguments.
tests/TestCase.php Register Filament Schemas service provider for the test environment.
tests/Fixtures/TestResource.php Add a Filament Resource fixture for resource-page based board testing.
tests/Fixtures/TestBoardResourcePage.php Add a BoardResourcePage fixture with a column CreateAction using mutateDataUsing.
tests/Fixtures/TestPanelProvider.php Register the new test resource with the test panel.
tests/Feature/BoardResourcePageColumnActionTest.php New feature test asserting column arguments are received inside mutateDataUsing.
docs/content/2.essentials/2.customization.md Update example to use mutateDataUsing.
docs/content/2.essentials/5.troubleshooting.md Update example to use mutateDataUsing.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +38 to +42
- name: Open changelog PR
id: cpr
uses: peter-evans/create-pull-request@v7
with:
branch: ${{ steps.branch.outputs.name }}
commit_message: Update CHANGELOG
file_pattern: CHANGELOG.md
base: ${{ steps.branch.outputs.name }}
labels: skip-changelog

- name: Enable auto-merge
if: steps.cpr.outputs.pull-request-operation == 'created'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants