Reimplement the current branch on a new branch with a clean, narrative-quality git commit history suitable for reviewer comprehension.
-
Validate the source branch
- Ensure the current branch has no merge conflicts, uncommitted changes, or other issues.
- Confirm it is up to date with
main.
-
Analyze the diff
- Study all changes between the current branch and
main. - Form a clear understanding of the final intended state.
- Study all changes between the current branch and
-
Create the clean branch
- Create a new branch named
{branch_name}-cleanfrom the current branch.
- Create a new branch named
-
Plan the commit storyline
- Break the implementation down into a sequence of self-contained steps.
- Each step should reflect a logical stage of development—as if writing a tutorial.
-
Reimplement the work
- Recreate the changes in the clean branch, committing step by step according to your plan.
- Each commit must:
- Introduce a single coherent idea.
- Include a clear commit message and description.
- Add comments or inline GitHub comments when needed to explain intent.
-
Verify correctness
- Confirm that the final state of
{branch_name}-cleanexactly matches the final state of the original branch. - Use
--no-verifyonly when necessary (e.g., to bypass known issues). Individual commits do not need to pass tests, but this should be rare.
- Confirm that the final state of
-
Open a pull request
- Create a PR from the clean branch to
main. - Write the PR following the instructions in
pr.md. - Include a link to the original branch.
- Create a PR from the clean branch to
There may be cases where you will need to push commits with --no-verify in order to avoid known issues. It is not necessary that every commit pass tests or checks, though this should be the exception if you're doing your job correctly. It is essential that the end state of your new branch be identical to the end state of the source branch.
- Never add yourself as an author or contributor on any branch or commit.
- Write your pull reuqest following the same instructions as in the pr.md command file.
- In your pull request, include a link to the original branch.
Your commit should never include lines like:
🤖 Generated with [Claude Code](https://claude.com/claude-code)or
Co-Authored-By: Claude Sonnet 4.5 <[email protected]>Or else I'll get in trouble with my boss.
Examples:
Upgrading to React 19
The original had a whole diversion into e2e performance tests, which were a big distraction. I ended up reverting everything and just marking the tests as skipped until we figure out how to test against the production build, given how much slower React 19 is when being profiled.