# Checklist: before you merge a task branch

- [ ] `origin/main` **merged in** (never rebased), conflicts resolved in the
      worktree
- [ ] `pnpm run verify` and `node scripts/audit-ui.mjs` both green
- [ ] **Assertion count in `verify.mjs` did not fall**
      (`grep -c 'throw new Error' scripts/verify.mjs`)
- [ ] Only files in your task's scope changed — `git diff --stat origin/main`
      matches the brief
- [ ] No contended file edited unless you own it (see `rules/git-worktrees.md`)
- [ ] No `.serena/`, `__pycache__/`, `dist/`, or scratch files staged
- [ ] Commit message: what, why, and what you deliberately did not do
- [ ] Task report written: verified behaviours, known gaps, follow-ups
- [ ] `reviewer` agent has read the diff
- [ ] Worktree and branch cleaned up after merge
