Conversation
Each welcome menu row is one line, label then key, as wide as the menu's own text. The menu was chosen by height alone, so on a terminal narrower than that line each row wrapped and its key landed on a line of its own. Offer a menu only when its rows also fit the width: the full menu, then the short one, then none, the same ladder the height budget already uses. Closes Nano-Collective#1434.
nc-review: comments — 1 nit@addyCooks — a few things worth a look, none blocking. The change extracts a ⚪ nit · The new 🔴 blocking · 🟠 a reviewer would ask for a change · ⚪ optional Automated code review — correctness, security, design, tests, plus duplicates and scope. A human still decides; this is not a substitute for review and is not exhaustive. The required status checks separately cover lint, formatting, types, unused dependencies, the test suite and the build. This bot never merges. Maintainers can rerun with |
Description
Closes #1434.
Each welcome menu row is one line: label, gap, key, as wide as the menu's own text. The menu was chosen by terminal height alone, so on a terminal narrower than that line each row wrapped and its key landed on a line of its own (at 20 columns:
Resume session//resumeon separate, misaligned lines).A menu is now only offered when its rows also fit the width, stepping down the same way the height budget already does: the full menu, then the short one (Help / Quit), then none. At 20 columns you get the short menu with each row on one line. The existing column-width calculation is reused rather than duplicated.
This is separate from #1330 / #1376, which fixed the height budget.
Recording
Type of Change
Changeset
pnpm changeset) describing this change for the changelogTesting
Automated Tests
.spec.ts/tsxfilespnpm test:allcompletes successfully)New test: full menu at 25 columns, short menu at 20, no menu at 12, each label and key on the same line. It fails without the fix. The welcome spec passes (26 tests); types, format, lint and knip are clean; the full AVA suite has no new failures compared with main (the ones it reports are known Windows-only failures).
Manual Testing
Layout-only change; it doesn't depend on the provider.
Checklist