Repository navigation
Keep Call health compact, with Connection and Video on their own tabs - #251
Merged
Merged
Conversation
Adds the compact-call-health scenario and the driver it starts. Co-Authored-By: Claude <noreply@anthropic.com>
Tiny Code Review✅ No blocking findings — see the review · run |
There was a problem hiding this comment.
Tiny Code Review
✅ No blocking findings.
The change is a contained GUI reorganization: it adds a video_kbps field to the in-memory ChartSample, a StatsTab state on the shell, and rewrites the stats card to render two tabs from the same history. The wire, stats collection and health grading are untouched; the chart math change (fixed 60-second x span, shared video scale) is conservative and clamped. I found no defect that gates the merge.
Residual risk
- The video chart draws a sample of (0, 0) for seconds with no video rather than leaving a gap, which reads as a flat zero line on the graph even though the stored history correctly holds
None. prove_compact_call_healthand the new unit test exercise the same in-memory history logic, so neither covers the tab rendering or the chart drawing itself; the--shotpreviews are the only coverage of the visual change.- The
detailsstring built from all hints is only as useful as wherever the trimmed part of the card consumes it; if it ends up unused, clippy will flag it.
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.
What changed and why
The Call health card grew tall once it carried video numbers under the connection ones. It now stays the size it was and has two tabs: Connection (round trip, jitter, loss, traffic, transport) and Video (sending, receiving and rendered frame rates, resolution, last image, and its own send and receive graph). The Video graph keeps video's own rates and shows nothing for the seconds no video ran.
This commit was written on 4 November and never opened as a pull request. It is rebased onto main here, with the lab scenario added.
Type
Platforms
Proof
Scenario: e2e/scenarios/compact-call-health
Lab run:
The scenario starts the app with
TINYCLIENT_PROVE=compact-call-health, which exits 0 only when the Video history holds video's own rates and none for seconds without video, and the Connection history is unchanged by them. It does not open the card. The card's two tabs are covered by the--shot --demostates (--tiny-menu statsand--tiny-menu stats-videowithTINYCLIENT_SHOT_VIDEO=1), which are design previews, not measured call proof.Compatibility
Client only. No protocol or stored data changes;
ChartSamplegains a field that lives in memory.Risk and rollback
A wrong tab state shows the Connection tab, which is what the card showed before video numbers existed. Revert the PR.
Release note
Call health stays compact, with Connection and Video on their own tabs.
🤖 Generated with Claude Code