🎨 style: refine sidebar with letter tiles and quieter status strip#77
🎨 style: refine sidebar with letter tiles and quieter status strip#77
Conversation
Implements the V1 polish pass from the Mori Sidebar Refined design: quiet indicator strip with right-aligned tree count, deterministic per-project letter avatars for faster scanning, and a left accent bar plus soft gradient on the selected worktree row. Assisted-by: claude-code:claude-opus-4-7
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6b2928c1a5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ) | ||
| HStack(spacing: MoriTokens.Spacing.xl) { | ||
| summaryIndicator( | ||
| text: "\(attentionCount) \(String.localized("waiting"))", |
There was a problem hiding this comment.
Split error states out of waiting indicator
The new strip labels attentionCount as waiting, but attentionCount still includes both .waitingForInput and .error windows (see the existing attentionCount predicate in this file). In any workspace with errored agents, the sidebar now reports them as “waiting” (e.g., one error and zero waiting shows 1 waiting), which is misleading operational status and can hide failures from users scanning the sidebar.
Useful? React with 👍 / 👎.
Summary
Implements the V1 "Polish pass" variant from the Mori Sidebar Refined design exploration. Three coordinated changes refine the sidebar without a structural rewrite.
New token:
MoriTokens.ProjectPalette(7-pair duotone set) with aSwiftUI.Color(hex:)helper. New leaf view:ProjectLetterTile.Localized strings (
waiting,running,trees) added to bothen.lprojandzh-Hans.lproj.Test plan
mise run test— all package tests passswift build -c release --product Mori— clean release build (Swift 6 strict concurrency)CI=1 bash scripts/bundle.sh— bundles without error./Mori.app/Contents/MacOS/Mori— launches and stays running🤖 Generated with Claude Code