Repository navigation
Conversation
The composer's mascot is drawn from /assets/, and the shell screenshots compare pixels: a capture taken while that image is still loading shows the broken-image placeholder where the mascot belongs, and the comparison fails on pixels the code never drew. Every other baseline in this directory already waits for the images before it captures. This one did not, so it captured whichever state the network happened to be in, and on a loaded runner that state is sometimes "not finished". The Windows job failed this way once: expected and actual were both 894x900, and every one of the 5614 differing pixels fell inside the mascot's rectangle -- the baseline held the pink mascot, the capture held the placeholder. The wait below is the same one the other specs use: every /assets/ image reports complete with a natural width, so it has decoded rather than merely been requested. No assertion and no pixel budget changes.
|
Superseded by #16, which fixes the same root cause and applies it to every baseline spec, not only the responsive ones: the shell's mascot image is a Closing this one so the tree keeps a single fix for the cause rather than two. What was checked before closing: the combined #16 + #17 tree passes the WebUI unit and integration gate locally (4485 passed, 0 failed) and its browser suite fails on exactly the same 40 local-environment cases as main does (byte-identical failure lists), so the two PRs add no regression of their own. The three-platform CI on both #16 and #17 is green. |
Change
responsive-baselines.spec.mjscaptured the shell before its images had decoded. The composer's mascot is drawn from/assets/, and the screenshot compares pixels: a capture taken while that image is still loading shows the broken-image placeholder where the mascot belongs, and the comparison fails on pixels the code never drew.Every other baseline in this directory already waits for the images before it captures. This one did not, so it captured whichever state the network happened to be in -- and on a loaded runner that state is sometimes "not finished".
How it was found
The Windows job of the WebUI CI on
mainfailed once with 4197 differing pixels onthe shell at 900px. Downloading the job's browser diagnostics artifact and comparing the two captures pixel by pixel:(224, 131, 138), the capture held the placeholder(255, 255, 255)and(192, 192, 192).So the baseline was right and the capture was taken too early. The fix is the wait the other specs already use: every
/assets/image reportscompletewith a natural width, so it has decoded rather than merely been requested.What does not change
No assertion changes, no pixel budget changes, no baseline re-recorded. The comparison still fails on any real difference.
Verification