Skip to content

UX polish batch: nine small verified fixes #214

Description

@johannesjo

All small, independently fixable, and verified against the code. Checklist form so they can be picked off one at a time (several are good first issues):

  • Setting label says "on merge" but acts on close. "Always delete branch and worklog on merge" (EditProjectDialog.tsx:348) toggles deleteBranchOnClose, whose only readers are close paths (tasks.ts:417, TaskPanel.tsx:598, CloseTaskDialog.tsx:99); the merge path uses a separate cleanupAfterMerge checkbox. Also "worklog" is presumably "worktree".
  • Worktree path clips without ellipsis. TaskBranchInfoBar.tsx:247 renders the full path inside a nested inline-flex <button>; the InfoBar's declared text-overflow: ellipsis (InfoBar.tsx:33-35) can't apply to a nested flex child, so long paths clip hard. Abbreviate with the ~-shortening already used in the sidebar and put the full path in the tooltip.
  • Dead overlay rule. .dialog-overlay background in styles.css:1363 (44% black) is always overridden by the inline rgba(0,0,0,0.55) in Dialog.tsx:94 — they disagree by 11%; delete one.
  • Import continues after Cancel. ImportWorktreesDialog Cancel is never disabled (:305-317); the sequential createImportedTask loop (:113-121) keeps running after close, reporting into an unmounted dialog. Disable Cancel while importing or toast on background completion.
  • Arena swallows Escape. App.tsx:685 if (store.showArena) return; — wire Escape to close the arena (or its internal back navigation).
  • Keybinding-migration banner reflows the whole app. Injected between titlebar and main (App.tsx:818-886), so every task column and terminal reflows when it appears/dismisses. Make it a toast/dialog instead.
  • Silent no-op shortcuts. mergeTask/pushTask early-return without feedback on precondition failure (tasks.ts:566-571, 613-616); the keyboard handlers (App.tsx:663-670) don't pre-check git isolation, so merge/push shortcuts on a non-worktree task do nothing silently. Show a brief notification.
  • Plan dialog abandons the brand font stack. styles.css:2097 uses -apple-system, … instead of var(--font-ui); 'JetBrains Mono' hardcoded at :2153,2163 and NewTaskDialog.tsx:1095 instead of var(--font-mono).
  • Plan-review inline comment cards overlap the paragraph text they annotate (visible in screens/islands-plan-review.png — the "Goal" paragraph is cut off by the floating comment card). Give the cards their own flow slot instead of overlaying.

From a full design/UX audit (2026-07-07); adversarially verified. Line numbers as of b342bbd (v1.12.0).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomersuxUX / design improvements

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions