FAILURE MAP
← Case archive

FA-75634 / Text diff and three-way merge / Member archive

Merge base selection: only one of several merge bases is returned · case 04

Criss-cross merges pick an arbitrary base and can report spurious conflicts or silently revert changes.

Member previewVariant 4 · 3 implementations · 10 checks per implementation

Case contract

Given a commit graph (commit -> parent list) and two commits, ancestors include the commit itself and all commits reachable through any parent. The merge bases are the common ancestors that are not ancestors of another common ancestor. Return them sorted.

Why this case matters

A three-way merge is only as good as its base; criss-cross histories legitimately have several best common ancestors.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
criss-cross has two merge bases["X1"]["X1", "Y1"]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗