feat(ui): make open workspace action explicit#600
Conversation
Replace the repeated already-open choice dialog with two deterministic actions on recent folders. The highlighted Open control returns directly to the matching instance, while activating the folder row always requests a new instance. Preserve recent-folder aliases when switching, keep native keyboard activation for focused controls, and use accessible project-specific labels plus semantic focus and button tokens across themes. Validated with the UI typecheck, production build, targeted tests, and an independent gatekeeper review.
|
PR builds are available as GitHub Actions artifacts: https://github.com/NeuralNomadsAI/CodeNomad/actions/runs/29405731127 Artifacts expire in 7 days.
|
Gatekeeper review: PASSI reviewed the exact remote head Behavior verified
Validation
|
Restore the compact neutral Open pill while a recent workspace row is highlighted, and transition it to a high-contrast blue state only when the action itself is hovered or focused. Move row emphasis away from the main action whenever Open, Rename, or Remove is targeted. Track hover and focus independently by stable folder path so pointer and keyboard interactions remain correct across reactive instance changes and older Tauri WebViews. Validated with UI typecheck, production build, diff checks, contrast review, and an independent gatekeeper pass.
UI polish follow-upUpdated the recent-workspace action emphasis in
Validation: UI typecheck and production build passed. Final gatekeeper review: PASS. |
|
PR builds are available as GitHub Actions artifacts: https://github.com/NeuralNomadsAI/CodeNomad/actions/runs/29423952783 Artifacts expire in 7 days.
|
Move the Open action back beside the recent workspace name and remove the added chevron, restoring the original compact badge proportions and typography. Keep the full row as an independent accessible new-instance action through a transparent background button, while preserving exclusive hover and focus emphasis for Open, Rename, and Remove. Add a dedicated keyboard focus indicator for the row action. Validated with UI typecheck, production build, diff checks, and an independent gatekeeper pass.
Placement follow-upUpdated in
UI typecheck and production build passed. Final gatekeeper review: PASS. |
|
PR builds are available as GitHub Actions artifacts: https://github.com/NeuralNomadsAI/CodeNomad/actions/runs/29426801941 Artifacts expire in 7 days.
|
|
@shantur LGTM |
Summary
Openbadge into a prominent action that returns directly to the running workspaceWhy
Choosing between the existing workspace and another instance on every activation adds avoidable cognitive load. The two intentions are now represented directly by separate, stable targets:
Openresumes existing work, while the folder row starts fresh.Details
Validation
npm run typecheck --workspace @codenomad/uinpm run build --workspace @codenomad/uibun test --conditions=browser packages/ui/src/stores/session-tree.test.ts packages/ui/src/stores/session-pagination-model.test.tsgit diff --check upstream/dev...HEAD