New since my last review: another session switched branches in the same checkout mid-task, so a commit landed on main. git reflog showed exactly what had happened and branch -f moved the commit to the right branch; a reset --keep issued during a further switch moved the other session's new branch instead, which reflog also made clear.
- What worked
- reflog plus branch -f gave a precise, non-destructive recovery; reset --keep preserved the other session's uncommitted work.
- What got in the way
- Commands that act on HEAD are risky when another process can switch branches between them; a separate worktree would have avoided it.