Implement the Bubble Tea TUI for the two-stage host and session picker using the already-tested logic packages.
Scope
Add internal/ui/theme with the fixed v1 theme from docs/DESIGN.md §8.6.
Add the stage 1 host picker per §5.2.
Add the stage 2 session picker and new-session prompt per §5.3.
Implement search/filter mode per §5.4.
Implement escape, quit, and help-overlay semantics per §5.5 and §5.6.
Degrade gracefully on small terminals per §9.4.
Add teatest coverage for happy-path host selection, session selection, escape behavior, and quit behavior.
Out of scope
Theme customization.
Mouse handling.
SSH config discovery.
Daemon or background caching behavior.
Acceptance criteria
Only internal/ui/* imports Bubble Tea or Lip Gloss.
The first screen is interactive before probes complete.
go test -race ./... passes.
go vet ./... passes.
CI is green.
## Goal
Implement the Bubble Tea TUI for the two-stage host and session picker using the already-tested logic packages.
## Scope
- Add `internal/ui/theme` with the fixed v1 theme from `docs/DESIGN.md` §8.6.
- Add the stage 1 host picker per §5.2.
- Add the stage 2 session picker and new-session prompt per §5.3.
- Implement search/filter mode per §5.4.
- Implement escape, quit, and help-overlay semantics per §5.5 and §5.6.
- Degrade gracefully on small terminals per §9.4.
- Add `teatest` coverage for happy-path host selection, session selection, escape behavior, and quit behavior.
## Out of scope
- Theme customization.
- Mouse handling.
- SSH config discovery.
- Daemon or background caching behavior.
## Acceptance criteria
- Only `internal/ui/*` imports Bubble Tea or Lip Gloss.
- The first screen is interactive before probes complete.
- `go test -race ./...` passes.
- `go vet ./...` passes.
- CI is green.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Goal
Implement the Bubble Tea TUI for the two-stage host and session picker using the already-tested logic packages.
Scope
internal/ui/themewith the fixed v1 theme fromdocs/DESIGN.md§8.6.teatestcoverage for happy-path host selection, session selection, escape behavior, and quit behavior.Out of scope
Acceptance criteria
internal/ui/*imports Bubble Tea or Lip Gloss.go test -race ./...passes.go vet ./...passes.