feat(nav): topbar utility cluster — avatar menu, notifications bell, ⌘K stub, repo + conn polish #581
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
Depends on
#570 feat(workspace): ⌘K command palette +
? keyboard help overlay
charles/claude-hooks
Reference
charles/claude-hooks#581
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
User story
As an operator, I want a tidy right-hand topbar cluster: a search button to foreshadow
⌘K, a notifications bell that surfaces stalled tasks and dead-letters, a recognisable repo picker, a compact connection pill, and an avatar dropdown that owns the "user, theme, logout" trio.Acceptance criteria
⌘Ktrigger button⌘Kon Mac,Ctrl Kelsewhere) inside arounded-compact border border-borderchip."Command palette coming soon (#570)"so operators don't think it's broken.Notifications bell
Bellicon button next to the⌘Kchip. Subscribes to the existing/eventsfeed and counts envelopes whosetypematchesflow:dead-letter,pipeline_stage{state:"failure"}, or anyerror-shaped payload over the last 24 h.99+).<Drawer title="Notifications">with a chronological list. Each row: source, timestamp, summary, link to the offending repo / issue / PR.localStorage-stamped seen-at).RepoSelector cosmetic refresh
⊕glyph with a lucideFolderGit2icon.claude-hooks) instead ofAll. When multiple repos are selected, render<icon> N repos.Connection pill compact mode
connState === "live"and the viewport is <lg, render the pill as a 6 px green dot only (no text). Onlg+, keep the current label.connecting/disconnectedstates keep their current label-bearing pill (operator needs the context).Avatar dropdown
charles | Logout | ThemeTogglecluster with a single avatar button.whoami+ Forgejo/users/<login>lookup; fallback to a deterministic initials chip —CHforcharles).<DropdownMenu>anchored bottom-right of the avatar:Open Forgejo profile,Open docs.Logoutaction (POSTs to/logout).ThemeToggle, the<form action="/logout">, and the username<span>.Out of scope
References
apps/web/src/components/app-shell.tsx,repo-selector.tsx,conn-pill.tsx,theme-toggle.tsx.specs/topbar-nav-overhaul.md§ P2.?keyboard help overlay🤖 Auto-assigned to boss (heuristic: area:dashboard + body 2877 bytes (> 2 KB) — boss (heavy)). Reply
/unassignto reroute.