Skip to content

Commit e88c446

Browse files
kevin-dpclaude
andcommitted
fix(agents-server-ui): omit empty buckets from the breakdown legend [review #4596]
The stacked bar already skips zero-ratio segments, but the legend rendered all four rows unconditionally — so a step with no persisted breakdown (older events) showed noisy "System prompt — 0 — 0%" / "Tools — 0 — 0%" rows. Gate the legend rows on `tokens > 0` to match the bar. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 3834be6 commit e88c446

1 file changed

Lines changed: 19 additions & 15 deletions

File tree

packages/agents-server-ui/src/components/ContextUsageDetails.tsx

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -67,21 +67,25 @@ export function ContextUsageDetails({
6767
</div>
6868

6969
<ul className={styles.legend}>
70-
{segments.map((seg) => (
71-
<li key={seg.key} className={styles.legendRow}>
72-
<span
73-
className={`${styles.swatch} ${styles[seg.key]}`}
74-
aria-hidden="true"
75-
/>
76-
<span className={styles.legendLabel}>{seg.label}</span>
77-
<span className={styles.legendTokens}>
78-
{formatTokenCount(seg.tokens)}
79-
</span>
80-
<span className={styles.legendPercent}>
81-
{formatSegmentPercent(seg.ratio)}
82-
</span>
83-
</li>
84-
))}
70+
{/* Omit empty buckets (e.g. system/tools for older steps with no
71+
persisted breakdown), matching the stacked bar above. */}
72+
{segments
73+
.filter((seg) => seg.tokens > 0)
74+
.map((seg) => (
75+
<li key={seg.key} className={styles.legendRow}>
76+
<span
77+
className={`${styles.swatch} ${styles[seg.key]}`}
78+
aria-hidden="true"
79+
/>
80+
<span className={styles.legendLabel}>{seg.label}</span>
81+
<span className={styles.legendTokens}>
82+
{formatTokenCount(seg.tokens)}
83+
</span>
84+
<span className={styles.legendPercent}>
85+
{formatSegmentPercent(seg.ratio)}
86+
</span>
87+
</li>
88+
))}
8589
</ul>
8690

8791
<div className={styles.note}>System &amp; tools are estimates.</div>

0 commit comments

Comments
 (0)