Repository navigation
test: three Switch and Tooltip marker reads decode their frames once - #11074
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
AI review status for this pull request.
|
PR Analysis Report🔎 Preview ·
|
| Component | Size | LoC | Visual · A11y · RTL |
|---|---|---|---|
| Switch · Storybook | 104.7 kB (0) · 9.9 kB CSS (0) | 1,734 (0) | ✓ · ✓ · ✓ |
| Tooltip · Storybook | 30.4 kB (0) · 4.4 kB CSS (0) | 870 (0) | ✓ · ✓ · ✓ |
Package size: no published package changed; no new dependencies.
API changes: none in this pull request
Committed API report behind this build: cli 36 rows, core 36 rows; run pnpm api:report.
Touched components checked; add ci:run-visual, ci:run-a11y or ci:run-rtl to run the full suites.
Generated by PR Enrichment workflow | View full report
There was a problem hiding this comment.
Changes requested: the combined reads look right, and one wording fix is needed before approval.
- The title and the stated invariant say Switch and Tooltip busy proofs decode each cast once, but three Switch busy proofs still decode frames twice (P14's whole-cast
trackMarkerread atSwitch.interaction.browser.spec.ts:2578before the thumb clock at:2605, the track colour proof'strackBrightnessread at:3316, and the P10 toggle's sub-pixel and control reads at:2990and:2998), so please retitle to the three reads this changes and scope the invariant to them.
Each combined trackMarkers call returns the same tracks the separate reads did, and the type checks, ESLint and Prettier are clean on the changed lines. CI has not run on this draft head yet.
[Automated review]
The Switch thumb's clock, the Switch track colour proof's control read and the Tooltip anchor proof each read the controls with trackControl and the marker with trackMarker, decoding one cast up to three times. One trackMarkers call with controlColor now finds them in a single decode per read. The tracks are unchanged.
7c6d474 to
10f7314
Compare
There was a problem hiding this comment.
Approved pending CI: CI has not run on this head yet. It runs once the pull request is marked ready for review and a maintainer adds the ci:run label.
The new title and intended invariant match the change: each of the three converted reads now decodes its frames once, and the description names the reads that still decode on their own. Each combined trackMarkers call returns the same tracks as the separate trackControl and trackMarker calls it replaces, and the type checks, ESLint and Prettier are clean on this head.
[Automated review]
Maintainer impact
Three busy-proof reads decode one screencast more than once: once per control with
trackControl, and once more for the marker withtrackMarker.On a loaded runner each decode pass over a cast takes seconds.
Since #10808, one
trackMarkerscall can read each control in its own strip.Intended invariant
Each of these three reads decodes its frames once, however many colours it finds.
What each proof reads and asserts is unchanged.
P14's whole-cast marker read, the colour proof's brightness read and the toggle's reads still decode on their own.
Change
trackMarkerscall.Evidence
Scope
Components: Switch, Tooltip (interaction specs only)
Testing
All figures are at the CI profile with one worker, on this head, 10f7314.
Same cast, median, the separate reads against one decode (d221877, not for landing):
Each run times both forms on their own copies of the frames, in alternating order. One decode was faster in all 32 runs.
Identity commit, not for landing: 5603d7f.
Each converted read also runs the separate calls on copies of the frames and asserts equal tracks.
It passes 12 of 12 runs: 8 in Chromium and 4 in WebKit.
The four proofs at this head pass 12 of 12 runs in Chromium and 6 of 6 in WebKit.
The two Switch thumb-clock proofs run in Chromium only.
Prettier, ESLint (no new warnings), the core and harness type checks and
review:preare clean.