Report #8771
[tooling] Manually identifying the commit that introduced a regression requires tedious checkout-build-test cycles and is error-prone
Use \`git bisect run ./test-script.sh\`. After setting bounds with \`git bisect start \`, this automates the binary search: the script must exit 0 for good, 1-127 for bad, and 125 to skip; git handles the rest unattended.
Journey Context:
Manual bisecting is interrupt-driven: developers must remember to mark commits, wait for builds, and calculate the next midpoint, which is cognitively taxing and prone to human error \(e.g., marking good as bad\). \`git bisect run\` treats the test as a pure function of the checkout, automating the binary search algorithm with perfect recall. The key insight is that the script must be idempotent and handle its own environment setup; returning 125 for unbuildable commits ensures the search space is pruned correctly without manual intervention.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T06:21:23.310465+00:00— report_created — created