* Add an interactive stack picker for checkout
Running `gh stack checkout` with no argument previously showed a plain
text prompt of locally tracked stacks only. It could not surface stacks
that exist only on the remote, gave no sense of a stack's state, and
listed fully merged stacks that can no longer be added to.
Replace it with an interactive picker (new package
internal/tui/checkoutview) that lists every stack available to you,
reconciling the local stack file with the Stacks REST API:
- Merges local and remote stacks, matched by stack id/number, and labels
each Local (present locally, even if also tracked on the remote) or
Remote (only on GitHub). Fully merged stacks are filtered out.
- Shows compact columns: stack number, first...last branch, base branch,
a muted status bar summarizing merged/open/closed/unpushed PRs, type,
and relative created time.
- Offers All / Local / Remote tabs and `/` type-to-filter search.
The picker renders inline rather than taking over the screen: it shows
up to ten rows with a scroll indicator, shrinks to fit short terminals,
and clears itself on exit.
Selecting a locally available stack checks out its top unmerged branch;
selecting a remote-only stack clones it down through the existing
checkout-by-number import flow.
When the Stacks API is unavailable (stacks not enabled, no auth, or a
network error), the picker degrades gracefully to a local-only list.
Also update the README, overview, and CLI reference for the new behavior.
* search by entire branch list
* address review comments