Skip to content

docs(claude): add Conflict resolution discipline section (lessons from #62/#63) - #64

Merged
songkuan-zheng merged 1 commit into
ship/v1.87.0from
fix/claude-md-conflict-discipline
Jun 4, 2026
Merged

docs(claude): add Conflict resolution discipline section (lessons from #62/#63)#64
songkuan-zheng merged 1 commit into
ship/v1.87.0from
fix/claude-md-conflict-discipline

Conversation

@songkuan-zheng

Copy link
Copy Markdown
Collaborator

Codifies the 5 rules from the v1.87.0 bump aftermath. PR template gains required "Conflict resolutions" section.

Codifies the lessons from PRs #62, #63 — Wave 7's misuse of
`git checkout --theirs` on `networking.tsx` / `networking.test.ts`
silently dropped upstream's Memory CRUD additions and broke the Docker
build. Two follow-up PRs were needed to recover.

New `CLAUDE.md` section "Conflict resolution discipline" (placed right
after "Upstream sync cadence") with 5 rules:

1. Default to manual 3-way merge for any large file or upstream-active
   file (router.py, proxy_server.py, networking.tsx, auth/*, ...).
2. `--ours` is acceptable when our patch ships content via separate
   files (Wave 6c pattern).
3. `--theirs` is almost never correct; if tempted, instead take HEAD
   as the base and re-apply the cherry-pick's logic onto it.
4. After any conflict resolution, verify line-count sanity (`git diff
   --stat`), build/import smoke, and targeted tests — skipping any of
   these is what let PR #61 ship broken.
5. PR description must document the per-file strategy + verification
   evidence (line-count diff + build/test smoke outputs).

`.github/pull_request_template.md` gains a "Conflict resolutions"
section between "Tier classification" and "Relevant issues" so the
strategy + evidence land in every cherry-pick PR going forward.

Tier: B (internal infra / policy doc).
@songkuan-zheng
songkuan-zheng merged commit 2b9bb55 into ship/v1.87.0 Jun 4, 2026
@songkuan-zheng
songkuan-zheng deleted the fix/claude-md-conflict-discipline branch June 4, 2026 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant