polish: hand-tune Cost tab table column widths#11
Merged
Conversation
The four Cost-tab tables (CommandCostList, OutlierCommandsTable, SessionEfficiencyTable, SessionCompareView) shipped with placeholder Tailwind w-* widths that left short numeric columns cramped against their sort chevrons (notably "Search" + chevron in SessionEfficiency overflowing w-16) and two-word headers like "Idle Total" wrapping. Tuned each column descriptor so: - numeric columns are fixed-width with breathing room for the header text + sort chevron - the description / prompt column keeps the slack as the only flex column - all headers fit on one line at the 1280px breakpoint (whitespace-nowrap on the header row enforces this) Widths use Tailwind's rem-based w-* classes (no px) so they scale with the user's font preference.
e13257b to
796aa14
Compare
0bserver07
added a commit
that referenced
this pull request
May 20, 2026
The four Cost-tab tables (CommandCostList, OutlierCommandsTable, SessionEfficiencyTable, SessionCompareView) shipped with placeholder Tailwind w-* widths that left short numeric columns cramped against their sort chevrons (notably "Search" + chevron in SessionEfficiency overflowing w-16) and two-word headers like "Idle Total" wrapping. Tuned each column descriptor so: - numeric columns are fixed-width with breathing room for the header text + sort chevron - the description / prompt column keeps the slack as the only flex column - all headers fit on one line at the 1280px breakpoint (whitespace-nowrap on the header row enforces this) Widths use Tailwind's rem-based w-* classes (no px) so they scale with the user's font preference.
0bserver07
added a commit
that referenced
this pull request
May 20, 2026
Closes HANDOFF follow-up #11. Real-store data is now live (v013 applied, agent_teams and playback routes returning populated bodies), so the beta pill on these two tabs no longer signalled anything actionable. Both tabs already carry their own EmptyState components for the no-data path (AgentsTab: "No agent teams yet"; PlaybackTab: "No tool calls yet in this project"), so empty stores still render gracefully. The shared BetaBadge component still serves the remaining beta-flagged tabs (yield, qa, tags); the badge render is conditional on tab.beta === true so dropping the prop is cleanly inert. Frontend typecheck + build + 110 tests clean. Co-Authored-By: Claude Opus 4.7 (1M context) <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.
Problem
Cost tab table column widths weren't hand-tuned. Sort chevrons clipped headers in
SessionEfficiencyTable(Search, Edit, Read, Bash columns); two-word headers (Idle Total / Idle Max) wrapped; numeric columns were sometimes wider than needed while description columns got squeezed;SessionCompareViewhad no widths at all on its three data columns.Change
All widths set in rem (scales with user font preferences), not px. Description / preview columns keep the slack.
CommandCostListw-32 → w-28;%Total/Tools/Stepsw-16 → w-20OutlierCommandsTablew-28 → w-32;Costw-20 → w-24SessionEfficiencyTableEdit/Read/Search/Bashw-16 → w-20;Idle Total/Idle Maxw-20 → w-24;Classw-32 → w-36SessionCompareViewA/B/Δset tow-40(previously unset). Skeleton headers matched.Plus:
whitespace-nowrapadded to<thead>rows on all four tables — guarantees single-line headers and complements the new widths.Frontend artifacts rebuilt and committed.
Verification
npm run typecheck— cleannpm run build— cleanpytest tests/ -q— 420 passed, 2 skipped (no backend changes)stackunderflow/static/react/, not the worktree's, so a server check would have shown stale UI. Reviewer should run the dev server, open chimera Cost tab, verify both light + dark themes look right before merge.Notes
Branch renamed from
worktree-agent-*.