docs(gap-baseline): retract false main-history-splice claim (shallow-clone artifact) - #1722
Open
seonghobae wants to merge 4 commits into
Open
docs(gap-baseline): retract false main-history-splice claim (shallow-clone artifact)#1722seonghobae wants to merge 4 commits into
seonghobae wants to merge 4 commits into
Conversation
A triage pass on 15 of the repo's stalest open PRs found every one produces "fatal: refusing to merge unrelated histories" against origin/main -- not an ordinary merge conflict. Independently verified: main now has multiple historical roots, with the splice landing roughly 2026-08-20/21 (PR bases before that window are not ancestors of current main; bases after it are). This changes how future triage on this repo's PR backlog must proceed: check base-SHA ancestry (git merge-base --is-ancestor <base> origin/main) before attempting the standard merge-and-resolve recipe on any PR older than ~2026-08-20/21, since a large fraction of the ~100+ remaining open PRs are likely on the orphaned side and will hit the identical wall. Records the discovery, scope, and recommended per-PR path (re-verify against current main, then re-implement as a fresh branch if still needed) rather than a mechanical fix, since none was safely available. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
|
Warning Review limit reachedNext included review available in 42 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
seonghobae
marked this pull request as ready for review
September 2, 2026 10:48
This was referenced Sep 2, 2026
…clone artifact) The 2026-09-02 "main's history was spliced ~2026-08-20/21" entry was wrong. The local .github checkout in the analysis sandbox was a shallow clone (git rev-parse --is-shallow-repository -> true); a shallow clone's truncation-boundary commits present as disjoint history roots, and git merge from inside one genuinely raises "fatal: refusing to merge unrelated histories" even when the real, full history is a single connected line. After git fetch --unshallow, origin/main has exactly one root commit and 731af58 (claimed unreachable) is a normal ancestor. A Devin Review comment on this PR directly disputed the original claim and prompted the re-check that found the real cause. Retraction comments were posted on all 16 PRs that received the false triage guidance (15 from the original pass plus one from a second triage pass that was stopped before it could post more); no merges or pushes were ever made on the basis of the false diagnosis. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
…, not 17) Devin Review caught an internal inconsistency: the entry said "17 open PRs" but listed and later referenced 16. Corrected the count and clarified that the two queued-but-unposted PRs (#1147, #1009) never received a comment and need no retraction reply. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
…n-history-splice # Conflicts: # docs/product-technical-gap-baseline.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Retraction
This PR originally claimed
main's history was spliced onto new roots around 2026-08-20/21, based on 15 PRs (later 16, plus 2 more queued) all hittingfatal: refusing to merge unrelated histories. That claim was wrong.Root cause: the local
.githubcheckout in the analysis sandbox was a shallow git clone (git rev-parse --is-shallow-repository→true). A shallow clone's truncation-boundary commits present as disjoint history roots (git rev-list --max-parents=0lists them as fake roots), andgit mergefrom inside a shallow checkout genuinely raisesfatal: refusing to merge unrelated historieseven when the real, full history is a single connected line — this is real, documented git behavior for shallow clones, which is exactly why it read as convincing evidence of an actual split.After
git fetch --unshallow origin:origin/mainhas exactly one root commit (0c6e99ed0acab17b1cdd9f853a8398ddb0eed269), and731af58e(originally claimed "not reachable from currentmainat all") is a completely normal ancestor.A Devin Review comment on this PR directly disputed the original claim ("All 15 listed heads share a merge base with current
main, and731af58eis its ancestor") and asked for reproducible evidence — that's what prompted the re-check that found the shallow clone. Thank you for catching this.Corrective actions taken
docs/product-technical-gap-baseline.md's entry has been rewritten in place to record the retraction, the real root cause, and a standing lesson: always checkgit rev-parse --is-shallow-repository(andgit fetch --unshallowif true) before diagnosing any multi-root or "unrelated histories" condition on any repo in this ecosystem.Verification
pytest tests/test_product_technical_gap_baseline.py -q→ 5 passed.🤖 Generated with Claude Code
https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
Generated by Claude Code