Last Green Tag First: Bisect an OSS Regression Before the Patch Review
Description and use
A step‑by‑step workflow that treats the last release tag as a control group, verifies HEAD, and uses git bisect with a deterministic oracle to pinpoint the regression‑causing commit, reducing unnecessary code changes and speeding reviews.
Problem
Contributors often patch HEAD based on issue titles, leading to unnecessary changes and reviewer burden when the regression actually originates from an earlier commit.
Outcome
The workflow reduces unnecessary code changes, speeds up reviews, and provides a clear, reproducible artifact (bisect log) that reviewers can replay.
Workflow
- 1. Verify the last release tag passes the oracle; if not, the issue is not a regression.
- 2. Verify HEAD fails the oracle; if not, the bug is not present.
- 3. Run
git bisectwith a deterministic oracle script to locate the bad commit. - 4. Record the bisect log and add
git show --statandgit tag --containsoutput to the PR. - 5. Use the bisect log as evidence for reviewers to replay the test without local setup.
Evidence
A well‑meaning contributor asked a coding model for a patch and received a thirty‑line rewrite of the process launcher.
The script below is meant to live on the topic branch, or to be pasted into the pull request body.
- Record date: 2026-09-15T16:02:22.054Z