Skip to content

Commit 1e47e3a

Browse files
committed
chore: enforce squash-merge only and auto-delete branches
- Configure GitHub repo: squash-merge only, auto-delete branches - Record decision in decisions.md - Add merging guidance to README
1 parent f398f5c commit 1e47e3a

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

‎.docs-plan/decisions.md‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,3 +155,10 @@ Record decisions that constrain future work — things an agent needs to know th
155155
**Decision:** Do not install Beads git hooks. All `bd dolt pull`/`push` calls must be manual and serialized. Only the parent agent may run `bd` commands — worktree agents must never touch Beads.
156156
**Rationale:** Git hooks fire automatically on git operations (push, pull, checkout). Worktree agents perform these git operations concurrently, so hooks would trigger concurrent `bd` calls against the shared Dolt server, risking journal corruption. Manual serialized calls give the parent full control over when Beads is accessed.
157157
**Alternatives considered:** Install hooks only on the main worktree (hooks still fire on parent git ops during agent runs), install hooks with a lock file (Dolt doesn't support external locking), use `--sandbox` mode for agents (still shares the server)
158+
159+
## 2026-03-13: Squash-merge only, auto-delete branches
160+
161+
**Context:** Agent PRs accumulate multiple commits (draft, feedback fixes, rebases) that aren't meaningful individually.
162+
**Decision:** Enforce squash-merge as the only merge method on GitHub. Auto-delete branches after merge. Squash commit uses PR title and PR body.
163+
**Rationale:** Keeps `git log` on `main` clean (one commit per page/feature). PR history is always available on GitHub. Auto-delete prevents stale `docs/<slug>` branches from accumulating.
164+
**Alternatives considered:** Merge commits (noisy history), rebase merge (preserves individual commits nobody needs)

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ bd ready # unblocked tasks (dependencies met)
8282
bd show <id> # task details
8383
```
8484

85-
**After merging a PR:** Agents automatically close the corresponding Beads task during their next session (Priority 0 housekeeping). If you have an agent session open, you can tell it to close merged tasks immediately. You can also close tasks manually: `bd update <id> --status closed && bd dolt push`.
85+
**Merging PRs:** Always use **squash and merge** (enforced in repo settings). This keeps `main` history clean — one commit per page. Branches are auto-deleted after merge. Agents automatically close the corresponding Beads task during their next session. You can also tell an active agent to close merged tasks immediately, or do it manually: `bd update <id> --status closed && bd dolt push`.
8686

8787
### What agents handle vs. what developers handle
8888

0 commit comments

Comments
 (0)