Skip to content

fix(cmux-next passwords): the header and saved logins fit a narrow pane - #22904

Merged
teamleaderleo merged 4 commits into
feat-cmux-nextfrom
cmux/layout-pass-passwords-narrow
Oct 21, 2026
Merged

teamleaderleo merged 4 commits into
feat-cmux-nextfrom
cmux/layout-pass-passwords-narrow

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Layout pass, running list (lane: layout-pass; full list in cmuxterm-hq knowledge/layout-pass.md)

What

At 360px, the gallery's narrow width and a standalone pane:

  • Header: the title shrank to nothing and "Import from Browser" ran off the right edge. The title row now wraps, with .pw-title set to flex: 1 0 auto. The title keeps its line and the actions wrap under it.
  • Logins: usernames squeezed to "N…" and "s" beside their badges, last-used and four actions. A row now wraps, and the username takes flex: 1 1 8em. The badges, last-used and actions go under the name when they don't fit, and the actions stay right-aligned.
  • Control heights: search, profile and sort selects, and Import/Export buttons were 25 to 33px tall in one row, at every width. They now share 28px.

At 900px nothing wraps. The only visible change there is the equal control heights.

Test

CMUX_BROWSER_TESTS=1 bun test test/passwords-narrow.test.ts (real Chromium, the page's own ?mock dev entry).

  • At 360px it checks that the title shows whole, the header's actions stay on screen, every username keeps 96px (or its full width), and the search row's controls share a height.
  • At 900px it checks that the header's title row is one line and every login is one line.

Results:

  • Base (red commit): 360 fails with the title at 0px. 900 fails because the search row has two heights.
  • Head: 2 pass.

Screenshots

Gallery pages.passwords / lists. "Before" is the base gallery; "after" is the same page with this PR's styles.css applied.

Before After
360, dark
360, light
900, dark
900, light

Observed / Not run

  • Observed: the test above, red then green. prepush-gate.py: no new violations. vp fmt --check and oxlint are clean on both files.
  • Not run locally: bun run check and a gallery build, because heavy jobs moved off huge-blue.
  • Left as is: the native profile select sizes to its longest option (about 230px).

Changelog

Fixed: in a narrow pane, the Passwords page keeps its title, actions and usernames readable.

Agent session: huge-blue

🤖 Generated with Claude Code

teamleaderleo and others added 2 commits October 21, 2026 03:52
… login's details wrap; header controls share one height

At 360px the title shrank to nothing and Import from Browser ran off the edge,
usernames squeezed to one letter beside their badges, last-used and actions,
and the header's search, selects and buttons were 25 to 33px tall in one row.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c2a-ee79-7910-9d76-ef0536b9880d&host=huge-blue
@teamleaderleo teamleaderleo added the risk:normal Risk tier (docs/ci/risk-tiers.md) label Oct 21, 2026
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

owner: 01a15c2a-ee79-7910-9d76-ef0536b9880d

teamleaderleo and others added 2 commits October 21, 2026 03:59
… rows stay one line

Wrapping every .pw-row dropped a long site name onto its own line under the
badge in passkey and exception rows. The test now gives those rows a long
site name at 360px.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c2a-ee79-7910-9d76-ef0536b9880d&host=huge-blue
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Bead cx-uob5g created for this PR by the cmux coordinator.

@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 03b4d7e: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr22904 -f ref=cmux/layout-pass-passwords-narrow -f platform=macos -f backend_mode=local

Unclear: web / react-apps-check (2) failed: no known signature; failed step: Build the web bundles. This PR merged before its CI finished: fix forward on main.

CI failed on 03b4d7ec41 (run 39541730158 attempt 1): 5 unknown.

Job Verdict Why
web / react-apps-check (2) unknown no known signature; failed step: Build the web bundles
web / react-apps-check (3) unknown no known signature; failed step: Build the web bundles
web / react-apps-check (1) unknown no known signature; failed step: Build the web bundles
web / react-apps-check (4) unknown no known signature; failed step: Build the web bundles
web / react-apps-check unknown no known signature; failed step: Check webview test shards

Not re-run automatically: web / react-apps-check (2), web / react-apps-check (3), web / react-apps-check (1), web / react-apps-check (4), web / react-apps-check are not machine failures.

Written by scripts/ci/classify_failures.py (ci-failure-attribution.yml); signatures are its SIGNATURES table. A machine verdict is the runner's fault, not this PR's; yours means the failing file is one this PR changes, also red on main that main's latest full suite fails the same way, seen on other PRs that it failed on another pull request's run lately.

red: web / Web status; NEW: green on the base 675e71f; do not merge until green; see lane-rules
red: web / react-apps-check; no finished base run on 675e71f to compare; do not merge until green; see lane-rules
red: web / react-apps-check (1); no finished base run on 675e71f to compare; do not merge until green; see lane-rules
red: web / react-apps-check (2); no finished base run on 675e71f to compare; do not merge until green; see lane-rules
red: web / react-apps-check (3); no finished base run on 675e71f to compare; do not merge until green; see lane-rules
red: web / react-apps-check (4); no finished base run on 675e71f to compare; do not merge until green; see lane-rules

Tour of 03b4d7ec41 (run): no media. The tour did not run: only webview code changed (2 path(s)), which the gallery advisory run checks in Linux Chromium on the pull request (its artifact holds any captures); add the media-tour-mac label to tour it on a Mac.

@github-actions

Copy link
Copy Markdown
Contributor

Shipped in:

@github-actions

Copy link
Copy Markdown
Contributor

Shipped in:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:normal Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant