Skip to content

feat(shell): shared top bar, rail, workspace switcher and icon/accent pickers - #467

Merged
0xPlayerOne merged 8 commits into
mainfrom
claude/project-thread-1qxfn1
Oct 20, 2026
Merged

0xPlayerOne merged 8 commits into
mainfrom
claude/project-thread-1qxfn1

Conversation

@0xPlayerOne

Copy link
Copy Markdown
Member

Summary

First piece of the workspace redesign across Adea and Cortana. Adds the shared shell components both apps will consume:

  • ShellTopBar: history arrows, sidebar toggle and workspace switcher left of a vertical divider that tracks the sidebar edge (--shell-sidebar-width); breadcrumbs, search and actions to the right.
  • ShellRail: always-collapsed app rail with the app mark, a search entry point and caller destinations.
  • WorkspaceSwitcher: single-menu workspace picker (reports an id only; owns no lifecycle).
  • IconPicker (curated icon set plus optional uploaded image, resized to a bounded WebP/PNG data URL) and AccentPicker (accent override with a real "inherit" choice).

Each has stories, design-system cards, registry entries and public exports.

Validation

  • Commands run: bun run format:check, lint, typecheck, test (1047 pass), registry:build/registry:validate, check:lib-exports, verify:changed (registry drift clears once generated files are committed, as they now are).
  • CI or deployment links: pending (draft).
  • Screenshots/recordings, when applicable: Storybook lanes run in CI; no local Storybook run in this cloud container (Chromium 1194 only).

Impact and rollout

  • No migration or rollout action is required

Review notes

Purely additive; no existing component changes. Consumers (adea, cortana) need the release of this PR before they can depend on it.



Generated by Claude Code

…on/accent pickers

Shared pieces for the workspace redesign in Adea and Cortana: a top bar whose divider tracks the sidebar edge, an icon-only app rail with a search entry, a single-menu workspace switcher, and pickers for a mark's icon (or uploaded image) and accent override.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XSokH4xCdEiUXMpwiAfHgq
… the menu

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XSokH4xCdEiUXMpwiAfHgq
ShellTopBar and ShellRail read their JSX slot props in more than one
place, which built each slot twice. Resolve every slot once with children().

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XSokH4xCdEiUXMpwiAfHgq

Copy link
Copy Markdown
Member Author

Two checks went red on 1e7f32f:

  • Registry / Registry core: this PR's own failure. The served sources for shell-rail and shell-top-bar were stale after my last edits. Regenerated with bun run registry:build in 3d54cfe.
  • Dependency Audit (JavaScript): not this PR's. A new advisory against launch-editor (via vite 8.3.2) fails bun audit on any branch. No fix PR exists, so I ported the lockfile bump to vite 8.3.4 in 467e3a7. bun audit is clean locally, and bun install --frozen-lockfile, bun run build and format:check pass.

Generated by Claude Code

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XSokH4xCdEiUXMpwiAfHgq
@0xPlayerOne
0xPlayerOne enabled auto-merge (squash) October 20, 2026 22:55
…asses

The visible Upload/Replace button drives the visually hidden file input, so the
input is hidden from assistive technology but keeps an accessible name.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XSokH4xCdEiUXMpwiAfHgq
@0xPlayerOne
0xPlayerOne merged commit c25aa69 into main Oct 20, 2026
52 checks passed
@0xPlayerOne
0xPlayerOne deleted the claude/project-thread-1qxfn1 branch October 20, 2026 23:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants