Skip to content

repair: resolve the merge conflict left in DECISIONS.md - #91

Merged
matthewpmunger merged 3 commits into
mainfrom
fix/decisions-conflict-markers
Aug 26, 2026
Merged

repair: resolve the merge conflict left in DECISIONS.md#91
matthewpmunger merged 3 commits into
mainfrom
fix/decisions-conflict-markers

Conversation

@matthewpmunger

Copy link
Copy Markdown
Collaborator

Base commit

  • Base sha: 70bfbb332b5018e6a26cc29b99541bcdc631af6b
  • Checks at that sha: greennpm run lint, npm run typecheck,
    npm test -- --run (103 files / 1324 tests), npm run build all pass.

What & why

A repair, claimed in REPAIRS.md before it was written, and labelled repair.

DECISIONS.md on main contains a literal unresolved merge conflict in its
intro paragraph — <<<<<<< HEAD, =======, >>>>>>> origin/main at lines
3–13. It was committed in aeeca8b ("Merge main (S8, PERSON fix) into S4") and
shipped through PR #88 with CI green, because no check reads markdown.

This is the fifth instance of the pattern R3 was written for, one layer out: two
sessions edited the same paragraph, the merge needed a human answer, and the
answer never came. Green CI is not a green main.

Changes

Three commits, deliberately separate:

  1. cf829fbthe claim. Takes the open row in REPAIRS.md, pushed and
    opened as a PR before the fix existed, so a second session finds the claim
    instead of writing a second fix. That is the failure mode this ledger came
    from: F5 and R2 both repaired F4's caller sweep, git found no conflict, took
    both copies, and fix: one PERSON caller per test file, not two #87 had to delete the duplicates.
  2. The repair itself, alone in its own commit so it can be reviewed or
    reverted without the bookkeeping. It keeps the un-counted wording (from S4,
    b9870b8) and deletes the stale side (from S8, 296106d), which still said
    "five previously-undefined product questions" and "a one-line edit". The file
    has six numbered decisions and decision 6 is not a one-line edit, so the
    surviving side is the one that is true. No decision's content is touched.
  3. The ledger row moves to Landed.

Verification

  • npm run lint passes (at base 70bfbb3)
  • npm run typecheck passes
  • npm test -- --run passes
  • npm run build passes
  • git grep -n '<<<<<<<\|=======\|>>>>>>>' finds no conflict markers left in
    the repo
  • n/a No route change: markdown only, no product code.

Notes

  • The repair label is the claim's visibility, not a bypass here: main is
    green, so base-branch-green passes on its own merits and nothing is waived.
  • Worth knowing that no check reads markdown. This PR does not add one — the
    defect was a merge left unresolved, not a missing check, and R3's rule is that
    a process defect gets a process fix. If we later want conflict markers to be
    impossible to commit, that is its own small change and its own argument.

Claiming before writing the fix, per REPAIRS.md. The row was logged unclaimed
when the ledger landed; this takes it. The PR opens now, labelled repair, so a
session that fetched a minute ago can still see the claim.
@matthewpmunger matthewpmunger added the repair Fixes breakage already on the base branch; claimed in REPAIRS.md; exempt from base-branch-green label Aug 26, 2026
aeeca8b committed the markers themselves -- <<<<<<< HEAD, =======, >>>>>>>
origin/main -- into the intro paragraph, and PR #88 shipped them green because
no check reads markdown.

Keeps the un-counted wording from S4 (b9870b8) and drops the S8 side (296106d),
which still said 'five previously-undefined product questions' and 'a one-line
edit'. There are six numbered decisions now, and decision 6 is not a one-line
edit. No decision's content changes; only the doubled paragraph.
@matthewpmunger
matthewpmunger merged commit 0f2c923 into main Aug 26, 2026
6 checks passed
@matthewpmunger
matthewpmunger deleted the fix/decisions-conflict-markers branch August 26, 2026 18:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

repair Fixes breakage already on the base branch; claimed in REPAIRS.md; exempt from base-branch-green

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant