feat(sidebar): add Fixed project sort order and expose sort in Settings - #10
feat(sidebar): add Fixed project sort order and expose sort in Settings#10aimen08 wants to merge 1 commit into
Conversation
Recent Activity was the default and only meaningful sort, so selecting or switching a project floated it to the top and reshuffled the list on every focus. Add a Fixed order that keeps projects in the order they were added, make it the default, and surface the sort as a picker in Settings › Interface (kept in sync with the sidebar's sort menu).
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Thanks for this @aimen08 — the problem writeup is spot on. Recent Activity floating the active project on every focus was a real annoyance and killed any spatial memory of the list. After thinking it through I'm going to go a slightly simpler route: just change the default sort from Recent Activity to Name (#16), rather than adding a new
The idea you're really reaching for — a stable, user-controlled order — is worth doing properly later as an explicit per-project order index + drag-to-reorder (the Xcode/Finder/Dock model), which I'd rather build as its own change than approximate with insertion order. So I'll close this in favor of #16, but genuinely appreciate you surfacing the issue and the clean PR — hope you'll send more. 🙏 |
|
@jiweiyuan No, I totally understand and I agree. I'd rather have something planned like you mentioned than rush for something that only patches the current issue. And don't worry, I'll send more PRs. |
Review of the v0.1 POC against the Superlogical architecture Mitchell describes: faithful on the steady-state hot path (raw tee, client-side parse, single writer, no window manager), incomplete on synchronization. - §C.5: authoritative-PTY-dimensions is a correctness requirement, not a preference — input replication is only deterministic if every client parses at the same width; `attached`/`S` must carry rows/cols. - §F risk #10: unbounded per-client backlog — the shadow cost of the non-blocking hot path; fix pairs with the bytes::Bytes fan-out (shared chunk + per-client byte budget → drop/resnapshot slow client). - §F risk #11: resize is not a barrier and TIOCSWINSZ errors are ignored. - §F risk #9: sharper framing — the protocol does not yet cross SSH from a native client (ssh -t termiod attach keeps it remote-local). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Problem
The sidebar's default (and only meaningful) sort was Recent Activity, which floats the active project to the top. So selecting or switching a project reshuffled the whole list on every focus — the order was never stable.
Fix