Repository navigation
test(e2e): run the files of the suite on four workers on CI (FRU-268) - #285
Conversation
The specs already stay apart by the page address of each case. The console is warmed up too, as its specs now start at the same moment. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…e page (FRU-268) The E2E specs now run side by side, and each keeps to its own page. A count over the whole store gave five notes of one page the same state when another spec wrote in between. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…-268) The title of the screen can come before its request. One run on four workers was faster than the request. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
There was a problem hiding this comment.
Score de confiance : 4/5 · ✅ Rien de bloquant · Fusion sans défaut confirmé : la PR peut être fusionnée après un regard sur les points non vérifiés, notamment la route /setup du console et le filtrage par client du store.
Niveau lite · anthropic/claude-haiku-5.5 · 0,002 $ · Le résumé, le diagramme et la liste des constats sont à la fin de la description de la PR.
|
On the four points the lite did not read:
|
|
@sakuga-review review balanced |
There was a problem hiding this comment.
Score de confiance : 4/5 ·
Niveau balanced · anthropic/claude-sonnet-5.5 · 0,028 $ · Le résumé, le diagramme et la liste des constats sont à la fin de la description de la PR.
|
On the |
Stack: #285 → #286. Merge this one first. #286 changes the CI and is for Mathieu.
The E2E suite runs its files on four Playwright workers on CI, instead of one. Locally it stays at one worker. Part of FRU-268: make the E2E job of a pull request faster without losing coverage.
Measures (job
e2e, wall time)maintoday, one worker290 tests in each run. Runner time drops by the same half: one job, one runner.
What changes
playwright.config.ts:workers: process.env.CI ? 4 : 1. Files run side by side; the tests of one file still run in order in one worker (fullyParallelstaysfalse). The specs already keep apart by the page address of each case (caseOf); the workers of the Cloud that the console specs start listen on a free port.e2e/warm-up.ts: the console's Vite server is warmed up too, as its specs now start at the same moment.apps/worker/src/linear-memory.ts(the in-memory Linear ofpnpm devand the E2E suite, refused in production): an issue takes its state and its replies by its rank on its page, not in the whole store. With four workers, another spec wrote between the five notes ofoverlay.spec.ts, and two of its tests failed (run 1040: "five statuses" got four, "a reply is not drawn as a bullet point" got no replies in three attempts). Test:gives the notes of one page their states and replies by their rank on that page (FRU-268)inapp.test.ts, which fails on main. The conformance suite plants its two filler notes on the same page for other clients now.e2e/console-frame.spec.ts: the control of "a change of workspace shows nothing of the workspace of before…" waits for the read of the new workspace withexpect.poll. The title of the screen can come before its request; one run was faster than it (flaky once, run 1043).No spec is kept in series, and none was skipped.
Not verified
🤖 Generated with Claude Code
Sakuga Review · Score de confiance : 4/5
Fusion possible : changement limité au store Linear en mémoire de dev et à la configuration E2E, sans impact sur la production.
Constats
e2e/console-frame.spec.ts:371L'assertion d'absence
w1est répétée après le poll, ce qui est utile. Mais l'absence initiale est mesurée avant que la requêtew2n'arrive : une requêtew1tardive passerait la première assertion et ne serait attrapée que par la seconde, sans garantie si elle arrive après. Correction : Garder uniquement la seconde assertion d'absence, après l'attente dew2, pour une mesure unique et plus fiable.Résumé
La PR fait suivre l'état et les réponses des notes du Linear en mémoire par leur rang sur la page, puis passe les E2E à 4 workers sur CI. Elle ajoute un test unitaire de rang par page, adapte le test de conformité et réchauffe aussi la console dans le warm-up. Le code est cohérent : le champ
pageest ajouté au type et renseigné, et le calcul du rang est correct. Je n'ai pas pu vérifier l'isolation réelle des specs E2E entre elles.Revues (2) · Dernier commit relu : test(e2e): measure the four workers again (FRU-... · Niveau
balanced·anthropic/claude-sonnet-5.5· 0,028 $