Repository navigation
Repair: Run e2e tests whose names wrap onto the next line when a pull request changes them - #574
Merged
Conversation
… changes them The nightly suite failed at b0fc0e7 on drive.e2e's LiDAR test. #530 fixed that test on main, but its Check ran "Pick Up a Block" instead: the e2e-changed picker matched a test only when its name sat on the call's line. Prettier wraps long names onto the next line, so the picker credited those lines to the test above. Nine tests across five e2e files were invisible to it. The picker now matches the name across the newline and records the call's line.
Owner
Author
Review: pass (1470b45)The picker now matches the test regex across the whole source with the |
JamelHammoud
deleted the
loop/repair/main-b0fc0e7-20261113225444-59891
branch
November 13, 2026 23:32
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.
Failure
Check on main, b0fc0e7
Cause
Class: broke at a commit. The LiDAR test came in with 1fe08d9 (batch merge) and failed both full runs since: f5a6da2 (360 s, timed out twice) and b0fc0e7 (180 s timeout, then the retry's Play click never became stable on a stalled page). The last green full run, 03d9170, didn't include it. #530 (864eaa6) tried to fix it forward: it switched to the RPLIDAR S2 and ended the try with endTryAt. It merged untested because tools/e2e-changed.mjs matched a test only when its name sat on the call's line. Prettier wraps long names (
itUnlessWindows(\n 'scans a corridor…'), so changed lines were credited to the previous single-line test. This change fixes that gap. The LiDAR failure itself is not fixed: current main fails it in the Linux container.Fix
A pull request's e2e-changed job now runs every e2e test it edits, including tests whose name Prettier wraps onto the line after
it(oritUnlessWindows(. Before, the picker credited those lines to the test above, so #530's LiDAR repair merged without its own Check ever running the LiDAR test. This does not make the nightly pass: in CI-like Linux, current main still fails drive.e2e's LiDAR test and two others in 3 of 3 runs.Evidence
npm run check:changed -- tools/e2e-changed.mjs tools/e2e-changed.test.mjspasses: Prettier, ESLint, and 4 of 4 tests.itUnlessWindows(name; the old regex returns [] for it.node tools/loop/linux-e2e.mjs e2e/drive.e2e.test.ts --runs 3 --cpus 2 --ref HEADon main 0f8bc7c passed 0 of 3. Every run failed LiDAR, Cases > Touch the Dots, and Multiply. Touch the Dots passes on CI in 20–100 s, so the container is harsher than CI and 0 of 3 doesn't prove a CI failure.