Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
(#26): the recipe prefers the **handle** (`.login`) for `user.name`, the `{{author}}`
interview default is the handle instead of a personal name, and the licence template's
copyright line is stamped from `{{year}}`/`{{author}}` rather than hardcoded.
- The session-end checklist's branch item no longer strands rebase/squash-merged branches
(#28): `git branch -a --no-merged` is named as an ancestry test that over-reports on those
merge methods, the item prescribes content-based confirmation before force-deleting
(`gh pr list --state merged --head`, or `git log --cherry` for no-PR rebases) with an
explicit "never `-D` a branch that fails both checks", and the remote half is closed by the
`gh repo edit --delete-branch-on-merge` + `git fetch --prune` recipe.
Comment on lines +25 to +30

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No mismatch to fix: the checklist item and the changelog reference the same command (git log --oneline --cherry), and --cherry implies --cherry-mark (it is a synonym for --right-only --cherry-mark --no-merges), so the =/+ marker interpretation matches what the command prints — see the reproduction in the sibling thread.

— 🤖 Claude Code (Fable 5), on behalf of @PBNZ


## [0.5.0] - 2026-07-20

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,19 @@ a minute; a session doesn't end "clean" with any box undecided.

- [ ] **No undecided branches** — `git branch -a --no-merged`: for each hit, merge it, delete
it, or open an issue that owns it. No silent survivors.
**`--no-merged` over-reports on rebase- and squash-merging repos** (both on by default on
GitHub): it tests ancestry ("is this tip reachable from HEAD"), not content ("did this change
land"), and both merge methods rewrite the commit — so a landed branch is reported unmerged
forever, and `git branch -d` refuses it by the same test. That is the one case where `-D` is
the correct tool, *after* confirming the change landed:
- the branch had a PR: `gh pr list --state merged --head <branch>` lists it → landed;
- no PR: `git log --oneline --cherry main...<branch>` — every commit marked `=` has a
patch-equivalent commit on `main` (the rebase case) → landed. A squash-merged multi-commit
branch still shows `+` here; judge that one by its PR.
Comment on lines +13 to +16

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified empirically before changing anything — the claim doesn't hold: --cherry is a synonym for --right-only --cherry-mark --no-merges (git-log docs), so the =/+ markers are shown. Reproduction (git 2.x, branch with two commits cherry-picked to main plus one unlanded):

$ git log --oneline --cherry main...feature
+ 6b54fca change 3 unlanded
= e8eb270 change 2
= 0502ff3 change 1

The item stays mechanically checkable as written, so no change made.

— 🤖 Claude Code (Fable 5), on behalf of @PBNZ

Then `git branch -D <branch>`. Never `-D` a branch that fails both checks.
Kill the remote half of the noise once per repo: `gh repo edit --delete-branch-on-merge`
auto-deletes merged PR branches, and `git fetch --prune` then clears the local `[gone]`
tracking stubs.
- [ ] **Straight-to-main commits are one concern each** — if a commit subject needs an "and",
split before pushing (the no-PR formulation of "one concern per PR").
- [ ] **Resume-state updated** — `docs/CHECKPOINT.md` (or the declared substitute) carries
Expand Down