diff --git a/changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack.mdx b/changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack.mdx new file mode 100644 index 00000000..2a434565 --- /dev/null +++ b/changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack.mdx @@ -0,0 +1,19 @@ +--- +title: "Merge Queue: Move a Stack Through the Queue as One Unit with /trunk stack" +description: "Comment /trunk stack on a chain of dependent pull requests and Trunk merges the whole stack through the queue together." +date: 2026-04-30 +category: Merge Queue +type: new-feature +--- + +**Comment `/trunk stack` on any PR in a dependent chain and Trunk merges the whole stack through the queue as a single unit.** + +A stack is a chain of PRs where each one's base is the PR below it. Instead of rebasing each PR onto main as the stack progresses or merging bottom-up by hand, `/trunk stack` combines the chain into one stacked PR that the queue tests and merges together. When that stacked PR merges, every member PR auto-closes since its code is already in the target branch. + +You can tell a stack apart in the dashboard at a glance: + +* A **Stacked** pill marks stacked PRs in the Queue and Graph views. +* The merge item detail page header lists every member PR and its title. +* Stack-specific cancellation reasons show up in the conclusion chart, so you can see exactly why a stack left the queue. + +[Read the docs](https://docs.trunk.io/merge-queue/using-the-queue/stacked-pull-requests) to learn more. diff --git a/changelog/index.mdx b/changelog/index.mdx index 05e887db..3f3ba11b 100644 --- a/changelog/index.mdx +++ b/changelog/index.mdx @@ -52,6 +52,12 @@ rss: true ### April 2026 + + **[Merge Queue: Move a Stack Through the Queue as One Unit with /trunk stack](/changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack)** + + Comment `/trunk stack` on a chain of dependent pull requests and Trunk merges the whole stack through the queue together. + + **[Merge Queue: Chrome Extension](/changelog/2026-04-30-merge-queue-chrome-extension)** diff --git a/docs.json b/docs.json index 763b83c9..dd61bfba 100644 --- a/docs.json +++ b/docs.json @@ -622,6 +622,7 @@ "changelog/2026-05-18-flaky-tests-failure-count-monitor", "changelog/2026-05-18-flaky-tests-monitor-label-actions", "changelog/2026-05-18-flaky-tests-test-labels", + "changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack", "changelog/2026-04-30-merge-queue-chrome-extension", "changelog/2026-04-21-merge-queue-drill-down-into-merge-metrics", "changelog/2026-04-13-merge-queue-terraform-provider", diff --git a/merge-queue/changelog.mdx b/merge-queue/changelog.mdx index dd0518d4..1fdacda9 100644 --- a/merge-queue/changelog.mdx +++ b/merge-queue/changelog.mdx @@ -22,6 +22,12 @@ rss: true ### April 2026 + + **[Merge Queue: Move a Stack Through the Queue as One Unit with /trunk stack](/changelog/2026-04-30-merge-queue-stacked-prs-trunk-stack)** + + Comment `/trunk stack` on a chain of dependent pull requests and Trunk merges the whole stack through the queue together. + + **[Merge Queue: Chrome Extension](/changelog/2026-04-30-merge-queue-chrome-extension)**