From f6aa70a9b6a9c2cdb6c6390848951c185a79b81b Mon Sep 17 00:00:00 2001 From: Madhura68 Date: Mon, 4 May 2026 19:35:42 +0200 Subject: [PATCH] docs(runbook): clarify merge-conflict behavior for PR-per-batch flow Add FAQ subsection explaining that stories within the same batch don't conflict (linear commits on shared branch), while parallel batches may require rebase or serial PRs. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/runbooks/branch-and-commit.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/runbooks/branch-and-commit.md b/docs/runbooks/branch-and-commit.md index 09bf0da..0e5ddbc 100644 --- a/docs/runbooks/branch-and-commit.md +++ b/docs/runbooks/branch-and-commit.md @@ -86,6 +86,19 @@ mcp____list_deployments **Race-condition scenario**: als een nieuwe taak in de queue terechtkomt terwijl de agent de queue-check uitvoert, kan er een tweede push volgen. Dit is acceptabel — de tweede push triggert een tweede deployment voor de resterende commits. Documenteer dit afwijkend gedrag in de PR-description als het zich voordoet. +### Merge conflicten — wanneer wel/niet? + +Een veelgestelde vraag: "als meerdere stories dezelfde bestanden raken, krijgen we dan geen merge conflicten?" + +**Binnen dezelfde batch (zelfde branch):** nee. Story B commit bovenop Story A op dezelfde branch — lineair, geen conflict. Dit is precies waarom de workflow één branch per batch voorschrijft in plaats van één per story. + +**Tussen parallelle batches (verschillende branches richting `main`):** ja, mogelijk. Als batch X en batch Y allebei dezelfde file aanpassen en allebei willen mergen, krijgt de tweede een rebase-conflict. + +Mitigaties: +1. **Seriële PRs** — start een nieuwe batch pas als de vorige PR gemerged is. De MCP `get_claude_context`-flow stuurt hier al op (één story tegelijk per agent). +2. **Slim batchen** — stories die hetzelfde domein raken (bv. alles rond Sprint Board) horen in dezelfde batch, niet verspreid over batches. +3. **Rebase vóór push** — `git fetch origin main && git rebase origin/main` vóór `gh pr create` lost kleine drift op zonder conflict. + --- ## Plan Mode