Skip to content

feat(cli): home screen echoes tb (the canonical launcher) when it's installed#261

Merged
saadqbal merged 1 commit into
developfrom
feat/home-screen-prefer-tb
Jul 14, 2026
Merged

feat(cli): home screen echoes tb (the canonical launcher) when it's installed#261
saadqbal merged 1 commit into
developfrom
feat/home-screen-prefer-tb

Conversation

@LukasWodka

@LukasWodka LukasWodka commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Summary

The home screen's command menu + examples used to echo whatever name you invoked (tracebloctracebloc, tbtb) plus a separate "type tb instead" tip. Since the installer always places the tb launcher, tb is the canonical everyday command we want to teach — so the menu echoing tracebloc just because you typed the long name taught the wrong habit.

Now the home screen echoes tb whenever a tb launcher exists beside the CLI (the normal installed state), and falls back to the invoked name only when it genuinely doesn't (e.g. a bare go build), so it never prints a tb that wouldn't run. With the menu itself in tb, the redundant "type tb instead" tip is dropped.

Behavior

Invoked as tb launcher present Examples show
tracebloc yes (installed) tb … ← the change
tb yes tb …
tracebloc no (bare build) tracebloc … (fallback — never a tb that won't run)

Tests

  • TestResolveHomeModel_PrefersTB — mutation-proven both directions (prefers tb when the launcher exists; falls back to the invoked name otherwise) + signed-out.
  • Updated the locked-demo golden (TestRenderHome_MatchesLockedDemo) and the state tests to drop the tip.
  • make ci green.

Note

This changes the home screen locked in #244 (Lukas's call this session — tip → menu-in-tb). Separate from the semseg work (#247); touches only home.go + its tests.

🤖 Generated with Claude Code

… installed

The command menu + examples used to echo whatever name you invoked
(tracebloc->tracebloc, tb->tb) plus a separate "type tb instead" tip. Since the
installer always places the `tb` launcher, `tb` is the everyday command we want
to teach -- so the home screen now echoes `tb` whenever a tb launcher exists
beside the CLI, falling back to the invoked name only when it doesn't (e.g. a
bare `go build`), so we never print a `tb` that wouldn't run. The now-redundant
"type tb instead" tip is dropped -- the menu itself is in tb.

Tests: TestResolveHomeModel_PrefersTB (prefers tb when the launcher exists;
falls back to the invoked name otherwise; signed-out too); updated the
locked-demo golden + state tests to drop the tip. make ci green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@LukasWodka LukasWodka changed the title feat(cli): home screen echoes tb (the canonical launcher) when it's installed feat(cli): home screen echoes tb (the canonical launcher) when it's installed Jul 14, 2026

@saadqbal saadqbal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍 Nicer than the tip — echoing tb directly in the menu teaches the short command without a nag line. Confirmed tbAliasAvailable is a cheap local stat (false on error), so hoisting it above the sign-in gate is safe on the instant logged-out path, and the fallback never prints a tb that wouldn't run.

@saadqbal
saadqbal merged commit ee19017 into develop Jul 14, 2026
22 checks passed
@saadqbal
saadqbal deleted the feat/home-screen-prefer-tb branch July 14, 2026 08:57
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.

2 participants