Objective
- Make the profile / company switch menu in the left navigation fully usable for users with many company memberships.
- Ensure Attik Admin, Sign Out, and other items below the long Switch Company list are always reachable without browser zoom.
- Unblock admin workflows such as opening Post Inspection Revenue via Attik Admin for multi-instance LaunchPad users.
Background
- Product feedback from a LaunchPad CMO: on
/settings, opening the profile menu shows Switch Company, but the panel is cut off at View Account and cannot be scrolled, so Attik Admin below it is unreachable.
- Reported path to Post Inspection Revenue: open profile menu → Attik Admin → Post Inspection Revenue.
- Temporary workaround: zoom out in the browser until the bottom of the menu fits on screen.
- Screenshot:
- Current behavior (confirmed in code):
- The menu lives in
NavUser at the bottom of the left navbar (global tools shell — not a settings-page-only control).
- When a user has more than one membership (or is an Attik admin),
NavUser renders a HeroUI Dropdown with placement='right' containing:
- Switch Company — one row per membership (sorted A–Z)
- Account — View Account, View Company
- Platform — Attik Admin (Attik admins only)
- Session — Sign Out
- The membership list is rendered in full with no max-height or internal scroll on
DropdownMenu, so total menu height grows with instance count and can exceed the viewport.
- The trigger sits at the bottom of the sidebar, so the popover opens upward/right and the bottom sections are clipped first.
- Problem worsens as more instances are added; zoom workaround will not scale.
Product Decisions
Locked
- Problem type — This is a UI bug. All menu destinations (including Attik Admin and Sign Out) must be reachable at normal browser zoom.
- Primary surface — Left-nav profile dropdown in
NavUser (tools shell). Same menu appears on settings and other tools routes.
- User impact — Affects users with many memberships (reported ~20+ LaunchPad instances). Not a permissions issue — items exist but are clipped.
- Done bar — User can open profile menu at 100% zoom on a typical laptop, scroll or otherwise reach Attik Admin, and complete the Post Inspection Revenue path without zooming out.
Open
- Scroll model — Should the entire dropdown scroll as one panel, or only the Switch Company section scroll while Account / Platform / Session stay pinned at the bottom?
- Attik Admin prominence — For Attik admins with long company lists, should Attik Admin move above the company list, stay at the bottom with scroll, or remain in Platform after Account?
- Search / filter — Is scroll-only sufficient for v1, or should this fix include company search? (Related backlog: ATT-1047, ATT-1065.)
- Viewport test matrix — What minimum viewport height and membership count should QA use as acceptance (e.g. 20 memberships at 768px height, 100% zoom)?
- Mobile expanded navbar — Does the same cutoff occur when the mobile menu is expanded (
mobileMenuOpen), or is this desktop-only? Confirm both need the fix if mobile reproduces.
- Coordination with ATT-1065 — Show active instances first and primary instance would shorten the list long-term. Confirm ATT-1933 ships as an independent scroll/layout fix.
Scope
Frontend (attik-frontend)
- Profile / company switch menu —
src/components/navbar/NavUser.tsx builds the Dropdown, DropdownMenu, and sections (Switch Company, Account, Platform, Session). Assignment uses switchCompanyAction; Attik Admin links to /api/auth/to-admin.
- Navbar shell —
src/components/navbar/Navbar.tsx renders NavUser at the bottom of the left nav (overflow-hidden on the nav container; popover is portaled but menu height is unconstrained).
- Fix should apply wherever this dropdown is used (tools shell; admin shell reuses
NavUser per ATT-1017 pattern).
Backend (attik-backend)
- Out of scope — membership list comes from session; no API change required for scroll behavior.
Out of scope
- Full instance-list redesign (active-first grouping, primary instance) unless pulled in from ATT-1065.
- Unified multi-instance workspace (ATT-1770).
- Post Inspection Revenue dashboard functionality itself — only restoring menu access to Attik Admin.
References
- Screenshot (repro): inline image above
- Slack / email thread: Shayna Bane — menu clipped at View Account; zoom workaround noted by Ryan Wagner
- Related list UX (backlog, not this bug): ATT-1065
- Prior dropdown scroll fix pattern: ATT-1126 (global search — Done)
- Key file:
attik-frontend/src/components/navbar/NavUser.tsx