Repository navigation
Mobile: agent history lists large transcripts from their ends; those cards hide their message count - #28933
Mobile: agent history lists large transcripts from their ends; those cards hide their message count#28933brennanb2025 wants to merge 2 commits into
Conversation
…ards hide their message count
55029a0 to
6424f1f
Compare
|
Closing the mobile companion after reviewing all three production changes and its test at unchanged head Its complete functional scope is advertising Enabling that declined performance design and suppressing an available exact count has no remaining independent benefit under #27143's free-win/substantial-gain standard. The branch is preserved. A future demonstrated history optimization can introduce the mobile contract appropriate to its actual semantics. |
ELI5
The phone's agent history list now gets the same fast rows as the desktop. A long transcript is read only at its start and end, and its card shows no message count instead of a guessed one.
Stacked on #28927 (desktop) and #28925 (mechanism).
What Changed
Problem. After #28927 the desktop reads big transcripts by their ends, but the phone does not advertise that it can show such rows. A paired phone therefore makes its host read every one of those transcripts whole. That is slow for the phone, and it is the cost the desktop just removed.
Before / after on the phone. For a large transcript read fresh, the history card no longer shows "N messages". Title, agent, time, last message and the current-worktree badge are unchanged. Small transcripts still show their count.
Mechanism.
aiVault.list.partial-rows.v1.messageCountbecomesnullfor a row withcontentCoverage, and the card hides the label when it isnull.Why
This uses the same capability gate as the desktop: the host never sends a partial row to a client that would print its count as exact.
Linked Issue
N/A (internal performance lane).
Visual Proof
N/A for screenshots in this PR. The only visible change is the "N messages" label being absent on large rows, the same change as #28927's visual proof, on the mobile card.
Testing
agent-history-session-card.test.ts: a partial row's card has no count (17/17 pass).tscthere reports only errors from generated files missing on that machine; CI generates them.