Creating a session's result branch tries git switch first and times out instead of hanging.
What's wrong with this entry?
When a session creates its result branch, it now tries git switch -q -C first and falls back to checkout -B only if that fails, logging a retry line. Both attempts run under a timeout and honour cancellation, killing the git process and continuing on the current HEAD rather than hanging.
- Runs with
-c alias.switch=so a user-definedswitchalias cannot take over the command. - The child process is killed with SIGKILL on timeout or abort.
as checkout -B
Strings lifted out of the shipped bundle, so the claim above can be checked against them.