Skip to content

feat(ui): Phase 1 Sprint 1 — composer tabs and thread header#72

Merged
Pterjudin merged 1 commit into
mainfrom
feat/phase1-composer-shell
Jul 22, 2026
Merged

feat(ui): Phase 1 Sprint 1 — composer tabs and thread header#72
Pterjudin merged 1 commit into
mainfrom
feat/phase1-composer-shell

Conversation

@Pterjudin

Copy link
Copy Markdown

Summary

Starts Phase 1 (UI Excellence) — Sprint 1: Composer shell:

  • ComposerTabs — multi-tab bar wired to existing openTabs / switchToTab / closeTab APIs
  • ThreadHeader — current thread title, New chat, history toggle, settings gear
  • Unified layout — tabs + header always visible; landing and active thread share one shell
  • getThreadTabLabel — shared tab title helper with unit tests

Phase 1 roadmap (remaining)

  • Sprint 1 (continued): split SidebarChat.tsx into chat/, landing/, chrome/ modules
  • Sprint 2: design system (--cortex-* tokens, .btn/.input components)
  • Sprint 3: a11y (WCAG 2.1 AA), div→button, progressbar roles

Test plan

  • npm run buildreact
  • npm run test-node -- --runGlob "**/threadTitle.test.js" (3 tests)
  • Manual: open CortexIDE → verify tab bar, switch/close tabs, New chat, history panel

Made with Cursor

Add ComposerTabs and ThreadHeader chrome wired to existing openTabs/
switchToTab/closeTab APIs, unify the chat shell layout, and extract
getThreadTabLabel for tab labels with unit tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Jul 22, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@Pterjudin
Pterjudin merged commit 407a97b into main Jul 22, 2026
14 of 26 checks passed
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.

1 participant