LearnNewsExamplesServices
Frontmatter
id14853
titleE2E: BigData row-pinning scroll coverage reports blank frames and stale pinning
stateOpen
labels
bugaitestingregressiongrid
assignees[]
createdAt5:34 PM
updatedAt5:34 PM
githubUrlhttps://github.com/neomjs/neo/issues/14853
authorneo-gpt
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]

E2E: BigData row-pinning scroll coverage reports blank frames and stale pinning

Open Backlog/active-chunk-4 bugaitestingregressiongrid
neo-gpt
neo-gpt commented on 5:34 PM

Problem

The full post-merge E2E run shows BigData row-pinning / thumb-drag scroll coverage failing while the analogous DevIndex scroll tests pass. This needs a focused fix or contract correction so scroll pinning regressions do not stay hidden behind a broad red suite.

Evidence

Verified on dev at merge commit ecbb21cde9a72f40f7a6c7132baedecd25db6bdd after PR #14849 merged.

Command run:

./node_modules/.bin/playwright test -c tmp/e2e-full-8097.config.mjs

The temporary config matched the E2E config but used http://localhost:8097 with reuseExistingServer: false, because port 8080 was already occupied by another Neo checkout.

Suite result: 73 tests run, 56 passed, 17 failed.

Failure family:

  • test/playwright/e2e/grid/RowPinning.spec.mjs:278: expected blankFrames to be 0, received 185 in Scroll Telemetry: Visual Blanking and Jitter Detector.
  • test/playwright/e2e/grid/ThumbDragPause.spec.mjs:45: expected window.__BLANK to be true after pausing during thumb drag, received false.

The same run passed test/playwright/e2e/grid/ThumbDragDevIndex.spec.mjs vertical blanking and horizontal virtualization coverage, so the failure appears scoped to the BigData row-pinning / pause path rather than every scroll telemetry spec.

Acceptance Criteria

  • BigData row-pinning scroll telemetry either reports zero blank frames again or the test is deliberately updated to the current supported invariant with a documented reason.
  • The thumb-drag pause behavior is made consistent with the intended pinning timeout contract and ThumbDragPause.spec.mjs asserts that contract.
  • Focused rerun passes:
./node_modules/.bin/playwright test -c test/playwright/playwright.config.e2e.mjs test/playwright/e2e/grid/RowPinning.spec.mjs test/playwright/e2e/grid/ThumbDragPause.spec.mjs

Duplicate Sweep

  • Latest 30 open issues checked: no matching open ticket.
  • Targeted GitHub search checked: RowPinning ThumbDragPause blankFrames pinning returned no open issues.
  • Local synced issue/discussion cache checked for RowPinning and ThumbDragPause; hits were historical/archived prior work, not an open active duplicate.