Repository navigation
feat(sidebar): order sessions by latest activity; make live sessions stand out - #710
Conversation
|
CI fix (run #1741): the |
…tand out Sessions within a repo were listed in creation order, so with many open the recently active ones got buried. They now sort by their last turn (start or finish), with sessions mid-turn pinned on top. Viewing a session does not move it. The server tracks a persisted lastTurnAt per session; the existing lastActivity is bumped on join and reset on restart, so it can't order. Live rows are easier to spot: running/waiting dots are a size up with a halo, the row gets a faint success/warning tint, and the meta line reads "working" / "needs you" instead of an age. Idle rows show time since last activity (tooltip also gives creation age). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
dfa9552 to
80ab084
Compare
|
CI run #1743 failure — already resolved, no further push needed The "Audit dependencies" step failed on two newly published advisories in transitive dev dependencies:
I prepared a lockfile bump (dompurify → 3.4.17, source-map-js → 1.2.2), but in the meantime this branch was rebased onto 🤖 Generated with Claude Code |
Why
With many sessions open, the recently active ones get buried — rows were in creation order, and the 6px green dot is easy to miss.
What
lastTurnAton sessions, set when a turn starts (sendInput) and finishes (handleClaudeResult), exposed onSessionInfo. (The existinglastActivityis bumped on client join and reset on restart, so it isn't usable for ordering.) Sessions without it fall back tocreated.working/queued/needs youinstead of an age.Repo groups stay alphabetical.
Tests
src/lib/sessionOrder.test.ts— ordering, running-first, bad timestampsRepoSection.test.tsx— activity age + live labelsserver/utility-agent.test.ts, which fail onmaintoo (local environment)🤖 Generated with Claude Code