FA-75398 / Text diff and three-way merge / Member archive
Unified hunk builder: single-line ranges print an explicit count · case 03
Headers read "-3,1" where the convention is "-3".
Case contract
Given a full edit script ([tag, line], tags " ", "-", "+") and a context width C, group changes whose separating equal lines number at most 2C, extend each group by up to C lines on both sides, and emit a header "@@ -a,b +c,d @@" followed by the hunk lines. A range start is the 1-based first line, or the line before when the count is 0; a count of 1 is omitted.
Why this case matters
Unified diff output depends on hunk grouping, context trimming and the header conventions for empty and single-line ranges.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| pure deletion of every line | ["@@ -1,1 +0,0 @@", "-gone"] | ["@@ -1 +0,0 @@", "-gone"] | 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 ↗