FAILURE MAP
← Case archive

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

Conflict resolution reuse: a conflict with swapped sides is not recognized · case 04

The same conflict seen from the other branch must be resolved by hand again.

Member previewVariant 4 · 3 implementations · 7 checks per implementation

Case contract

Scan conflict blocks ("<<<<<<<" optionally followed by a label, optional "|||||||" base section, "=======", ">>>>>>>" optionally labelled). A block matches a recorded [side1, side2, resolution] when its two sides equal the recorded sides in either order; base lines are ignored. Matched blocks are replaced by the resolution; unmatched blocks are re-emitted as bare "<<<<<<<", ours, "=======", theirs, ">>>>>>>" and counted. Return lines and the unresolved count.

Why this case matters

Reusing recorded conflict resolutions saves repeating the same manual merge during rebases.

One recorded failure

Sample boundary fixture

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

Boundary fixtureActualExpectedOutcome
sides swapped still match{"lines": ["\u003c\u003c\u003c\u003c\u003c\u003c\u003c", "x = 2", "=======", "x = 1", "\u003e\u003e\u003e\u003e\u003e\u003e\u003e"], "unresolved": 1}{"lines": ["x = 3"], "unresolved": 0}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 ↗