Skip to content

Align the TUI with the web product - #30

Merged
nicodes merged 1 commit into
mainfrom
feat/tui-web-alignment
Sep 9, 2026
Merged

Align the TUI with the web product#30
nicodes merged 1 commit into
mainfrom
feat/tui-web-alignment

Conversation

@nicodes

@nicodes nicodes commented Sep 9, 2026

Copy link
Copy Markdown
Member

Summary

Implements the approved TUI-only alignment plan, using the current web app as the product reference without changing web/backend behavior.

  • Open on Marketplace with an adaptive sidebar: 22 columns at 120+ columns, an overlay below that, and a 100-column non-game content cap.
  • Add focused keyboard navigation, Docs, unified account/local Library badges, owner/game detail pages, and UTC play-activity views.
  • Separate Add, Play, Remove from Library, and Uninstall here: Add/sign-in do not download packages; Play installs missing compatible account games; existing local copies remain usable offline and are not silently overwritten.
  • Add in-TUI pairing, handle/org/member management, CLI-session listing/revocation, account deletion, and revoke-then-clear sign-out with explicit confirmations and legacy-session fallback.
  • Provide explicit loopback-only local pairing configuration and registry-scoped credential isolation while retaining the normal trusted pairing destination.
  • Align gameplay presentation with web while preserving terminal glyph rendering, pause, pixel selection, SDK input and runtime safeguards.
  • Add cancellation/stale-result, identity, authorization, layout, package-action, and session tests plus workflow documentation.

Compatibility and safety

  • Existing shell-command add/remove/login/sync semantics are retained.
  • Session credential ID/expiry fields are additive; legacy files remain readable.
  • No web/backend source changes, database reset, dependency version updates, or release/deployment changes are included.
  • The existing ANSI dependency becomes direct for safe display-cell clipping.

Verification completed locally

Toolchain: Go 1.26.2.

  • Clean gofmt output and git diff --check
  • go vet ./... and go vet ./sdk/...
  • go test -race -count=1 -timeout 10m ./... ./sdk/...
  • GOWORK=off go build ./... and GOWORK=off go vet ./...
  • Cross-compilation with the release build flags for linux/amd64, linux/arm64, darwin/amd64, darwin/arm64, and windows/amd64
  • Linux PTY walkthrough at 80x24 and 140x40 against the existing local API/development-auth stack: Marketplace, offline Play/pause, pairing, handle/org/member actions, owner/daily activity pages, uninstall vs membership, download-free Add, install-on-Play, session revocation, and account deletion. Disposable test accounts and files were cleaned up.

Untested scope

No production authentication was exercised. Interactive macOS/Windows/ARM terminal behavior and OS browser-launch integrations were not manually tested; cross-compilation is not interactive acceptance.

The PR is for review only; merge and deployment are not authorized by this request.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

@nicodes
nicodes merged commit 2b209d9 into main Sep 9, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant