Repository navigation
feat(service,features,desktop): a merge box on the Pull request tab, merging as the member who presses - #3294
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
luke-agent
Bot
changed the base branch from
main
to
feat/pull-request-member-writes
October 17, 2026 01:41
Contributor
…merging as the member who presses The header's merge line now ends in the one thing that may be done from where an open pull request stands: Merge by a method the repository allows (asked first, the method chosen kept per repository), Enable auto-merge while checks run where the repository allows it, Merge when ready on a base merged through a merge queue, or Disable auto-merge and Remove from queue once one was asked for. Each is made on GitHub as the member through the W1 seam, a merge and auto-merge against the head the header read. The header's read carries how the pull request may be merged, read in one GraphQL query on the App's token beside it, and a blocked merge says what it waits on. Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
…stion's act is red Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
luke-agent
Bot
force-pushed
the
feat/pull-request-merge-box
branch
from
October 17, 2026 01:54
e773173 to
9e5f60d
Compare
…ub draws Merge Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
github-merge-queue
Bot
removed this pull request from the merge queue due to a conflict with the base branch
Oct 17, 2026
Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
github-merge-queue
Bot
removed this pull request from the merge queue due to a conflict with the base branch
Oct 18, 2026
Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
…acy aliases gone Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
Contributor
|
The merge box rebuilt on main after the move to |
14 tasks done
github-merge-queue
Bot
removed this pull request from the merge queue due to a conflict with the base branch
Oct 18, 2026
Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
luke-agent Bot
added a commit
that referenced
this pull request
Oct 18, 2026
…ction-writes Brings in main's merge box (#3294). The reaction write joins its one dispatch (writeOf); REACTION moves down into pull-request-write-wire.ts, since coding-agent-wire.ts now imports that module and the old direction closed a cycle; and the overview's explicit private, no-store goes, since every hosted answer now sends it (#3355). Co-authored-by: luke-agent[bot] <339870089+luke-agent[bot]@users.noreply.github.com>
This branch was successfully deployed
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 free
to 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.











A2 of the "Act on the PR" stack, stacked on #3272 (W1: writes as the member). It adds a stage-cli-style merge box to the Pull request tab's fixed header.
What the box offers
The header's merge line ends in the one thing that may be done from where an open pull request stands:
gh pr merge --autodoes.Each press goes through W1's seam (
memberPullRequestWrite), so it is made on GitHub as the member who presses, using GraphQLmergePullRequest,enablePullRequestAutoMerge,disablePullRequestAutoMergeordequeuePullRequest. GitHub's refusals (branch protection, a moved head, a method a ruleset forbids) show in GitHub's own words on W1's line.The read
The header's read (
/overview/pull-request) now carries an optionalmerging, read in one GraphQL query on the App's installation token beside the REST read. It holds:If GitHub won't answer that query,
mergingis left out and the header stands without the box. The methods are the repository's settings only. A ruleset that narrows them is left to GitHub to refuse, in its own words.Goldens
Recorded with
LUKE_UPDATE_FIXTURES=1:pull-request-write-wire-pullRequestActionRequestSchemaandcoding-agent-view-codingAgentPullRequestActionParamsSchemagain the merge, enable-auto-merge, disable-auto-merge and dequeue actions.pull-request-write-wire-mergeMethodSchemais new.coding-agent-wire-andcoding-agent-view-codingAgentOverviewPullRequestAnswer…gain the optionalmerging.Tests
mergingread on the App's token, and stands without it when the query fails.PRIVACY.mdsays what the merge read reads, and lists Merge and Enable auto-merge among the button presses made as you.Checks
The full
pnpm check:affectedruns out of memory in the sandbox. I ran the parts separately instead, and all passed: per-packagetsc,oxlint,biome,knip, and the affected vitest files.Screenshots follow in a comment.
Made with Luke
Summary by cubic
Adds a merge box to the Pull request tab's fixed header so members can merge a pull request or set up auto-merge from where it stands, with each action made on GitHub as the member who presses, through the existing write seam.
mergingdata from one GraphQL query on the App's token and stands without the box when GitHub won't answer it; GitHub's refusals, like branch protection or a forbidden method, come through in GitHub's own words.Written for commit 277c448. Summary will update on new commits.