Skip to content

Launch-banner UX — first-officer framing, status-command overload, multi-workflow limbo#338

Merged
clkao merged 1 commit into
nextfrom
spacedock-ensign/frontdoor-launch-banner-ux
Jun 9, 2026
Merged

Launch-banner UX — first-officer framing, status-command overload, multi-workflow limbo#338
clkao merged 1 commit into
nextfrom
spacedock-ensign/frontdoor-launch-banner-ux

Conversation

@clkao

@clkao clkao commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

The pre-launch banner flipped the first-officer metaphor and overloaded spacedock status; now it reads with one stable framing across every host and workflow shape.

What changed

  • Reword banner line 1 to launching {host} as your first officer (no metaphor flip).
  • Reword line 3 to ask it for the queue and next steps (drop self-serve spacedock status).
  • List discovered workflow paths on the multi-workflow line; agree singular/plural label.
  • Emit the banner from runPi, closing pi's no-orientation gap.
  • Default unstamped Version to dev so a dev build cannot impersonate a release.

Evidence

  • go test ./internal/cli/ → 272/272 passed; AC-5 byte-exact golden and AC-6 Version regex hold.
  • Detached adversarial audit: 5 reverted-wording edits (line 1/3, multi count, Version, dropped pi banner) each caught RED; no material findings.

cm

Rewrite launchBanner to the captain-approved wording: line 1
`launching {host} as your first officer` (never the flipped
`first officer launching`), line 3 `{host} is your first officer —
ask it for the queue and next steps.` (drops both self-serve
`spacedock status` instructions).

detectedWorkflow now returns a (label, value) pair so the line-2 label
agrees with its content: single/none use `Workflow:`, multi uses
`Workflows:`. The multi branch lists the discovered workflow paths
space-joined in discovery order (`Workflows: docs/dev docs/user-testing`)
instead of a count + pick instruction; the none branch drops the
`(launching anyway)` parenthetical.

runPi now emits the same 3-line banner before launch, closing the pi
no-orientation gap (AC-7). Default cli.Version is the `dev` sentinel so
an unstamped go build/install binary does not impersonate a release
(AC-6); a stamped release still overwrites it via the ldflags path.

Tests over rendered banner output: AC-5 byte-exact golden on the
single-workflow path; AC-1/2/3/4/7 presence/absence; AC-6 a property +
`^\d+\.\d+\.\d+$` non-match over the package-default Version. Existing
launch_banner_test.go expected strings updated to the AFTER wording.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@clkao clkao merged commit 0add372 into next Jun 9, 2026
3 checks passed
clkao added a commit that referenced this pull request Jun 9, 2026
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