Repository navigation
test(e2e): the arrival probe inserts its notice on the first moving frame of the scroll - #542
Merged
Merged
Conversation
…rame of the scroll The probe counted rAF frames on which the scroller had moved and inserted the notice on the third. The aim's smooth scroll runs on the clock and the frames do not: on WebKit the third moving frame sat anywhere from 194 to 448px into a 520px flight, and on a slow first run it sat on 520 itself, so the premise check (the notice went in before the scroll reached its destination) failed at 520 < 519. The first moving frame is the earliest point the aim has committed its destination, and it leaves no frames for a slow one to run the flight out: WebKit now inserts at 22-31px, chromium at 2px. The clearance assertion moves ahead of the premise check, so a field left underneath reports as that: with the second look removed, WebKit stops the flight where the notice went in (landed 130, clearance -466), which would otherwise surface as a broken premise.
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.
The arrival probe in
/lab/avoid-keyboardinserted its 100px notice on the third rAF frame where the scroller had moved. The aim's smooth scroll runs on the clock and the frames do not. On WebKit the third moving frame landed anywhere from 194 to 448px into a 520px flight. On a slow first run it landed on 520 itself, so the premise check failed withExpected < 519, Received 520. That was the probe failing to set up its scenario, not a layout bug.What changes:
Reproduce (before):
cd playground && pnpm exec playwright test e2e/avoid-keyboard.spec.ts -g "frame 3" --project=webkit --repeat-each=10. Warm runs pass; the failure came on the cold first repeat of a WebKit sweep.Verify:
pnpm exec playwright test e2e/avoid-keyboard.spec.ts -g "first frame of the scroll" --project=webkit --repeat-each=10: 20 passed, run twice--project=chromium --repeat-each=10: 20 passedpnpm exec playwright test e2e/avoid-keyboard.spec.ts --project=webkit --project=chromium: 10 passedonSettle()disabled inonProgrammaticScrollSettledanddist/rebuilt, all 4 cells fail on the clearance assertion (chromium −76, WebKit −466)pnpm biome:check,pnpm biome:check:playground,pnpm typecheck: cleanTested on: Linux, Playwright chromium and WebKit, 390×844 viewport.
Not tested: real iOS device, CI cell (E2E workflows are disabled).