From 6812c5c101bdef3805b07c27bb56385c342d4325 Mon Sep 17 00:00:00 2001 From: Randall Stillwell Date: Thu, 4 Jun 2026 14:05:37 -0500 Subject: [PATCH] docs(convoys): fix Brief 3 TopSearchBar UserMenu elevation token Self-review recheck against current TopSearchBar.js (L211-222) found that the UserMenu dropdown uses var(--elevation-pronounced), not var(--elevation-ambient) as Brief 3's initial sample showed. Brief 3 now documents the verbatim shape (pronounced + role="menu" + aria-label + overflow-hidden) and the convoy's risk-list note is updated to reflect all three popovers' verbatim chains. No semantic change to the plan; just an accuracy fix the implementer of Brief 3 needs to ship the right code on the first try. Co-authored-by: Cursor --- .convoys/unify-glass-panel-surfaces.md | 8 +++-- .../brief-3-floating-popovers.md | 30 +++++++++++-------- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/.convoys/unify-glass-panel-surfaces.md b/.convoys/unify-glass-panel-surfaces.md index 8edeb8b..ff345c3 100644 --- a/.convoys/unify-glass-panel-surfaces.md +++ b/.convoys/unify-glass-panel-surfaces.md @@ -616,11 +616,15 @@ Read-only verification against the post-PR-#117 + post-PR-#118 tree. ships `var(--rim-light-inner), var(--ember-rim-subtle), var(--elevation-ambient)`; the mobile drawer ships `var(--rim-light-inner), var(--rim-light-outer), - var(--elevation-pronounced)`. Both are preserved as inline + var(--elevation-pronounced)`; the TopSearchBar UserMenu dropdown + ships `var(--rim-light-inner), var(--ember-rim-subtle), + var(--elevation-pronounced)` (verified during boot-the-brief + recheck — uses `-pronounced`, not `-ambient`, because it floats + higher in the viewport). All three are preserved as inline `style={{ boxShadow: '...' }}` overrides on the `.glass-panel-strong` element (the class's default `var(--rim-light-inner), var(--elevation-ambient)` would otherwise - lose the ember-rim and the pronounced elevation). Brief 3 + lose the ember-rim and either heavier elevation). Brief 3 documents the verbatim chain. - Brief 5's class deletion: the `.card` block in `styles/globals.css` is a single rule; deleting it is a clean diff --git a/.convoys/unify-glass-panel-surfaces/brief-3-floating-popovers.md b/.convoys/unify-glass-panel-surfaces/brief-3-floating-popovers.md index 69383aa..478a71f 100644 --- a/.convoys/unify-glass-panel-surfaces/brief-3-floating-popovers.md +++ b/.convoys/unify-glass-panel-surfaces/brief-3-floating-popovers.md @@ -97,32 +97,38 @@ Migrate three floating surfaces — the sidebar profile dropdown, the mobile dra ### C. TopSearchBar `` dropdown panel ```jsx // Before — the absolutely-positioned
nested inside UserMenu, - // around L214-222 of TopSearchBar.js: + // around L211-222 of TopSearchBar.js (verified against current file + // 2026-06-04 during architect boot-the-brief recheck):
// After:
``` - **NOTE:** confirm the verbatim shape of the current TopSearchBar - UserMenu dropdown against L214-222 before editing — the inline - className/style block might already have minor differences from the - "before" sample above (e.g. different `w-` width, different - `mt-` margin). Migrate the actual block, not this sample; the - sample only shows the shape of the swap. + Note: this dropdown uses `--elevation-pronounced` (not `-ambient`) + — it's a heavier shadow than the sidebar profile dropdown's because + it floats higher in the viewport over more content. Preserve that + verbatim; do not normalize to `-ambient`. The `role="menu"` + + `aria-label="Account menu"` + `overflow-hidden` attributes also stay + byte-identical. - **Preserve all children verbatim.** Menu items, dividers, icons, click handlers — all stay byte-identical. @@ -141,7 +147,7 @@ Migrate three floating surfaces — the sidebar profile dropdown, the mobile dra - [ ] Sidebar profile dropdown panel uses `className="glass-panel-strong ..."` and carries an inline `boxShadow` with `var(--rim-light-inner), var(--ember-rim-subtle), var(--elevation-ambient)`. - [ ] Mobile drawer panel uses `className="glass-panel-strong ..."` and carries an inline `boxShadow` with `var(--rim-light-inner), var(--rim-light-outer), var(--elevation-pronounced)`. -- [ ] TopSearchBar `` dropdown panel uses `className="glass-panel-strong ..."` and carries an inline `boxShadow` with `var(--rim-light-inner), var(--ember-rim-subtle), var(--elevation-ambient)`. +- [ ] TopSearchBar `` dropdown panel uses `className="glass-panel-strong ..."` and carries an inline `boxShadow` with `var(--rim-light-inner), var(--ember-rim-subtle), var(--elevation-pronounced)`. - [ ] No inline `background: 'var(--glass-surface-*)'` or `backdropFilter` style remains on any of the three migrated `
`s. - [ ] Sidebar nav-chip block (Layout.js ~L858-861) UNCHANGED. TopSearchBar `
` block UNCHANGED. (Architect's allowlist for chrome-tier surfaces.) - [ ] `test/components/Layout.test.js` has at least 2 new assertions (sidebar dropdown + mobile drawer carry `glass-panel-strong`).