Repository navigation
Description
Before submitting
- Searched existing issues and PRs; related reports are linked below. The requested existing issue is locked.
- Included reproduction steps and investigated evidence.
Area
apps/web (desktop sidebar)
Impact
Minor bug or occasional failure: recently messaged threads remain difficult to locate.
Reproduced on T3 Code Beta 0.1.7, commit 322f6544dfad, macOS 27.0.1 (26A434), on November 10, 2026. Follow-up to #16412, #21639 and #28165. The maintainer response on #21639 asks for additional evidence on #16412; we attempted that, but GitHub rejects comments because #16412 is locked. Filing this focused release-specific follow-up so the evidence is available for triage. #28165 was closed as no longer reproducible on Nightly; this report concerns the released Beta build, not a claim of a new regression on current Nightly.
Reproduction
- Use the current flat sidebar: boring sidebar off, legacy sidebar off, Working section off, no project folders rendered.
- Set Project order to Last user message. Saved client settings also have
sidebarThreadSortOrder: "updated_at". - Send a follow-up to an older active thread, without dragging it.
- Observe the row age update while its list position stays below older-message rows.
Observed evidence
The screenshot supplied privately in the reporting session (not attached to this GitHub issue) shows a row labeled 5m below rows labeled 10h, 11h, 13h, 20h, and 23h. Local read-only database inspection explains the position: the 5m row was created November 2 at 11:45 UTC, and received its latest user message November 10 at 05:55 UTC. Seven locally hosted rows in the screenshot match creation/re-entry ordering. Remote-environment rows were not independently checked.
Shipped code path
In this build, Sidebar.tsx chooses sortActiveThreadsByOrderKey(active) when project folders are absent and Working is off. Unarranged rows use max(createdAt, unsettledAt); the flat Active path does not read sidebarThreadSortOrder. The displayed age uses the latest user-message timestamp, so the age label and sort anchor disagree. Project order controls the project picker/command palette, which is correctly described in Settings, but there is no equivalent discoverable last-message control for this flat list.
Expected behavior / requested outcome and existing work
Please clarify whether last-user-message ordering should be available for the flat Active list, or whether the intended resolution is clearer controls/documentation for its fixed arrangement. We recognize that changing the default/manual-order semantics is a product decision, not automatically an obvious-bug exception under CONTRIBUTING.
Existing open implementations already address this need: #22032 and #24860. We are linking those rather than submitting a competing PR without agreed direction.
During diagnosis we prepared an isolated candidate that applies the saved thread-sort preference to the flat Active list while preserving manual keys and other sections. Its focused regression uses the observed timestamps and moves the recently messaged older row above older-message rows; 149 sidebar unit tests passed. That candidate has not been installed or submitted, and no conversation data was modified. These unit results are not a claim of browser/native UI verification or maintainer approval.
Investigation assisted by Claude Opus 5.5 and GPT-6.1-Sol through T3 Code / Codex.
Activity
tayyabfareed commentedon Nov 10, 2026
Release verification — November 10, 2026
Checked the source at the released tags, rather than assuming the closure of #28165 proves a fix:
v0.1.8, published November 9: the flat Active list with Working off still callssortThreadsForSidebar(active).v0.1.9-nightly.20261110.4452, commit822671581383: Sidebar.tsx uses that same path when project folders are absent and Working is off. Sidebar.logic.ts re-exportssortActiveThreadsByOrderKeyunder that name. threadSort.ts still usesmax(createdAt, unsettledAt)for unarranged active rows, rather than last-user-message time.Therefore we cannot confirm that this is fixed in Nightly while awaiting a Beta release. The relevant released source still has the reported ordering; the earlier Nightly non-reproduction may involve a different sidebar mode. These are source checks, not a new runtime UI reproduction on Nightly. Leaving this issue open for maintainer triage rather than closing it as fixed.
Screenshot correction: the screenshot was supplied in the original reporting chat, but was not uploaded as a GitHub attachment. The issue body now explicitly says so; its observed row ages were transcribed from that screenshot. Sorry for the misleading attachment wording.