The mobile-chrome Playwright project runs the entire chromium set again on a Pixel 7 viewport. On run 35329092557 that is 420 tests against 420 — an exact duplicate, and half the suite's cost.
Most of those specs assert data, permissions and flow. A narrower viewport changes nothing about what they check, so the second pass buys nothing for them. The ones worth running twice are the specs where layout, touch input or a mobile-only control is the subject.
Sharding (#1306) hides this behind parallelism: it trades wall clock for runner minutes and leaves the duplicated work intact. This ticket removes the work instead, and the two compound.
Approach
Tag the specs whose behaviour a phone viewport can actually break, and restrict the mobile-chrome project to those via testMatch or a grep tag. It needs a judgement call per spec across 58 files, which is why it is not folded into the CI plumbing change.
Deliberately not decided here: whether the tag is a filename suffix (matching the existing .motion.spec.ts convention) or a Playwright tag in the test title. Pick whichever reads better once the list of genuinely mobile-sensitive specs exists.
Acceptance
The
mobile-chromePlaywright project runs the entirechromiumset again on a Pixel 7 viewport. On run 35329092557 that is 420 tests against 420 — an exact duplicate, and half the suite's cost.Most of those specs assert data, permissions and flow. A narrower viewport changes nothing about what they check, so the second pass buys nothing for them. The ones worth running twice are the specs where layout, touch input or a mobile-only control is the subject.
Sharding (#1306) hides this behind parallelism: it trades wall clock for runner minutes and leaves the duplicated work intact. This ticket removes the work instead, and the two compound.
Approach
Tag the specs whose behaviour a phone viewport can actually break, and restrict the
mobile-chromeproject to those viatestMatchor a grep tag. It needs a judgement call per spec across 58 files, which is why it is not folded into the CI plumbing change.Deliberately not decided here: whether the tag is a filename suffix (matching the existing
.motion.spec.tsconvention) or a Playwright tag in the test title. Pick whichever reads better once the list of genuinely mobile-sensitive specs exists.Acceptance
mobile-chromeruns a named subset, and the reason a spec is in that subset is legible from the spec itself.