tiny-pilot / tiny-pilot/tinypilot

Github Action: PR bot should merge changes in update branch

Open
#844 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
3.5k
Forks
291
PR merge metrics
No merged PRs in 30d

Description

The TinyPilot PR bot will now automatically create PRs into the Pro repo any time we merge new changes into the Community repo (this repo). One slowdown in the workflow is that the branch it creates into Github Pro shows as out of date with Github Pro's master branch because of the hard reset in the Github Action.

image

The workaround is to click "Update branch" in the PR to merge the latest changes from the Pro's master branch. If there are no merge conflicts, you can do this entirely through the web UI.

It would be good if we could eliminate this friction by trying to merge automatically in the Github Action. This is a bit tricky because the bot can't resolve merge conflicts if they exist, but maybe the following workflow is possible:

  1. Branch from Pro master branch
  2. Pull from Community master branch
  3. If there are merge conflicts abort the pull and hard reset to the Community master branch
  4. Create the PR
  5. If there were merge conflicts, developer manually resolves them during the PR

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with .github/workflows/merge-pro.yml, especially the hard reset linked in the issue, and read the workflow steps that create the Pro pull request. Test the proposed branch-and-merge flow with both conflict-free and conflicting changes; done means the action incorporates Pro master when possible and still creates a PR for manual conflict resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, github-actions, python
Domain
ci-cd, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.