MetaMask / MetaMask/metamask-extension

Create stable merging automation

Open
#31,337 0 comments 0 reactions 0 assignees View on GitHub
team-dev-ops
Dominant language
TypeScript
Stars
13.2k
Forks
5.6k
Avg merge
2d 5h
Merged PRs (30d)
451

Description

### What is this about?

Description:

We need a GitHub Action that can be triggered via a comment on a PR (e.g., @metamaskbot merge release). This action should be executed by a privileged GitHub App or bot user (metamaskbot) and perform the following:

Linked issue: https://github.com/MetaMask/MetaMask-planning/issues/4212

Requirements:

Trigger:

- The action should run when a specific comment is posted on a PR, such as: `@metamaskbot merge release`

Validation:

- The PR must be approved (i.e., it has the required number of reviewer approvals).
- All required CI checks must be passing.

Merge Strategy:

- If the above conditions are met, the bot should perform a "merge commit" (not a squash or rebase).
- The target branch should be stable.
- This action is specifically intended for merging release branches into `stable`.

Notes:

Ensure that only metamaskbot can execute the merge to maintain control and auditability.
The action should fail gracefully and comment on the PR if validation fails (e.g., missing approval, failing CI).
Bonus: Add a confirmation comment after a successful merge.

### Scenario

_No response_

### Design

_No response_

### Technical Details

_No response_

### Threat Modeling Framework

_No response_

### Acceptance Criteria

_No response_

### Stakeholder review needed before the work gets merged

- [x] Engineering (needed in most cases)
- [ ] Design
- [ ] Product
- [ ] QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
- [ ] Security
- [ ] Legal
- [ ] Marketing
- [ ] Management (please specify)
- [ ] Other (please specify)

### References

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the linked planning issue and the comment-triggered GitHub Action requirements. Done means only metamaskbot can merge approved release branches into stable with passing CI, while validation failures receive a PR comment and successful merges may receive confirmation.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd, devops, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.