Repository navigation
cmux-next sidebar: a working row shows no running time - #23812
Conversation
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Pending: CI is running on Last result: Passes: CI passes on Written by red: cmux-next checks (god files, concurrency, crash safety, l10n); base red: the same failure on the base 164b139; does not block |
|
Found 12 test failures on Blacksmith runners: Failures
...and 2 more test failures. View all on Blacksmith
|
|
Bead |
|
Review (claude-opus subagent, correctness first): SHIP at 1d5b912 Reviewed only the top commit (parent 7bf4d23, #23767). I read the code and did not build it.
|
1d5b912 to
16d01e7
Compare
|
Review (claude-opus subagent, correctness first): SHIP at 16d01e7
|
16d01e7 to
d9209c3
Compare
|
Review (claude-opus subagent, correctness first): SHIP at d9209c3 Replay check against the previous SHIP at 16d01e7 (on d580586):
No findings. |
Leo 2026-10-21: "WHO BROUGHT BACK THE DONE AND THE TIMERS". #22826 (2026-10-20) drew how long a row's agent had worked ("10m") beside its working mark, in place of the row's age, with a minute tick per row. The row drops the running time, its label, its tick and WorkspaceRowView+Elapsed; a working row keeps its age as before #22826. The hover card still shows the time to the second. Test: SidebarRowNoDoneTests.aWorkingRowShowsNoRunningTime renders a row whose agent has worked ten minutes and fails if any label shows a running time. WorkspaceRowElapsedTests (the timer's own tests) goes with it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16040-fd0b-7dd0-9487-1a3a198d9f5c&host=cosmic-gray
d9209c3 to
3d289fa
Compare
|
Review (subagent, correctness first): SHIP at 3d289fa This head is the restack onto the new base after #23767 merged. The conflicts are resolved by keeping the base's machine mark and quiet titles and dropping only the timer. A diff-of-diffs against the reviewed d9209c3 shows no differences beyond base context. No timer symbols ( |
Conflicts: - SidebarLayout.swift: the loose rows keep the tree walk (treeRows) and take base's row limit (#23671): foldingDone gets limits:, and every negative entry (Done, Show N more) draws through appendFold. - WorkspaceRowContent.swift: treeFold/rollUp beside base's chip, which is now only for the accessibility label (#23767). - WorkspaceRowView.swift: base's subviews without elapsedLabel (#23812), plus treeFoldButton and rollUp. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15d2c-88e4-7fc2-b58e-9a55abdaced8&host=cosmic-gray
|
Review (codex gpt-6.1-sol): SHIP at 3d289fa Blocking findings: none found. Non-blocking findings: none found. Checked all seven changed files against merge-base 10b4591, removed-symbol references, row reuse and layout, timestamp defaults and opt-in behavior, hover-card timing, and the replacement regression test's path through the former elapsed label. |
|
Post-merge review (codex xhigh, correctness first): SHIP at 6df32f6 Codex gpt-6.1-sol at xhigh, run read-only against feat-cmux-next at f76419f. It found no correctness issues. Nothing in the tree, tests included, still references the removed elapsed row state, the timer, |
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Shipped in:
|
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…o Now line; one title x; no Update available on headers Lawrence 2026-10-21: "dont show times in sidebar. remove merge indicator by default as well. sidebar must be kept minimal by default", then "weird spacing" between rows with and without a favicon, and "wtf is chief update available". The running time (#23812) and the pull request badge (#23989) already left the default rows upstream; this does the rest. - Off by default (each still a setting): the status entries and the log line (sidebar.workspaceRow.agentStatus / .log) and the "Now: ..." line (sidebar.nowLine). The default row is the name plus one state mark (spinner, unread dot) and progress; a reported state still reaches the mark. - Every workspace, item and tab row keeps its leading icon slot, drawn or empty, so every title starts at one x (SidebarStyle.titleTextX). - A machine header never prints Update available: it reads as connected and the tooltip says it. Settings and tunables store only what the user set, so everyone else moves to the new defaults with no migration; a value the user set stays. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo: "WHO BROUGHT BACK THE DONE AND THE TIMERS". Workspace rows showed "10m" beside the working mark.
Who brought it back: #22826 (2026-10-20, "agent work breathes a calm accent dot instead of a spinner on every row"). Its later commits drew how long the agent had worked ("4m", "1h 3m") beside the working mark, in place of the row's age, with a minute tick per row.
Change: rows no longer show a running time. Removed: the label, its
DemandTimertick,WorkspaceRowView+Elapsed.swift, andWorkspaceRowContent.workingSince/workingElapsed. A working row keeps its age, as it did before #22826. The hover card still shows the time to the second.Test:
SidebarRowNoDoneTests.aWorkingRowShowsNoRunningTimebuilds a row whose agent has worked ten minutes and fails if any label shows a running time.WorkspaceRowElapsedTests, the timer's own tests, is deleted with it.Stacked on #23767 (Done removal). This branch contains #23767's two commits; once #23767 merges, the diff here is only the timer removal. The breathing dot's default is fixed in #23776.
Capture
steps-006c458297at1d5b91215b60(fleet build, capture mini, text checked for private data). The working row "Tune the CI cache" no longer shows "7m" (base: "7m" beside its mark). The current head only rebases this onto #23767's needs-you change.Leo-ask: ask-c8936f0e52
Agent session: cosmic-gray
🤖 Generated with Claude Code