MetaMask / MetaMask/create-release-branch

Monorepo flow: Roll back all filesystem changes if error encountered

Open
#17 0 comments 0 reactions 0 assignees View on GitHub
enhancement team-core-platform
Dominant language
TypeScript
Stars
9
Forks
7
Avg merge
51m
Merged PRs (30d)
2

Description

It is possible for an error to occur while making changes to a monorepo. For instance, as we are updating the changelog for each package, `auto-changelog` will call `git fetch --tags` to get the latest tags for the repo. Admittedly, it should probably only do this once at the beginning, but regardless, if this fails for a particular package, but we have made changes to other packages, then the tool will completely abort and leave the repo in a dirty state. We should see if we can roll back all of the filesystem changes if this occurs.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the monorepo release flow that updates each package's changelog and invokes auto-changelog, including its git fetch --tags call. Define the failure path and verify that an error after earlier package changes leaves the filesystem unchanged; the issue does not mention specific files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, typescript
Domain
cli, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.