worktrunk 0.80.0 runs commit hooks on a detached HEAD during a squash
When a commit hook or signing stops the commit in wt merge or wt step squash, the branch is now left untouched instead of reset to the merge base. The cost is that git commit hooks now run on a detached HEAD during a squash.3 Separately, the branch field in wt config state logs --format=json now holds the real branch name, such as feature/x, instead of the sanitised directory name.3
Relevant to: Anyone running worktrunk to manage agent worktrees with commit hooks that read the current branch, or scripts that parse its hook logs.
Library API changes in the same release
Repository::capture_refs_with_ahead_behind is removed; git::parse_porcelain_z and Repository::changed_files now use bytes; GitError gains StaleWorktreeHoldsWork.3 This matters only if you import worktrunk as a Rust crate.