Cut the sessions list twice: machine, then tag - #131
Merged
Conversation
Display options gain a "Then by" select. Groups carry optional children, keyed parent plus child so one tag on two machines folds and drops apart, and a second cut that yields a single subheading flattens away. Stored arrangements missing the field read as cut once, so saved tabs look as they did before. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The sessions list can now be grouped twice. Display options gain a Then by select under Grouping; any pair works (machine then tag, tag then machine, state then directory). A fresh browser opens on machine then tag.
How it reads
+and drop target. A session tagged twice sits under both, same as flat tag grouping.+on a tag under a machine prefills both. Dragging between tags under one machine retags; across machines refuses with the existing sentence.Compatibility
ViewConfig.subgroupingis new. Saved views and the current arrangement written before it read asnone, the same bargaindirectionmade: what that build showed is what comes back. Only a browser with nothing arranged gets the new default.subgrouping: 'none'is a first-class choice, so one grouping is still one grouping.none; the select is disabled while there is no first cut.Not done
No screenshot. Driving the installed daemon from reins needs the handoff dance and I did not want to hold the PR on it. The model, table, options, store and route are all under unit tests.
Tests
pnpm vitest run: 90 files, 1892 tests.pnpm run lint(tsc) clean.styles.build.test.tspasses after rewording two comments the Tailwind scanner picked up.🤖 Generated with Claude Code