Repository navigation
Conversation
There was a problem hiding this comment.
I couldn't check this in a browser: Playwright's headless browser won't start here, and the tests that already existed fail the same way. I reviewed the code instead. bun run typecheck in packages/app passes. The unit tests in src/home/sessions and src/settings/model.test.ts pass (47/47). Before/after screenshots or a short recording of Home and the vertical strip with two servers would help.
Public API is unchanged. The new appearance.tabServerGroups setting and the home.sessions preference are local app storage only. Both fall back to defaults, so existing stored settings still load.
Concerns, most important first (details inline):
- The tab strip recreates every tab element whenever the tab list changes. This also affects the horizontal layout and single-server users, not only grouping.
- Once Home is set to "By server", the choice stays after the user goes back to one server. The control is then hidden and the project filter stays ignored, with no way back.
- Home search used to cover every session kept in memory. It now only covers the 64 shown per server.
- The new stable-order tab test seeds tabs already in server order, so it doesn't test what it describes.
Related: #51344
|
uhm, let me check your points |
|
Superseded by #51345 — closing in favour of the smaller, existing approach. |




Issue for this PR
Related to #51344.
Type of change
What does this PR do?
With more than one server configured, Home and the vertical tab strip mix sessions from every server into one flat list. Titles do not say which server a session runs on, and two servers with the same project name are indistinguishable.
This groups them by server instead of labelling each row.
Home and the tab strip stay independent: Home keeps date grouping as its default because it is useful with a single server, while the tab strip has no such grouping worth preserving.
#51345 labels each tab; this groups them. The two are compatible.
How did you verify your code works?
bun typecheckinpackages/appoxlintclean on the changed filestabs.spec.ts+home.spec.ts, 34/34 passing, plussettings.spec.ts+settings-search.spec.ts(76/76 in the combined run). New cases cover grouping by server, the setting switchingNever→Alwaysthrough the settings UI, and tab order staying stable inside a group.Screenshots / recordings
Home, grouped by date (unchanged) and by server, the new setting, and the vertical tab strip with server sections.
Checklist
Added by the opencode bot (AI-generated).
Related: #51344