Skip to content

Animate the terminal welcome with a compact hex wordmark - #508

Merged
wesbillman merged 1 commit into
mainfrom
am-buzz-terminal
Oct 1, 2026
Merged

wesbillman merged 1 commit into
mainfrom
am-buzz-terminal

Conversation

@mahanti

@mahanti mahanti commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

The terminal welcome now shows the selected compact Buzz wordmark as animated, spaced hexagons. Orange/amber lettering and neutral background hexagons share a slow wave; mouse movement gently disturbs it and clicks add a subtle outward pulse while keeping the terminal focused.

The final palette uses design-system roles with the approved OKLCH adjustments: light +2% lightness, 129% chroma, 0° hue and 15% gray opacity; dark +2% lightness, 121% chroma, +1° hue and 25% gray opacity. The standalone tuning playground and its controls have been removed locally; no preview routes or capture artifacts are included in this PR.

The existing welcome lifecycle remains bounded to three seconds after first output. Typing dismisses it; hiding and reopening does not replay it. Reduced motion is static, hidden documents stop animating, and dismissal releases animation and listeners.

Validation

  • Hosted CI required and DCO pass at 1dad848f4331f1f9bea14af5d5aff91daa0af58d: 20 successful checks and the expected manual Windows skip. The JavaScript job initially exceeded its ten-minute limit after all tests passed; a targeted rerun passed on the unchanged commit. No source, workflow, timeout, or test changes were needed.
  • Hosted Vitest timing (Ubuntu 24.04, two workers, same snapshot): 6,442/6,442 passed, zero skipped/failed. Reported elapsed wall time improved from 558.85s to 542.28s; summed assertion execution from 638.71s to 618.15s. Slowest rerun file: ChannelMembersDialog.test.tsx, 33.74s; slowest test: durable read-state owner, 9.58s. These are hosted measurements, not local timings.
  • Independent agent review: 9/10, no remaining blockers. Fixed a click-focus regression and demonstrated the browser assertion failing before the fix.
  • Terminal browser journeys: 8/8 passed across Chromium and WebKit. Covers actual canvas rendering, color confinement, theme changes, motion/reduced motion, click focus and no terminal input, expiry, input/output, detach/reopen, sizing, shortcuts, and session recovery.
  • Browser cases added/removed: 0/0. Existing ASCII-layout assertions now check canvas pixels/layout and focus in the same journeys; real browser engines are required for CSS color resolution, canvas rendering, and xterm focus.
  • Commit/push hooks passed at 1dad848f: secret scanning, staged formatting/lint, TypeScript, 58 related unit tests, and design-system guards.
  • Geometry coverage: 5 unit tests pass for full wordmark visibility at desktop, narrow and shallow sizes, empty hosts, and bounded large grids.
  • TypeScript and design-system type checks, token checks, 120 design-system tests, and design-system/viewer builds pass.
  • Screenshots captured in the maintained terminal-panel fixture using the production renderer and stubbed session transport: light, dark, and narrow light. Local files are available for attachment.

Remaining acceptance

Human testing of the integrated terminal and native app/real PTY confirmation remain pending. Try a new terminal in each theme, move and click over the welcome, type immediately, then hide/reopen. Expect a gentle pulse without click dismissal, immediate keyboard input, automatic dismissal after three seconds, and no replay on reopen. Code-owner approval remains required. Full native builds and broad local scans were deferred.

Signed-off-by: Arjun Mahanti <arjun@squareup.com>
@mahanti

mahanti commented Oct 1, 2026

Copy link
Copy Markdown
Contributor Author

<img width="1280" height="844" alt="02-terminal-dark" src="https://github.com/user-attachments/
01-terminal-light
assets/3d0968af-e615-4de4-bc9a-30e406ca2ffa" />

@mahanti
mahanti marked this pull request as ready for review October 1, 2026 18:22
@mahanti
mahanti requested review from a team, comp615 and wesbillman as code owners October 1, 2026 18:22

@wesbillman wesbillman 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.

No actionable source findings; no changes requested.

Star Lord’s automated source review via Wes’s account, head 1dad848f4331f1f9bea14af5d5aff91daa0af58d / base c4df1399033786e8f6f6030c10460123a3eaae0e, covered canvas geometry/colors, animation cleanup and reduced motion, click focus, terminal lifecycle, and regression assertions.

Hosted CI passed on this head, with 6,442 Vitest passes and all eight terminal browser results passing across Chromium/WebKit; I executed no code or tests, and native/real-PTY/human acceptance remains pending (Windows validation skipped).

Publication-surface inspection covered the description, changed files, commit and available light attachment; the malformed dark attachment in the PR conversation returns 404, so its contents remain unreviewed.

@wesbillman wesbillman 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.

No actionable findings. 9/10 for minimalness, elegance, and correctness within the stated scope; no code blockers identified.

Reviewed head 1dad848f4331f1f9bea14af5d5aff91daa0af58d against base c4df1399033786e8f6f6030c10460123a3eaae0e (PR merge-base cc0c47c76048a791a8b0b678054a6743702832f6). Traced first-output/once-only lifecycle, focus and shell-input separation, reduced motion, visibility/teardown, geometry, and design-token ownership.

  • Independent validation: 5/5 banner unit tests and the complete terminal-renderer browser file, 8/8 across Chromium and WebKit, passed locally on the unchanged head. Inspected rendered light/dark frames; git diff --check passed. No source edits or broad local suite rerun.
  • Hosted evidence: all 20 automatic checks pass; Windows native validation is skipped. Broad coverage comes from CI, not the local focused runs.
  • Remaining gates: human integrated-terminal testing, native/real-PTY acceptance, and code-owner approval remain pending. The uploaded dark attachment still returns 404, so that publication asset remains unreviewed; local dark rendering was checked.

Carl, an automated reviewer, commenting via Wes’s GitHub account.

@wesbillman
wesbillman merged commit 290c8c2 into main Oct 1, 2026
37 of 39 checks passed
@wesbillman
wesbillman deleted the am-buzz-terminal branch October 1, 2026 19:54
bostonaholic added a commit to bostonaholic/buzz-app that referenced this pull request Oct 1, 2026
…page-icon

* origin/main:
  Count unread replies only in conversations you are part of (block#471)
  Animate the terminal welcome with a compact hex wordmark (block#508)
  Use top tabs in the new-tab picker (block#505)
  Polish media controls, panel headers, and menus (block#496)
  harden pinned browser CI setup and native fixture provenance (block#494)
  perf(relay): confirm membership hints with exact channel reads (block#486)
  test(browser): wait for menu and wheel completion (block#492)
  fix(links): render one hash on completed channel links (block#506)
  ci: publish Windows and Linux alongside macOS previews (block#491)
  fix(channels): keep conversations open through archive and restore (block#452)
  feat(channels): align create and edit forms with draft protection (block#482)
  Test provider connections before model selection (block#500)

Signed-off-by: Matthew Boston <mboston@squareup.com>
bradseiler pushed a commit that referenced this pull request Oct 2, 2026
…delegate

* origin/main:
  Fix Pi and Goose environment overrides (#517)
  feat(ui): Switch shared icons to Tabler (#523)
  Improve message media contrast and thumbnail fill (#521)
  Document unified inventory and verify focused import and compact-row acceptance (#293)
  fix(ux): clarify Pi installation and setup errors (#511)
  Count unread replies only in conversations you are part of (#471)
  Animate the terminal welcome with a compact hex wordmark (#508)
  Use top tabs in the new-tab picker (#505)

Signed-off-by: bb-expert <51cde9442e46eac81c83ec71552708c3b0cb96a88ff8e1581d8fb4de281afbf3@buzz.block.builderlab.xyz>

# Conflicts:
#	src/features/relay/unread.test.ts
johnmatthewtennant pushed a commit that referenced this pull request Oct 2, 2026
* origin/main: (21 commits)
  Add remote agent owner attestation fn to host service (#532)
  fix(build): pin Rust 1.98.1 to unblock macOS 27 agent builds (#529)
  main fix: Pi model test ETXTBSY flake (#513)
  fix(composer): remove phantom text-field focus outlines (#519)
  fix(relay): use writer reads for channel confirmations (#501)
  feat(channels): unify header actions and inline details editing (#487)
  Show app-managed agents working in the sidebar (#539)
  Add recoverable hosted community deletion (#403)
  Add verified Inbox evidence and exact edit closure (#495)
  Animate Buzz startup through initial content readiness (#534)
  Polish profile avatar picker and custom colors (#533)
  Add Send to channel for authored thread replies (#531)
  Allow plugins to send managed-agent registration events (kind 30177) (#535)
  Fix Pi and Goose environment overrides (#517)
  feat(ui): Switch shared icons to Tabler (#523)
  Improve message media contrast and thumbnail fill (#521)
  Document unified inventory and verify focused import and compact-row acceptance (#293)
  fix(ux): clarify Pi installation and setup errors (#511)
  Count unread replies only in conversations you are part of (#471)
  Animate the terminal welcome with a compact hex wordmark (#508)
  ...

Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>
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