FA-75468 / Text diff and three-way merge / Member archive
Conflict marker resolution: longer runs of marker characters open conflicts · case 03
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Case contract
Scan lines for conflict blocks. A marker is exactly seven marker characters, alone or followed by a space and a label: "<" opens, "|" starts the optional base section, a line of exactly seven "=" separates, ">" closes. Each closed block is replaced by ours, theirs, ours followed by theirs (union, no dedupe) or base. An unclosed block yields {"error": "unterminated conflict"}. Return the lines and the number of conflicts.
Why this case matters
Merge drivers and editors resolve conflict blocks by parsing marker lines that must not be confused with file content.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| long marker-like content lines | {"conflicts": 1, "lines": ["\u003c\u003c\u003c\u003c\u003c\u003c\u003c ours", "a", "\u003e\u003e\u003e\u003e\u003e\u003e\u003e\u003e"]} | {"conflicts": 1, "lines": ["\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c banner", "a", "\u003e\u003e\u003e\u003e\u003e\u003e\u003e\u003e"]} | 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 ↗