Repository navigation
test(desktop): fix workhub fold gutter flake - #5393
Merged
Astro-Han merged 1 commit intoSep 16, 2026
Merged
Conversation
The fold sampler read the final gutter from a fixed 500ms window, but a loaded runner starts the 420ms dock animation late enough that the last frame is still in the easing tail (11.98 instead of 12). Generated-by: Claude Code
orangeCatDeveloper
force-pushed
the
test/workhub-layout-motion-settle
branch
from
September 16, 2026 09:57
d439570 to
29aadf2
Compare
4 of 6 tasks
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.
Summary
Flaky test:
workhub-layout.spec.tsfailed on main in https://github.com/apache/maka/actions/runs/35075202726 (Expected: 12,Received: 11.984375) right after Desktop e2e moved to 3 parallel workers.The sampling window keeps its job for the motion assertions; the resting position and inset are now polled instead of read from the last sampled frame.
Root cause
The test clicked the fold button, sampled
getBoundingClientRectfor a fixed 500ms of animation frames, and asserted the last frame sat at the 12px gutter. The dock padding is driven byelement.animate()with a 420mscubic-bezier(0.22, 1, 0.36, 1)(workhub-root.tsx,dockMotion). That animation is play-pending until the next frame resolves its start time, and with three e2e workers sharing 4 vCPUs the next frame can land 100ms+ after the click. The easing is strongly ease-out, so its last ~90ms move the padding by less than 1/64px per frame, which is below layout precision: the window closes with the padding at 11.98 instead of 12. The same tail shows up at 0.02 on the collapse direction.Verification
Local repro with
Emulation.setCPUThrottlingRateat 10x on the WorkHub renderer, this test only, 8 repeats:Unthrottled full spec under CPU load: 24 passed.
AI use
Select exactly one:
Tool(s) and scope: Claude Code diagnosed the easing-tail race, wrote the fix and ran the throttled repro.
Checklist
Does this PR entail a change in behavior?